Bergstol.Pdf

Bergstol.Pdf

UNIVERSITY OF OSLO Department of Informatics BPMN4SOA A service oriented process modelling language Master thesis 60 credits Eivind Bergstøl 10th May 2010 Acknowledgements The process of writing this thesis had not been possible without the guidance of my two supervisors Dr. Arne-Jørgen Berre (Chief Scientist, SINTEF ICT) and Brian Elvesæter (Research Scientist/Research Fellow, SINTEF ICT) and I want to express my sincere thanks to them both. The oversight that Arne-Jørgen has in this field is mindboggling, and as a supervisor he possesses the ability to say just the right thing to adjust the course of my work. Brian has been my “go to guy” and is always available for a good discussion and he provides insight to most topics in the modelling domain. I would also like to add that being the group teacher in INF5120, a UIO course taught by Arne-Jørgen Berre, has helped me a great deal in reasoning on SoaML and BPMN 2.0. I would also express my sincere thanks to all of my friends for being there for me the last year keeping my spirits up and making me believe in myself, and in partic- ular, my brother Tormod Bergstøl and father Svein Bergstøl and especially my mother Eli Bergstøl whom I suddenly lost to cancer while working on this thesis. Oslo, 10th May 2010 I II Abstract Service oriented architectures have become very popular the last few years. The abstraction of computer systems into a service paradigm bring many new solutions, both for cross business processes to aid interoperability and the reuse of existing legacy systems in a new network centric world. In the wake of this, service modelling has become a part of OMGs Model Driven Architecture and new modelling languages that are based on past experience for the new paradigm are emerging. BPMN 2.0 and SoaML are the newest modelling standards from OMG that focus on service modelling. They provide different ap- proaches to the service domain where BPMN 2.0 emphasise process modelling and SoaML emphasise service architecture modelling. BPMN4SOA is a language that extends the use of BPMN 2.0, and bring more emphasis on the service modelling capability of BPMN 2.0. It does this by means of role modelling to abstract the participants and service choreographies into reusable objects. BPMN4SOA also provide modelling capability for information data for messages through implementation of UML at L0 compliance. Because BPMN4SOA is an extension of BPMN 2.0 through it’s Extension and Exter- nal Relationship constructions, BPMN4SOA should be implementable in all systems fully compliant with BPMN 2.0 specification. III IV Contents Acknowledgements...............................I Abstract..................................... III Contents.....................................V List of figures..................................IX List of tables.................................. XII 1 Introduction1 1.1 Background................................1 1.2 Research questions............................2 1.3 Structure of this thesis..........................2 2 Research method and scope5 2.1 Research method.............................5 2.2 Scope...................................6 2.3 Outlining the task............................8 2.4 Tool support................................9 3 Case and domain description 11 3.1 Why this case............................... 11 3.2 The Travel booking case - outline.................... 12 3.3 Business Process Management (BPM).................. 13 3.4 The domain of modeling......................... 13 3.4.1 Objects and the object paradigm................ 14 3.4.2 Role modelling.......................... 15 3.4.3 Services and service oriented architectures (SOA)....... 16 3.5 Model Driven Engineering........................ 17 3.5.1 Model Driven Architecture (MDA)............... 18 V 3.5.2 MDD................................ 18 4 Requirements for process, information and service modelling 21 4.1 Descriptions from specification...................... 21 4.1.1 Short description SoaML..................... 21 4.1.2 Short description BPMN 2.0................... 22 4.2 Zachman Framework........................... 22 4.3 Requirements for a service oriented process modelling language.... 23 4.3.1 Requirements for service modelling............... 24 4.3.2 Requirements for information modelling............ 25 4.3.3 Requirements for process modelling............... 25 4.4 Scoring of requirements.......................... 27 5 Evaluation of BPMN 2.0 and SoaML 29 5.1 BPMN 2.0................................. 29 5.1.1 Usage............................... 30 5.1.2 Constructions and their meta model.............. 33 5.1.2.1 Extensibility...................... 33 5.1.2.2 External Relationships................. 34 5.1.2.3 Conversation Assosiation................ 34 5.1.2.4 Interaction Specification................ 34 5.1.2.5 MessageFlow...................... 35 5.1.2.6 Participant....................... 35 5.1.2.7 Services......................... 36 5.1.2.8 Tasks.......................... 36 5.1.2.9 ServiceTask....................... 36 5.1.2.10 SendTask and ReceiveTask.............. 36 5.1.2.11 Conversation diagram................. 36 5.1.2.12 Choreography diagram................. 37 5.1.3 Travel case - BPMN 2.0..................... 37 5.1.4 Requirement evaluation..................... 40 5.1.4.1 Service requirement evaluation............ 40 5.1.4.2 Information requirement evaluation.......... 43 5.1.4.3 Process requirement evaluation............ 44 5.2 SoaML................................... 46 5.2.1 Usage............................... 47 5.2.2 Travel case - SoaML....................... 48 5.2.2.1 ServiceContract based SoaML............. 49 5.2.2.2 ServiceInterface based SoaML............. 51 5.2.2.3 Capabilities....................... 53 5.2.3 Requirement evaluation..................... 53 VI 5.2.3.1 Service requirement evaluation............ 53 5.2.3.2 Information requirement evaluation.......... 54 5.2.3.3 Process requirement evaluation............ 55 5.3 Conclusions based on the two evaluations................ 57 6 BPMN4SOA vision 59 6.1 Mapping and integration of SoaML to BPMN 2.0 notation...... 60 6.2 SoaML ServicesArchitecture....................... 61 6.2.1 Participants............................ 61 6.2.1.1 Service Architectures vs. Conversations....... 62 6.2.1.2 ServiceContract and ChoreographyTask....... 62 6.3 SoaML Participant Architecture..................... 64 6.3.1 Service Interfaces......................... 64 6.3.2 Capabilities............................ 66 6.3.3 MessageType........................... 66 6.4 Evaluation of mapping between BPMN 2.0 and SoaML........ 67 6.5 Mapping conclusions........................... 70 7 The BPMN4SOA specification 73 7.1 Background................................ 73 7.2 Role conversation diagram........................ 74 7.3 Collaboration constraints......................... 76 7.4 BPMN4SOA information modelling................... 76 7.5 Conclusion................................. 77 8 BPMN4SOA tool implementation 79 8.1 Eclipse EMF/GMF and Eclipse for SOA................ 79 8.2 BPMN4SOA tool............................. 81 8.3 Usage and evaluation........................... 83 9 Evaluation of BPMN4SOA 85 9.1 BPMN4SOA travel case......................... 85 9.2 Requirement evaluation.......................... 86 9.2.1 Service requirement evaluation.................. 86 9.2.2 Information requirement evaluation............... 87 9.2.3 Process requirement evaluation................. 87 9.3 Conclusions of evaluation......................... 88 10 Conclusion and future work 89 10.1 Conclusion of requirements evaluation................. 89 10.2 Future work................................ 91 VII References 93 Appendices 97 A OOram - Role Modeling 99 A.1 Collaboration view............................ 100 A.2 Interface view............................... 102 A.3 Scenario view............................... 102 B Selected BPMN 2.0 meta models 103 C Athena CBP with BPMN 2.0 111 C.1 Background................................ 111 C.2 Problem and research questions..................... 111 C.3 Method.................................. 112 C.4 Scenario.................................. 112 C.5 ATHENA CPB.............................. 112 C.5.1 The dimensions.......................... 112 C.5.2 Work methods........................... 114 C.5.3 MO2GO and IEM in CBP.................... 115 C.6 BPMN 2.0................................. 116 C.6.1 Collaborations........................... 116 C.6.2 Conversations........................... 116 C.6.3 Choreographies.......................... 116 C.7 Discussion................................. 118 C.8 Conclusion................................. 118 D Terms, definitions and abbreviations 119 D.1 eXtensible Markup Language (XML).................. 119 D.2 XML Metadata Interchange (XMI)................... 119 D.3 Service Oriented Architecture (SOA).................. 119 D.4 Object Oriented Role Analysis Method (OORAM)........... 120 D.5 Object Management Group (OMG)................... 120 D.6 Model Driven Architechture (MDA)................... 120 D.7 Meta-Object Facility (MOF)....................... 120 D.8 Computation Independent Model (CIM)................ 120 D.9 Platform Independent Model (PIM)................... 121 D.10 Platform Spesific Model (PSM)..................... 121 D.11 Unified Modeling Language (UML)................... 121 VIII List of Figures 2.1 Screenshot from Signavio and Modelio.................. 10 3.1 Model-driven development (MDD) lifeline............... 19 4.1 View of the Zachman Framework...................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    138 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us