University of Minnesota
Software Engineering Center
/

You are here

Mats Heimdahl

Photo of Mats Heimdahl
Computer Science and Engineering Department Head
Professor
Phone Number: 
612-625-2068
Office Location: 
Kenneth H Keller Hall room 6-201
Education: 

M.S. Computer Science and Engineering from the Royal Institute of Technology, Sweden, 1988.

Ph.D. Computer Science, University of California at Irvine, 1994.

Biography: 

Professor Mats Heimdahl specializes in software engineering and safety critical systems. He is the director of the University of Minnesota Software Engineering Center (UMSEC).

Heimdahl is the recipient of the National Science Foundation's CAREER award, a McKnight Land-Grant Professorship and the McKnight Presidential Fellow award at the University of Minnesota, and the University of Minnesota Award for Outstanding Contributions to Post-Baccalaureate, Graduate, and Professional Education.

Research: 

Software is increasingly involved in our lives; software controls physical systems ranging from microwave ovens and watches to nuclear power plants, aircraft, and cars. Computer-related failures can, in many of these applications, have catastrophic effects.

My research group, the Critical Systems Research Group (CriSys), is conducting research in software engineering and is investigating methods and tools to help us develop software with predictable behavior free from defects.

Research in this area spans all aspects of system development ranging from concept formation and requirements specification, through design and implementation, to testing and maintenance. In particular, we are currently investigating model-based software development for critical systems.

Specifically, we are focusing on how to use various static verification techniques to assure that software requirements models possess desirable properties, how to correctly generate production code from software requirements models, how to validate models, and how to effectively use the models in the testing process.

Interests: 

Software engineering and safety critical systems.

Recent Publications

Efficient Test Coverage Measurement for MC/DC

Numerous activities require low-overhead monitoring of software applications, for example, run-time verification, test coverage measurement, and data collection. To support monitoring, current approaches usually involve extensive instrumentation of the software to be monitored, causing significant performance penalties and also requiring some means to ensure that the monitoring code will not cause incorrect behavior in the monitored application. To tackle this problem, we have explored a hardware-supported framework for monitoring and observation of software-intensive systems.

Observable Modified Condition/Decision Coverage

In many critical systems domains, test suite adequacy is currently measured using structural coverage metrics over the source code. Of particular interest is the modified condition/decision coverage (MC/DC) criterion required for, e.g., critical avionics systems. In previous investigations we have found that the efficacy of such test suites is highly dependent on the structure of the program under test and the choice of variables monitored by the oracle.

Modes, Features, and State-Based Modeling for Clarity and Flexibility

The behavior of a complex system is frequently defined in terms of operational modes—mutually exclusive sets of the system behaviors. Within the operational modes, collections of features define the behavior of the system.

Pages