Presentation is loading. Please wait.

Presentation is loading. Please wait.

The OHF Legacy Eclipse UOMo, STEM and Open Health Tools Werner Keil Eclipse Day Kraków 13 th September 2012.

Similar presentations

Presentation on theme: "The OHF Legacy Eclipse UOMo, STEM and Open Health Tools Werner Keil Eclipse Day Kraków 13 th September 2012."— Presentation transcript:

1 The OHF Legacy Eclipse UOMo, STEM and Open Health Tools Werner Keil Eclipse Day Kraków 13 th September 2012

2 2 © 2007-2012 Creative Arts & Technologies UOMoSTEMOpen Health Tools Images based on © Universal Pictures

3 Overview Introduction UOMo Type-Safety Why do we need it? Unit-API, UOMo Units and Healthcare UCUM, HL7, used by Healthcare STEM What is STEM? New Features Demo Open Health Tools Q&A 3 © 2007-2012 Creative Arts & Technologies

4 Who am I? 4 © 2007-2012 Creative Arts & Technologies Werner Keil Consultant – Coach Creative Cosmopolitan Open Source Evangelist Software Architect Java Godfather UOMo Project Lead … Twitter @wernerkeil

5 Type-Safety Java does not have strongly typed primitive types (like e.g. Ada language). For performance reasons most developer prefer primitive types over objects in their interface. Primitives type arguments often lead to name clashes (methods with the same signature)‏ 5 © 2007-2012 Creative Arts & Technologies

6 What do these disasters have in common? Patriot Missile The cause was an inaccurate calculation of the time since boot due to a computer arithmetic error. Ariane 5 Explosion The floating point number which a value was converted from had a value greater than what would be represented by a 16 bit signed integer. 6 © 2007-2012 Creative Arts & Technologies

7 Gimli Glider (near disaster) Fuel loading was miscalculated through misunderstanding of the recently adopted Metric System, replacing the Imperial System Mars Orbiter Preliminary findings indicate that one team used English units (e.g. inches, feet and pounds) while the other used metric units for a key spacecraft operation. NASA lost a $125 million Mars orbiter because a Lockheed Martin engineering team used English units of measurement while the agency's team used the more conventional metric system for a key spacecraft operation A credible source disclosed, there was a manual step with an outsourced person to convert these calculations between the different teams, and NASA budget cuts caused them to fire him and have the wrong, unpatched data transmitted!!! This also underlines the added risk when 3 rd party contractors are involved or projects are developed Offshore What do these disasters have in common? 7 © 2007-2012 Creative Arts & Technologies

8 23 rd March 1983. Ronald Reagan announces SDI (or “Star Wars”): ground- based and space-based systems to protect the US from attack by strategic nuclear ballistic missiles. NASA “Star Wars” Initiative, 1983 8 © 2007-2012 Creative Arts & Technologies

9 1985 Mirror on underside of shuttle SDI Experiment: The Plan Big mountain in Hawaii 9 © 2007-2012 Creative Arts & Technologies

10 1985 SDI Experiment: What really happened 10 © 2007-2012 Creative Arts & Technologies

11 1985: What happened? 11 © 2007-2012 Creative Arts & Technologies

12 NASA Mars Climate Orbiter, 1999 12 © 2007-2012 Creative Arts & Technologies

13 Unit Tests wouldn‘t find these… All previous example illustrate three categories of errors difficult to find through Unit Testing: Interface Errors (e.g. millisecond/second, radian/degree, meters/feet). Arithmetic Errors (e.g. overflow). Conversion Errors. Despite their name 13 © 2007-2012 Creative Arts & Technologies

14 Causes of Conversion Errors Ambiguity on the unit Gallon Dry / Gallon Liquid Gallon US / Gallon UK Day Sidereal / Day Calendar Degree Celsius / Degree Fahrenheit Did you know that Gabriel Fahrenheit was born in Gdansk (Danzig) in northern Poland?... Wrong conversion factors: static final double PIXEL_TO_INCH = 1 / 72; double pixels = inches * PIXEL_TO_INCH 14 © 2007-2012 Creative Arts & Technologies

15 Eclipse UOMo One Small Step…

16 Results with Same DimensionDifferent DimensionBinary Operations add(double) or (long)root(int) multiply(double) or (long)power(int) divide(double) or (long)multiply(Unit) compound(Unit)divide(Unit) Unary Operations inverse() Unit-API | Operations

17 Bundles UOMo currently consists of UOMo Core General parts of the framework, reusable components UOMo Util Utility classes, Formatting, Date/Time and other ICU4J or Unicode related items UOMo XML XMLPull and support for Markup Languages like UnitsML, MathML or SensorML Eclipse UOMo 17 © 2007-2011 Creative Arts & Technologies

18 Bundles (2) UOMo Units Based on Units of Measurement API UOMo UCUM Unified Code for Units of Measure support UOMo Business Business Types and Monetary System Eclipse UOMo 18 © 2007-2012 Creative Arts & Technologies

