Software Engineering
in the Health Care Field

Team 10   

Presenter - Anant Shenoy Jedi Knight

Minhtue Truong

Jayashree Patel

Michael Leyfer

Lee Stemkoski

 

I. Introduction to Medical Software Informatics

Medical Informatics - The application of computers, communication and information technology and systems to all fields of medicine including medical care, medical education and medical research.

 

Medical Software Informatics - Developing bodies of knowledge and techniques concerned with the use of software to acquire, store, analyze, communicate and display medical information and knowledge to facilitate understanding and improve accuracy, timeliness and reliability of decision making.

 

There are 2 key parts to this definition:

 

     The applications to the software

 

     “developing body of knowledge and techniques”

 

II. Different Applications of Medical Software Informatics

A. Teaching

B. Surgery

C. Computer-Based Patient Records(CPR)

D. Other Uses

A. Teaching

     Why are they used?

   Medical learning can only be learned in a hands on environment.

   Mistakes due to inexperience can be very expensive and dangerous for a patient.

   Allows practice in an environment where mistakes do not have dire consequences

 

     How are they used?

 

   Software simulators are created to accurately depict a patient’s case.

 

   Examples include:

   HT Medical Systems IV Therapy Simulator

   The Penn. State Dummy

 

     Benefits of use:

 

   Less risk than training with humans.

 

   Avoid using animals.

 

   Allows for establishment of standards and optimizations.

 

   Simulator Software allows repeat tests to hone skills.

 

B. Surgery

     Why are they used?

   Surgery is a delicate procedure.

   Surgery takes a long time.

   Much surgery is irreversible.

 

     How are they used?

   Ultrasound machines

   KRS-1 Knee Replacement System by Musculographics Inc.

   An extreme example that is still under testing

   In the past, knee replacement surgery was done with mechanical instrumentation systems that were not perfect.

   The KRS-1 is a computer-based software system that consists of pre-operative planning software.

   It has been shown to provide a more accurate knee replacement.

 

 

 

KRS-1 Knee Replacement Systems follow the following steps:

Step 1 - 3D models of the patient’s femur and tibia are constructed from CT data with attention given to the whole body’s axis for alignment.

 

Step 2 - The planning software is then used to orient the tibial and fibial components.  The software calculates bone angles for alignment to produce intended implant contact.

 

Step 3 - The results of this pre-operative plan are then conveyed to a computer located in the operating room.

 

Step 4 - A coordinate measuring machine was used to touch the surface of the femur and tibia.  This step registers the actual physical bones into the computer.

 

Step 5 - The system guides the doctors on how to place bones for the rest of the surgery.

 

     Benefits of use:

   Improves accuracy.

   Reduces time and cost.

   Reduces risk to patient.

C. Computer-Based Patient Records (CPR)

     Why are they used?

   11% of laboratory tests must be reordered due to lost results.

   Doctors spend 35% of their time doing paperwork.

   50% of paper based medical records are missing or incomplete.

   Healthcare has become delocalized.

   Case Example - Kent General Hospital

 

     How are they used?

 

   There are many kinds of CPR’s but they all have the following properties:

   Integrated view of patient data

   Access to knowledge resources

   Physician and Clinician Order and Data Entry

 

 

   A Case Example: Cerner Laboratory System at Children’s Hospital

 

     Benefits of use:

   Re-evaluate efficiency of workflow.

   Less time devoted to results reporting.

   Organizational improvement.

   Space saving.

 

D. Other uses

     Software in Medical Imaging

     Home Healthcare

     Medical Research

     Medical Billing

III. Problems and Solutions Faced in Software Development in Medical Software Informatics

 

     These are the specific problems that arise during the creation of Medical Software

     Note that many of the solutions to these problems are concepts we discussed in class.

 

A. Easy to use interface

         - Many doctors are computer illiterate

          - They are too lazy to learn new things

          - This encompasses another problem: While making the program easier to use, it should not lose function.

 

B. Validation: Does it do what the hospital wants

          - The needs of one hospital are not the needs of another hospital.

Solution to both problems:

     Medical Software Quality Deployment Model

   Quality Function Deployment Model - Quality management technique which transfer the needs of the customer into technical requirements for software.

   Medical Software Quality Deployment Model - The principles of QFD applied to MSI.

   The Software Process is divided into phases.

 

     Phases of the Medical Software Quality Deployment Model:

   Pre-study phase

   Data collection phase

   Need specification phase

   Design phase  

     Using this method we can solve both of these problems because the customer has a direct hand in the software development.

 

C. Cost management

   - In the 1990’s healthcare costs have approached 1 trillion dollars.

   - HMO’s are trying to provide best care while cutting costs.

     - This carries over to all aspects of healthcare even software development.

     - This forces competitors to put out more efficient software at cheaper costs.

 

     - One potential solution is the Medical Object Library (MOL).

 

 

     The Medical Object Library (MOL)

   Consists of reusable, inheritable, portable, extendable C++ classes that facilitate faster development of medical software at reduced cost and increased functionality.

   Includes everything from simple string and file handling entities to the more complicated tasks like imaging.

   Very similar to our Rapid Application Development Model of Software Development (RAD).

 

D. Safety

   - If a piece of software does not do what it is supposed to then lives are at stake.

 

E. Security of Records

   - Patient confidentiality is at the heart of medicine.

     - That is why doctors take the Hippocratic Oath.

     - Systems such as CPR’s must maintain this confidentiality.

The solution to both these is addressed in the article Writing software for the clinic.

 

     In Writing Software for the clinic, Rosen makes suggestions that we can avoid errors when developing clinical software if we follow four basic steps.

   Specifications:

   Determine what the software is to do

   This helps delimit the scope of the project and serves as a good benchmark for the final project.

   Design:

   Simple and straightforward

   Basically all the concepts we discussed in class

   Implementation:

   Use well known algorithms whenever possible

   Use prototypes to test new ideas

 

   Test:

   This should be done throughout the whole process and then afterwards as well.

   50% of the time spent should be spent on testing

   Allow no changes after clinical release

     FDA Principles for Testing Software for Medical Devices

   Took effect June 1, 1997

   Basically same principles as above

     Moral of the Story - Good development principles are universal no matter what field one is applying them to.

 

F. Universality

   - So many software choices that usually all use their own protocols.

    - This prevents inter-hospital transfer impossible and even affects intra-hospital transfer.

   - Usually caused by data standards including functional content, vocabulary and data format.

        Example : I have seen the abbreviation for Emergency Room as all of the following: EM, ER and EmR

 

     - This is one of biggest problems because there seems to be no solution in sight.

 

IV. The Future of Medical Software Informatics

     A need for addressing many of the problems I suggested today

     A Doctor’s Vision

     A Prediction from 1968

     Need for good programmers