Derek Morris, Adjunct Professor
Prof. Morris teaches software engineering courses for UD’s ECE department. Software engineering is a discipline that draws on the twin disciplines of computer science and computer engineering for its technologies and on project management techniques to produce and maintain computer-based systems that provide useful products or services. A software development process must deal with specific domains of customer interest (e.g., health care, finance, process control) so there needs to be a common set of languages between the customer and the developer in order for the resulting software product or service to satisfy the customer's expectations. As more and more functionality is put into software, software products become larger and more complex. This increases the difficulty for the customer-developer languages to handle the multiple viewpoints with enough semantic precision to accurately describes the issue at hand. Prof. Morris is interested in formal methods with mathematical basis that enable both the development team members and their customers to communicate on the customer’s objectives throughout the development process. One example would be viewing a software specification as a set of logical predicates and using logic languages such as Prolog to provide completeness and consistency verification. A second example would be to develop a semantic net for the domain of interest to ensure that relevant entities are consistently described.