INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 1: 24.01.2011 Arne-Jørgen Berre Telecom and Informatics 1 Welcome to INF5120 “Model based System development” Model based System Development http://www.uio.no/studier/emner/matnat/ifi/INF5120/v11/ Earlier: Modellering med objekter, Modeling with objects Lecturers: Arne-Jørgen Berre Franck Fleurey Brian Elvesæter Gøran Olsen, Dumitru Roman, and Guest lecturers Email: inf5120-forelesere@ifi.uio.no Responsible for Obligatory exercises: Weiqing Zhang, Tore Vatnan Email: inf5120-oppgaver@ifi.uio.no Telecom and Informatics 2 INF5120 - Lecture plan - 2011 1: 24/1: Introduction to Model Based System Development (INF5120) Part I: MDE – Model Driven Engineering 2: 31/1: MDE I: Metamodels, Domain specific languages and UML profiles, (EMF, Kermeta) 3: 7/2: MDE II: Metamodeling, MDLE and DSL Tools (EMF, GMF, ATL, Kermeta) 4: 14/2: MDE III: Model transformations - MOFScript, 6: 28/2: MDE IV: Method Engineering with SPEM / EPF/SEMAT (Note date and lecture number !) Part II: SSI – Service Innovation and Engineering 5 :21/2: SIE I: Service Innovation and CSI, Enterprise Architecture and Service methodologies 7: 7/3: SIE II::Business Process Modeling with BPMN 2.0 8: 14/3: SIE III: User-oriented design – with Use cases and UI models 9: 21/3: SIE IV: Service modeling with SoaML, 10: 28/3: SIE V: Internet Service Architectures - with BPM/BPEL and SOA/Cloud Part IV – Model Driven Interoperability 11: 4/4: MDI I: Semantic technologies, Ontologies and Semantic annotations 12: 11/4: MDI II: Model Driven Service Interoperability EASTER 13: 2/5: MDE III: ADM and Migration to Cloud computing 14: 9/5: Conclusion and Summary for INF5120 - Preparation for Exam Exam: May 30th, 2011 (Monday), 0900-1300 (4 hours) Lecturers (from SINTEF): Arne J. Berre, Franck Fleurey, Brian Elvesæter, Dumitru Roman, … and Guest lectures Telecom and Informatics 3 Obligatory Exercises - 2011 1: 24/1: Introducing links to Eclipse, EMF, GMF, Eugenia, Kermeta and Modelio 2: 31/1: Introduction to Oblig 1, Individual - Eclipse and EMF tutorial, Kermeta 3: 7/2: EMF and GMF tutorial, Kermeta 4 :14/2: MOFScript in practice, Kermeta 5: 21/2: Preparations/Questions for Oblig 1 delivery, Establish groups for Oblig 2 (25/2: Delivery of Oblig 1) 6: 28/2: – Going through Oblig 1, Intro to Oblig 2, EPF-SPEM tools 7: 7/3: BPMN and SoaML tools 8: 14/3: Preparations /Questions for Oblig 2a delivery 9: 21/3: UML2, SoaML tools 10: 28/3: tools for SOA/BPM realisation – Generation of code from Modelio etc. (1/4: Delivery of Oblig 2a) 11: 4/4: Going through Oblig 2a delivery, Semantic web/Ontology/MDI tools 12: 11/4: Oblig 2B intro, Preparations /Questions for Oblig 2b delivery 29/4: Delivery of Oblig 2b 13: 2/5: Going through Oblig 2B 14: 9/5: Going through old Exams, 2009, 2010 INF9120 – Extra Oblig: essay on Model based system development related to thesis topic – or similar Telecom and Informatics Course literature – available on web Material from all lectures and OBLIG 1 and 2 a/b Some selected articles and documents, and subset of standard documents from OMG – see handbooks from last year(s). We are currently updating the handbooks for this year. A.J. Berre & B. Elvesæter: Model Driven Engineering - MDE, Handbook. Part 1 - MDA. A.J. Berre & B. Elvesæter: Service Science and Service Oriented Architectures - SOA, Handbook. Part 2 - SOA. A.J. Berre & B. Elvesæter: Model Driven Interoperability - MDI, Handbook. Part 4 - MDI. Practical use of tools (OBLIG): EMF - http://www.eclipse.org/modeling/emf/ GMF - http://www.eclipse.org/gmf/ Kermeta: http://www.kermeta.org/ Eugenia – http://www.eclipse.org/gmt/epsilon/doc/eugenia/ See also: http://live.eclipse.org/node/575 Modelio - http://www.modeliosoft.com/ MOFScript -http://www.eclipse.org/gmt/mofscript/ BPMN – http://www.eclipse.org/stp/bpmn ATL - http://www.eclipse.org/gmt/atl/ og http://www.modelbased.net/ SoaML - www.soaml.org Telecom and Informatics 5 Course literature – available on web Material from all lectures and OBLIG 1 and 2 a/b Some selected articles and documents, and subset of standard documents from OMG BPMN – www.omg.org/bpmn (BPMN v2 Beta 1) SoaML – Latest standard document (SoaML Beta 2) – Articles by Jim Amsden, IBM, on SoaML (1 to 5), Article by Cory Casanave, Model Driven Solutions, Some selected articles on MDI K. Arnarsdóttir, A.-J. Berre, A. Hahn, M. Missikoff, F. Taglino: Semantic mapping: ontology-based vs. model-based approach Alternative or complementary approaches?, EMOI06Ppaper.pdf. Arne-Jørgen Berre, Fangning Liu, Jiucheng Xu, Brian Elvesæter: Model Driven Service Interoperability through use of Semantic Annotations, 2009. I-ESA paper. Fulltext. Telecom and Informatics 6 OBLIGS: – “MDE tools in practice” Oblig 1 a/b: Design a Kermeta and GMF based editor in Eclipse with EMF and use of MOFScript etc. for transformations to Java. (TBD). OBLIG 2a – Smart House– with BPMN/SoaML modeling. (TBD). OBLIG 2b part 1/2 - MDI support etc. INF9120 – Extra Oblig: essay on Model based system development related to thesis topic – or similar Telecom and Informatics 7 Exam Case-based (ref. earlier exams) All written material can be used 09-13 (4 hours) – Monday 30 . May 2011 Telecom and Informatics 8 3 parts of the course MDE I-V (Model Driven Engineering) SSS (Service Innovation and Service Engineerins) MDI I-II (Model Driven Interoperability) Each part will have a separate handbook Telecom and Informatics 9 Objectives Model based System Development - through ”modeling with objects and services” 2 roles: 1) Tool developer (Software Factory) 2) Application developer, (user of Software Factory). Object-oriented -> Componentbased -> Service oriented Reuse Learn techniques MDA – Model driven architecture Meta Modeling and modelltransformation * SOA – Service oriented architecture Unified Modeling Language (UML 2.0) – for architecture MDI – Model Driven Interoperability Telecom and Informatics 10 Change in course from 2010 We will use a new Metamodel environment, Kermeta, on top of EMF, instead of only focusing on GMF. We will keep the sequence from 2010 and 2008 with a bottom up MDLE approach(rather than top down as we had in 2009) – with first learning the principles and technologies for MDE in February. We will also give a short introduction to the focus area of Service Innovation, Service Science and Service Engineering, before finalising the MDE part. . In March we will focus on how to practice a model driven approach to Services (MOS), and in April we will introduce the topic of Semantic Web/services and Model Driven Interoperability (MDI) – before a final conclusion of the course Telecom and Informatics 11 New since last year Initial focus on Eclipse with EMF and GMF and transformation tools Use of Modelio commercial modeling tool – for UML2 and BPMN 2.0 (This is a new version of Objecteering) New focus on “Service Science” – with Service Innovation (with BI/NHH), Service Design (OAH) and Service Engineering (UIO) New standards: Focus on OMG MDA standards, and on SoaML with links to BPMN 2.0, SysML and UPDM. Telecom and Informatics 12 Which OMG modeling standards will you learn ? SoaML – SOA Modeling Language UML 2.0 – what is new in version 2 MDA – Model Driven Architecture BPMN 2.0 – Business Process Modeling Notation BMM _ Business Motivation Model SysML – Systems Engineering Modeling Language SPEM – Software Process Engineering Metamodel QVT, MOF2Text – Query, View, Transformation See www.omg.org Telecom and Informatics 13 Which tools/environments will you learn ? Eclipse EMF and XMI, Principles of GMF EuGENia – for GMF MOFScript (Model2Text, Model2Model) EPF/SPEM Software Process Modeler Modelio UML Modeler (BPMN, UML 2, SysML) Modelio SOA Solution (SoaML) Overview of ATL, KerMeta, OpenArchitectureWare-OAW, Microsoft OSLO Ref. also IBM RSA/RSM, Enterprise Architect, Magic Draw supporting SoaML and BPMN Telecom and Informatics 14 OBLIG 1: – “MDE tools in practice” Design a GMF based editor in Eclipse with EMF and use of MOFScript for transformations: Practical use of EMF GMF EuGENia MOFScript Compare with UML profiles Individual work Telecom and Informatics 15 OBLIG 2 – “Smart House Design” – increments with group presentations CIM models (BPMN) CIM models (Scope, Goal, Requirements) Requirements models SoaML models Access to web based sensor services MOFScript transformations to Java and potentially to different technologies/platforms Discussion on Model Driven Interoperability Telecom and Informatics 16 Requirements for the course Student at UIO Only assumption is basic knowledge of UML and Java (but not UML 2.0) Telecom and Informatics 17 Course literature – Update to become available on web Material from all lectures and OBLIG Some selected articles and documents, and subset of standard documents from OMG Handbook: ”Model Driven Engineering - MDE” , A.J. Berre & B. Elvesæter Handbook: ”Service Innovation and Service Engineering ” , A.J. Berre & B. Elvesæter Handbook: ” Model Driven Interoperability - MDI”, A.J. Berre & B. Elvesæter Practical use of tools (OBLIG): Modelio - http://www.modeliosoft.com/ MOFScript -http://www.eclipse.org/gmt/mofscript/ BPMN – http://www.eclipse.org/stp/bpmn EMF - http://www.eclipse.org/modeling/emf/ GMF - http://www.eclipse.org/gmf/ Papyrus UML2 - http://www.papyrusuml.org ATL - http://www.eclipse.org/gmt/atl/ og http://www.modelbased.net/ JEE 5.0 - http://java.sun.com/javaee/technologies/ Telecom and Informatics 18 Supporting literature Book: Model-Driven Software Development: Technology, Engineering, Management (Paperback) by Thomas Stahl, Markus Voelter, Krzysztof Czarnecki ISBN: 978-0-470-02570-3 Engineering Service Oriented Systems: A Model Driven Approach, Karakostas, Bill; Zorgios, Yannis ISBN10: 1599049686 ISBN13: 9781599049687Cover: Hardcover April 2008 Telecom and Informatics 19 Supporting literature – EMF and GMF Book: Eclipse Modeling Framework (2nd Edition) (Paperback) Dave Steinberg (Author), Frank Budinsky (Author), Marcelo Paternostro (Author), Ed Merks (Author) Book: Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit (Paperback) Richard C. Gronback Telecom and Informatics 20 Kermeta – www.kermeta.org Telecom and Informatics 21 UML 2.0 UML 2.0 and SysML Background and Reference material See www.uml-forum.com/specs.htm Også hos OMG: http://www.omg.org/uml/ (UML) http://www.omg.org/mda/ (MDA) http://www.omg.org/cwm/ (MOF, XMI, CWM) Telecom and Informatics 22 UML 2.0 recommend books: UML 2.0 in a Nutshell by Dan Pilone (Author), Neil Pitman (Author) The Unified Modeling Language User Guide Second edition (ISBN 0-321-26797-4) (G, Booch, J. Rumbaugh, Jacobsson) Telecom and Informatics 23 Open Services Innovation Book: January 2011 Telecom and Informatics Exam Case-based (ref. earlier exams) All written material can be used 09-13 (4 hours) – (Note, extended from 3 from previous years, we will, however, still keep the same amonunt of work) Monday 30. May 2011 Telecom and Informatics 25 OMG Model-Driven Architecture (MDA) www.omg.org/mda Telecom and Informatics 26 Automation in Software Development Requirements Manually implement Requirements Requirements Manually implement Manually implement High-level spec (functional and nonfunctional) Source in domain-specific language (DSL) Source in domain-specific language (DSL) Compile Source in a general-purpose language, e.g., Java or C++ Compile Implementation (may generate code in Java or C++) Compile (may generate code in Java or C++) Compile Implementation Implement with Interactive, automated support Compile Implementation Telecom and Informatics 27 Computational Independent Model BPMN, POP*, ARIS, ArchiMate, GERAM, GRAI, Zachman, UEML, B.Rules CIM ATL Platform Independent Model MOFScript Platform Specific Model/Code MDA CIM, PIM and PSM/Code BPDM, SBVR, EDOC,UPMS, PIM4SOA, ODM PIM ADM UML profiles and metamodels for Java JEE, BPEL, WSDL, PSM XML, XPDL, OWL-S, WSML, WSDL-S ADM BPEL, WSDL, XML, XPDL, OWL-S, WSML, WSDL-S Code, Java JEE, …. Telecom and Informatics 28 annotated with Enterprise Model Business Requirements Analysis Reference Ontology Extending COMET for SOA (1) UML Profile for POP* • Process • Organisation • Product •… Model to Model Transformation Architecture Specification UML Profile for SOA • Information • Service • Process • QoS annotated with Service-Oriented Architecture Model Model to Model Transformation Model Transformation UML Profile for Web Services annotated with Web Service Specification Model UML Profile for Agents Agent Specification Model BPEL Specification Model Model to Text Transformation P2P Specification Model UML Profile for BPEL UML Profile for P2P Model Transformation annotated with OWL Ontology Web Service Execution Artefacts Agent Execution Artefacts BPEL Execution Artefacts P2P Execution Artefacts Deployment Service Wrappers (Enterprise X) Registry Repository Semantic Space ATHENA Integrated Execution Infrastructure Service Wrappers (Enterprise Y) Public Infrastructure Services Internal Infrastructure Services Crossorg. Service Wrappers (Enterprise A) Evaluation & Negotiation of Available Functionality Process Execution Platform (BPEL) Goal-oriented Adaptive Execution Platform (Agents) Adaptive Distributed Resource Mgt Platform Active Model Platform (AKMii) Intraorg. Composed WebService Platform (WebServices) Enhanced Service Interconnection Bus (P2P) Legend Business Process/Agent Active (Business) Model Web/Server Component Server-side Component Platform MessageOriented Platform (.NET, J2EE) (MQSeries) Existing Enterprise Applications Middleware Process/Agent Middleware Component Telecom and Informatics 29 CIM Flexible business Flexible business Flexible business models models models according to source input Transformer (engine) Business Business Business metamodels metamodels metamodels EPC POP* BPDM, BPMN BMM … transformation engine Transformation rules PIM Executable business processes Service interfaces Service contracts Service enactment Business rules SLAs Parameterized services … output Flexible Business Models target Web Services Semanticallyenabled heterogeneous SOA model according to Unified and standardised metamodel for SOA & SHA Service Variability SoaML UPMSHA P2P input Transformer (engine) source transformation engine Grid Semantic Web Services Heterogeneous Platforms Transformation rules PSM Executable artefacts XSD, WSDL, BPEL Teams and plans Resource management Semantic Web Services … output SemanticallyInterconnected enabled Interconnected heterogeneous heterogeneous heterogeneous SOA platform SOA platform SOA platform models models models target according to Semanticallyenabled Heterogeneous Heterogeneous heterogeneous SOA platforms SOA platforms SOA platform metamodels metamodels metamodels Telecom and Informatics Agents Heterogeneous service platforms WSA JXTA OGSA JACK, JADE WSMO, WSMX … Which metamodels and languages to use What service-oriented aspects to capture in models Goals Business rules Business processes Business services E-contracts … BPMN BPDM BMM CIM Business Models EPC UPMSHA PIM Models UPMSHA (core) UPMS (core) UPMS WSA PIM4 SWS Service Variability PIM4 Agents PIMs for different Architectural Styles P2P/Grid/ Components WS, WSMO, OWL-S, JACK, JADE, JXTA, OGSA, J2EE, CORBA J2EE, NetWeaver, .Net Realisation Technologies Telecom and Informatics PSM Models CIM-K Ontologies Bus.Process Bus.Rules Goals NFA/Qualities Org Information Process PIM-K Services PSM-K Wflow/Comp Interfaces Data XML, OWL, Rules NFA UI BPMN, POP*, ARIS, ArchiMate, GERAM, GRAI, Zachman, UEML, B.Rules. .. BPDM, SBVR, EDOC,UPMS, PIM4SOA, ODM UML profiles and metamodels for Rules NFA Technologies/Realisation-K BPEL/XPDL, WSDL, SWRL, Security, OWL-S/WSML WSDL-S, Induction, … QoS UI AJAX BPEL, WSDL, XML, XPDL, OWL-S, WSML, WSDL-S Technology Reliastion Code Legacy and New systems/services, ERPs/ESAs Telecom and Informatics 32 CIM ODM, Concepts PIM SoaML Information PSM BPMN BMM Persistence API XML,, OWL,WSML Jack, JADE SAP Services EJB 3.0, Process Java, Metro/WSDL OWL-S/WSML Jack, JADE SAP BPEL/XPDL SA/WSML ASM Jack, JADE SAP Technologies/Realisation INF5120 OMG standard focus Telecom and Informatics SHAPE Solution Overview Flexible Business Modelling BPMN EPC … BMM SHA-ML Core Business Models PIM System Models Service Variability SoaML PIM4 SWS CIM PIM4 Agents P2P/Grid/ Components/… WSDL, WSMO, OWLS, JACK, JADE, JXTA, OGSA, CORBA, … PIMs for different Architectural Styles PSM Implementation Models Execution Environments J2EE, NetWeaver, .Net, … 2nd EC Review, Brussels, January 28th Telecom and Informatics 34 SHAPE Solution MDE Technologies Purpose / Benefit Problem / State-of-Art Solution developed Future Plans Integrated & guided business modelling • Business-IT-Gap • Bus. Modeling techniques not integrated • Business-IT-Gap • Existing techn. not integrated • BPMN 2.0 support • Cont. integration of bus. modelling • Backward analysis Enable MDE for services & SOA • MDE for SOA highly desired • UML does not support this • SoaML metamodel & profile • Modelling tools • Methodology • Disseminate SoaML • Commercialization • SoaML Extensions 3 Integration of Agent Technology Automated planning on top of services • Services are only passive infrastruc. • problem solving / planning on top • Framework & Tools for integration with SoaML • Enhance AOSE • Standardiz. (AMP) • Enhanced problem solving using services 4 Integration of SWS Technologies Handling Heterogeneity + automate service usage • Hetero. & dynamics in larger systems • SWS not aligned with classic SE MDE for SWS: Framework, Tool, Methodology • Standardization (OMG,W3C,OASIS) • MDE for Semantic Technologies Customization & personalization of services • Complex services vs. indiv. user req. • adequate techniques not existing • New approach based on SPEL • Metamodel, Tool, Methodology • Standardiz. (CVL) • Continue towards comprehensive serv. customization 1 Flexible Business Modelling 2 Service & SOA Modelling 5 Service Customization Telecom and Informatics 35 SHAPE Solution Matrix MDE Infrastructure Technological Innovations MetaModels Model Transformations SHAPE Tool Suite SHAPE Methodology 1 Flexible Business Modelling BPMN, EPC Data, Org., Rules BMM, Ontologies CIM->CIM (mult.) CIM -> PIM (mult.) CIMFlex Modelio CIMFlex Modeling BPMN + UML Ontology Engin. 2 Service & SOA Modelling SoaML SoaML -> WS SoaML -> JEE Modelio Composition Studio SoaML & WS Modelling 3 Integration of Agent Technology SHAML – Agent Extension SoaML -> PIM4Agents PIm4Agents -> PSM 4 Integration of SWS Technologies SHAML – SWS Extension SoaML-> SWSPim SWSPim -> WSMO WSMT 5 Service Customization Service Variability Metamodel SoaML-> SV-Spec. SV-Res. -> Soaml Service Variability Tools PIM4Agents Telecom and Informatics Agent Modelling (PIM ->PIM2PSM->PSM) SWS Modelling (PIM ->PIM2PSM->PSM) Service Variability Modelling & Variant Creation 36 Part 4: MDI Model Driven Interoperabtiliy Organisational Interoperability CIM-K TR/QVT Semantic Interoperability PIM-K TR/QVT TR/M2T Technical Interoperability Code BPDM, SBVR, EDOC,UPMS, PIM4SOA, ODM PIM-K ADM UML profiles and metamodels for PSM-K TR/M2T ADM BPEL, WSDL, XML, XPDL, OWL-S, WSML, WSDL-S ADM TR/QVT ADM PSM-K CIM-K TR/QVT ADM BPMN, POP*, ARIS, ArchiMate, GERAM, GRAI, Zachman, UEML, B.Rules BPEL, WSDL, XML, XPDL, OWL-S, WSML, WSDL-S ADM BPEL, WSDL, XML, XPDL, OWL-S, WSML, WSDL-S Telecom and Informatics Code 37 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. Telecom and Informatics What is Enterprise Modelling? Enterprise Modelling (EM) is a capability for externalising, making and sharing enterprise knowledge. EM tools can either be: • used stand-alone to produce various kinds of model views, • integrated as front-ends to other systems, • part of an environment providing a contextual user-environment. Telecom and Informatics 39 Why Enterprise Architecture? How can I use best How can I involve my people in improving the performance of the business ? ? practices to ensure the success of the business? How can I ensure that the IS technology helps the work of my people? Telecom and Informatics ? 40 Representations of Architecture ARIS ZACHMAN GERAM EKA POPS EN/ISO 19439 NIST Athena OEA Telecom and Informatics 41 Three Views in DOD Architecture Framework and C4ISR-AF Telecom and Informatics 42 To-be Operational DoDAF Architectural Standards Current architecture To be As is Target architecture To-Be Architectural models supported Hub by the necessary tools. New Form Organisationof Service-Team Organization Telecom and Informatics 43 Zachman Framework – for Enterprise Architecture VA Enterprise Architecture DATA What FUNCTION How NETWORK Where PEOPLE Who TIME When MOTIVATION Why SCOPE (CONTEXTUAL) Things Im portant to the Business Processes Performed Business locations Important Organiz ations Ev ents Signific ant to the Business Business Goals and Strategy Planner Entity = Class of Business Thing Function = Class of Business Process Node = Major Business Locations People = Major Organiz ations Time = Major Business Event Ends/Means = Major Business Goals ENTERPRISE MODEL (CONCEPTU AL) Semantic Model Business Process Model Business Logistic s System Work Flow Model Master Schedule Business Plan Owner Ent = Business Entity Proc = Business Process Rel = Business Relationship I/O = Business Resources Node = Business Location People = Organization Unit Time = Business Event Link = Business Linkage Work = Work Product Cycle = Business Cycle End = Business Objectiv e Means = Business Strategy SYSTEM MODEL (LOGICAL) Logical Data Model Application Architecture Distributed System Architecture Processing Structure Business Rule Model Designer Ent = Data Entity Rel = Data Relationship Proc = Application Function Node = IS Function People = Role I/O = User Views Link = Line Characteristic s Work = Deliv erable Time = System Event Cycle = Processing Cycle End = Structural Assertion Means = Action Assertion TECHNOLOGY MODEL (PHYSICAL) Physical Data Model System Design Control Structure Rule Design Builder Ent = Segment/Table Rel = Pointer/Key Proc = Computer Function Node = Hardware/Softw are People = User I/O = Data Elements /Sets Link = Line Specifications Work = Screen Format Time = Ex ecute End = Condition Cycle = Component Cycle Means = Action Program Security Architecture Timing Definition Rule Design Data DETAILED REPRESENTATIONS Definition (OUT-OF-CONTEXT) Technology Architecture Netw ork Architecture Human Interface Architecture Presentation Architecture Sub-Contractor Ent = Field Rel = Address Proc = Language Statement Node = Addresses I/O = Control Block Link = Protocols People = Identity Work = Job Time = Interrupt Cycle = Machine Cycle End = Sub-Condition Means = Step FUNCTIONING ENTERPRISE Data Function Netw ork Organiz ation Schedule Strategy Ent = Rel = Proc = I/O = Node = Link = People = Work = Time = Cycle = End = Means = DATA What FUNCTION How NETWORK Where PEOPLE Who TIME When Based on work by John A. Zachman SCOPE (CONTEXTUAL) Planner ENTERPRISE MODEL (CONCEPTU AL) Owner SYSTEM MODEL (LOGICAL) Designer TECHNOLOGY MODEL (PHYSICAL) Builder DETAILED REPRESENTATIONS (OUT-OF-CONTEXT) Sub-Contractor FUNCTIONING ENTERPRISE MOTIVATION Why Telecom and Informatics 44 CSI Norway – Center for Service Innovation led by Norwegian Business School, Bergen, SINTEF, AOH, Telenor,.. (National Center for Research Driven Innovation (SFI) – 20 Meuro budget, 8 years 2011 – 2018) Telecom and Informatics CSI planned Activities Telecom and Informatics Service Modeling with SoaML – and extensions (FP7 SHAPE project ++) UPMS 47 Telecom and Informatics Business Motivation Model (BMM) with MeansRealizations Telecom and Informatics What is BPMN (Business Process Modeling Notation) ? Telecom and Informatics BPMN example Telecom and Informatics System and objects A system is a part of the real world which we choose to regard as a whole, separated from the rest of the world during some period of consideration. A whole that we choose to consider as a collection of objects, each object being characterized by attributes and by actions which may involve itself and other objects. Mental modell Real-World phenomenon Manifest Model Telecom and Informatics 51 Object oriented modeling aRealWorldPhenomena anObjectModel anImplemented System roleModels Model environment Environment Real-World phenomenon Mental model System model Manifest Model Telecom and Informatics 52 OO Programming Terminology Encapsulation Object Message Method Class Instance Inheritance Polymorphism Dynamic (Late) Binding Telecom and Informatics 53 CRC Method, class, responsibilities, and collaborators Method to learn the most basic OO concepts plus OO “thinking” “The most effective way of teaching the idiomatic way of thinking with objects is to immerse the learner in the "object-ness" of the material. To do this we must remove as much familiar material as possible, expecting that details such as syntax and programming environment operation will be picked up quickly enough once the fundamentals have been thoroughly understood.” Technique also very useful during informal and creative analysis and design Created by Kent Beck and Ward Cunningham, Textronix, 1989 Telecom and Informatics 54 The CRC-Card an object of paper personalizing the object Class (Name): Responsibility: Collaborators: Telecom and Informatics 55 Class, responsibilities, and collaborators Class The class name of an object creates a vocabulary for discussing a design. Indeed, many people have remarked that object design has more in common with language design than with procedural program design. We urge learners (and spend considerable time ourselves while designing) to find just the right set of words to describe our objects, a set that is internally consistent and evocative in the context of the larger design environment. Responsibilities Responsibilities identify problems to be solved. The solutions will exist in many versions and refinements. A responsibility serves as a handle for discussing potential solutions. The responsibilities of an object are expressed by a handful of short verb phrases, each containing an active verb. The more that can be expressed by these phrases, the more powerful and concise the design. Again, searching for just the right words is a valuable use of time while designing. Collaborators Objects which will send or be sent messages in the course of satisfying responsibilities. Collaboration is not necessarily a symmetric relation. For example in Smalltalk, View and Controller operate as near equals while OrderedCollection offers a service with little regard or even awareness of its client. Telecom and Informatics 56 UML og ( R )UP Two parts of a Harmonized Whole Unified Modeling Language Process Convergence Today Unification leads to “standards” Convergence in the future Process frameworks through consensus Telecom and Informatics 57 UML Structural Modeling Class Diagram Object Diagram Component Diagram (new in UML 2.0) Package Diagram Deployment diagram Telecom and Informatics 58 UML Behavioral Modelling Use Case Diagrams Interactions Sequence diagrams (enhanced in UML 2.0) Timing diagrams (new in UML 2.0) Interaction overview diagrams (new in UML 2.0) Communication diagrams (i.e. collaboration diagram) State machine diagrams (enhanced in UML 2.0) Activity Diagrams (enhanced in UML 2.0) Telecom and Informatics 59 Different kind of models Conceptual models Specification models Implementation models Telecom and Informatics 60 Service Science SSME: Service Science, Management & Engineering Service systems are value cocreation configurations of people, technology, internal and external service systems connected by value propositions, and shared information (such as language, laws, measures, models, etc.). This is a multidisciplinary approach in understanding, defining, creating and delivering service systems Operations Research and Industrial Engineering More realistic models of people Computer Science and Electrical Engineering, Information Systems Software and systems that adaptively change with business strategy Economics and Business Strategy, Service Management and Operations Better models of scaling and innovation Law and Political Economy Better models of social innovation – in what way is passing a law innovation Complex Systems and Systems Engineering Better model of robustness and fragility of service systems (sustainability) Telecom and Informatics 61 Service Science New academic cross discipline Definition of Service: A service is value delivered to another through a well-defined interface and available to a community (which may be the general public). A service results in work provided to one by another. (SoaML) Service Innovation Service Design Service Engineering Telecom and Informatics 62 SOA – Service oriented architecture From Objects (1967 – 1995+) To Components (1990-2000+) To Services (2000- 2010+) Telecom and Informatics 63 SOA Services Messages Dynamic discovery Web services Telecom and Informatics 64 Service Oriented Architecture (SOA) definition A set of components which can be invoked, and whose interface descriptions can be published and discovered (W3C). The policies, practices, frameworks that enable application functionality to be provided and consumed as sets of services published at a granularity relevant to the service consumer. Services can be invoked, published and discovered, and are abstracted away from the implementation using a single, standards-based form of interface. (CBDI) (www.cbdiforum.com) Telecom and Informatics 65 Extended service-oriented architecture Market maker Service operator Mana gemen-t Role actions Mark •Certifiect •Ratin ation •SLAs g Oper •Assuarations •Suppo nce rt performs publishes uses becomes Manage d servic es Compo Compos ite servic sition es •Coordin ation •Confor mance •Monito ring •QoS Service provider Descrip •Capab ility •Intefac e •Behavio r •QoS Basic se rvices tion & B asic Op eration s •Publica tion •Discov ery •Selectio n •Binding Papazoglou and Georgakopoulos CACM, Oct. 2003 Service client Service aggregator Telecom and Informatics 66 Dealing with Complexity – and Change Working at the right level of abstraction OO dealing with complexity objects -> components -> services *SOA Design by contract, role composition Aspect-oriented programming Use of patterns Visual Modeling (MDA) Architecture Telecom and Informatics 67 OOAD methods Phase Class ANALYSIS SA - Yordon Traditional SA/SD/ERA SA-based OO ERA-based OO Hybrid SA/ERbased OO ERA - Chen DESIGN DETAILED DESIGN SD - Page Jones ER-Rel.db - 3NF OO RT SA - Wards OOA/OOD - Coad/Yordon OMT - Rumbaugh et. al OOAD - Martin/Odell UML (96) Booch/OMT/ObjectOry Fusion - HP SD-basert OO Ada(C++)-based OOSD - Wasserman HOOD - ESA OOAD - Booch (93 w/C++) OSDL-92 - CCITT/Bræk et. al SDL-based OO OOSE/ObjectOry - Jacobson RDOOD - Wirfs-Brock et. al OO-based CRC-cards - Cunningham OOram - Reenskaug et. al Catalysis, Syntropy, SOMA, OBA, BHS, ... Telecom and Informatics 68 UML 2.0 UML 1.4 (2004) Evolution of the UML UML 1.1 (Sept. 1997) Submission of UML 1.1 to OMG for adoption, Sept ´97 public June ´96 & Oct ´96 feedback UML 1.0 UML 0.9 & 0.91 OOPSLA ´95 Unified Method 0.8 Booch ´93 Other methods Booch ´91 Taskon, SINTEF UML Partners’ Expertise OMT - 2 OMT - 1 Telecom and Informatics OOSE 69 Evolution of methodologies OOram Catalysis OMT 19951999 2000 UML Components Pulse Booch Objectory UML1.0 UML1.1 UP Notation UML1.2 UML1.3 RUP 2001 UML1.4 KobrA Process Objecteering SOA UML4EDOC COMET COMET-S Telecom and Informatics UML2 70 See also: www.soaml.org Final version of SoaML per October , 2010 Telecom and Informatics 71 SoaML UML Profile & Metamodel Telecom and Informatics Order Conformation Provider Consumer Example: Marketplace Services Shipped Mechanics Are Us Dealer Consumer Acme Industries Manufacturer Status Ship Req Shipped Provider Physical Delivery Provider Delivered GetItThere Freight Shipper Telecom and Informatics Consumer Services Architecture A ServicesArchitecture (or SOA) is a network of participant roles providing and consuming services to fulfill a purpose. The services architecture defines the requirements for the types of participants and service realizations that fulfill those roles. Telecom and Informatics Compound services Telecom and Informatics Participants may be assemblies of other Participants (UML 2.0) Participant Request – needs typed by ServiceInterface Service – capabilities typed by ServiceInterface Participant part Telecom and Informatics MOFScript placed in the 4-layer metamodel architecture (MDE) M3 MOF conforms to M2 Source Metamodel conforms to based on conforms to conforms to M1 MOFScript language MOFScript transformation Source model executed by input MOFScript tool engine output Telecom and Informatics Target text Unified Process Framework Phases ProcessDisciplines Components Process Workflows Requirements Inception Elaboration Construction Transition Analysis Business Modeling Architecture Requirements Level Analysis Design Design Class Level Implementation Test Deployment Implementation Test Supporting Workflows Supporting Management Components Project Management Conf. Mngmt Process Configuration Environment preliminary iteration(s) iter. #1 iter. #2 iter. #n iter. #n+1 iter. #n+2 iter. #m iter. #m+1 Iterations Telecom and Informatics 78 Modelio SOA method and tool support Telecom and Informatics 79 COMET-S and SiSaS 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 Telecom and Informatics 80 Interoperability Framework ATHENA Interoperability Framework ( each system is described by enterprise models and different viewpoints, such as business, process, service, information) Telecom and Informatics Next Lecture – MDE I January 31st, 2011 Metamodeling Domain specific languages Eclipse EMF and GMF, Kermeta UML profiles Intro: See Eclipse EMF/GMF tutorials http://www.eclipse.org/modeling/ Kermeta: www.kermeta.org Telecom and Informatics 83 INF5120 Tools– available on web Practical use of tools (OBLIG): EMF - http://www.eclipse.org/modeling/emf/ GMF - http://www.eclipse.org/gmf/ Kermeta: http://www.kermeta.org/ Eugenia – http://www.eclipse.org/gmt/epsilon/doc/eugenia/ See also: http://live.eclipse.org/node/575 Modelio - http://www.modeliosoft.com/ MOFScript -http://www.eclipse.org/gmt/mofscript/ BPMN – http://www.eclipse.org/stp/bpmn SoaML - www.soaml.org Telecom and Informatics 84