Unit verification: the CARA experience

  • Authors:
  • Arnab Ray;Rance Cleaveland

  • Affiliations:
  • SUNY at Stony Brook, Department of Computer Science, USA;SUNY at Stony Brook, Department of Computer Science, USA

  • Venue:
  • International Journal on Software Tools for Technology Transfer (STTT)
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

The computer-aided resuscitation algorithm, or CARA, is part of a US Army-developed automated infusion device for treating blood loss experienced by combatants injured on the battlefield. CARA is responsible for automatically stabilizing a patient’s blood pressure by infusing blood as needed based on blood pressure data the CARA system collects. The control part of the system is implemented in software, which is extremely safety critical and thus must perform correctly .This paper describes a case study in which a verification tool, the Concurrency Workbench of the New Century (CWB-NC), is used to analyze a model of the CARA system. The huge state space of CARA makes it problematic to conduct traditional “push-button” automatic verification such as model checking. Instead, we develop a technique called unit verification, which entails taking small units of a system, putting them in a “verification harness” that exercises relevant executions appropriately within the unit, and then model checking these more tractable units. For systems like CARA whose requirements are localized to individual system components or interactions between small numbers of components, unit verification offers a means of coping with huge state spaces.