INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 6: 01.03.2010 Business Process Modeling with BPMN and Goal Modeling with BMM (CIM Modeling), EA with UPDM ICT 1 INF5120 - Lecture plan - 2010 1: 25/1: Introduction to MBSU, MDA, OO and Service/SOA modeling, Overall EA, 4 parts: MDE/SSS/MS/MDI (AJB) Part I: MDE – Model Driven Engineering 2: 1/2: MDE I: Metamodeling. DSL and UML profiles, MDA technologies (XMI, Eclipse, EMF/GMF) (AJB/BRE) Part II: SSS – Service Science and Service/SOA technologies 3: 8/2: SSS I: Service science (top down) - Service and SOA Technologies (bottom up) (AJB) Part I continued: MDE – Model Driven Engineering 4: 15/2: MDE II: Model transformations with MOFScript, ATL and other technologies (GO/JO) 5 :22/2: MDE III: Code generation with MOFScript, ATL and other technologies (GO/JO) Part III: MOS – Modeling of Services - with SoaML 6: 1/3: MOS I: Business Process Modeling (CIM) - with BPMN 2.0, and BMM, EA with UPDM (AJB) 7: 8/3: MOS II: Soaml, UML2 and SysML, Modelio SOA and Scope, –Collaboration and Component models (AJB) 8: 15/3: MOS III: SoaML (PIM) and Requirements modeling , CIM->PIM and SoaML (AJB) 9: 22/3: MOS IV: Method Engineering and SPEM / EPF - for Service systems (BRE) EASTER Part IV – Model Driven Interoperability 10: 12/4: MS V: SOA and Service Design, Migration to SOA/Cloud Patterns with ADM (AJB ) 11: 19/4: MDI I: Semantic Web with Ontologies and Model Driven Interoperability (TIR) 12: 26/4: MDI II: Semantic Services and Model Driven Interoperability (TIR) 13: 3/5: MDE IV: Evolution and industrial practice of modelbased technologies (AJB++) 14: 10/5: Course summary and preparation for Exam 31/5 (AJB) Exam: May 31st, 2010 (Monday), 0900-1200 (3 hours) ICT 2 Oblig 2 (Group work) Create CIM, PIM and PSM models for an existingTravel agency to start to offer bookings through the web – for bookings through Internet of packaged travels (including flights, hotel, and car options). Goals include Internet based travel reservation, optimal travel planning, improving the quality of customer satisfaction and financial optimisation, suppport automation of the accounting department and cash flow management, and to follow up on personnel load and satisfaction and collaboration between the various departments (sales, marketing, accounting, etc.) Process support for ISO 9000 certification. ICT 3 Outline L6-1: CIM-PIM-PSM and BMM/BPMN Modelio tool support BMM and Goal modeling BPMN intro L6-2: BPMN and BPMN 2.0 ICT Goals Business rules Business processes Business services E-contracts … CIM Flexible Flexible flexible business models business Businessmodels Models Transformer (engine) according to transformation engine Business Business Business metamodels metamodels metamodels EPC POP* BPDM, BPMN BMM … Transformation rules PIM Executable business processes Service interfaces Service contracts Service enactment Business rules SLAs Parameterized services … Flexible Business Models Web Services Semantically enabled heterogeneous SOA model according to Unified and standardised metamodel for SOA & SHA Service Variability UPMSHA P2P Transformer (engine) transformation engine Grid Agents Semantic Web Services Heterogeneous Platforms Transformation rules PSM Executable artefacts XSD, WSDL, BPEL Teams and plans Resource management Semantic Web Services … Semantically Interconnected enabled Interconnected heterogeneous heterogeneous heterogeneous SOA platform SOA platform SOA platform models models models according to Semantically enabled Heterogeneous Heterogeneous heterogeneous SOA platforms SOAplatform platforms SOA metamodels metamodels metamodels Heterogeneous service platforms WSA JXTA OGSA JACK, JADE WSMO, WSMX … ICT Which metamodels and languages to use What service-oriented aspects to capture in models CIM to PIM to PSM 5 Short course methodology CIM modeling CIM 2 PIM mapping PIM modeling PIM 2 PSM mapping PSM modeling ICT 6 CIM – PIM - PSM BPMN BPDM BMM EPC CIM … Business Models SoaML-SHA PIM System Models Core SoaML PIM4 WS-A PIM4 SWS Service Variability PIM4 Agents PIMs for different Architectural Styles P2P/Grid/ Components PSM WSDL, WSMO, OWL-S, JACK, JADE, JXTA, OGSA, J2EE, CORBA J2EE, NetWeaver, .Net, … Implementation Models Realization Technologies ICT 7 CIM-PIM-PSM Reference Matrix ICT 8 Use of OMG metamodels BPMN (BPMN 2.0) BMM UML 2.0 SoaML OSM VDM Case Management SBVR ODM ICT 9 CIM – PIM – PSM methods CIM CIM2PIM PIM PIM2PSM PSM Information Service Process Rules Total: 40 Sources: ESIM, SCM, SM, ISE, ESOA, Cyc, DILIGENT, EOnto, MethOnto, NeOn, OTK, TOVE, GERAM,ARIS, EUP, COMET-S Total: 25 Sources: ESIM, SM, SCM, SMART, SOMA, ISE, ESOA, GERAM,ARIS, EUP COMET-S, OGSOA Total: 23 Sources: ESIM, SAE,SCM, SM, SMART, SOAD, SOMA, ISE, ESOA, GERAM,ARIS, EUP, COMET-S, OGSOA Total: 14 Sources: ESIM, SM, SOMA, ISE, ESOA, Cyc, GERAM, EUP Total: 4 Sources: GERAM, EUP Total: 15 Sources: ESIM, SAE, SM, SMART, SOMA, ISE, ESOA, GERAM,ARIS, EUP Total: 17 Sources: ESIM, SM, SMART, SOMA, ISE, ESOA, GERAM,ARIS, EUP, COMET-S Total: 11 Sources: ESIM, SCM, SM, SOMA, ISE, ESOA, GERAM Total: 1 Sources: COMET-S Total: 1 Sources: COMET-S Total: 1 Sources: COMET-S Total: 10 Sources: ESIM, SCM, SM, SMART, SOMA, ISE, ESOA, COMET-S, OASIS Total: 19 Sources: ESIM, SAE, SCM, SMART, SOAD, SOMA, ISE, ESOA, COMETS, OASIS, OGSOA Total: 21 Sources: ESIM, SAE, SCM, SMART, SOAD, SOMA, ISE, ESOA, OASIS, OGSOA Total: 7 Sources: SMART, ISE, ESOA Total: 1 Sources: OASIS Total: 6 Sources: SMART, ESOA Total: 1 Sources: SMART Total: 10 Sources: ESIM, SCM, SMART, SOMA, ISE, ESOA, OASIS Total: 1 Sources: COMET-S Total: 3 Sources: ESOA, COMET-S Total: 2 Sources: ESOA Total: 2 Sources: ESIM, ESOA Total: 1 Sources: ESIM, Total: 1 Sources: ESIM, Total: 1 Sources: ESIM, Total: 11 Sources: ESIM, SCM, SM, SOAD, SOMA, ISE, ESOA COMET-S Total: 21 Sources: ESIM, SAE, SCM, SM, SOAD, SOMA, ISE, ESOA, COMET-S Total: 7 Sources: SM, SOAD, SOMA, ISE, ESOA Total: 1 Sources: SOAD Total: 4 Sources: SAE, SM, SOAD Total: 1 Sources: SOAD Total: 5 Sources: SM, SOMA, ESOA Total: 19 Sources: ESIM, SAE, SCM, SM, SOAD, SOMA, ISE, ESOA Events Organization ICT Goals NFA 10 CIM – PIM – PSM methods in this INF5120 course CIM Information Service SM: Dictionary OSOA: Business semantic model SoaML collaboration diagram Process BPMN Rules SM: Business rules Organization OSOA: Business organisation model Goals SM: Goals NFA SM: Requirements manual CIM2PIM PIM PIM2PS M PSM UML Class diagram SoaML OSOA UML Activitiy diagrams, sequence diagrams, BPMN Objecteering & MOFScript Objecteering & MOFScript Objecteering & MOFScript Java and Web services (XML) Java and Web services (WSDL) Java and Web services (BPEL) ICT 11 CIM MODELING ICT 12 Modelio Scope Manager Requirements Goals Business rules Dictionaries ICT 13 Requirements ICT 14 Goals ICT 15 Business rules ICT 16 Dictionary ICT 17 Traceability links ICT 18 CIM 2 PIM MAPPING ICT 19 Process and use case relationship ICT 20 PIM MODELING ICT 21 Modelio with SoaML and manual mapping to SOA Use the SoaML MDA component for SoaML modeling Do manual mapping to the Objecteering Logical SOA model Software model (See separate SoaML presentation) next week ICT 22 Modelio SOA model Business semantic model Business organisation model Logical model (from SoaML to SOA) Business implementation model; Software model (See Modelio user guide/demonstration) ICT 23 Objecteering SOA method and tool support ICT 24 Objecteering for SOA ICT 25 Current Component Architecture UML2 SoaML Profiled Objecteering model PIM4Agents Solution Plugins J2EE Web Jack / Jade Services SoaML model WSMT Plugins Traceability (SINTEF) SINTEF Composition Eclipse 3.4 Studio SoaML Plugins CIMFlex Plugins (default tree editor) Semantic Web Grid / P2P Services ICT 26 Example mapping sequence CIM CIM2PIM PIM PIM2PIM PIMs BPMN with Objecteering Use case analysis and Manual (later by MOFScript or ATL ?) SoaML – Objecteering (Collaboration (serv.arch), Port/Connector) Manual (later by MOFScript or ATL ?) Objecteering SOA PIM2PSM Draft automatic: Java API and Design Patterns PSM Web Services SOA: UML Profiles for XML, WSDL, BPEL PSM2Code Draft automatic: Java Code SOA: XML, WSDL, BPEL ICT 27 Architectural layers ICT 28 Different types of services ICT 29 COMET-S model architecture “Real world” Model world Business model Concepts & Artifacts Domain model Product vision & product desc. Prototype System boundary boundary model Use case Scenario model Actors Other requirements BCE model Service-Oriented Architecture model Component structure model Service interaction model Service interface model. User Service Tier LA Business Service Tier Web Services model Web Services profile model User Interface Tier Web Services implementation model Resource Service Tier RA LS Technical domain Requirements model Processes Business domain Risk analysis RA ICT 30 Logical architecture layers ICT 31 Process component ICT 32 BMM and BPMN on the CIM level ASPECT LEVEL Information CIM Service Process Rules Events Organization BPMN Goals NFA BMM CIM2PIM PIM PIM2PSM PSM ICT 33 Business Motivation Model The Business Motivation Model (BMM) is a meta-model of the concepts essential for business governance. underlying principle is “Businesses are driven, not by change, but by how they decide to react to change” vocabulary for governance influencer Governance assessment Governance is necessary for the successful adoption of SOA partly business policy because of the cross strategy organizational nature of SOA where service funders, designers, tactic implementers, maintainers, or goal consumers are not located in the same organization, business, IT department, LOB, division, or enterprise. ICT two major areas of the Business Motivation Model The first is the Ends and Means of business plans. Among the Ends are things the enterprise wishes to achieve — for example, Goals and Objectives. Among the Means are things the enterprise will employ to achieve those Ends — for example, Strategies, Tactics, Business Policies, and Business Rules. The second is the Influencers that shape the elements of the business plans, and the Assessments made about the impacts of such Influencers on Ends and Means (i.e., Strengths, Weaknesses, Opportunities, and Threats). ICT Simplified View of BMM Means References to Business Operations - What you decided your Enterprise should do Courses of Action Directives Business Processes Business Rules Responsibilities Resources Services Ends Govern the Courses of Action Influencers Assessments ICT 36 © Model Core concept for BMM ICT BMM Core Concepts ICT 38 © Model BMM meta-model in GMF ICT Buyers ends ICT Sellers ends ICT Buyer’s means ICT Seller’s means ICT High-Tech Marketing Business Plan ICT High-Tech Marketing Business Plan ICT Business Motivation Model (BMM) with MeansRealizations ICT Buyer/Seller reference example ICT 47 What is BPMN (Business Process Modeling Notation) ? ICT BPMN example ICT EPF Composer EPF Composer is a tool platform for process engineers, project leads, project and program managers who are responsible for mainteining and implementing processes for development organizations or individual projects Aims to: provide for development practitioners a knowledge base of intelectual capital that allows them to browse, manage and deploy content. provide process engineering capabilities by supporting processe engineers and project managers in selecting, tailoring, and rapidly assembling processes for their concrete development process. Note: This is also a Business Process – for Software dev. ICT BPMN (Business Process Modeling Notation) ICT BPMN 2.0 and SoaML tools today BPMN 2.0 Signavio has 2.0 Conversation and Choreography diagrams – a SaaS solution Most BPMN 1.2 are doing stepwise migration, making existing parts 2.0 compliant SoaML (in most UML tools) Magic Draw (Cameo), Enterprise Architect, IBM RSA/RSM, Modelio, … ICT BPMN History BPMN 1.0 (BPMI) – Mai 2004 BPMN1.x BPMN 1.1 (OMG) – Januar 2008 BPMN 1.2 (OMG) – Januar 2009 BPMN 2.0 final Juni 2010 http://www.omg.org/spec/BPMN/2.0/ 54 ICT What is BPMN ? ICT History for BPMN ICT BPMI.org Hourglass Audiences: Business Environment Purposes: iness Analysts BPMN Modeling ess Designers Focus BP Scope gy Consultants stem Architects BPEL Execution ware Engineers Technology Implementation ICT BPMN requirements ICT Core Set of Diagram Elements The core set of modeling elements enable the easy development simple Business Process Diagrams that will look familiar to most Business Analysts (a flowchart diagram) ICT Complete Set of Diagram Elements, Events An Event is something that “happens” during the course of a business process. These Events affect the flow of the Process and usually have a trigger or a result. They can start, interrupt, or end the flow. ICT Complete Set of Diagram Elements, Activities, Cont. A Sub-Process can be in an expanded form that shows the process details of the a lower-level set of activities. ICT Complete Set of Diagram Elements, Gateways Gateways are modeling elements that are used to control how Sequence Flows interact as they converge and diverge within a Process. If the flow does not need to be controlled, then a Gateway is not needed. ICT BPMN Diagram elements ICT Diagram elementer (2) ICT Activities ICT Task ICT Sub-processes ICT Events ICT Start Events ICT Intermediate Events ICT Intermediate events (normal flow) ICT Intermediate events (linked to Boundary) ICT End events ICT Gateways ICT Exclusive Gateways ICT Exclusive Gateways, based on data ICT Exclusive Gateways, based on events ICT Inclusive Gateways ICT Complex Gateways ICT Complex Gateways ICT Parallell Gateways ICT Conectors ICT Sequence flow ICT Conditions in sequece floww ICT Default sekvens flow ICT Message flow ICT Associations ICT Swim lanes ICT Pool ICT Lanes ICT Artifacts ICT Text annotations ICT Data objects ICT Groups ICT Extended artifacts ICT Normal flow ICT Link events ICT Process leves ICT Data flow ICT Exceptions ICT Compenations and transacations ICT Loops ICT Timers ICT Ad hoc processes ICT EPC og BPMN EPC EPC BPMN ICT Orkestering versus Koreografi ICT Orkestrering ICT Koreografi ICT Eksempel ICT Prosess informasjon ICT Forslag ICT BPMN Eksempler … ICT ICT ICT ICT ICT ICT Eksempel - legekontor A text description of the choreography was presented as so: 1) Patient send a "I want to see doctor" message to the Receptionist 2) Receptionist send a "Are you available ?" message to a a list of Doctors 3) One doctor send a "I'm available" message to the Receptionist. 4) Receptionist send a "I'll book you" message to the Doctor. 5) Receptionist send a "Go see doctor" message to the Patient 6) Patient send a "I feel sick" message to Doctor 7) Doctor send a "Prepare this medicine" message to Receptionist 8) Doctor send a "Pickup your medicine and you can leave" message to Patient 9) Patient send a "I need my medicine" message to Receptionist 10) Receptionist send a "Here is your medicine" message to Patient ICT ICT ICT ICT ICT ICT BPMN 2.0: Major changes from BPMN1.x Notational changes New diagrams for Choreography and Conversation New event-types (escalation, …) Non-interrupting events Event sub-process Call Activity– replaces linked/reusable activity Technical changes Formal metamodel – specified in UML Interchange formats for semantic model interchange (XMI, XSD) Interchange formats for diagram interchange (XMI, XSD) XSLT transformations between XMI and XSD formats ICT Process diagram Flowchart view to sequence activities within an organization Support the modeling of simple processes Enhanced by BPMN to handle more complex concepts, such as exception handling, transactions, and compensation. ICT Collaboration diagram Provides a view of the interactions (flow of messages) between two or more business partners (Participants). Collaborations can be combined with Processes to show how the interactions are related to the internal Process activities. ICT Collaboration diagram example ICT Conversation diagram example Allows a modeler to group Collaboration interactions between two or more Participants, which together achieve a common goal, e.g. “negotiate delivery” The grouping can be based on business keys such as customer id or shipping id. ICT • • Corresponding choreography Provides a flowchart view to example sequence interactions between Participants Choreographies define a “business contract” or protocol to which the Participants agree to follow during real-time interactions. ICT Next Lecture – March 8th, 2010 SoamL UML 2.0 - Collaboration Diagrams UML 2.0 Port Connector Models and Components SysML Service Science – IBM, Jørn Berg Nordlund ICT 142