Electronic Healthcare Design and Development Background The goal of this project is to design and develop a course on Electronic Healthcare Design and Development using Unified Modeling Language (UML) and Java. Electronic healthcare, for paperless management of all activities within large healthcare establishments, promises much in speeding up the typical bureaucracy of healthcare in medical centers and hospitals. However, the realities that face the proper implementation of electronic healthcare involve the integration of many subsystems for EHR to be properly executed. For widespread adoption of electronic health record (EHR) systems by hospitals, it is essential to perform a detailed software analysis and design, to set the stage for standardization of various components for the implementation of EHR. A typical EHR system can consist of many components and subsystems, such as appointments and scheduling; admission, discharge, and transfer (ADT); prescription order entry; dietary planning; routine clinical notes; lab and radiology orders; picture archiving, and smart card sign-on. Thus, object-oriented analysis and design is well-suited for modeling the complexity posed by this type of software system. This course will undertake the object-oriented design and development of EHR and its various subsystems using Unified Modeling Language (UML) and Java. In addition, the development platform will use Eclipse and Websphere for the implementation and integration of the various subsystems. Unified Modeling Language (UML) is the defacto modeling language for object-oriented analysis and design. UML is not a programming language for software implementation, but rather a modeling language for software design. A software design is like a blueprint for a house, defining the model for creating the software. Software design models typically consist of a set of visual diagrams which describe the structural and behaviorial properties of software. Much like a blueprint, a software design needs to have a common set of notations to define what is the meaning of, for example, an arrow verses a square. This is the purpose of UML: to define a complete set of notations for the various visual models when creating an object-oriented design model. Typical diagrams for objectoriented design are use case diagrams, class diagrams, sequence/collaboration diagrams, activity diagrams, and statechart diagrams. The Java programming language is becoming more and more popular all types of computers and devices. With the proliferation of higher functioning devices, Java applications can be developed to run on multiple targets, with a common set of application code. This course will expose students to the basics of electronic healthcare design and development with UML and Java. Laboratory sessions will equip students with practical experience in electronic healthcare design, programming, and testing. As part of their final assignment, students will divide into teams to work together in a designing and implementing real software applications for electronic healthcare. The IBM Health Integration Framework is a unified software platform for implementing comprehensive solutions for healthcare providers, healthcare plans and life sciences enterprises to improve safety and quality of care, process efficiency, and patient and member satisfaction. Course Overview: The course is designed to introduce the theory and practice of object-oriented design and programming with a real-world case study in electronic healthcare development. The objectives are: This course provides an overview of electronic healthcare design and development, with a thorough grounding in the Java and UML languages. Using a mixture of demonstration and practical sessions, students will gain a sound appreciation electronic healthcare design and development using open standards. The practice sessions focus on developing and deploying real applications in electronic healthcare. This is a lab-based course in which students gain hands-on experience by developing the electronic healthcare applications. IBM 2010 Healthcare Industry Skills Innovation Award Proposal 1
Course Objectives: Understand how to incorporate technology into the provision of electronic healthcare Understand basic object-oriented concepts Provide an understanding of the fundamentals of the Java programming language Apply an iterative, use case-driven process to the development of a robust design model Use the UML to represent the design model Apply the OO concepts abstraction, encapsulation, inheritance, hierarchy, modularity, and polymorphism to the development of a robust design model Design an electronic healthcare system using object-oriented software engineering paradigm Students will learn: Basics of electronic healthcare terminologies and applications Practical knowledge in the UML diagrams and notations How to build object-oriented model for their project using UML The core Java syntax and semantics How to use Java in electronic healthcare systems The following provides an outline of the topics covered in this proposed course: Overview of Electronic Healthcare - Healthcare Informatics - Information Management and Evaluation - Electronic Health Records - Computerized Order Entry - Health Care Terminologies and Coding - Clinical Decision Support Systems - Public Health Informatics - Patient Care Management - Consumer Health - Open Standards in Electronic Healthcare Object Oriented Programming - Introduction to Object Orientation - Encapsulation - Inheritance and Polymorphism Introduction to Java Programming - What is Java - What can be developed with Java - J2SE, J2EE, J2ME - Evolution of Java The Core Java Language - Identifiers and Reserved Words - Primitive data types - Expressions and operators - Iteration - Decision making - Classes and objects - Arrays IBM 2010 Healthcare Industry Skills Innovation Award Proposal 2
Classes and Interfaces - Constructing and Destroying Objects - Encapsulation - Inheritance - Abstract classes and methods - Interfaces - Static members - Inner classes - Anonymous classes Java I/O - Input/Output streams - Java Exception handling Object-Oriented Analysis and Design with UML - UML Diagrams - Class Diagrams - Use-Case Diagrams - Interaction Diagrams - State Diagrams - Activity Diagrams - Component and Deployment Diagrams - Design Patterns Electronic Healthcare Implementation and Cases - Eclipse and Websphere - IBM Health Integration Framework - IBM InfoSphere Clinical Analytics - IBM WebSphere Message Broker - IBM Healthcare Industry Toolbox for WebSphere - IBM WebSphere Transformation Extender Pack - IBM WebSphere Healthcare Content Pack Case Study The case study involves the development of an electronic healthcare system. This includes building (all in Java): A configuration utility as a graphical user interface A full concurrent Web server Appointments and scheduling Admission, Discharge, and Transfer (ADT) Prescription Order Entry Dietary Planning Routine Clinical Notes Lab and Radiology Orders. Picture Archiving. Smart Card Identification This case study highlights a complete end to end system implemented in Java and highlights the advantages and disadvantages of the language as well as providing practical experience of the important Java application domains for electronic healthcare development. IBM 2010 Healthcare Industry Skills Innovation Award Proposal 3
In order to develop this course, the following milestones are proposed: Milestones Year 1 Q1 Q2 Q3 Q4 Recruitment of teaching assistant, literature and textbook search Design of Lecture Notes Development of Laboratory Exercises and Solutions Development of Case Study Documentation and Course Book Writing Finalization of Lecture Notes The first milestone will design the lecture notes after recruiting a teaching assistant and performing literature search for suitable textbooks. The first milestone will take approximately 3 months for completion. The second milestone will develop the laboratory exercises, solutions, and case study for the course. The laboratory exercises focus on designing and developing applications using UML and Java. The case study involves the development of an electronic healthcare application, which involves a complete end to end system implemented in Java, and the integration of open standards such as IBM InfoSphere Clinical Analytics, IBM WebSphere Message Broker with support for HL7, IBM Healthcare Industry Toolbox for WebSphere Portal, IBM WebSphere Transformation Extender Industry Pack for Healthcare, and IBM WebSphere Healthcare Content Pack. The second milestone will take approximately 6 months for completion. The final milestone will perform the final documentation for the project, which includes the writing of the course book and finalizing the lecture notes. The final milestone will take approximately 3 months for completion. References: 1. Tsai, Flora S. Object-Oriented Software Engineering, McGraw-Hill, 2006. 2. The IBM Health Integration Framework: Accelerating solutions for smarter healthcare, IBM White Paper, 2010. 3. Weiss, G. "Welcome to the (almost) digital hospital", IEEE Spectrum, pp. 44-49, Mar. 2002. 4. Tsai, Flora S. Security Issues in E-Healthcare, Journal of Medical and Biological Engineering, vol. 30, no. 4, pp. 209-214, 2010. Amount of funding requested, in US Dollars We request $10,000 for this project. There is currently no funding for this project. IBM 2010 Healthcare Industry Skills Innovation Award Proposal 4
Impact in demonstrating the problem/solution for Smarter Healthcare IT solutions and open source technologies The EHR is the key in development of a truly digital hospital, where everyday operations and record-keeping are carried out and maintained almost exclusively with computers. EHRs have been a healthcare priority for years in many countries. However, progress in implementing EHRs has lagged behind the latest information technologies available, and only a minority of hospitals and clinics actually use them. This project will demonstrate to the information/ computing industry that the time and cost in designing and implementing an EHR system need not be prohibitively high. With this pilot project, it is anticipated that we will be able to sign up at least one of the local hospitals or medical clinics for a trial run. IBM can benefit by the usage of open source Smarter Healthcare IT solutions for the implementation of the EHR. In doing so, Smarter Healthcare IT solutions will be seen as good choices any healthcare systems requiring multi-language, multiplatform, and multi-vendor supported environment. Using Eclipse for this project will also promote the open source standard for software development. In addition, IBM will appear as a sponsor of this project, which can potentially increase its visibility within the medical community in Singapore, Asia, and the rest of the world. This course can also be integrated into the final year undergraduate subject "Object-Oriented Software Engineering Design", which covers object-oriented design and programming using UML and Java with theoretical and hands-on laboratory exercises. As part of the final assignment, students divide into groups of 3-4 to design and develop a subsystem of the EHR system using UML, Java, Eclipse, with open standards in Smarter Healthcare IT solutions such as IBM WebSphere Message Broker with support for HL7, IBM Healthcare Industry Toolbox for WebSphere Portal, IBM WebSphere Transformation Extender Industry Pack for Healthcare, and IBM WebSphere Healthcare Content Pack. Resources This project will be managed by Dr. Flora Tsai of Nanyang Technological University (NTU) in Singapore. A brief biography appears below. Dr. Flora Tsai is a graduate of MIT. Columbia University, and NTU with degrees in Electrical Engineering and Computer Science. Since June 2001, she has been teaching Object-Oriented Software Engineering Design (UML and Java), Software Engineering and related subjects at NTU. She has previously conducted numerous professional short courses for the industry, including Object-Oriented Software Engineering with UML, Java, and Eclipse, Object-Oriented Design Using UML, Java, and Design Patterns, Object-Oriented Analysis & Design Using UML, Software Engineering Essentials, and Object-Oriented Programming Using C++ for Real-Time Embedded Systems. Dr. Tsai has edited three textbooks related to the subjects: Object-Oriented Software Engineering, Cyber Security, and E-Business Management. She was also involved in chairing the Eclipse Technology Summit, held at NTU in May 2006. Dr. Tsai was a recipient of the 2005 IBM Eclipse Innovation Award and principal investigator of a Novelty Detection Grant with Centre for Strategic Infocomm Technologies. She is currently a senior member of IEEE, member of ACM, and member in the IBM Academic Initiative. IBM 2010 Healthcare Industry Skills Innovation Award Proposal 5