19 Unified Code for Units of Measure The Unified Code for Units of Measure is inspired by and heavily based on ISO 2955-1983 ANSI X3.50-1986 HL7's extensions called ISO+ UOMo UCUM 19 © 2007-2012 Creative Arts & Technologies

20 HL7 DSL 20 © 2007-2012 Creative Arts & Technologies def mySegment =... // assignment to another NK1 segment instance def group = message.PATIENT_RESULT(0).PATIENT group.NK1(0) = 'abc' // syntax error! msg1.NK1(0) = mySegment // syntax error! msg1.NK1(0).from(mySegment) // works! def nk1 = message.PATIENT_RESULT(0).PATIENT.NK1(0) def otherNk1 = message.PATIENT_RESULT(0).PATIENT.NK1(0) nk1[4] = otherNk1[4]// copy address nk1[4][4] = otherNk1[4][4]// copy state or province only nk1[4][4].from(otherNk1[4][4])// equivalent nk1[4][4] = 'NY' // set state or province directly

21 DEMO UOMo Examples

22 STEM is Open Source 22

23 23 Epidemiological Compartment Models SEIR Births Deaths SIR Births Deaths Standard SEIR modelStandard SIR model S: susceptible E: exposed but not yet infectious I: infectious R: recovered STEM is a Framework

24 24 Swine Flu Human Flu “Mixing Cell The Many Vectors of Infectious Disease

25 25 Common Border Edges Interstate Highway Edges Air Travel Edges US Counties (3109) Edges

26 Masks No Air travel Vaccinate ? HCN/HL7 Weather Air Traffic Multiple parallel scenarios identically initialized from current real world conditions and simulate each simultaneously forward in time. Masks/No Air Goal: Evaluation of Public Health Policies 26

27 27 as initial condition Simulations Based on ICDC Influenza Data

28 28 Recent H1N1 Outbreak

29 DEMO STEM in Action

30 VISION OF OPEN HEALTH TOOLS Vision: To enable a ubiquitous ecosystem where members of the Health and IT professions can collaborate to build open, standards-based interoperable systems that enable patients and their care providers to have access to vital and reliable medical information at the time and place it is needed.

31 Community of Open Source Technology Developers Community of Health Professionals Community of Vendors Consumers Providers Patients Physicians Community of National Health Services Community of Regional, State and Local Health Services Community of Standards Organizations OHT | Stakeholder Communities 31

32 ■ Adopt recognized industry standards and best practices in services.  Maintain close working relationships with identified SDOs  Provide feedback to SDOs via early adopter program and communities to foster creation of useful, usable healthcare standards that address real healthcare requirements. Strategy: Important SDOs: ■ HL7: CCD, Semantics, Documents, Services ■ OMG: technical specifications of services ■ IHE: pragmatic community for adoption ■ IHTSDO (SNOMED): Semantics, terminology definitions for healthcare ■ ASTM: CCR / CCD specifications ■ ISO/CEN/HL7: EHR requirements and specifications ■ ISO OHT | Approach to Standards 32

33 Application Design Business Use Case Clinical Use Case Clinical Content Model Clinical Templates Clinical Archetypes Reference Model, Types, Terminology OHT | Clinical Application Layers 33

34 Eclipse Open Source Community Eclipse FoundationEclipse Eco-system The Eclipse Foundation Enable & Manage Eclipse -Infrastructure Support -Intellectual Property -Legal -Marketing -Enable Eco-system -Enable Open Source The Eclipse Eco-system The community takes the Open Source Technology and build products for profit and use. The community includes 800,000 vendors and organizations, 10 Leadership Projects, 150 Members, in 120 countries project. The economic value of the “free” code is $700,000,000 (USD). The commercial value of the revenue generated to members is in excess of 2 Billion (USD) The Eclipse Open Source The community builds the technology has over 4 million developers and 120 open source projects. These projects can be conceptually organized into seven different "pillars" or categories: -Enterprise Development -Embedded and Device Development -Rich Client Platform -Rich Internet Applications -Application Frameworks -Application Lifecycle Management (ALM) -Service Oriented Architecture (SOA) OHT | Based upon Eclipse Experience

35 Open Health Tools Eco-system Eclipse Eco-system Eclipse Open Source Community Open Health Tools Open Source Community Non-Eclipse Open Source Community Private Public Commercial Applications Code & Data The Open Health Tools Open Source The community builds common services, frameworks, exemplary tools and example applications. For example: Record Locator Services & Hl7 Messaging Terminology Services & Identity Management The Open Health Tools Eco-system The community takes the Open Health Tools Technology and builds, packages, and sells the technology as products, applications, tools, for profit and use. OHT | Communities 35

36 Q & A Let‘s talk

37 Eclipse – Project UOMo Units of Measurement API UCUM Links

38 Eclipse STEM Open Health Tools OpenHealth Project Links (2)

39 Contact or Twitter: @wernerkeil Hashtag #EclipseUOMo

Download ppt "The OHF Legacy Eclipse UOMo, STEM and Open Health Tools Werner Keil Eclipse Day Kraków 13 th September 2012."

Similar presentations

Ads by Google