Infusion Pump Controller Requirements Definition A Decision-Table Approach by Richard Riehle.

Slides:



Advertisements
Similar presentations
5387 Avion Park Drive Highland Heights, Ohio INTUNE v4.4 Demonstration.
Advertisements

Process Monitoring is only the first step in improving process efficiency.
1 Comparison of Analog vs. Advance Technology Air Sampling System Designs To Facilitate Correction of Measured or Calculated Volumes to a Set of Reference.
June 2010 At A Glance The Room Alert Adapter software in conjunction with AVTECH Room Alert™ devices assists in monitoring computer room environments as.
Analysis Modeling.
3442 Industrial Instruments 2 Chapter 11 Digital Controllers Dr. Bassam Kahhaleh Princess Sumaya Univ. Electronic Engineering Dept.
ServiceLink Direct From Walker Martyn Software Ltd.
Neoteric Technology Ltd – All Rights Reserved - © 2006
Remote Monitoring and Management Solutions ®
CHE 185 – PROCESS CONTROL AND DYNAMICS
6/22/011 Case Study: Computer Assisted Resuscitation Algorithm (CARA) System Insup Lee Department of Computer and Information Science University of Pennsylvania.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 11: Monitoring Server Performance.
Lecture 13 Revision IMS Systems Analysis and Design.
User Interface Design: Methods of Interaction. Accepted design principles Interface design needs to consider the following issues: 1. Visual clarity 2.
Data. Where does data come from? Acquisition of information –The acquisition of information is how the data is provided to the system. –It can be done.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Design of a Control Workstation for Controller Algorithm Testing Aaron Mahaffey Dave Tastsides Dr. Dempsey.
SDRL & RTG University of Pennsylvania 8/3/2001 Formalization of CARA system requirements Oleg Sokolsky Department of Computer and Information Science University.
8/3/011 Formal methods for CARA development Insup Lee (Univ. of Pennsylvania) Rance Cleaveland (SUNY at Stony Brook) Elsa Gunter (NJIT)
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
Implementation/Acceptance Testing / 1 Implementation and Acceptance Testing Physical Implementation Criteria: 1. Data availability 2. Data reliability.
Monitoring and Measurement
TRACK 3™ The ultimate process management software.
It consists of computers that are used to regulate the operation of other devices. It involves the use of sensors, ADCs, DACs and actuators.
EMBEDDED SOFTWARE Team victorious Team Victorious.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
 A data processing system is a combination of machines and people that for a set of inputs produces a defined set of outputs. The inputs and outputs.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Systems 1.
User Interface Theory & Design
RNJ 10/02/091 3 Computing System Fundamentals 3.6 Errors Prevention and Detection.
ENVIROTRAC: A Premier Chamber Monitoring and Data Acquisition System Envirotrac A Guided Tour.
Real-Time Software Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
NetVuze Precision Network Meter standalone, easy to use, networked with data logging.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
CS 501: Software Engineering Fall 1999 Lecture 16 Verification and Validation.
Accessible Manufacturing Equipment Phase 2 Team 2 Nicholas Neumann Ralph Prewett Jonathan Brouker Felix Adisaputra Li Tian December 10 th, 2010 ECE 480.
Physiologic Control Algorithms for Rotary Blood Pumps using Pressure Sensor Input Edward Bullister, Ph.D. Sanford Reich, Ph.D. APEX Medical, Inc. ISRP.
1. Introduction 1.1 Background 1.2 Real-time applications 1.3 Misconceptions 1.4 Issues in real-time computing 1.5 Structure of a real-time system.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 11: Monitoring Server Performance.
LDA Large Display for Analog Inputs. Agenda What is the LDA? Easy programming About the input Setpoint control Communication Other features Packaging.
Data entry: Validation
Reference: Ian Sommerville, Chap 15  Systems which monitor and control their environment.  Sometimes associated with hardware devices ◦ Sensors: Collect.
Interactive CARA Simulation Prof. Insup Lee. Hierarchical EFSM Specification for CARA.
NITWITS NITPICKING Ard Bahlman. Assumptions  “A customer will be required to insert an ATM card and enter a personal identification number (PIN) which.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 11: Monitoring Server Performance.
User Interface Theory & Design Lecture 6a 1.  User interface is everything the end user comes into contact with while using the system  To the user,
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
1 Ch. 1: Software Development (Read) 5 Phases of Software Life Cycle: Problem Analysis and Specification Design Implementation (Coding) Testing, Execution.
Real-time Software Design King Saud University College of Computer and Information Sciences Department of Computer Science Dr. S. HAMMAMI.
Control Theory Control System Objectives  Establish a final condition  Provide safe operation  Eliminate the human element  Assure economical operation.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
Wireless TL70 Sure Cross ® Wireless TL70 Tower Lights combine the best of Banner’s popular Tower Light family with the reliable, field-proven, Sure Cross.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Facilitating testing and monitoring of number entry systems in medical devices Abigail Cauchi, Christian Colombo, Mark Micallef & Gordon Pace.
Nanofluidic Characterization David Sharp David West Justin Davis.
The Software for the CERN Detector Safety System G. Morpurgo, R. B. Flockhart and S. Lüders, CERN IT/CO.
CISSP Common Body of Knowledge Review by Alfred Ouyang is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
Learning Objectives Understand the concepts of Information systems.
Chapter 6: System Models Omar Meqdadi SE 273 Lecture 6 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Brief Version of Starting Out with C++ Chapter 1 Introduction to Computers and Programming.
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
SwCDR (Peer) Review 1 UCB MAVEN Particles and Fields Flight Software Critical Design Review Peter R. Harvey.
A Cost Effective Centralized Single parameter Patient Monitoring System Abstract Lack of Medical monitoring equipment's in rural areas of underdeveloped.
Introduction to Data Logging Technology Enhanced Inquiry Based Science Education.
“What do I do ?”, “How do I do it ?”, What do I do it with ?
An Introduction to Structured Program Design in COBOL
CS 501: Software Engineering Fall 1999
CHAPTER 6 Testing and Debugging.
Presentation transcript:

