A medical device should not crash or confuse. A device crash can be anything from inconvenient to life threatening, while confusing device behavior can lead a user to draw an incorrect medical conclusion. While rigorous testing will remain essential, new approaches to design, implementation, and certification have great potential to increase our confidence in medical devices. At the end of the rainbow in this research area lays a design for certifiability paradigm in which programmers think of certification from day one and create designs and code that can be certified by static error checking tools. The project's goal is to develop languages and tools for designing, building, and certifying medical device software in elegant and powerful new ways. The project focuses on a common class of medical devices called medical monitoring devices. The investigators envision a certification tool that can meet challenges related to space bounds, soft-real-time response, life time, and meaningful results. The project's goal is to take a major step towards design for certifiability and to bring closer the day when the FDA will use static error checking tools frequently and routinely. One of the outcomes of the project will be open-source versions of medical device software, along with implementations of the new language and certification tools. The result is a platform for experimenting with software for medical devices that may open up new possibilities for researchers.