Mission critical software is common in both aerospace and medical devices. It is essential that all steps are taken to verify systems will operate properly, as failure of a mission critical system can cause risk to human life. Because proper execution of mission critical systems is so essential to those relying on them, it is important to understand areas of the source code which may be risky due to being too complicated. In this paper, we evaluate the available source code for the Loop automated insulin delivery system. We perform calculations of various software metrics as well as execute static analysis to identify areas in the Loop project which may be considered risky due to being too complicated. The resulting information can be provided to project developers and help mitigate some of the risk of those using the Loop insulin delivery system. This information will also be beneficial for future projects creating safe, mission critical, systems.
Researched performed by Michael Dorin and Dr. Sergio Montenegro