Analyzing medical processes

This paper shows how software engineering technologies used to define and analyze complex software systems can also be effective in detecting defects in human-intensive processes used to administer healthcare. The work described here builds upon earlier work demonstrating that healthcare processes can be defined precisely. This paper describes how finite-state verification can be used to help find defects in such processes as well as find errors in the process definitions and property specifications. The paper includes a detailed example, based upon a real-world process for transfusing blood, where the process defects that were found led to improvements in the process.

[1]  George S. Avrunin,et al.  Rigorously Defining and Analyzing Medical Processes: An Experience Report , 2008, MoDELS.

[2]  Jarir K. Chaar,et al.  RainMan: A Workflow System for the Internet , 1997, USENIX Symposium on Internet Technologies and Systems.

[3]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[4]  Alessio Bottrighi,et al.  GLARE: a Domain-Independent System for Acquiring, Representing and Executing Clinical Guidelines , 2006, AMIA.

[5]  Gail E. Kaiser,et al.  A paradigm for decentralized process modeling and its realization in the OZ environment , 1994, Proceedings of 16th International Conference on Software Engineering.

[6]  Carlo Ghezzi,et al.  Process Model Evolution in the SPADE Environment , 1993, IEEE Trans. Software Eng..

[7]  J. Grossman,et al.  Building a Better Delivery System: A New Engineering/Health Care Partnership , 2005 .

[8]  George S. Avrunin,et al.  Using integer programming to verify general safety and liveness properties , 1995, Formal Methods Syst. Des..

[9]  Frank van Harmelen,et al.  Improving medical protocols by formal methods , 2006, Artif. Intell. Medicine.

[10]  Vincenzo Gervasi,et al.  On the Systematic Analysis of Natural Language Requirements with CIRCE , 2006, Automated Software Engineering.

[11]  Barbara Lerner,et al.  Verifying process models built using parameterized state machines , 2004, ISSTA '04.

[12]  Marco Pistore,et al.  Nusmv version 2: an opensource tool for symbolic model checking , 2002, CAV 2002.

[13]  Dennis Heimbigner,et al.  APPL/A: a language for software process programming , 1995, TSEM.

[14]  H. Schneider Failure mode and effect analysis : FMEA from theory to execution , 1996 .

[15]  H S Kaplan,et al.  The attributes of medical event-reporting systems: experience with a prototype medical event-reporting system for transfusion medicine. , 1998, Archives of pathology & laboratory medicine.

[17]  L. Kohn,et al.  To Err Is Human : Building a Safer Health System , 2007 .

[18]  Hassen Saïdi,et al.  Construction of Abstract State Graphs with PVS , 1997, CAV.

[19]  Lori A. Clarke,et al.  Flow analysis for verifying properties of concurrent software systems , 2004, TSEM.

[20]  Leon J. Osterweil,et al.  Little-JIL/Juliette: a process definition language and interpreter , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[21]  Norbert E. Fuchs,et al.  Attempto Controlled English - Not Just Another Logic Specification Language , 1998, LOPSTR.

[22]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[23]  A. Wall,et al.  Book ReviewTo Err is Human: building a safer health system Kohn L T Corrigan J M Donaldson M S Washington DC USA: Institute of Medicine/National Academy Press ISBN 0 309 06837 1 $34.95 , 2000 .

[24]  Yuval Shahar,et al.  The Asgaard project: a task-specific framework for the application and critiquing of time-oriented clinical guidelines , 1998, Artif. Intell. Medicine.

[25]  Rita Noumeir Radiology interpretation process modeling , 2006, J. Biomed. Informatics.

[26]  Ethan Katz-Bassett,et al.  Increasing patient safety and efficiency in transfusion therapy using formal process definitions. , 2007, Transfusion medicine reviews.

[27]  John Fox,et al.  Application of Information Technology: The Syntax and Semantics of the PROforma Guideline Modeling Language , 2003, J. Am. Medical Informatics Assoc..

[28]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[29]  Voak,et al.  Quality of transfusion practice beyond the blood transfusion laboratory is essential to prevent ABO‐incompatible death , 2000, Transfusion medicine.

[30]  George S. Avrunin,et al.  Complex medical processes as context for embedded systems , 2006, SIGBED.

[31]  Bin Chen,et al.  Definition and Analysis of Election Processes , 2006, SPW/ProSim.

[32]  P. Terenziani,et al.  SPIN Model Checking for the Verification of Clinical Guidelines , 2022 .

[33]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[34]  Benjamin N. Grosof,et al.  A declarative approach to business rules in contracts: courteous logic programs in XML , 2015, EC '99.

[35]  Silja Renooij,et al.  Probabilities for a probabilistic network: a case study in oesophageal cancer , 2002, Artif. Intell. Medicine.

[36]  Lori A. Clarke,et al.  Using Process Definitions to Facilitate the Specification of Requirements , 2006 .

[37]  Matthew B. Dwyer,et al.  Translating Java for Multiple Model Checkers: The Bandera Back-End , 2005, Formal Methods Syst. Des..

[38]  M. Foss,et al.  Evolution of quality management: integration of quality assurance functions into operations, or “quality is everyone's responsibility” , 2003, Transfusion.

[39]  Leslie D. Atkinson,et al.  Fundamentals of Nursing: A Nursing Process Approach , 1985 .

[40]  Kurt Stenzel,et al.  Formal System Development with KIV , 2000, FASE.

[41]  George S. Avrunin,et al.  Patterns in property specifications for finite-state verification , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[42]  Lori A. Clarke,et al.  Ensuring reliable datasets for environmental models and forecasts , 2007, Ecol. Informatics.

[43]  George S. Avrunin,et al.  User guidance for creating precise and accessible property specifications , 2006, SIGSOFT '06/FSE-14.

[44]  Norbert E. Fuchs Logic Program Synthesis and Transformation , 1998, Lecture Notes in Computer Science.

[45]  D. Drusinsky Visual formal specification using (N)TLCharts: statechart automata with temporal logic and natural language conditioned transitions , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[46]  Marco Pistore,et al.  NuSMV 2: An OpenSource Tool for Symbolic Model Checking , 2002, CAV.

[47]  S A Galel,et al.  Practical approaches to improve laboratory performance and transfusion safety. , 1997, American journal of clinical pathology.

[48]  W E Vesely,et al.  Fault Tree Handbook , 1987 .

[49]  Massimo Ruffolo,et al.  Process Management in Health Care: A System for Preventing Risks and Medical Errors , 2005, Business Process Management.

[50]  Leon J. Osterweil,et al.  Effective Resource Allocation for Process Simulation : A Position Paper , 2005 .

[51]  George S. Avrunin,et al.  Benchmarking finite-state verifiers , 2000, International Journal on Software Tools for Technology Transfer.

[52]  Andriy Dunets,et al.  Verification of Medical Guidelines by Model Checking - A Case Study , 2006, SPIN.

[53]  George S. Avrunin,et al.  Automatic Fault Tree Derivation from Little-JIL Process Definitions , 2006, SPW/ProSim.

[54]  Lori A. Clarke,et al.  Verifying properties of process definitions , 2000, ISSTA '00.