Service-oriented Heterogeneous Architecture and Platforms Engineering. with SoaML.
|
|
|
- Myron Knight
- 10 years ago
- Views:
Transcription
1 Service-oriented Heterogeneous Architecture and Platforms Engineering Service Modelling with SoaML Brian Elvesæter, SINTEF ICT
2 Tutorial outline PART I: Introduction ti SoaML language UML modelling tool: Modelio Case study: Travel Agency PART II: Hands-on Business process modelling (BPMN) Business architecture t modelling (SoaML) System architecture modelling (SoaML) 2
3 Online material SoaML specification Modelio Modelling Tools SoaML wiki SHAPE project website: SHAPE Methodology SiSaS Methodology (in progress) SHAPE hands-on tutorial given at ECMFA 2010 (extra material) Tutorial model download d (updated) d) 0/v11/div/DiscountVoyages%20SoaML%20Tutori al%20oslo.zip Modelio Enterprise Edition (10 day evaluation) area/shape- Methodology_OnlineLibrary_final/index.htm ds.html Modelio Free Edition ds.html SoaML modules for Modelio (open source) SoaML Engine module download %5Bbin%5D_ zip/download SoaML Designer module download _%5BBin%5D_ zip/download 3
4 SoaML language g 4
5 What is SoaML? Service oriented architecture Modeling Language (SoaML) Extensions to UML2 to support service concepts. Focuses on basic service modelling concepts. A foundation for further extensions and integration ti with BPMN, BMM and other metamodels. 5
6 SoaML Concepts Agent Participant Attachment Capability Consumer Collaboration CollaborationUse Expose MessageType Port Property Provider Request ServiceChannel ServiceContract ServiceInterface Milestone Service ServicesArchitecture 6
7 Marketplace Services Mechanics Are Us Dealer Example Acme Industries Manufacturer Consu umer Order Conformation Shipped Provi ider Consumer Consumer Status Physical Delivery Prov vider GetItThere Freight Shipper Prov vider Ship Req Shipped Delivered 7
8 Business process overview : Dealer Start event End event Place order Receive order confirmation Receive shipping confirmation :O rder :O rderc onfirmation :ShipmentStatus r : OrderHandler Receive order Confirm order [yes] [no] Forward shipping confirmation Receive delivery confirmation Invoice customer End event urer : Manufactu : Productions Ship order Inventory low? Order production Initiate production Receive shipping confirmation : Invoicing Send invoice : Shipper :ShippingRequest :ShipmentStatus :DeliveryC onfirmation Ship item Send shipping confirmation Send delivery confirmation End event 8
9 Services architecture (Community-level) Place Order service <<ServicesArchitecture>> Dealer Network Architecture e Community-level services architecture for the Dealer Network consumer order:place Order provider dealer:dealer acme:manufacturer consumer consumer Ship Status service status:ship Status provider shipper:shipper ship:shipping Request provider Shipping Request service Services architecture: High level description of how participants work together for a purpose by providing and using services expressed as service contracts. UML collaboration stereotyped «ServicesArchitecture». 9
10 <<ServicesArchitecture>> Dealer Network Architecture Participants consumer order:place Order provider dealer:dealer acme:manufacturer and service consumer status:ship Status collaboration use consumer ship:shipping Request contracts provider shipper:shipper provider role binding <<ServiceC ontract>> Place Order role binding type consumer:orderplacer provider:ordertaker <<Participant>> Manufacturer Service contract: Service specifications that define the roles each participant plays in the service and the interfaces they implement to play that role. UML collaboration stereotyped «ServiceContract». Participant: Represent logical or real people or organizational units that participate in services architectures and/or business processes. UML class stereotyped «Participant». 10
11 Services architecture (Participant-level) Order OrderHandler Conformation Invoicing Shipped Ship Req Shipped dealer:dealer consumer <<ServicesArchitecture>> Manufacturer Architecture Productions i:invoicing provider Delivered order:place Order provider oh:orderhandler consumer ic:invoice Customer Participant-level services architecture for the Manufacturer ship:shipping Request provider shipper:shipper consumer consumer po:production Order provider p:productions 11
12 dealer:dealer consumer <<ServicesArchitecture>> Dealer Network Architecture order:place Order Community and provider participant acme:manufacturer consumer status:ship Status consumer ship:shipping Request architectures provider shipper:shipper provider Community-level services architecture for the Dealer Network dealer:dealer consumer <<ServicesArchitecture>> Manufacturer Architecture i:invoicing provider order:place Order provider consumer ic:invoice Customer oh:orderhandler Participant-level services architecture for the Manufacturer ship:shipping Request provider consumer consumer po:production Order provider shipper:shipper p:productions 12
13 Service contract: Place order (Structure) Service channel Consumer role within service contract Consumer interface <<ServiceContract>> Place Order consumer:orderplacer provider:ordertaker type type <<interface, Consumer>> <<interface, Provider>> OrderPlacer OrderTaker quote() quoterequest() orderconfirmation() order() Provider role within service contract Provider interface The service contract represents an agreement between the involved participants for how the service is to be provided and consumed. The agreement includes the interfaces, choreography and any other terms and conditions. 13
14 Service interface: Place order (Structure) Conjugate service interface <<ServiceInterface>> ~PlaceOrderInterface Service interface: <<use>> <<interface, Consumer>> OrderPlacer quote() orderconfirm ation() <<interface, Provider>> OrderTaker quoterequest() order() <<use>> <<ServiceInterface>> PlaceOrderInterface Refines the service contract. Defines the provided and required interfaces for a service. A service interface is the type of a service port on a participant or component. UML class stereotyped «ServiceInterface». A conjugate service interface is the type of a request port on a participant or component. UML class stereotyped «ServiceInterface» and the names starts with a ~ Service interface 14
15 Choreography: Place order (Service contract t behaviour) (Service interface behaviour) consumer:orderplacer provider:ordertaker Service choreography can be specified using any UML behaviour, e.g, interaction or activity opt [] quoterequest quote order rderplacer consumer : Or quote orderconfirmation orderconfirmation ker rovider : OrderTak p quoterequest order 15
16 Interfaces and message types: Place order Provider Consumer <<interface, Provider>> OrderTaker <<signal>> quoterequest(in message : QuoteRequest) <<signal>> order(in message : Order) <<interface, Consumer>> OrderPlacer <<signal>> quote(in message : Quote) <<signal>> orderconfirmation(in message : OrderConfirmation) <<enumeration>> CurrencyType EUR USD <<MessageType>> <<MessageType>> <<MessageType>> <<MessageType>> <<enumeration>> QuoteRequest t Order Quote OrderConfirmation ConfirmationType customerid : string quotedate : date productid : string quantity : integer customerid : string customerorderid : string orderdate : date productid : string quantity : integer request : QuoteRequest price : float currency : CurrencyType customerorderid : string providerorderid : string confirm ation : ConfirmationType confirm ationdate : date shipmentid : string Confirmed Shipped Cancelled OutOfStock Provider: Specifies the interface provided by the provider of a service. UML interface stereotyped «Provider». Message type Consumer: Specifies the interface provided by the consumer of a service. UML interface stereotyped «Consumer». Message type: Specifies the information exchanged between service consumers and providers. UML class stereotyped «MessageType». 16
17 Service and request ports: Place order Request port <<Participant>> Dealer <<ServiceInterface>> ~PlaceOrderInterface type OrderTaker <<use>> OrderTaker <<interface, Consumer>> OrderPlacer quote() orderconfirmation() <<interface, Provider>> OrderTaker quoterequest() order() <<Participant>> Manufacturer type <<use>> <<ServiceInterface>> PlaceOrderInterface <<Request>> r:~placeorderinterface <<Service>> s:placeorderinterface OrderPlacer OrderPlacer Service Service: Specifies a feature of a participant p that is the offer of a service by one participant to others using well defined terms, conditions and interfaces. UML port stereotyped «Service» on a participant or component. Request: Specifies a feature of a participant that represents a service the participant needs and consumes from other participants. UML port stereotyped «Request» on a participant p or component. port 17
18 consumer dealer:dealer consumer status:ship Status provider <<ServicesArchitecture>> Dealer Network Architecture order:place Order shipper:shipper <<Participant>> Dealer <<Request>> r:~placeorderinterface <<Request>> ssi:~shipstatusinterface St t t provider consumer acme:manufacturer ship:shipping Request provider OrderTaker OrderPlacer Logical system components: Dealer Network OrderTaker Architecture <<Participant>> Manufacturer <<Service>> s:placeorderinterface OrderPlacer <<Request>> sri:~shippingrequestinterface Shipper Shipper <<Participant>> Shipper <<Service>> ssi:shipstatusinterface ShippingProvider ShippingConsumer ShippingProvider <<Service>> sri:shippingrequestinterface ShippingConsumer Components implement the service interfaces providing the link to systems. Participants and services may be used in multiple architectures. 18
19 dealer:dealer consumer order:place Order ship:shipping Request provider shipper:shipper <<ServicesArchitecture>> Manufacturer Architecture provider consumer oh:orderhandler consumer consumer i:invoicing provider ic:invoice Customer po:production Order provider p:productions Software components: Manufacturer Architecture Mapped to software components <<Participant>> Dealer <<Participant>> Manufacturer <<Request>> r:~placeorderinterface <<Service>> s:placeorderinterface <<Service>> s:placeorderinterface oh:orderhandler i:invoicing <<Service>> ici:invoicecustomerinterface <<Request>> ici:~invoicecustomerinterface <<Participant>> Shipper <<Request>> poi:~productionorderinterface p:productions <<Request>> sri:~shippingrequestinterface <<Service>> poi:productionorderinterface <<Service>> sri:shippingrequestinterface <<Request>> sri:~shippingrequestinterface 19
20 UML modelling tool: Modelio 20
21 Tool support for SoaML SoaML Wiki IBM Rational Software Architect IBM Rational SOMA ModelDriven.org ModelPro NoMagic MagicDrawUML Softeam Modelio Sparx Systems Enterprise Architect Softeam Modelio BPMN SoaML Designer/Engines
22 Case study: Travel agency 22
23 Case study: Travel agency (Discount Voyage) A Travel Agency has some contact with Partner Agencies which provide reservation for Flights, Hotels, Cars, etc. A Client can interact with the Travel Agency to: Reserve a Travel: Cancel a Travel Pay the Travel The Travel Agency needs to be in contact with a Visa payment center in order to be paid by the Client, and pay the Partner Agencies. Payment fa acilities Visa Client Rese erve Pay Can cel Travel Agency Travel res servation facilitie es Partner Agency Insurance Purchase Ha ands on Insurance Company 23
24 Scenario Travel Agency needs to purchase a cancellation insurance at 3 rd party Insurance company. The case study model will be updated with BPMN: Pool, Tasks, Dataobject BAM: Service Contract, Service Architecture SAM: Service Interfaces, Participant, BPMN 24
25 Business process modelling (BPMN) 25
26 hod dolo ogy En nter rpris se Met Enterprise Business Model (CIM) Business Processes, Domain model, Business Rules, Organization SoaML Methodology Business Architecture Model (BAM) Capabilities Business Goals Service Contracts and Choreographies Business to System refinement System Architecture Model (SAM) Interfaces and Messages Platform- Specific Model (PSM) Service Orchestrations ti Service Interfaces Software Components Model to Text (M2T) Transformation Use cases UI Cloud, Web Services, JEE, MAS, P2P/Grid, SWS Refined & Annotated Business Processes Services Architectures Dialog model Service Choreographies CIM PIM PSM EA on SOA A erspective o ive on SOA odelio Business pe T perspect M B I enova G o Modeli 26
27 Business Architecture Model (BAM) Business Architecture Model (BAM) Business Goals Business Processes Capabilities Services Architectures Service Contracts and Choreographies Represents the business perspective of an SOA. Captures business requirements and identifies services: Business goals Business processes Capabilities Specifies the business community and its services: Services architectures of the business community. Service contracts t between the business entities participating i in the community. 27
28 Business Business Architecture Model (BAM) Business Goals Business Processes Architecture Modelling Capabilities Service Contracts and Choreographies Model to Model (M2M) Transformation System Architecture Model (SAM) Interfaces Service Interfaces and Messages Service Orchestrations Software Components Services Architectures Service Choreographies Platform- Specific Model (PSM) Model to Text (M2T) Transformation Cloud, Web Services, JEE, MAS, P2P/Grid, SWS 28
29 Refine business processes (1/2) Identify relevant business processes: Focus on business processes that enable the business goals to be met. Public and collaborative business processes between different business organizations. Map to community-level services architectures in SoaML Private business processes within a business organization. Map to participant-level i t l services architectures t in SoaML. Refine the business processes: Identify business entities and model them as pools or swimlanes. Map to participants in SoaML Focus on tasks that describe the interaction points between the business entities. Map to service contracts in SoaML Identify the control and data flows between these tasks. Map to message types in SoaML 29
30 destination:string travels [*]:Travel t:travel c:client o:o rder b:billing p:c arddetails 48 hours o:o rder o:o rder oc:o rder or:o rder b:billing i:invoice Refine business processes Case study example (2/2) c : Client StartEvent browse travels SelectTravel PlaceOrder confirminterest Cancel? [no] Provide Credit Card Details [yes] [cancel] Cancel Travel EndEvent Client VisaPaymentCenter pa : PartnerAgency ta : TravelAgency vpc : Indicate Price initorderfile checksolvency solvency ClientSolvable? CheckAvailability availability [no] CancelOrder [yes] PlacesAvailable ReservePlace Withdraw From Credit Card canceltravel reservetravel withdraw SendInvoice EndEvent TravelAgency PartnerAgency VisaPaymentCenter destination:string t:travel c:c lient p:c arddetails o:o rder travels [*]:Travel o:o rder [no] CancelOrder ta : TravelAge ncy Indicate Price initorderfile checksolvency ClientSolvable? 48 hours CheckAvailability PlacesAvailable [yes] ReservePlace With b:billing o:o rder oc:o rder 30 or:o rder
31 Hands-on exercise #1 Handson with Modelio Goal Revise the BPMN diagram Modelling Create a pool Create tasks Crate a dataobject Walkthrough Step by step 31
32 Walkthrough: BPMN Handson with Modelio diagram 1. Open the BPMN diagram in Business Architecture BusinessProcesses TravelReservationProcess 32
33 Walkthrough: BPMN pool Handson with Modelio 1. Create a pool IC in the BPMN diagram 33
34 Walkthrough: BPMN tasks Handson with Modelio and flows 1. Create a task Purchase Insurance in the TravelAgency pool and a task Process Insurance Request in the IC pool 2. Modify the flow in the TravelAgency pool, connecting ReservePlace to Purchase Insurance and create a new flow from Purchase Insurance to Withdraw From Credit Card. 34
35 Walkthrough: BPMN Handson with Modelio dataobject and message flow 1. Create a dataobject IR in the TravelAgency pool. 2. Connect the Purchase Insurance to the IR dataobject with an association. 3. Connect the IR dataobject to the Process Insurance Request in the IC pool with a message flow. 35
36 Business architecture modelling (SoaML) 36
37 Specify services architectures (1/3) Services architectures UML collaborations stereotyped «ServicesArchitecture». Identified from the BPMN processes. Participants UML classes stereotyped «Participant». Identified from pools, participants and lanes in the BPMN processes. Service contracts. UML collaborations stereotyped «ServiceContract». Identified from possible interactions between participants in the BPMN processes. 37
38 destination:string travels [*]:Travel t:travel c:client o:o rder b:billing p:c arddetails 48 hours o:o rder o:o rder oc:o rder or:o rder b:billing i:invoice Specify services architectures Case study example (2/3) Client Each Pool can be mapped to a Participant c : Client vpc : VisaPaymentCenter pa : PartnerAgency ta : TravelAgency StartEvent [yes] [cancel] Cancel Travel [no] browse travels SelectTravel PlaceOrder confirminterest Provide Credit Card Details Cancel? EndEvent [no] CancelOrder [yes] Indicate Price initorderfile checksolvency CheckAvailability SendInvoice ClientSolvable? PlacesAvailable ReservePlace Withdraw From Credit Card EndEvent canceltravel reservetravel availability solvency withdraw TravelAgency PartnerAgency VisaPaymentCenter destination:string t:travel c:c lient p:c arddetails o:o rder travels [*]:Travel o:o rder [no] CancelOrder ncy ta : TravelAge Indicate Price initorderfile Interactions between Pools Interactions between Pools are categorized categorised as Service Contracts checksolvency b:billing ClientSolvable? 48 hours CheckAvailability o:o rder PlacesAvailable oc:o rder [yes] ReservePlace 38 or:o rder With
39 Specify services architectures Case study example (3/3) 1. Create a Services Architecture 2. Identify Participants <<ServicesArchitecture>> TravelReservation r3:client client cd:clientdefinition travelagency traveller ti:travelinformation travelagency visaaccounter visacenter co:cardoperations r:travelagency tr:travelreservation r2:visapaymentcenter r1:partneragency traveller to:travelorder travelagency travelagency partneragency 3. Identify Service Contracts 4. Bind the Participants to the Service Contracts 39
40 Specify service contracts (1/2) Analyse the BPMN diagrams to identify service contracts. This is a design-choice as there is no single construct in BPMN that resembles a service contract. Certain pattern of objects can reveal a service contract, e.g. two single tasks follow one after another across a pool or lane and are connected with a sequence flow and associated with a data object. Specify the provider and consumer roles and interfaces operations and messages at the business level 40
41 Specify service contracts Case study example (2/2) traveller: <<ServiceC ontract>> TravelOrder travelagency:travelorder <<interface>> TravelOrder cancelorder(in order : Order) payo rder(in cardde tails : CardDetails) createorder(in travel : Travel, in client : Client):Order traveller: <<ServiceC ontract>> TravelInformation travelagency:travelinformation <<interface>> TravelInformation getdestinations():string[*] gettravels(in destination : string):travel[*] 41
42 Hands-on exercise #2 Handson with Modelio Goal Derive SoaML services from BPMN Modelling Link the BPMN and SoaML elements Service Contract Service Architecture Walkthrough h Step by step 42
43 Service Contract Handson with Modelio <<ServiceContract>> Insuranc epurchasecontrac t travelagency: company:insurancepurchase 43
44 Services Architecture Handson with Modelio <<ServicesArc hitecture>> t TravelAgencyInsurance r:insuranc ecompany c ompany ip:insura nce Purcha sec ontract travelagency r1:travelage ncy 44
45 Walkthrough: SoaML Handson with Modelio Package 1. Create InsurancePurchase SoaML Package in Business Architecture Package with right-click. 45
46 Walkthrough: SoaML Handson with Modelio Participant 1. Create InsuranceCompany participant i t in InsurancePurchase package with rightclick 46
47 Walkthrough: SoaML Handson with Modelio MessageType 1. Create InsuranceRequest message type in InsurancePurchase package with right-click 47
48 Walkthrough: Link SoaML Handson with Modelio elements to BPMN elements 1. Open the BPMN diagram in Business Architecture BusinessProcesses TravelReservationProcess 2. Type the IC pool with the InsuranceCompany participant p using the Represented property in the Properties tab 3. Type the IR dataobject with the InsuranceRequest message type using the Type/Represented property in the Properties tab 48
49 Walkthrough: SoaML Handson with Modelio Provider Interface 1. Create InsurancePurchase provider interface in InsurancePurchase package with right-click 49
50 Walkthrough: SoaML Handson with Modelio Service Contract Diagram 1. Create InsurancePurchase service contract diagram in InsurancePurchase package with right-click 50
51 Walkthrough: SoaML Handson with Modelio Service Contract 1. Create InsurancePurchaseContract t service contract t using palette button. 2. Drag and drop InsurancePurchase provider from model browser into the service contract 3. Create travel agency instance inside of the service contract. 4. Link both instances with a connector from the palette 51
52 Walkthrough: SoaML Service Architecture Diagram Handson with Modelio 1. Create InsurancePurchase service architecture diagram in InsurancePurchase package with right- click 52
53 Walkthrough: SoaML Handson with Modelio Services Architecture 1. Create TravelAgencyInsurance service architecture using palette button. 2. Drag and drop InsuranceCompany and TravelAgency participants from model browser into the service architecture 3. Create an ip Collaboration Use inside of the service architecture. 4. Type ip with InsurancePurchaseContract service contract using Properties tab. 5. Link participants and the service architecture with bind link from the palette and connect them to the correct roles using Properties tab 53
54 System architecture modelling (SoaML) 54
55 System Architecture Model (SAM) System Architecture Model (SAM) Interfaces and Messages Service Orchestrations Represents the IT perspective p of an SOA Service Interfaces Software Components Service Choreographieshi It partitions the system into software components and interfaces. Structural modelling to specify components, their interfaces and dependencies: Service interfaces Interfaces and messages Software components Behavioural modelling to specify component interactions and protocols: Service choreographies Service orchestrations 55
56 System Business Architecture Model (BAM) Business Goals Business Processes Architecture Modelling The System Architecture Modelling will refine the models of the Business Architecture t Modelling. Capabilities Service Contracts and Choreographies Model to Model (M2M) Transformation System Architecture Model (SAM) Interfaces Service Interfaces and Messages Platform- Specific Model (PSM) Service Orchestrations Software Components Model to Text (M2T) Transformation Cloud, Web Services, JEE, MAS, P2P/Grid, SWS Services Architectures Service Choreographies 56
57 Specify service interfaces (1/2) Define service interface as UML class stereotyped «ServiceInterface». One-to-one mapping between service contracts and service interfaces. Define provided interface as UML interface stereotyped «Provider». Define consumer interface as UML Interface stereotyped «Consumer». The consumer interface is specified only when callbacks are needed. Link the provided and consumer interfaces to the service interface. Create an interface realization between the provider interface and the service interface. Create a usage link between the consumer interface and the service interface. Create and link a conjugate service interface as UML class stereotyped «ServiceInterface». The name starts with a ~, and represents the counter-part of a service interface. It uses the provider interface It realizes the consumer interface. 57
58 Specify service interfaces Case study example (2/2) ~TravelOrderService Conjugate Service Interface <<interface>> TravelOrder createorder(in order : Order):integer cancelorder(in orderid : integer) payorder(in orderid : integer, in cardnb : integer) TravelOrderService Provider Interface (operations can be further refined from the BAM) Service Interface ~TravelInformationService getdestinations():string[*] <<interface>> TravelInformation gettravels(in destination : [*] string):simpletravel l gettravelinformation(in travelreference : Travel):boolean TravelInformationService 58
59 Specify interfaces and messages (1/2) Define message types as UML classes stereotyped «MessageType». The specification of message types is closely linked to the specification of operations and callbacks in the interfaces. Data passed into, and/or returned from the invocation of an operation or event signal defined in an interface. For an asynchronous document-centric approach you will typically only specify one input parameter. For a synchronous document-centric approach you will typically only specify one input parameter and one response parameter. Message types may have properties that can be either modelled as UML properties or associated UML classes. 59
60 Specify interfaces and Case study example messages (2/2) Message Type representing the Travel Destination country : string=null continent : string=null flight * destination 0..1 travel travel Travel travelreference : string=null publicprice : string=null pricevoyagesdiscount : string=null ishighpriority : boolean=false nbpersons : integer Title : string=null departuredate : Date=null returndate : Date=null travel travel 1 PartnerTravelAgency name : string=null partnert ravela genc y travel 0..1 CarRental category : string=null carrental nbplaces : integer renter : string=null null startingdate : Date=null endingdate : Date=null Flight flightid : string=null departure : string=null arrival : string=null departuredate : Date=null arrivaldate : Date=null hotelbooking * HotelBooking serviceoffer : string=null startingdate : Date=null endingdate : Date=null 60
61 Specify software components (1/2) Refine the participants of the services architecture by possibly decomposing them into several components. Use SoaML participants for logical system components. Use UML components for components that represent internal designtime software components. Create the ports of the participants/components Service port will be typed by a service interface (service provider). Request port will be typed by a conjugate service interface (service consumer). Link the ports through their provided/required interfaces The types of the linked ports must be such that a conjugate service interface is matched by a service interface. 61
62 Specify software components (2/2) <<ServicesArchitecture>> TravelReservation client travelagency cd:clientdefinition visaaccounter visacenter r3:client travelagency co:cardoperations traveller r:travelagency ti:travelinformation tr:travelreservation Case study example r2:visapaymentcenter r1:partneragency traveller to:travelorder travelagency travelagency partneragency <<Request>> port, typed by a Conjugate Service Interface <<Service>> port, typed by a Service Interface Participants are refined <<Participant>> Travel Agency Architecture i:website :~ClientDefinitionService ClientDefinition i2:cliententity :ClientDefinitionService :ClientInformationService :~TravelInformationService TravelInformation i1:travelentity :TravelInformationService :~TravelDefinitionService CardOperations :CardOperationsService :~TravelOrderService TravelOrder i3:travelreservationprocess to:travelorderservice co:~cardoperationsservice i6:visapaymentcenter tr:~travelreservationservice i7:partneragency om:~ordermanagementservice b:~billingservice :TravelReservationService OrderManagement Billing TravelReservation :OrderManagementService :BillingService i5:orderentity i4:accountingdepartment 62
63 Hands-on exercise #3 Handson with Modelio Goal Specify software component Modelling Service Interface definition Participant definition BPMN definition Walkthrough h Step by step 63
64 Service Interface Handson with Modelio ~InsurancePurchaseService InsuranceRequest <<interface>> InsurancePurchase purchase(in message : InsuranceRequest):InsuranceResponse clie nt : string travel : string InsuranceResponse response : string InsurancePurchaseService 64
65 Participant Handson with Modelio <<component>> TravelReservationProcess <<Request>> ins:~insurancepurchaseservice 65
66 BPMN process Handson with Modelio 66
67 Walkthrough: SoaML Handson with Modelio Package 1. Create InsurancePurchase SoaML Package in System Architecture Package with right-click. 67
68 Walkthrough: SoaML Handson with Modelio Service Interface Diagram 1. Create a Service Interface diagram in InsurancePurchase package with rightclick 68
69 Walkthrough: SoaML Handson with Modelio Service Interface 1. Create InsurancePurchase provider interface using palette button. 2. Create InsuranceRequest message type using right-click 3. Create InsuranceResponse message type using right-click 4. Add the properties client and travel typed by string to the InsuranceRequest 5. Add the property response typed by string to the InsuranceResponse 6. Add the operation purchase to the InsurancePurchase provider interface using palette button. 7. Set the input parameter InsuranceRequest and the return parameter to InsuranceResponse using right-click. 69
70 Walkthrough: SoaML Handson with Modelio Service Interface 1. Create a InsurancePurchaseService service interface using the palette. 2. Create an interface realization from InsurancePurchaseService to InsurancePurchase NB! Do this in a separate class diagram as the service interface diagram is broken! 70
71 Walkthrough: SoaML Handson with Modelio Service Interface 1. Create a Conjugate Service Interface from InsurancePurchase service interface with right-click 71
72 Walkthrough: SoaML Handson with Modelio Participant Diagram 1. Create a Participant i t diagram in InsurancePurchase package with rightclick 72
73 Walkthrough: SoaML Handson with Modelio Participant 1. Drag&Drop TravelReservationProcess participant from model browser (see in Participants package). 2. Create ins Request port using palette button. 3. Type ins port with ~InsurancePurchaseService InsurancePurchaseService conjugate service interface using the Base property in Properties tab. 73
74 Walkthrough: BPMN Handson with Modelio 1. Open BPMN process diagram inside of the TravelReservationProcess participant. 2. Add choice node and BuyInsurance task as shown 3. Link nodes as shown. 4. Select BuyInsurance node. In SoaML Engine tab, choose ins port and purchase operation invocation. 74
75 Walkthrough: BPEL Handson with Modelio Transformation 1. Right-click on System Architecture and choose SoaMLEngine / web/ BPEL Transformation 75
76 Thanks for your attention 76
Specifying Services using the Service oriented architecture Modeling Language (SoaML): A baseline for Specification of Cloud-based Services
Specifying Services using the Service oriented architecture Modeling Language (SoaML): A baseline for Specification of Cloud-based Services Brian Elvesæter 1, Arne-Jørgen Berre 1 and Andrey Sadovykh 2
BPEL. A Step by Step Guide: Model-Driven Generation with. Enterprise Architect. T his document will teach you how to use the Business Process
BPEL A Step by Step Guide: Model-Driven Generation with Enterprise Architect T his document will teach you how to use the Business Process Modeling Notation (BPMN 1.1) as a visual approach to producing
Model Simulation in Rational Software Architect: Business Process Simulation
Model Simulation in Rational Software Architect: Business Process Simulation Mattias Mohlin Senior Software Architect IBM The BPMN (Business Process Model and Notation) is the industry standard notation
Enterprise Architecture Modeling with SoaML using BMM and BPMN MDA Approach in Practice
Enterprise Architecture Modeling with SoaML using BMM and BPMN MDA Approach in Practice Andrey Sadovykh, Philippe Desfray SOFTEAM, 21 Avenue Victor Hugo, 76016 Paris, France email: {andrey.sadovykh, philippe.desfray}@softeam.fr
Developing SOA solutions using IBM SOA Foundation
Developing SOA solutions using IBM SOA Foundation Course materials may not be reproduced in whole or in part without the prior written permission of IBM. 4.0.3 4.0.3 Unit objectives After completing this
Eclipse SoaML: a Tool for Engineering Service Oriented Applications
Eclipse SoaML: a Tool for Engineering Service Oriented Applications Andrea Delgado, Laura González Instituto de Computación, Facultad de Ingeniería, Universidad de la República Julio Herrera y Reissig
Business Process Modelling Notation A tutorial
Business Process Modelling Notation A tutorial Sam Mancarella Chief Technology Officer Sparx Systems [email protected] OMG SOA in Healthcare January 14, 2011 Tutorial Objectives This tutorial
Enterprise Architecture: Practical Guide to Logical Architecture
Objecteering Practical Guides Enterprise Architecture: Practical Guide to Logical Architecture Author: Version: 1.0 Copyright: Softeam Softeam Consulting Team Supervised by Philippe Desfray Softeam 21
Business Process Driven SOA using BPMN and BPEL
Business Process Driven SOA using BPMN and BPEL From Business Process Modeling to Orchestration and Service Oriented Architecture Matjaz B. Juric Kapil Pant PUBLISHING BIRMINGHAM - MUMBAI Preface Chapter
Process Modeling using BPMN 2.0
Process Modeling using BPMN 2.0 This chapter provides a brief overview of Business Process Modeling Notation (BPMN) concepts with particular emphasis on the BPMN 2.0 additions. In addition, it describes
A Software Development Platform for SOA
A Software Development Platform for SOA Peter Eeles Executive IT Architect Rational Brand Architect for UK, Ireland and South Africa [email protected] 2004 IBM Corporation Agenda IBM Software Group
Enterprise Service Oriented Architecture Using the OMG SoaML Standard
Enterprise Service Oriented Architecture Using the OMG SoaML Standard A Model Driven Solutions, Inc. White Paper http://www.modeldriven.com Cory Casanave December, 2009. Enterprise SOA with SoaML 1 All
Getting Started Guide Testable Architecture
Getting Started Guide Testable Architecture by Gary Brown, Jeff Yu, and Jeff DeLong 1. Overview... 1 2. Installation... 2 2.1. Installation Instructions... 2 2.2. Importing Samples into Eclipse... 2 3.
Dr. Jana Koehler IBM Zurich Research Laboratory
Precise Modeling of Business Processes with the Business Process Modeling Notation BPMN 2.0 Dr. Jana Koehler IBM Zurich Research Laboratory ZRL BIT at a Glance Computer Science at ZRL: Security/Cryptography
How To Create A Diagram On Rational Software Development Platform
Homework 7: Use Cases, Sequence Diagram, Activity Diagram, State Diagram Name : Student Number : Laboratory Time : Objectives Create a Use Case Diagram in Rational Software Development Platform Create
SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems
SOFT 437 Software Performance Analysis Ch 5:Web Applications and Other Distributed Systems Outline Overview of Web applications, distributed object technologies, and the important considerations for SPE
BPMN 2.0 Tutorial. Daniel Brookshier Distinguished Fellow No Magic Inc.
BPMN 2.0 Tutorial Daniel Brookshier Distinguished Fellow No Magic Inc. About the Tutorial Generated from MagicDraw UML Based on current BPMN 2.0 for UML reference implementation. Developed by Daniel Brookshier,
Oracle BPM 11g. Hands-On Workshop Lab Guide
Oracle BPM 11g Hands-On Workshop Lab Guide Copyright 2010 TABLE OF CONTENTS AGENDA:... 4 GETTING STARTED... 5 LAB 1: BPMN MODELING... 14 Introduction... 14 Naming Convention... 15 Creating the BPM Project
Business Process Modelling Languages
Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Business Process Modelling Languages Paola Turci AOT Lab - DII - Università di Parma Business
Exporting from WebSphere Business Modeler Unit 23
Exporting from WebSphere Business Modeler Unit 23 Course materials may not be reproduced in whole or in part without the prior written permission of IBM. 5.1.0.1 Unit objectives After completing this unit,
Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1
Open Source egovernment Reference Architecture Osera.modeldriven.org Slide 1 Caveat OsEra and the Semantic Core is work in progress, not a ready to use capability Slide 2 OsEra What we will cover OsEra
www.modelingconcepts.com A Quick Chat about SOMF Capabilities Page1 Service-Oriented Modeling Framework (SOMF) Building Attribution Models
Page1 www.modelingconcepts.com A Quick Chat about SOMF Capabilities Constructing a Service-Oriented Attribution Model Training material for architects, business analysts, system analysts, software developers,
SOMA, RUP and RMC: the right combination for Service Oriented Architecture
SOMA, RUP and RMC: the right combination for Service Oriented Architecture WebSphere User Group, Bedfont, 4th March, 2008 Keith Mantell Senior Solution Architect IBM Rational [email protected] March
The Business Process Model
The Business Process Model by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page: 1 Table of Contents INTRODUCTION...3 BUSINESS PROCESS MODELING NOTATION (BPMN)...4 FLOW ELEMENTS...4
How To Create A Complex Diagram On A Computer Game
ENTERPRISE ARCHITECT IMPORT user guide No Magic, Inc. 2013 All material contained herein is considered proprietary information owned by No Magic, Inc. and is not to be shared, copied, or reproduced by
CloudML@ARTIST: Overview
CloudML@ARTIST: Overview In the context of the ARTIST project, and following the analysis on the state of the art documented in the public ARTIST Deliverable D7.2, it was decided to base our modelling
BPMN Business Process Modelling Notation
BPMN Business Process Modelling Notation Knut Hinkelmann This chapter is based on the BPMN Tutorial of Stephen A. White and the book White, S.A., Miers, D. (2008) BPMN - Modeling and Reference Guide. Future
Interworks. Interworks Cloud Platform Installation Guide
Interworks Interworks Cloud Platform Installation Guide Published: March, 2014 This document contains information proprietary to Interworks and its receipt or possession does not convey any rights to reproduce,
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED LOGICAL DESIGN MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED LOGICAL DESIGN MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The -Oriented Modeling Framework (SOMF)...
A Short Tutorial on Using Visio 2010 for Entity-Relationship Diagrams
A Short Tutorial on Using Visio 2010 for Entity-Relationship Diagrams by Nezar Hussain Microsoft Visio 2010 is a flexible software tool that allows users to create some diagrams and charts, providing an
Applying SOA to OSS. for Telecommunications. IBM Software Group
IBM Software Group Applying SOA to OSS for Telecommunications Kevin Twardus Manager of Industry Architecture and Standards IBM Software Group Communications Sector IBM Corporation The Details of SOA depends
Service Oriented Architectures Using DoDAF1
1 Service Oriented Architectures Using DoDAF1 Huei-Wan Ang, Fatma Dandashi, Michael McFarren The Mitre Corporation The MITRE Corp. 7515 Colshire Dr. McLean, VA 22102 hwang(at)mitre.org, dandashi(at)mitre.org,
Model Driven Interoperability through Semantic Annotations using SoaML and ODM
Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:
Supporting Service Design Decisions
Supporting Service Design Decisions Michael Gebhart, Marc Baumgartner, Sebastian Abeck Research Group Cooperation & Management Karlsruhe Institute of Technology (KIT) Karlsruhe, Germany {gebhart baumgartner
Model Driven Benchmark Generation for Web Services
Model Driven Benchmark Generation for Web Services Liming Zhu, Ian Gorton, Yan Liu Empirical Software Engineering Program, National ICT Australia & School of Computer Science and Engineering University
Part One Business Modeling Business Process Model
1 Part One Business Modeling Business Process Model 1 Business Process Model Sound Surveillance Video Surveillance Timing Control Lighting Control 2 2 Part Two Requirements Modeling Use Case Diagram System
A Service-Oriented approach dedicated to Internet based Business Process Networks: Building a MDA based collaborative platform with opensource
A Service-Oriented approach dedicated to Internet based Business Process Networks: Building a MDA based collaborative platform with opensource solutions EBM WebSourcing Jean-Pierre LORRE R&D Manager ObjectWeb
SemTalk BPMN Tutorial APRIL 2015 Email: [email protected]. Tutorial SemTalk 4.3 BPMN Edition for Business Process Analysis
Tutorial SemTalk 4.3 BPMN Edition for Business Process Analysis Contents 1. About Business Process Modeling Notation (BPMN)... 3 2. Starting SemTalk BPMN Edition... 4 3. Editing a Process... 7 3.1. Adding
CHAPTER 10: WEB SERVICES
Chapter 10: Web Services CHAPTER 10: WEB SERVICES Objectives Introduction The objectives are: Provide an overview on how Microsoft Dynamics NAV supports Web services. Discuss historical integration options,
Business Process Standards and Modeling
Business Process Standards and Modeling Janne J. Korhonen Helsinki University of Technology STANDARDS Standards Organizations Object Management Group (www.omg.org) Business Process Modeling Notation (BPMN)
Creating a Simple Business Collaboration Scenario With a BPMS
Creating a Simple Business Collaboration Scenario With a BPMS Using BPMN 2.0 and Bonita Open Solution Prof. Dr. Thomas Allweyer University of Applied Sciences Kaiserslautern June 2011 Contact: Prof. Dr.
Business Process Execution Language for Web Services
Business Process Execution Language for Web Services Second Edition An architect and developer's guide to orchestrating web services using BPEL4WS Matjaz B. Juric With Benny Mathew and Poornachandra Sarang
BPMN by example. Bizagi Suite. Copyright 2014 Bizagi
BPMN by example Bizagi Suite Recruitment and Selection 1 Table of Contents Scope... 2 BPMN 2.0 Business Process Modeling Notation... 2 Why Is It Important To Model With Bpmn?... 2 Introduction to BPMN...
The IBM Rational Software Development Platform..Role focused tools help simplification via Separation of Concerns
The IBM Rational Software Development Platform..Role focused tools help simplification via Separation of Concerns Analyst Architect Developer Tester Model the business & identify the business services
INTRODUCTION TO BUSINESS PROCESS MODELING NOTATION BPMN 1.2 AND BPMN 2.0
INTRODUCTION TO BUSINESS PROCESS MODELING NOTATION BPMN 1.2 AND BPMN 2.0 Email: {goliva,gerosa}@ime.usp.br / Twitter: @golivax Agenda 2 Introduction to Business Processes BPMN 1.2 Introduction Elements
<Insert Picture Here>
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment
Colorfly Tablet Upgrade Guide
Colorfly Tablet Upgrade Guide (PhoenixSuit) 1. Downloading the Firmware and Upgrade Tool 1. Visit the official website http://www.colorful.cn/, choose 产 品 > 数 码 类 > 平 板 电 脑, and click the product to be
SSL Intercept Mode. Certificate Installation Guide. Revision 1.0.0. Warning and Disclaimer
SSL Intercept Mode Certificate Installation Guide Revision 1.0.0 Warning and Disclaimer This document is designed to provide information about the configuration of CensorNet Professional. Every effort
Oracle Service Bus Examples and Tutorials
March 2011 Contents 1 Oracle Service Bus Examples... 2 2 Introduction to the Oracle Service Bus Tutorials... 5 3 Getting Started with the Oracle Service Bus Tutorials... 12 4 Tutorial 1. Routing a Loan
How to Model Aspect-Oriented Web Services
How to Model Aspect-Oriented Web Services Guadalupe Ortiz Juan Hernández [email protected] [email protected] Quercus Software Engineering Group University of Extremadura Computer Science Department Pedro
Modeling Business Processes for SOA: Designing the Service Oriented Enterprise
Modeling Business Processes for SOA: Designing the Service Oriented Enterprise 27 Mar. 03-23-05 2006 March 27, 2006 Fred A. Cummins, EDS Fellow, Chair OMG BMIDTF EDS Technology Policy, Processes and Standards
Working with BPMN 2.0 in Enterprise Architect version 11 / 12
Working with BPMN 2.0 in Enterprise Architect version 11 / 12 Introduction In versions 11 and 12 of Enterprise Architect several changes have been made to BPMN 2.0 which affects the way that modellers
Bizagi BPM Suite Loan Assessment Process Lab
Bizagi BPM Suite Loan Assessment Process Lab Submitted By: Shilpa Kochar Student ID: N8690723 Unit: Minor Project 1 INN690 Supervised By: Professor Marcello La Rosa Overview This report deals with the
IBM Rational Rapid Developer Components & Web Services
A Technical How-to Guide for Creating Components and Web Services in Rational Rapid Developer June, 2003 Rev. 1.00 IBM Rational Rapid Developer Glenn A. Webster Staff Technical Writer Executive Summary
How To Use Kentico+ On A Pc Or Mac Or Macbook
Kentico+ documentation Kentico+ documentation Home............................................................................. 3 1 Creating subscriptions and projects......................................................................
Enterprise Architecture Modeling PowerDesigner 16.1
Enterprise Architecture Modeling PowerDesigner 16.1 Windows DOCUMENT ID: DC00816-01-1610-01 LAST REVISED: November 2011 Copyright 2011 by Sybase, Inc. All rights reserved. This publication pertains to
Business Process Modeling Information Systems in Industry (372-1-4207 )
Business Process Modeling Information Systems in Industry (372-1-4207 ) Arnon Sturm The material of this presentation is adopted from various people including:, Pnina Soffer, Iris Reinhartz-Berger 1 Outline
EVALUATION. WA1844 WebSphere Process Server 7.0 Programming Using WebSphere Integration COPY. Developer
WA1844 WebSphere Process Server 7.0 Programming Using WebSphere Integration Developer Web Age Solutions Inc. USA: 1-877-517-6540 Canada: 1-866-206-4644 Web: http://www.webagesolutions.com Chapter 6 - Introduction
UML Modelling of Automated Business Processes with a Mapping to BPEL4WS
UML Modelling of Automated Business Processes with a Mapping to BPEL4WS Tracy Gardner IBM UK Laboratories, Hursley Park, Winchester, SO21 2JN, UK [email protected] Abstract. The Business Process Execution
Automotive System and Software Architecture
Automotive System and Software Architecture Yanja Dajsuren 2IW80 Software specification and architecture March 25, 2014 Which one has more software? Chevrolet Volt, an example modern day car Boeing 787,
How to add your Weebly website to a TotalCloud hosted Server
How to add your Weebly website to a TotalCloud hosted Server Creating your Weebly website: 1.) Go to weebly.com and create a free account. 2.) Build and design your personal website using the Weebly features.
Automating the DEVS Modeling and Simulation Interface to Web Services
Automating the DEVS Modeling and Simulation Interface to Web Services Chungman Seo Bernard P. Zeigler Arizona Center for Integrative Modeling and Simulation The University of Arizona Tucson, AZ cseo, [email protected]
Working with the ERP Integration Service of EMC Documentum Process Services for SAP
Working with the ERP Integration Service of EMC Documentum Process Services for SAP Applied Technology Abstract EMC Documentum Process Services for SAP is a new product that integrates with EMC Documentum
FMEA: An executable services oriented enterprise architecture for financial management
A division of Data Access Technologies, Inc. FMEA: An executable services oriented enterprise architecture for financial management OMG's Maximizing BPM Investments with SOA Workshop Cory Casanave cory-c
UML TUTORIALS THE USE CASE MODEL
UML TUTORIALS THE USE CASE MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between
Business Process Modeling and Standardization
Business Modeling and Standardization Antoine Lonjon Chief Architect MEGA Content Introduction Business : One Word, Multiple Arenas of Application Criteria for a Business Modeling Standard State of the
FDD Process #1: Develop an Overall Model
FDD Process #1: Develop an Overall Model A initial project-wide activity with domain and development members under the guidance of an experienced object modeller in the role of Chief Architect. A high-level
WebSphere Commerce V7 Feature Pack 2
WebSphere Commerce V7 Feature Pack 2 Pricing tool 2011 IBM Corporation This presentation provides an overview of the Pricing tool of the WebSphere Commerce V7.0 feature pack 2. PricingTool.ppt Page 1 of
Building the European Biodiversity. Observation Network (EU BON)
Enterprise Application Integration Building the European Biodiversity through Service-Oriented Architecture Observation Network (EU BON) EU BON Project Building the European Biodiversity Network Presentation
4.7 Business Process Model and Notation
206 4 Process Orchestrations 4.7 Business Process Model and Notation This section introduces the Business Process Model and Notation (BPMN), developed under the coordination of the Object Management Group.
Oracle Application Express - Application Migration Workshop
Oracle Application Express - Application Migration Workshop Microsoft Access Northwind Traders Migration to Oracle Application Express An Oracle White Paper May 2007 Oracle Application Express Application
Application. 1.1 About This Tutorial. 1.1.1 Tutorial Requirements. 1.1.2 Provided Files
About This Tutorial 1Creating an End-to-End HL7 Over MLLP Application 1.1 About This Tutorial 1.1.1 Tutorial Requirements 1.1.2 Provided Files This tutorial takes you through the steps of creating an end-to-end
How to Configure the Workflow Service and Design the Workflow Process Templates
How-To Guide SAP Business One 9.0 Document Version: 1.0 2012-11-15 How to Configure the Workflow Service and Design the Workflow Process Templates Typographic Conventions Type Style Example Description
Introduction to System Architect Student Edition (A Product of Popkin Software)
Introduction to System Architect Student Edition (A Product of Popkin Software) Dr. DOROTHY G. DOLOGITE Dr. RICHARD D. HOLOWCZAK Professors of Computer Information Systems Zicklin School of Business, Baruch
Business Process (BPMN) Course
Business Process (BPMN) Course 2 day course held as Public or On Site Course We also offer bespoke foundation & advanced modules which can be developed/adapted to suit requirements Course Objectives Day
Hands-On: Introduction to Object-Oriented Programming in LabVIEW
Version 13.11 1 Hr Hands-On: Introduction to Object-Oriented Programming in LabVIEW Please do not remove this manual. You will be sent an email which will enable you to download the presentations and an
Service Oriented Architecture 68 Success Secrets. Copyright by Irene Gray
Service Oriented Architecture 68 Success Secrets Copyright by Irene Gray Notice of rights All rights reserved. No part of this book may be reproduced or transmitted in any form by any means, electronic,
OMG releases BPMN 1.1 - What's changed?
OMG releases BPMN 1.1 - What's changed? (revised version as of April 2008) Gero Decker 1 and Torben Schreiter 2 1 Hasso Plattner Institute, Potsdam, Germany 2 inubit AG, Berlin, Germany Abstract The Business
ivms-4200 Client Software Quick Start Guide V1.02
ivms-4200 Client Software Quick Start Guide V1.02 Contents 1 Description... 2 1.1 Running Environment... 2 1.2 Surveillance System Architecture with an Performance of ivms-4200... 3 2 Starting ivms-4200...
IT Management with Enterprise Architecture
IT Management with Enterprise Architecture Draft version Pontus Johnson, Robert Lagerström, Mathias Ekstedt, and Magnus Österlind 2012 2.2 Modeling tutorial This section will guide you through a modeling
