Software engineering deals with the fundamental issues of improving the definition of requirement, and the design, construction, maintenance, and use of software products. Faculty at MSU work in the areas of software requirements engineering, software evolution, software metrics, empirical software engineering, software assurance for critical systems and engineering of secure software.