Abstract
The design and implementation of software for medical devices is challenging due to the closed-loop interaction with the patient,
which is a stochastic physical environment. The safety-critical nature and the lack of existing industry standards for verification
make this an ideal domain for exploring applications of formal modeling and closed-loop analysis. The biggest challenge is
that the environment model(s) have to be both complex enough to express the physiological requirements and general enough
to cover all possible inputs to the device. In this effort, we use a dual chamber implantable pacemaker as a case study to
demonstrate verification of software specifications of medical devices as timed-automata models in UPPAAL. The pacemaker model
is based on the specifications and algorithm descriptions from Boston Scientific. The heart is modeled using timed automata
based on the physiology of heart. The model is gradually abstracted with timed simulation to preserve properties. A manual
Counter-Example-Guided Abstraction and Refinement (CEGAR) framework has been adapted to refine the heart model when spurious
counter-examples are found. To demonstrate the closed-loop nature of the problem and heart model refinement, we investigated
two clinical cases of Pacemaker Mediated Tachycardia and verified their corresponding correction algorithms in the pacemaker.
Along with our tools for code generation from UPPAAL models, this effort enables model-driven design and certification of
software for medical devices. ? 2013 Springer-Verlag Berlin Heidelberg.