Laboratory of Software Engineering
Laboratory leader: Brian Fitzgerald (acting) 301-796-2579 Brian.firstname.lastname@example.org
Division of Electrical and Software Engineering
Software is one of the most ubiquitous enabling technologies for many, if not most, classes of medical devices and device manufacturing systems. Historically, FDA's oversight of software development in medical products has relied upon (documentation) artifacts derived from quality system based software development life cycle (SDLC) processes. However, there is currently no consistent or dependable means to assess software quality based purely on these artifacts, or the software derived from them.
As medical (device) systems become more complex, autonomous, and integral to society there is a need for establishing sufficient design arguments and evidence to assure that the system (device) will perform as intended; i.e. is certifiably dependable. A key element in this challenge is establishing “sufficient evidence” that the software is safe. This, in turn, depends on the integrity of the SDLC artifacts; which include the software itself. This means that analysis, synthesis, integration, verification, validation activities must be certifiable. One way of accomplishing this goal requires the development of model-based engineering technology that has a provable mathematical foundation and model-based certifiable tool chains that represent and resolve both logical and physical system interoperability.
The mission of the DESE Software Laboratory is to transition new technologies into regulatory practices of the Center in ways that advance the Center’s mission. DESE Software laboratory scientists are working with other government agencies and academic institutions to explore new ideas on model-based engineering methods and tool chain components with the goal of applying them in the context of the Center’s mission.
Key areas of research include:
- Model based engineering and instrument based verification techniques
- Model checking based on formal methods
- Static analysis verification techniques
- Simulation techniques
- Structured assurance cases
- Medical device interoperability
- Medical device security
- Medical device “flight-data” recording and animation
- Forensic analysis