1 / 75

Day 2: Hands-on UML

Day 2: Hands-on UML. Using UML to put MITA to work to solve the immediate process improvement needs of states. 8:30 – 10:00 Hands-on Exercises: Business Processes Set up model structure Simple business process (trigger, inputs, output, activities, decisions, business objects

Download Presentation

Day 2: Hands-on UML

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Day 2: Hands-on UML Using UML to put MITA to work to solve the immediate process improvement needs of states

  2. 8:30 – 10:00 Hands-on Exercises: Business Processes Set up model structure Simple business process (trigger, inputs, output, activities, decisions, business objects Activity diagrams for Provider Enrollment 10:15 – 12:00 Hands-on Exercises: System Integration Sequence Diagrams (options, alternatives) Capabilities as interface Service specifications for business and infrastructure processes 13:00 – 14:30 Artifact Generation and Tools Using the UML model to generate WSDL and XSDs: UML-to-WSDL configuration Using hyperModel for constrained Using MIF import to re-use HL7 models Integration with Subversion for version control 14:45 – 16:00 Hands-on: Using the HL7 and Fox tools MITA Project for MITA models Version control with Subversion HL7 information Model Change Control Fox Portal for project files MITA UML Training – Day 2Hands-on Training

  3. Tooling Overview • IBM Rational Software Architect/Modeler • Websphere Business Modeler • Free plugins compatible with Eclipse 3.2 • hyperModel 3.0: http://download.xmlmodeling.com/hyperModel/updates/site.xml • HL7 MIF, HL7 UML Profile, Abstract Datatypes http://download.xmlmodeling.com/updates/hl7/site.xml • Version Control (SVN) http://polarion.org/projects/subversive/download/1.1/update-site/ • HL7 Web-based Tools • Wiki • MITA Project on HL7 Homebase

  4. Rational Software Modeler/Architect • Eclipse-based • Uses the underlying EMF (Eclipse Modeling Framework)

  5. Websphere Business Modeler • Integrated with RSA/RSM • Eclipse based • Open-source alternatives available

  6. UML vs. BPMN , BPEL WSDL • WSDL is the target representation of MITA-based messages and tools are widely available • Business Process Automation is a relatively new and very appropriate for new development Eclipse based tools are available to add business process automation as needed: • http://www.eclipse.org/bpel/ • http://download.eclipse.org/technology/bpel/update-site/ • Eclipse and Eclipse Modeling Framework provides integration

  7. BPMN  BPEL <sequence name="main" xmlns:ns="http://eclipse.org/bpel/sample" xmlns:ns0="http://www.xmethods.net/sd/CATrafficService.wsdl"> <receive name="receiveInput" operation="initiate" partnerLink="client" portType="ns:Traffic2" variable="input"/> <assign name="Assign" validate="no"> <copy> <from part="payload" variable="input"> <query><![CDATA[/tns:input]]></query> </from> <to part="hwynums" variable="trafficRequest"/> </copy> </assign> <invoke inputVariable="trafficRequest" name="Invoke" operation="getTraffic" outputVariable="trafficResponse" partnerLink="traffic" portType="ns0:CATrafficPortType"/> <assign name="Assign1" validate="no"> <copy> <from part="return" variable="trafficResponse"/> <to part="return" variable="trafficResponse"/> </copy> </assign> <invoke inputVariable="output" name="callbackClient" operation="onResult" partnerLink="client" portType="ns:Traffic2Callback"/> </sequence>

  8. Eclipse is a framework for IDEs (integrated development environments) In Eclipse, the layout of the user interface can be totally changed at the click of a button by changing “perspective” These layouts are called "perspectives" and they have various purposes.  RSM includes a “Modeling” perspective. To view the SVN repository you need the SVN perspective In order to open a perspective select WindowOpen Perspective  Other... and then select the perspective. In order to modify a perspective WindowShow View Eclipse Perspective

  9. Add-on tools, open-source Help  Software Updates  Find and Install  Search for new features New Remote Site… Plugins and Features

  10. File  New  Project File  New  UML Model Right-click in any tool to open context-sensitive menu Getting Started…

  11. RSA provides default projects “Blank.emx” The MITA styleguide will provide a consistent structure for each project … using the style guide

  12. Model contents vs. Views Diagrams Packages Activity Actions Diagram Structured Activities Select a package and right-click context-specific menu Add Delete … Project Browser

  13. Model Elements • Workspace • Project (NewProject • Diagrams (by model) • Models (separate .emx files) (New Model) • Model • Packages: name space for the various model elements (classes, interfaces, associations, actors) • Diagrams • Structure • Behavior • UML elements

  14. Overview • Reviewing the core modeling components • Activity Diagrams • Class Diagrams (and Packages) • Sequence Diagrams

  15. Model-driven Approach • As requirements change, we change the UML model • re-generate user documentation • re-generated WSDL • re-generated XSD • Diagrams provide views on the model • an element change is automatically reflected in all diagrams that use the element

  16. Tooling Capabilities • Modeling • Includes WSDL and XSD generation • Managed in MITA Project Repository • Configuration management portal • Developers check in / check out Model artifacts • Available to all as Read-Only with downloadable viewer • Wiki for brainstorming, co-editing documentations, collaboration

  17. Summary of Project Artifacts • Model Artifacts • Business Process (Activity diagram) • MITA “to be” • Minnesota specific business rules • Business Triggers, system boundaries • Information Model (Class Diagram ) • HL7-based, standardized vocabulary • Interactions (Sequence Diagram) • Operations expose business capabilities • Modeling realization artifacts • Service Specifications • Ports, interfaces, business rules • User documentation and runtime artifacts • WSDL • XSD

  18. Pre-defined structure Selected notation Certain diagrams/views Default MITA structure and local extensions Style Guide

  19. Create new UML project File  New  Project  UML Project Re-use style guide or start from “blank” RSA: Create a new project

  20. Logical Model Overview (using Classes and Packages) Enroll Provider System Enroll Provider Provider Registry Manage Provider InfoInquire Provider Info Enroll Provider Demo

  21. Shared information

  22. Shared information

  23. Detailed Information Model: Healthcare Provider (Role) • Reuse reference HL7 class names, attributes, data types, code sets • Reuse internal HL7 code sets, where appropriate • Reuse standard coding systems (ICD, SNOMED, X12, NCPDP, etc.) as necessary • Additional Medicaid codes may be submitted to Standard Development Organizations for adoption • Benefit: Industry-standard code sets can be used in place of state-specific codes to enable semantic interoperability • The HL7 Reference Information Model is extensive and includes a variety of contributions (industry, government, international) and it meets the needs of the Medicaid

  24. Select package Add UML model element or a diagram Context-sensitive dialog Adding …

  25. Business Triggers (state changes)

  26. Action & Information Input Output Reference other process Control Edges – information and process control Process description using activities

  27. RSA: Add a new diagram

  28. Overview of business domains and areas

  29. “Enroll Provider” Process Input Data Trigger Result

  30. MITA Business Process Enroll Provider

  31. RSA: Add “Description” Diagram (empty)

  32. PM Enroll Provider Tier 3: Enroll Provider Item Details Links TriggerEvent Description Control flow[condition] Trigger Event Result Business Process Steps Shared Data Decision Predecessor Failures Successor Constraints Failures Performance Measures Actions Reused Process Object flow[condition] Result Activity Diagram of Business Process 1 1

  33. Information Model Class Diagrams provide a view of the shared data HL7 as the starting point Import MIF-based HL7 models into UML Modify Input Messages Output Messages Shared Data

  34. Class Diagram • Provides a view of Information and structure of message content or service performed • Class diagrams are grouped into packages that represent a type of message or a service. • Class • Message content (attributes) • Interface • Implemented by components/services • Operations • Enumeration • Define value sets • Coded literals

  35. Information Model - Message

  36. Share Information: Healthcare Provider (Role) Primitive type Default value Multiplicity HL7 Datatype Attribute/Property of the this type of object Enumeration

  37. Detailed Information Model: Healthcare Provider (Role) Class Object Name Section Stereotype { Class Name { Attribute Name Attribute Multiplicity Attribute Value Attribute Section Attribute Name

  38. Cardinality and Multiplicity

  39. Add diagrams Class diagram Add classes Root class of input message Root class of the response RSA: Add shared data

  40. Activity Diagram – detailed notation

  41. RSA: Create a simple activity • Create information model package • Create activity diagram • Triggers • Drag-and-drop input message • Draw control flow • Draw object flow to object node • If the object flow cannot be created, an input pin is missing

  42. Data store: data flow in which the data is persistent Central buffer: consolidates data from several sources and destinations. They do not connect directly to actions Input/Output pins Object nodes

  43. Edges/Connectors • Control flow • Process control passed from one action to the next • Object flow • information “in”/”out”

  44. Simple actions Fork/join process flows Re-used activities/processes Actions

  45. Information Model • The information model is used to describe message content and structure. • Unlike a data model which is used to represent permanent information, the data model is used to represent a snapshot of information at an instance in time for sharing information. • The structures in information models represent how a message is composed to share information – not how data is stored within or retrieved from data structures. • The source of the data captured for a message may include several data structures and data stores. The use of the data included in a message is various and can include parsing the information into one or more data stores. • Data is manipulated from data stores for inclusion in messages, reports, or displays. • Data within data stores may be in any format required by the application. Data is extracted from one or more data stores for composition of a message according to the schema for that message and will require transformation unless the data stores are XML representations of the schema. Conversely data is stored into one or more data stores from the message according to the usage requirements for that data beyond messaging – e.g. repositories for reporting and querying, updates to data stores based upon use of information in messages, • It is important to note that only the source data for a message can be an authoritative source because data cannot be validated or verified for accuracy, authenticity, or authority after it has been put into a message. Message validation only ensures that data uses valid structures with valid values

  46. Re-usable Allows us to avoid platform compatibility issues HL7 Data Types

  47. Value Sets/Vocabulary

  48. HL7 Terminology Intended for Code Sets Validation of messages Allowed values

  49. Use cases • Use case diagram identifies the business actors • Use cases elaborated using other views • Scenarios • Basic • Alternate • Error

More Related