Infusion Pump Controller Requirements Definition A Decision-Table Approach by Richard Riehle

CARA p Computer-Aided Resuscitation Algorithm p Purpose v Blood Pressure Monitoring v Prevent Hypotension v Fluid Resuscitation

Controlling Instrumentation p Infusion Pump p Physiological Monitoring Device v arterial line v non-invasive cuff v pulse wave v others may be added

Objective p Use results from PMD v Define acceptable range for BP v Detect out of range conditions p Activate M100 Infusion Pump v Fluid resuscitation measures p Log activity

Some General Software Guidelines p Safety Critical Application p Single Computer p Single-threaded Algorithm p Real-time v i.e. tight timing constraints p Must be used in Rugged environment p Remote Communication Option p Marginal User Expertise

Functional Software Guidelines p Data Input From Sensors v Single BP Reading p Visual Display of Data p User-controllable range settings p Error Detection v Is sensor behaving correctly? v Is M100 behaving correctly? p Proportional Close-loop Algorithm v drives M100 Infusion Pump

Software Behavioral Considerations p Many possible conditions v BP Readings may vary v Possible interruption for maintenance è e.g. change the IV Bag è change location of infusion tube p Relatively few possible actions v Actions require feedback loop for error control Question for future design: Can this be a cyclic executive design or do we need priority preemptive scheduler?

Approach to Requirements Definition p Possible Approaches v Structured Methods è Hately-Pirbhai Boeing Method è Buhr Machine charts v Object Modeling è UML and Use Cases è Schlaer-Mellor è CRC Cards v Formal Methods v State Based Modeling Real-time extensitions to Structured Analysis Method

Chosen Approach p State Based Modeling p Why? v Single-purpose algorithm v Not an object-oriented problem v Use case: interesting but unnecessary p Decision-tables Will Work Fine p Could also use formal methods, but v There are more conditions than actions v Timing issues are important v Overkill

Why Decision Table Approach? p Safety-critical permits no set of conditions to be overlooked. p Algorithmic implementation can map well to decision table p Facilitates Communication v Easy for customer to understand v Easy for programmer to understand

Decision Table Model - 1 Condition-1 T T T T F F F F Condition_2 T T F F F T T F Condition-3 T F T F F T F T Action-1 X X Action-2 X X Action-3 X X Action-4 X X X Action-5 X

Decision Table Model - Condition Stub Condition-1 T T T T F F F F Condition_2 T T F F F T T F Condition-3 T F T F F T F T Action-1 X X Action-2 X X Action-3 X X Action-4 X X X Action-5 X Condition Stub

Decision Table Model - Action Stub Condition-1 T T T T F F F F Condition_2 T T F F F T T F Condition-3 T F T F F T F T Action-1 X X Action-2 X X Action-3 X X Action-4 X X X Action-5 X Action Stub

Decision Table Model - Condition Entry Condition-1 T T T T F F F F Condition_2 T T F F F T T F Condition-3 T F T F F T F T Action-1 X X Action-2 X X Action-3 X X Action-4 X X X Action-5 X Condition Entry

Decision Table Model - Action Entry Condition-1 T T T T F F F F Condition_2 T T F F F T T F Condition-3 T F T F F T F T Action-1 X X Action-2 X X Action-3 X X Action-4 X X X Action-5 X Action Entry

Four Step Process p Define all the Possible Actions v (for ActionStubs) p Define all the Possible Conditions v (for Condition Stubs) p Determine which conditions are Possible v Eliminate those that cannot ever occur p Which Conditions trigger which actions

CARA Actions è Monitor Air Pump Line è Monitor Impedance Signals è Display Error Message è Trigger Audible Alarm è Set Alarm Lamp On è Monitor EMF Line è Keep track of infused fluids è Calculate and Log Volume Infused è Record when in manual/automatic mode è Monitor Blood Pressure è Log Blood Pressure reading è Record Source of BP Reading è Record time of BP Reading è Display BP Graph è Display Flow Rate Graph è Display Infused Volume Graph è Display Numerical values for BP, Infused Volume, etc. è Keyboard entry of BP to which CARA with titrate Not an exhaustive list

CARA Conditions è Current BP Reading in Range? è Pulse Wave Signal Detection? è Using Cuff Pressure? è Arterial Line? è Beat to Beat Source? è Valid BP Reading? è Cuff Frequency > Some Value? è Drop in BP Occurred? è In Autocontrol Mode? è Pause button Activated? Not an exhaustive list

Sample Decision Table for CARA BP <= 60 hg T T T T T T T T F F F F F F F F Valid BP F F F F T T T T F F F F T T T T BP => SetPoint F T T F T T F F F F T T T T F F Prev BP /= Current BP F F T T T F T F F T F T T F F F Action 1 X Action 2 X Action 3 X Action 4 X

Summary p Decision Tables are v Simple to Use v Easy to read p CARA lends itself to this approach v Cannot afford undiscovered conditions v Must match all actions to some conditions

Questions?