Home
View/Download - No Magic, Inc
Contents
1. Providers consumer Order Placer provider Order Taker o a2 ee E O i f r a LLA P kn g ia p ii p B dip ely ae va er i ae ea eo oa a a ita r Figure 16 Place Order Service Contract with consumer and provider 6 Connect consumer with provider using Connector from consumer smart manipulator see Figure 17 on page 29 and Figure 18 on page 29 E S SONSON Consumers ke Providers consumer Order Placer Connector er Order Taker Bo O Ji L T Teea J EOSO P 7 Sernicecontracts ae p Place Order se E l ey ee ee ee O f W j eConsumers Providers consumer Order Placer provider Order Taker j fe er A f s s EOSS T see _ Figure 18 Place Order Service Contract with consumer connected to provider Step 3 The Service Structure Ela Data Ma Dealer Network l E Services EH Place Order Service beeen pe Order Placer Consumers been if Order Taker Providers a am Place Order Service Contracts fo ha feng Place Order Service 4 E Services Architecture Figure 19 Model with the Service Contract for Place Order and Interfaces 7 Repeat the steps 1 to 6 to create Shipping Request Services package and the Service Struc ture diagram with consumer and provider as shown on Figure 20 on page 30 package Shipping Request Service l Shipping Request Service SericeCortracts S Laine asa ae siding eai ce
2. Agent Message lype Message lype Participant Servicelnterface ServiceContract Participant Message lype Error Message Port with property type must exits Each participant in a Services Architecture shall have a port for each role binding attached to that participant Agents should always be active The property isActive must always be true Message Type cannot contain owned behaviors Message Type cannot contain owned operations A Participant cannot realize or use Interfaces directly it must do so through Services and Requesis All parts of a Servicelnterface must be typed by the Interfaces realized or used by the Servicelnterface All parts connected to CollaborationUse must be compatible with the roles they are bound to in a strict services architecture Participant ports must be of type Request or Service Message Type attributes must be public Abbreviation PortType PA AGENT_ACTIVE MType_cannot_contai n_ownedBehaviors Messagelype_cannot _contain_ownedOper ations Participant_cannot_re alize_or_use_Interfac es_ directly servicelnterface_part s must_be_typed_ by _realized_or_used_int erfaces SA Participant_capabilitie s must_be_provided_ through_some_ Servic e and needs must_ be consumed_throug h_some Request MessageType_All_ow nedAttributes _must_b e Public Constrained Name Constrained Error Message Element requestType Request Request typ
3. Architecture Made Simple CAMEO SOA PLUGIN version 17 0 5 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 any means All information copyright 2009 2013 by No Magic Inc CONTENTS INTRODUCING CAMEO SOA 4 2 INSTALLING AND RUNNING CAMEO SOA PLUGIN 5 Installing the CameoSOA Plugin 5 Sample of SoaML diagrams 5 CAMEO SOA DIAGRAMS 6 services Architecture Diagram 6 Service Architecture diagram elements 7 Service Architecture diagram sample 8 Service Structure Diagram 8 Service Structure diagram elements 9 Service Structure diagram sample 9 service Choreography Diagram 10 Service Choreography diagram elements 11 Service Choreography diagram sample 12 Message Type Diagram 13 Message Type diagram sample 14 Composit Application Component Diagram 14 Composit Application Component diagram elements 15 Composit Application Component diagram sample 16 CAMEO SOA VALIDATION RULES 17 CAMEO SOA STEREOTYPES 19 CAMEO SOA TUTORIAL 21 Step 1 Start modelling 21 Step 2 Modeling Services Architecture 23 Step 3 The Service Structure 26 Step 4 Integration of services 31 Step 5 Validation errors 34 Step 7 The communication structure 36 step 8 Information exchange 37 Step 9 Interfaces and Participants 43 Conclusions 45 INFORMATION AND SUPPORT 46 Bug Report 46 NoMagic Customer Support System
4. B Data E Note EF m Dealer Network E ae l pi zaricas EH Anchor o JE EEGA Containment i i Services Architecture 7 Dependency Image Shape Figure 13 Place Order Services package and the diagram 3 Draw a Service Contract element in the Service Structure diagram using the Service Con tract button from the diagram toolbar and name created Service Contract as Place Order see Figure 14 on page 28 27 Copyright 2009 2013 No Magic Inc Step 3 The Service Structure 3 1 Name ServiceContract as Place Order and close dialog coe ge Service Contracts er a Place Order iii Figure 14 The Service Contract element named Place Order 4 Create provider in the Place Order Service Contract element using the Provider Part F button from the diagram toolbar and name it as provider Order Take 7 SeniceContracts ee is ee a Place Order s l pe Pe a ne et a a i Y i T A j Providers provider Order Taker iA 2 ae Lj ff oe fF g s _ ww rs lt a Figure 15 Place Order Service Contract with Service Interface Part Step 3 The Service Structure 5 Create consumer in the Place Order Service Contract element using the Consumer Part button from the diagram toolbar and name it as consumer Order Placer package Place Order Service rs oe tare l O oOo eceVicelontracts w a EE ba mote Pa Place Order s bana a i Y Jm i DEE a S CONSUME
5. Service Choreography diagram elements Element Notation Description Lifeline Represents the existence of an object at a particular time Call Message A call message represents the request to invoke a specific Send Message Milestone Alternatives Loop Option Parallel Break Negative Critical Region Consider Ignore rent Het amt operation The send message represents asynchronous signal sending to the target element A Milestone is a means for depicting progress in behaviors in order to analyze liveliness Milestones are particularly useful for behaviors that are long lasting or even infinite The interaction operator alt designates that the Combined Fragment represents a choice of behavior The alternative fragment models if then else constructions A loop node is a structured activity node that represents a loop with the setup test and body sections The interaction operator opt designates that the Combined Fragment represents a choice of behavior where either the sole operand happens or nothing happens An option is semantically equivalent to an alternative Combined Fragment where there is one operand with non empty content and the second operand is empty The interaction operator par designates that the Combined Fragment represents a parallel merge between the behaviors of the operands The interaction operator break designates that the Combined Fragment represents a breaking sc
6. Agent Component Part Service Contract Use Request Service Role Binding Service Channel Assembly Connector Delegation Connector Realization Notation Description A participant is the type of a provider and or consumer of services In the business domain a participant may be a person organization or system In the systems domain a participant may be a system application or component A Participant Component is the type of a provider and or consumer of services In the business domain a participant may be a person organization or system In the systems domain a participant may be a system application or component An Agent is a Classification of autonomous entities that can adapt to and interact with their environment An Agent Component is a classification of autonomous entities that can adapt to and interact with their environment Part represents a set of instances that are owned by a containing classifier instance ServiceCollaborationUse is extended to indicate whether the role to part bindings are strictly enforced or loose A request defines the port through which a Participant makes requests and uses or consumes Services A Service is the offer of a service by one participant to others using well defined terms conditions and interfaces A Service defines the connection point through which a Participant offers its capabilities and provides a service to clients A role binding is a
7. Dealer SEE pati H Shipping Provider i consumer con Sans P Shipper A Agent nod y E e Dealer Network Architect cre Service w p a e Se g DNA Services Architectur Role Bi NONO Ship Status o Shi p UML Standard Profile UML_Stanc 7 B a S ad S Particip y Cameo 50A Profile Cameo SO p provider provider y Provisioning Profile Provisioning Agent Participants y DoaML Profile SoaML Profile mdz Service l l Shipper Reque A Gen Realiza Compos r Figure 49 Dealer Manufacturer and Shipper drag and dropped in to the Service Architecture diagram 3 Click on the Shipper class in diagram and use its smart manipulator button to display ports see Figure 50 on page 44 Participants Shipper Display Ports Figure 50 Displaying Shipper ports using its smart manipulator Conclusions 4 Click on one of the Shipper ports and use port smart manipulator button to show selected port provided required interfaces see Figure 51 on page 45 MagicDraw will display Shipper Ports Specification window Just close it as we do not need to modify anything Figure 51 Showing provided required interfaces of port using port smart manipulator 5 Repeat 3 and 4 steps in order to display other Participants ports and its provided required inter faces Shipper Shipping Provider Order Placer Recejyer 7 Order Taker Order Taker O Shipping Consumer
8. Figure 7 New created Participant Part 4 2 Click on Participant Part and type Manufacturer when press Ctrl Enter to apply entered name see Figure 8 on page 25 MagicDraw will create Partici pant Manufacturer too see Figure 9 on page 26 package Services Architecture on DMA Services Architect E P a ee r SPericesArchitectlres Noo F Dealer Network Architecture w i i Participants re i Manufacturer w El p N Fi eee lee SS gt a Figure 8 Naming Participant Part Step 3 The Service Structure E Containment En Inheritance Ag Diagrams a Mei Containment ls Data Elia Dealer Network Services Architecture H A Manufacturer Participants EA cnt Dealer Network Architecture Services4r to DNA Services Architecture Network Figure 9 Automatically created Manufacturer participant in the model You may use Show Applied Stereotype button from Containment tree to enable disable showing stereotypes in the model tree see Figure 10 on page 26 Containment Figure 10 Disabling enabling showing stereotype in model tree 4 3 Repeat the steps 3 1 and 3 2 to create two more Participant Parts name them Dealer and Shipper package Services Architecture ny DMA Services Architecture Network 3 eSernvicesarchitectures Dealer Network Architecture Participants Manufacturer Figure 11 Dealer Network Architecture Service Architecture with Partici
9. L M L panes ae e pope is f ServiceContracts N a Place Order r Y f f Participants Participants Dealer Manufacturer il I i AN SEa ae f eserviceContracts ServiceContracts ty ks Ship Status r Ma Shipping Request f DS i 7 Participants p e a e a a ee Shipper Pree _ a be doe fin oe a ot E Figure 25 Service Architecture with usages of Service Contracts 2 Connect the Participant Parts with Service Contract Usages and select the role specific partici pant plays under specific service contract context 2 1 Select the Participant Part the smart manipulator toolbar Q9 A ONNG_2N12 Nan Manir Ine 32 Co oyright 2009 2013 No Magic Inc Step 4 Integration of services 2 2 Select Role Binding A lt lt Participant Shipper Figure 26 Participant Part Smart manipulator toolbar 2 3 Use the Role Binding to connect the Participant Parts with the ServiceCon tracts You will be asked to select the role Participants plays in connected ser vice contract from Select Role dialog see Figure 27 on page 33 Select the role for each participant according the Table 1 on page 34 After you create role binding the Participant will be marked in red Do not pay attention to it we will solve this errors in next chapter select roie x Available Roles amp consumer Order Placer Dealer Network Services Place Order Ser amp provider Order T
10. communication realized over the connector An interface is a specifier for the externally visible operations of a class component or other classifier including subsystems without a specification of the internal structure Service Structure diagram sample aoeryviceCoantacts Fe a p Place Order gt f ON SS Se J slOnsSumers Providers consumer Order Placer provider Order Taker J a S o Y i a a n a Figure 2 Sample of the Service Structure diagram The example above shows a ServiceContract which defines the terms conditions interfaces and choreography for the Place Order Service Further the participants which must directly or indirectly agree for a Service Choreography Diagram interaction and enacted the service A ServiceContract is a binding contract binding on any participant that has a service point typed by a role in a service contract Service Choreography Diagram The choreography is a specification of what is transmitted and when it is transmitted between parties to enact a service exchange The service choreography diagram specifies exchanges between the parties the data assets and obligations that go between the parties The choreography defines what happens between the provider and consumer participants without defining their internal processes their internal processes do have to be compatible with their ServiceContracts Service Choreography Diagram
11. community in this case is a set of manufactures dealers and shippers the described architecture could be created by a trade organization or a major player In this tutorial we will call this community the Dealer Net work The intend of this architecture is to allow a marketplace of dealers manufactures and shippers work together easily by e Allowing existing and new players in the marketplace by provided and use each others services as defined in the architecture e Defining these services to be independent of any participant technologies or internal business processes e Having well defined contracts for how they work together Step 1 Start modelling In this step we will prepare environment and create a new project for modelling our new architecture We will use SOA Engineer MagicDraw perspective for more efficient modelling 1 Switch current MagicDraw perspective to the SOA Engineer perspective Switching to this per spective will hide all non SOA relative MagicDraw menus Select Options gt Perspectives gt Per Step 1 Start modelling spectives and from the main MagicDraw menu Choose SOA Engineer in Select Perspective dialog see Figure 1 on page 22 and click Apply button Select Perspective x Full Featured m Quick Stark SOA Engineer Current Software Architect System Analyst J Expert Customize TF the Expert box is checked the interface will be complex and have all details e
12. O Order Placer Figure 52 Participants with Ports and the Provided Required Interfaces Conclusions Congratulations you have successfully finished the first tutorial of the Cameo SOA in MagicDraw UML and made the first steps into the world of service oriented architecture You learned how to create and structure a new SoaML project Create a high level view on services by defining them in service contracts and create a Service Architecture and Participants You learned about defining a community and how participants of this community work together for some pur pose by providing and using services NOTE This tutorial is the first version of the Cameo SOA tutorial It does not describe all functionality of Cameo SOA plug in All functionality description will be available in the new tutorial version INFORMATION AND SUPPORT Bug Report Your bug reports are welcome at support magicdraw com These reports allow us to fix bugs as soon as pos sible and release the known bug free maintenance releases While sending the bug report please include if applicable e MagicDraw version number and the name of the edition Standard Enterprise Professional Java Professional C Demo or Academic e Sources where you got the version from demo CD or our homepage downloaded e Your OS name and version e JDK version and JVM vendor e Cameo SOA plugin version and revision This information can be found in Help gt About Mag
13. eM ee ee ee ee a a ee a ee ee eer is t CENSOR S elles ll Consumers gFroviders consumer Shipping Consumer eee Shipping Provider w Oooo a E a O Fi Soa ae kn F z hs Pa e aa a a fap tn A e eee pe C e 7 Figure 20 The Shipping Request Service Contract with consumer and provider E E Data E Dealer Network F Services H E Place Order Service Shipping Request Service feere Shipping Consumer Consumers beeen i i Shipping Provider Providers lt n Shipping Request SeryiceContrack bees fel Shipping Request Service Figure 21 Model with the Service Contract for Shipping Request and Interfaces hi 10 2013 No N lap Coc JYTIQI ht 2009 2013 No N Nagic INC Step 4 Integration of services 8 Repeat the steps 1 to 6 to create one more Ship Status Service as shown on Figure 22 on page 31 re a ServiceContracts TR C ail Ship Status EN C E E y BO L LL L j Consumers Providers consumer Receiver provider Shipper a L ero a U o Fi ON F i oe Es Pie i rn _ ai Figure 22 Ship Status Service Contract with consumer and provider E E Data Er Ea Dealer Network E E Services H Place Order Service H E Shipping Request Service EF Ship Status Service an C3 Receiver Consumers bee Co Shipper Providers Fo Ship Status ServiceContracts Ship Status Service Figure 23 Model with the Service Contrac
14. model tree showing our services architecture only te Containment is Inheritance 4 Diagrams lt Mode Containment oo IY sS E E Data F H EA UML Show Auxiliary Resources Hard Profile xml H EA Cameo 504 Profile Cameo 504 Profile mdzip H EA Provisioning Profile Provisioning Profile mdzip H EA SoaML Profile SoaML Profile mdzip Figure 3 Hiding profiles in model tree using Show Auxiliary Resources button SoaML profile contains SoaML modeling language stereotypes Modeling environment configurations and SoaML validation rules are stored in Cameo SOA profile Provisioning profile contains stereotypes for service deployment modeling 3 Create under the root Data model a new Dealer Network package We will keep all Dealer Net work related data and services there 3 1 Right click on the Data root model in Containment tree and select New Ele ment gt Package from the context menu 3 2 Type the package name Dealer Network AdMagicDraw UML 16 6 Dealer Network mdzip C Demo File Edit View Layout Diagrams Options Tools Analyze ODERA GHU See S C Demo Dealer Netw i Containment a Inheritance 4 Diagrams lt Model Exten containment ehe Bal vy 5 Elf Data i E ealer Webwork EEA UML Standard Profile UML Standard Profile xml H E Cameo 504 Profile Cameo 504 Profile mdzip H Ep Provisioning Profile Provisioning Profile mdzip H EA SoaML Profile SoahL Fro
15. or user of services specified by Service Contracts a p Fi l l F a n a eParticipant 7 S Participants Dealer Manufacturer I j Service Structure Diagram Service Structure diagram elements Element Service Contract Service Contract Use Consumer Part Provider Part Part Role Binding Connector Interface Notation ren Description A Service Contract defines the terms conditions interfaces and choreography that interacting participants must agree to directly or indirectly for the service to be enacted A Service Contract Use is the formalization of a binding exchange of information goods or obligations between parties defining a service A Consumer Part defines the interface and responsibilities of a participant to consume a service It is used as the type of a Request A Provider Part defines the interface and responsibilities of a participant to provide a service It is used as the type of a Service A Part of a Service Contract A role binding is a mapping between features of the collaboration type and features of the classifier or operation This mapping indicates which connectable element of the classifier or operation plays which role s in the collaboration Each connector may be attached to two or more connectable elements each representing a set of instances Each connector end is distinct in the sense that it plays a distinct role in the
16. 46 Web page 46 E Mail 46 Frequently Asked Questions 47 Copyright 2009 2013 No Magic Inc 1 INTRODUCING CAMEO SOA Cameo SOA leverages the Unified Modeling Language UML along with the latest SOA modeling stan dard SoaML to provide both architects and developers an integrated solution for creating optimal SOA architectures and implementations Cameo SOA brings together SOA at both the business and technology levels to address the full soectrum of services From Enterprise and Business Architectures to implementing using and composing services on your favorite enterprise service bus ESB or application server this inte grated plug in is versatile enough for both personal and team based development SoaML helps create and use services based on new and existing capabilities using composite services ee LHL 16 5 bra 1 Centra lRoeReeintryoedzip C Wan Soa Fie EH Wee Layee Dope Optere Tork A H NP ROBB S e p Ce oe e aaa a mi a gt Ti Tee es Ernaga Cue x w Tinm irks Help He Containrent ist OG E oS apx ae A Q im Cj Coen th F H E a g oe a E Pal a4 Er f ER Cisim FD central Poke Regali fe CRE Cee Ee CRS efor reat Model EHEJ CRA Proein t CRR ri 5 Pep Barger BE Pl Query fe E Fid raati fe fama Orrin Chet E al Frino eat P B r Tepes Eb a Guary Eso Perupi Guary ie EA Propa Query Seros o Gad ara E bo maon Dania B Pi he B Doumea kmi E ver Codret Truie c
17. Choreography diagram for the Place Order Service using Place Order Ser vice Contract context menu as shown on Figure 36 on page 38 i Services Place Order Service bbe f Order Placer Consumers bese Li Order Taker Providers i lace Order Hew Element Mew Diagram Mew Relation Seryvicelontrack ral Composite Structure Diagram at Activity Diagram Open in New Tab E Interaction Overview Diagram HE Ship Sere TE Fo Services Specification State Machine Diagram UML Standa Behavior Diagram Protocol State Machine Diagram a0 To ta Sequence Diagram Provisioning SoaML Frofil Communication Diagram Cameo SA d Figure 36 Creating new Service Choreography diagram for Place Order service contract Refactor select in Inheritance Tree ER Service Choreograph C 2 Make sure consumer and provider are selected for displaying them as life lines and click Ok button in Display Properties as Lifelines dialog see Figure 37 on page 38 Lifelines in Service Choreography diagram will be created as shown on Figure 38 on page 39 re Pror as Lifelines W consumer Order Placer jf oo provider Order Taker Clear All Select All Ok Cancel Help Figure 37 The Display Properties as Lifelines dialog 38 Copyright 2009 2013 No Magic Inc Step 8 Information exchange interaction Place Order E Place Order Figure 38 T
18. H Message Sort asynchSignal To Oo Element ID Fal Order Dealer Network Messages Cal Order Confirmation Dealer Wetywork E Order Status Dealer Network Mess cl Pele Dea Order Status Quote Request Dealer Webwork Me Signal 4 Close Back Forward Figure 43 Specifying Send Message message type using Send Message Specification window and Signal property 3 6 Click round button on Send Message message to create signal reception in consumer Order Placer see Figure 44 on page 41 MagicDraw will open cre ated signal reception Specification dialog see Figure 45 on page 42 Just close this dialog as we do not need to modify there anything 2 Order Status t z TOE Create Signal Reception according this signal Figure 44 Creating new signal reception for Order Status signal in Order Placer Copyright 2009 2013 No Magic Inc Step 8 Information exchange Reception Order Status History signaleOrder Statkus Dealer Wetworks Servic em lt signaleOrder Statusi Order Skatus 2D E Documentation Hyperlin Al Aj Ee ERE Properties Standard e Customize E Parameters Relations El Signal Reception Tags Mame Constraints OWNEer F Order Placer Dealer Netwoar Applied Stereotype Signal a Order Status Dealer Metwo Method To Do Mame The name of the NamedElement Close Back Eorwa
19. Order Processing The seller service port on the Manufacturer component shows the external responsibility of the manufacturer which is then delegated to the accounting and order processing parts In participant architecture there are frequently services connected between internal roles or between internal roles and external ports The Order Fulfillment Service shows a service that is internal to the Manufacturer while both the InvoicingService and Place Order Service are delegated from the Manufacturer component to the internal participants Accounting and OrderProcessing respectively The business process of the manufacturer is the behavior that may be associated with the participant s services architecture Each role in the architecture corresponds with a swim lane or pool in the business process 4 CAMEO SOA VALIDATION RULES The CameoSOA Plugin includes a list of already existing validation rules which check if the appropriate parameters are defined All validation rules that are included in CameoSOA Plugin are listed in table below TABLE 1 Cameo SOA validation rules for SoaML models Constrained Name port type must correspond role type hasPortsForAllBoundRol es isActive noOwnedBehaviors noOwnedOperations noRealizedUsedinterface partsArelnterfaces partsCompatibleWithRol esForCollaborationUse portTypes publicAttributes Constrained Element Property ServiceArchitecture
20. aker Dealer Network Services Place Order Servi Cancel Figure 27 Participant Role selecting dialog for connected Service Contract Ja Copyright 2009 2013 No Magic Inc Step 5 Validation errors TABLE 1 Roles of the Participants in the Service Architecture Participant Role ServiceContract Manufacturer provider Place Order Dealer consumer Place Order Dealer consumer Ship Status Shipper provider Ship Status Shipper provider Shipping Request Manufacturer consumer Shipping Request a m 7 a5emicesArchitecture s bE Sa eae o gt 3 Dealer Network Architecture i SSE E giles et ee e E E E E a E E E eae eg d n TTE i os ni eServiceContracts Moot f consume Place Order J provider 1 T _ a Ti i i ml an on au 7 Participant Participants Dealer Manufacturer l eor ane consumer j a a CE ee ee F a ServiceContracts Pai aserviceContracts o y i E Ship Status d tShippingRequest J OON a Sa OOOO O O l F i provide provider ff eea re i 7 p E a e E ae B Be aa ee m og ee ee 7 a pa Figure 28 Service Architecture including Role Binding NOTE The red marks on the participant parts display validation errors these will be described in the next step Step 5 Validation errors At step 4 we got an error message of active validation rules Errors are marked as a red frame around the ele ment th
21. aler Manufacturer consumer consumer N j i kA lt gt aa ee Pea eT oH Tg on 2 lt ServiceContract gt s eee i By _s Ship Status a ih rll iE N E Pon f i provider s provider r lt lt Paricipant gt gt d lak ela i Shipper P e a eO iis 7 ty _ lee a Figure 31 Service Architecture with solved validation errors You may see created port by expanding Dealer Shipper and Manufacturer classes as shown on Figure 32 on page 36 EF Services Architecture E Dealer Participants be BO Receiver kee Order Placer AS Manufacturer Participant i Shipping Consumer ke Order Taker Ae Shipper Participants ve P Shipping Provider Es P Shipper Figure 32 Automatically created ports after validation error solved Step 7 The communication structure In this step we will define MessageTypes with the attributes for the interaction between provider and consumer in created ServiceContracts A MessageType is a kind of value object that represents information exchange between participant requests and services This information includes data passed into and or returned from the invocation of an operation or event signal defined in a service interface Step 8 Information exchange 1 Create package named Messages in Dialer Network package for keeping our messages in one place In created package create Cameo SOA Message Type Diagram diagram and
22. assertion The sequences of the operand of the assertion are the only valid continuations All other continuations result in an invalid trace A reference to other interactions such as communication diagram sequence diagram and time diagram A duration defines a value specification that specifies the temporal distance between two time instants Service Choreography diagram sample oo Foe Consumers Providers consumer Order Placer provider Order Taker 1 PurchaseOrder 2 shipmentscheduled Figure 3 Sample of the Choreography diagram The sample of choreography diagram shown on Figure 3 illustrates how contract roles must interact to fulfill service contract The service contract separates the concerns of how all parties agree to provide or use the service from how any party implements their role in that service or from their internal business process The requirements for entities playing the roles in a ServiceContract are defined by consumer and provider used as the type of the role The consumer and provider types specify the provided and required interfaces that define all of the operations or signal receptions needed for the role it types these will be every obligation asset or piece of data that the entity can send or receive as part of that service contract Message Type Diagram Message Type Diagram A Message Type is a kind of value object that represents information exchanged between participant req
23. at an Conia Lr Pxt oop A Conbract Line Role Brig a Serene Channel a Lite ace Be Serine Inter ace and Capabiibes a Enae Unter act F n ee ace ed aS Ua Ap Ease l Desain etiarn ais aie ee Principal Query get prepa picpan Shing Arepa ieis H ma paminsan percees Ted tarcpas Pepe List gel tome typed Ake Types et ne Fed Prieeipate yE igj i GEI Bd me pe monte diet Type one bald epee Type A Pr ima iia Liai Foke Ts Pimpa Petal som tgi Fle Tyee 7 er Pence gemegpal iat Pregar Geeta He Pica hie ye Sy Figure 1 SoaML elements modeling using MagicDraw with Cameo SOA Cameo SOA leverages the latest Model Driven Architecture MDA standards and technologies making the transition from model to implementation highly automated reducing implementation and maintenance costs Cameo SOA supports all SoaML diagrams including Service Structure Service Choreography Service Architecture Message Type Composite Application Component Activity Capability and provisioning Cameo SOA is packaged as a plugin for the MagicDraw tool and is available for purchase separately The Cameo SOA retains all capabilities of award winning MagicDraw architecture modeling environment adding a SOA specific perspective The Cameo SOA engineer the specific context of the MagicDraw user interface for SOA modeling includes SOA specific menus toolbars diagrams specification and user in
24. at causes the error To solve these errors we will now create the missing Ports Step 5 Validation errors 1 Click on the Dealer Participant Part to open the smart manipulator shown on Figure 29 on page 35 CO gg ir m Participant r N Dealer 1 pii consumer A k Figure 29 Dealer Participant Smart Manipulator toolbar 1 1 Click the error button and select command port type must correspond role type 1 2 Select first command in the menu Create port with type Consumer Order Placer as shown on Figure 30 on page 35 ri a W pe ma i ServiceContracts iA ri c g i l l l CoO ae G port type must correspond role type Create port with type Consumer Order Placer Participants G9 port type must correspond role type gt Ignore Dealer aan re es oe Select in Validation Results ee M k Figure 30 Solving validation error by creating missing port NOTE The Participant Part will stay marked because we still need to create one more port for the Participant Part Step 7 The communication structure 2 Create missing ports in same way for the Participant Parts Manufacturer and Shipper er lt lt SenicesArchitecture BRR are a tc Dealer Network Architecture 25 g Tous enters er Oe AN N a aa ene mF me Se w of _ lt ServiceContract gt s Meese g f consumer a Place Order _ provider s f lt lt Participant gt H 7 lt eParicipant gt gt De
25. connection point through which a Participant offers its capabilities and provides a service to clients A request defines the port through which a Participant makes requests and uses or consumes services A generalization is the relationship from the child element the more specific element such as a subclass to the parent the more general element such as a super class that is fully consistent with the first element and that provides additional information A realization is a specialized abstraction relationship between two sets of model elements one representing a specification the supplier and the other represents an implementation of the latter the client Service Structure Diagram Service Architecture diagram sample if COMSUMeEr a a aa eServiceContracts Y oo Ship Status Service s B provider s Dealers Network Place Order provider Figure 1 Service Architecture diagram sample Figure 1 illustrates a services architecture involving three participants dealer manufacturer and shipper and three services Place Order Service Ship Status Service and Shipping Request Service This services architecture shows how a community of dealers manufacturers and shippers can work together Each party must provide and use the services specified in the architecture If they do they will be able to participate in this community This business to business SOA specifies the roles
26. d Operation specification dialog HParameter newOrder f x Ea fe abe 2 oc ieee amp neworder Order Dealer Network Services enewOorder Order newOrder n E Documentation Hype Ai 253 E Properties Standard Customize E Inner Elements E Relations E Parameter Tags Constraints Owner bakeOrdert newOrder Orde Language Properties Applied Stereotype Type a Order Dealer Metwork Mes Direction in Multiplicity Close k Back Forward Help Figure 42 New parameter for created takeOrder operation 3 4 Create a Send Message from provider to consumer in order to show that pro vider notify consumer about order status Use Send Message button from diagram toolbar for Send Message modeling 40 Copyright 2009 2013 No Magic Inc 41 Step 8 Information exchange 3 5 Double click on the created Send Message to open its Specification window In Specification window select Order Status message type for Signal property see Figure 43 on page 41 Ea Te Jees ao e History asynchSignal Dealer Wektwork Services Place Orde a H E aag aewmnes al Ee EE Properties Standard Customize Usage in Diagrams Arguments O Message vee Conveyed Information Name bw Inner Elements signature a Relations Owner E Place Order Dealer Network se Tags Applied Stereotype Constraints Send Event H Receive Event
27. e must be Interface or Servicelnterface serviceChannelEndsCom ServiceChannel The Request and Service patible ports must have compatible types serviceChannelEndTypes ServiceChannel One end of a ServiceChannel must be a Request and the other a Service in an architecture serviceType Service Service type must be Interface NOTE or Servicelnterface For more informations about validation rules see MagicDraw UserManual pdf Abbreviation RequestType SC SC Service Type 5 CAMEO SOA STEREOTYPES The CameoSOA Plugin includes Stereotypes which will be illustrate in the following table with a short docu mentation which describes them TABLE 1 SoaML profile stereotypes Stereotype Agent Attachment Capability Collaboration Consumer Expose MessageType Milestone Participant Port Property Provider Request ServiceChannel Documentation An Agent is a classification of autonomous entities that can adapt to and interact with their environment It describes a set of agent instances that have features constraints and semantics in common Agents in SoaML are also participants providing and using services A part of a Message that is attached to rather than contained in the message A Capability is the ability to act and produce an outcome that achieves a result It can specify a general capability of a participant as well as the specific ability to provide a service Abstract stereo
28. ealeretwork mdzip SEN I a Fa Beconta S Inherit Diagrams lt gt Model Containment g Oo x 2 te ae i n Cee i m n e YS Common E Data E Note x AA Dealer eer TR 3 on ca E x B Services Architecture z l a Se ett Dealer Network Architecture Anchor E o A omei WA Services Arrhikaerhire Meabkminrk i ral sy DNA Services Architecture Network Pii containment h O Dealer Network Architecture _ 2 Dependency a T Image Shape Separator i Service Architectur caer Service Architecture F ay a LE Participant Part aad T PP ee La Agent Part a E Ey Figure 6 Dealer Network Architecture in Service Architecture Diagram 4 Create three Participant Parts for Dealer Shipper and Manufacturer in the Dealer Network Architecture 4 1 In the diagram toolbar click the Participant Part button F Click on the Dealer Network Architecture collaboration shape to draw the participant part Rranvrinht ONNG_ 2N12 Na Manin Inn Copyrignt 2009 20715 NO Magic Inc DA 24 Step 2 Modeling Services Architecture C common f Mote abe Text Box _ B og _ anchor i oe Sernicesarchitectures UT F i A Containment z Dealer Network Architecture Dependency Ee Image Shape Separator Service Archikectur can Service Architecture LE Participant Part E Agent Park ure Service Contract Use
29. enario in the sense that the operand is a scenario that is performed instead of the remainder of the enclosing InteractionFragment The interaction operator neg designates that the Combined Fragment represents traces that are defined to be invalid The interaction operator critical designates that the Combined Fragment represents a critical region A critical region means that the traces of the region cannot be interleaved by other Occurrence Specifications on those Lifelines covered by the region The interaction operator consider designates which messages should be considered within this combined fragment This is equivalent to defining every other message to be ignored The interaction operator ignore designates that there are some message types that are not shown within this combined fragment These message types can be considered insignificant and are implicitly ignored if they appear in a corresponding execution Service Choreography Diagram Element Weak Sequencing Strict Sequencing Assertion Interaction Use Duration Constraint Notation Description The interaction operator seq designates that the Combined Fragment represents a weak sequencing between the behaviors of the operands The interaction operator strict designates that the Combined Fragment represents a strict sequencing between the behaviors of the operands The interaction operator assert designates that the Combined Fragment represents an
30. epends on the life span of the aggregate A directed relationship represents a relationship between a collection of source model elements and a collection of target model elements Realization A realization is a specialized abstraction relationship between two P sets of model elements one representing a specification the j supplier and the other represents an implementation of the latter the client Generalizatio A generalization is the relationship from the child element the more n A specific element such as a subclass to the parent the more general element such as a super class that is fully consistent with the first element and that provides additional information Composit Application Component Diagram Message Type diagram sample allessagelypes Product description String tithe String price gt double products 0 allessagelyvhes PurchaseOrder ePropertys nr Integer sib reqistered date aWlessagelypes Customer name String s0ciallD Integer Figure 4 Sample of the Message Type diagram Figure 4 shows a couple of Message Types that may be used to define the information exchanged between service consumers and providers These Message Types may be used as types for operation parameters Message Types can have associations with other message and data types Composit Application Component Diagram A Composit Application Component Diagram specifies the architecture for a par
31. file mdzip Figure 4 The Dealer Network package Step 2 Modeling Services Architecture Now we will create service architecture for Dealer Network The Service Architecture diagram shows how dif ferent roles work together and interacts with each other In this step we will create the services architecture with defined participants 23 Copyright 2009 2013 No Magic Inc Step 2 Modeling Services Architecture 1 Create new Services Architecture package in Dealer Network package as shown on Figure 5 on page 24 for keeping our services architecture E E Baka EF Dealer Network fae Services Architecture Figure 5 Package for Services Architecture 2 Create new Services Architecture diagram in the Services Architecture package for describing service architecture Right click on the Services Architecture package In containment tree and select New Diagram gt Cameo SOA gt Service Architecture Diagram Name created diagram as DNA Services Architecture Network 3 Draw a Service Architecture 3 1 In Services Architecture diagram toolbar click the Service Architecture button and click on the diagram pane to draw the Service Architecture shape 3 2 Type in the name of Services Architecture as Dealer Network Architecture see Figure 6 on page 24 AdMagicDraw UML 16 6 DealerNetwork mdzip C Demo File Edit View Layout Diagrams Options Tools Analyze Teamwork Window Help BEB LUBA s e s C DemolD
32. he Place Order Choreography diagram 3 Now we may create operation call message from Order Placer to Order Taker for taking order This operation call illustrates how consumer asks provider to take an order Order Taker will notify consumer about order status 3 1 Click on 4 Call Message button in Service Choreography diagram toolbar and draw message call from consumer Order Placer to provider Order Taker as shown on Figure 39 on page 39 Providers F provider Order Taker Figure 39 The Place Order Choreography diagram Quote request Call Message 3 2 Click on the small green round button on created Call message to create new operation to call see Figure 40 on page 39 Figure 40 Smart manipulator on Call message for new operations 3 3 In Operation specification window specify operation name as takeOrder its type as Order Confirmation see Figure 41 on page 40 and create new param eter named as newOrder of type Order see Figure 42 on page 40 Step 8 Information exchange AdOperation take Order B x ea ant Order Confirr 5 Template Parameters E Operation El E Relations Name takeOrder Tags Owner C4 Order Taker Dealer Networks Constraints Applied Stereotype Language Properties Visibilit public Type Sl Order Confirmation Dealer M Method Is Abstract False Is Static False To Do Name The name of the MamedElement Close Back Forward Help Figure 41 New Create
33. ic Draw gt Info page For information about your JVM and OS see Info tab in About dialog from MagicDraw Help menu If you have a file that the MagicDraw is not able to load and it is not a confidential one please attach it as well This would help us to analyze the problem Bugs can be submitted directly from MagicDraw application Help gt Submit a Bug NoMagic Customer Support System Please visit_hito Awww nomagic com support html for No Magic Customer Support System Web page To download the demo version and to get contact information please visit the Cameo SOA web page E Mail support magicdraw com for questions about product installation features questions like How do l and Suggestions sales magicdraw com questions regarding academic and site discounts delivery customer profile invoices and related issues contact magicdraw com email for all other contact Frequently Asked Questions We are awaiting your comments and suggestions Do not miss the chance to see your desired features in the future versions Frequently Asked Questions Please visit our website for FAQ at http www nomagic com support fag html 47 Copyright 2009 2013 No Magic Inc
34. ion folder gt samples Cameo_SOA 3 CAMEO SOA DIAGRAMS The Cameo SOA Plug in provides different types of diagrams for the SOA architecture and implementation e Services Architecture Diagram on page 6 e Service Structure Diagram on page 8 e Service Choreography Diagram on page 10 e Message Type Diagram on page 13 e Composit Application Component Diagram on page 14 services Architecture Diagram The Services Architecture Diagram represents the structure of a services architecture See Figure 1 on page 8 It puts a set of services in context of each other and shows how participants work together A Services Architecture is a network of participant roles which provides and consumes services to fulfill a purpose It defines for the types of participants and service realizations the requirement which fulfill those roles The roles defines the basic function that an entity may perform in a particular context In contrast participant specify the type of a party that fills the role in the context of a specific services architecture The participants specifies the type of a party that fills a role inside the services architecture to provide and employ services The goal of the services architecture is to specify the SOA of the organization community or process to provide mutual value services Architecture Diagram Service Architecture diagram elements Element Service Architecture Participant Part Agent Pa
35. ker interfaces to the Place Order Service Contract diagram Consumers _ Order Placer Order Taker Service Structure mre Service Contract Consumer Part ire Service Contract Providers esericeCoantracts a Place Order De legen ae r EEEE ee a d CONSUME Provi consumer Order Placer provider O1 Providers Order Taker Figure 48 Usages between Order Placer and Order Taker Step 9 Interfaces and Participants In this step we will find out how to visualize Ports of service Participants 1 Go into the Services Architecture package and open the DNA Service Architecture Network diagram Step 9 Interfaces and Participants 2 Drag and drop Dealer Manufacturer and Shipper Participants to the diagram see Figure 49 on page 44 Ral Common package Services Architecture DNA Services Architecture Network ata EsNote ee ae ea Dealer Network a i i a _ ee 7 Messages er ee E a ServicesArchitectures El Anchor H E Services aa l a Dealer Network Architecture J Services Architecture 28 Golo T ee ee ee a a a G a pam j saler Participant A Depen 0 praean oe Fl Receiver reas ServiceContracts fee P Order Placer J o PERE consume Place Order r provid agm jManufacturer Participan f o 7 eP Shipping Consumer amp 7 Participants hee Order Taker a Service
36. mapping between features of the collaboration type and features of the classifier or operation This mapping indicates which connectable element of the classifier or operation plays which role s in the collaboration A communication path between Services and Requests within an architecture An assembly connector is a connector between two components that defines that one component provides the services that another component requires A delegation connector is a connector that links the external contract of a component as specified by its ports to the internal realization of that behavior by the component parts A realization is a specialized abstraction relationship between two sets of model elements one representing a specification the supplier and the other represents an implementation of the latter the client Composit Application Component Diagram Composit Application Component diagram sample Participants Manufacturer o SenviceContracts o provider accounting K Invoice Service J Accounting hy a A consumer eServiceP aint 7 sc RENE Seller Lg g eobricelontracts al p Order Fulfillment Service Ti i s m ee provider e5emiteContracts provider Place Order att Figure 5 Sample of the Composite Application Component diagram Figure 5 shows a participant s services architecture The Manufacturer component is composed of Accounting and
37. name it Messages Your model structure will look as shown on Figure 33 on page 37 E E Data EF Dealer Network Eis Messages H ervices EF Services Architecture Figure 33 Message package and Message Type Diagram in it 2 Create Order message type in created Messages diagram using Message Type button 3 Create Order message type attributes as shown on Figure 34 on page 37 package Messages Ea Messages _jalessagelypes Order order date date product ID String Figure 34 Order Status message type with attributes 4 Create Order Status and Order Confirmation with attributes in Messages diagram as shown on Figure 35 on page 37 package Messages E Messages ellessagelypes Order Confirmation ehlassagelypes Order Status eyvayhill number String delivery date date _jaWlessagelypes Order order date date product ID String confirmation date date Figure 35 Order Order Status and Order Confirmation message types Step 8 Information exchange In this step we will regularize and visualize the information exchange between provider and consumer of Place Order Service Contract We will create a Service Choreography diagram to illustrate the exact information flow between consumer and provider We will show how new operations might be created while modeling Service Choreography Step 8 Information exchange 1 Create new Service
38. of the parties and the services they provide and use without specifying anything about who they are their organizational structure or internal processes No controller or mediator is required as long as each agrees to the service contracts By specifying a ServicesArchitecture we can understand the services in our enterprise and communities in context and recognize the real business dependencies that exist between the participants The purpose of the services architecture may also be specified as a comment Each participant in a SservicesArchitecture must have a port that is compatible with the roles played in each ServiceContract role it is bound to Service Structure Diagram A Service Structure Diagram illustrates a Service Contract defines terms conditions interfaces and choreography that interacting participant must agree to directly or indirectly for the services to be enacted The full specification of a service which includes all the information choreography and any other terms and conditions of the service The basis of the service contract is also a UML collaboration that is focused on the interactions involved in providing a service A participant plays a role in the larger scope of a Services Architecture and also plays a SerVicesArchitectlres consumer iff eeteeeontract provider re 5 CONSUME lj l SericeContracts js shipping Request role as the provider
39. onsumes services A communication path between Service and Request within an architecture Stereotype ServiceContract Servicelnterface Service ServicesArchitecture Documentation A ServiceContract is the formalization of a binding exchange of information goods or obligations between parties defining a service Defines the interface to a Service or Request and is the type of a role ina service contract A Service is the offer of a service by one participant to others using well defined terms conditions and interfaces A Service defines the connection point through which a Participant offers its capabilities and provides a service to clients The high level view of a Service Oriented Architecture that defines how a set of participants works together forming a community for some purpose by providing and using services 6 CAMEO SOA TUTORIAL This tutorial provides a step by step instructions for easy start in the world of service oriented architecture using the Cameo SOA plug in of MagicDraw You will learn how to create and structure new project In the next steps you will create a Services Architecture and Participants how to create a high level view of the services by defining service contracts We will start by the definition of a problem area community that means how a set of participants work together for some purpose by providing and using services Later we will refine the services and message details The
40. pant Parts inside Step 3 The Service Structure In this step we will specify the agreements between the parties which consume and provide service For this we will create three Service Structure diagrams the Service Contracts to each service Theses ServiceContracts will specify the roles of the provider and the consumer which can be filled out from any participant of our Dealer 26 Copyright 2009 2013 No Magic Inc Step 3 The Service Structure Network The Service Contract will also define which informations products assets value and obligations will flow between these two parties 1 Create package Services in Dealer Network package We will keep our services there Fe Contai sa Inherita 4 Diag Containment la Data cae eat ERNE E Services retain Figure 12 Package for Services 2 In Services package create Place Order Service package and a Service Structure diagram in the Place Order Service package Use New Diagram gt Cameo SOA gt Service Structure Diagram from Place Order Service package context menu Name new Service Structure dia gram as a Place Order Service e agicdraw UML 16 6 DealerNetwork mdzip C Dbemo File Edit View Layout Diagrams Options Tools Analyze Teamwork Window Help DEB HEMOBA sSs 2 _ c Demo DealerMetwork mdzip Ja B i E o aea i Containment te ra Fin O mr E Common LLLLELLI a E i a T di
41. rd Help Figure 45 Specification dialog of created signal reception Service Choreography for Place Order Service contract should look as shown on Figure 46 on page 42 interaction Place Order Place Order Figure 46 The Choreography diagram for Place Order service contract In order to specify that message flow between Order Placer and Order Taker may take place we should create usage dependencies between Order Places and Order Taker interfaces You may do it by drag and dropping Order Placer and Order Taker interfaces from Containment tree to the Place Order Service Structure diagram and connect them using Usage relationship from smart manipulator see Figure 47 on page 43 and Figure 48 on page 43 42 Copyright 2009 2013 No Magic Inc Step 9 Interfaces and Participants I EA Y F Common oes Es Mote Dealer Network H E Messages F Services Ma Pato Order aoe abe Text Box EH Anchor _ Containment Dependency Image Shape Separator B inte piece TTI sServicec ont aaa Place Order Service a Shipping Request Service E Eg Ship Status Service H E Services Architecture Ep UML Standard Profile UML_Standard_ Za Cameo 504 Profile Cameo SO4 Pr LH Provider Part Ep Provisioning Profile Provisioning Profile Part Ep SoaML Profile SoaML Profile mdzip ra Role Binding A Connector Interface Eh Service TokerFace Figure 47 Drag and Dropped Order Placer with Order Ta
42. rt Service Contract Use Role Binding Participant Agent Service Request Generalization Realization Notation Description A Services Architecture an SOA describes how participants work together for a purpose by providing and using services expressed as service A Participant Part is the type of a provider and or consumer of services In the business domain a participant may be a person organization or system In the systems domain a participant may be a system application or component An Agent Part is a classification of autonomous entities that can adapt to and interact with their environment Service Contract Use is extended to indicate whether the role to part bindings are strictly enforced or loose A role binding is a mapping between features of the collaboration type and features of the classifier or operation This mapping indicates which connectable element of the classifier or operation plays which role s in the collaboration A participant is the type of a provider and or consumer of services In the business domain a participant may be a person organization or system In the systems domain a participant may be a system application or component An Agent is a classification of autonomous entities that can adapt to and interact with their environment A Service is the offer of a service by one participant to others using well defined terms conditions and interfaces A Service defines the
43. t for Ship Status and Interfaces Step 4 Integration of services We have to defined the ServiceContracts to the services Now we need to integrate the created services into our service architecture Further to connect them with the participants which uses them by playing the defined rules which we set in the service contracts 1 Open DNA Service Architecture diagram and Drag and Drop created service contracts from Containment tree see Figure 24 on page 32 in to the Dealer Network Service Architecture Step 4 Integration of services see Figure 11 on page 26 You will get Service Contract Usages as shown in Figure 25 on page 32 Eg Data E Dealer Network iE E Services EI E9 Place Order Service vee 3 Order Placer Consumers Order Taker Providers cee Place Order Servicelontracts ea Place Order Service a o Shipping Request Service a Shipping Consumer Consumers il Shipping Provider Providers Ett Shipping Request ServiceContracks o a me Shipping TT Service E9 Ship Status Service w gt Receiver Consumers l vee 4 Shipper Providers H hip Status sS5ervicecontracks aa Ship Status Service B a Services Architecture Figure 24 Service Contracts to drag and drop to the Dealer Network Service Architecture package Dealer Network Architecture im i DNA Services Architecture Network Ga ee ee eSenicesarchitectures T aa oa aa a Dealer Network Architecture a l a
44. terface When in the SOA context we meet the specific needs of the SOA modeler including the same award winning MagicDraw usability features This is then extended with the added code generation capabilities of ModelPro enabling the full development from model to operating services 4 Copyright 2009 2013 No Magic Inc 2 INSTALLING AND RUNNING CAMEO SOA PLUGIN In this section you will find information on how to install the CameoSOA Plugin and how to start working with CameoSOA plugin Installing the CameoSOA Plugin To install the CameoSOA Plugin go to the main Help menu and select the command Resource Plugin Man ager Select the CameoSOA Plugin to download and install After automatic download and installation restart MagicDraw to activate the plugin More about working with Resource Manager see MagicDraw User Manual pdf If you have already downloaded the CameoSOA Plugin go to the Help main menu and select the Resource Plugin Manager Click the Import button to specify CameoSOA Plugin file location After auto matic extraction and installation restart MagicDraw to activate the Plugin To install on Mac OS X copy the CameoSOA Plugin file to the MagicDraw installation folder Then use the command line to go to the MagicDraw folder and unzip the CameoSOA Plugin Sample of SoaML diagrams SoaML sample is included You may find the SoaML_Diagrams mdzip project with all SOA diagrams in the lt MagicDraw installat
45. ticular Participant It illustrates how sub participants and external collaborations work together and stand often in relations to a business process Although it shows connections to external services over services and requests which allow the implementation of service interfaces A ParticipantArchitecture describes how internal participants work together for a purpose by providing and using services expressed as service contracts The participant architecture is a kind of services architecture for a particular participant By expressing the use of services the ParticipantArchitecture implies some degree of knowledge of the dependencies between the participants in the context of the containing participant A participant architecture is similar to the ServicesArchitecture and the similar parts of the descriptions will be not repeated here for a detailed view look in the description of the ServiceArchitecture diagram The only difference is that a participant architecture is based on a structured classifier rather than a collaboration and can therefore for external ports that represent interactions with external participants A Participant may play a role in any number of services architecture thereby representing the role a participant plays and the requirements that each role places on the participant Composit Application Component Diagram Composit Application Component diagram elements Element Participant Participant Component Agent
46. type for Service Contract and Service Architecture common features Defines Interface for consumer role in Service Contact A dependency between a service interface and a capability The service interface exposes the capability The specification of information exchanged between service consumers and providers A Milestone is a means for depicting progress in behaviors in order to analyze liveness Milestones are particularly useful for behaviors that are long lasting or even infinite A participant is the type of a provider and or consumer of services In the business domain a participant may be a person organization or system In the systems domain a participant may be a system application or component Port is extended with a connectorRequired property to indicate whether a connector is required on this port or the containing classifier may be able to function without anything connected The Property stereotype augments the standard UML Property with the ability to be distinguished as an identifying property meaning the property can be used to distinguish instances of the containing Classifier This is also Known as a primary key In the context of SoaML the ID is used to distinguish the correlation identifier in a message Defines Interface for provider role in Service Contract A Request models the use of a service by a participant and defines the connection point through which a Participant makes requests and uses or c
47. uests and services This information consists of data passed into and or returned from the invocation of an operation or event signal defined in a service interface Message Types are used to aggregate inputs outputs and exceptions to service operations as in WSDL Message Types represent pure data that may be communicated between parties it is then up to the parties based on the SOA specification to interpret this data and act accordingly As pure data message types may not have dependencies on the environment location or information system of either party this restriction rules out many common implementation techniques such as memory pointers that may be found inside of an application Good design practices suggest that the content and structure of messages provide for rich interaction of the parties without unnecessarily coupling or restricting their behavior or internal concerns Message Type diagram elements Element Notation Description MessageTyp A Message Type is a kind of value object that represents information e exchanged between participant requests and services A Message Type can illustrate a signal datatype or a class Ca E Enumeration A user defined data type whose instances are a set of user specified named enumeration literals The literals have a relative order but no algebras defined on them Direct A composition is used for aggregations where the life span of the Composition E member object d
48. xposed Un check Expert if you are a new user Non expert mode only exposes importanticomman options and data in the user interface Expert mode can be changed for a project at any time Description Perspective is set of roles primarily involved in designing and implementing project Software Architect Designer Interface designer Database designer This is default Magicbraw configuration All functionalities are available for expert mode Apply Cancel Help Figure 1 Selecting SOA Engineer perspective from available MagicDraw perspectives 2 Create a new Cameo SOA project in MagicDraw From the File menu choose command New Project and then select the Cameo SOA Project icon Name project DealerNetwork and click OK button see Figure 2 on page 22 x L Blank Guide to Project UML Diagrams Project location c Demo te Project in create directory for project and related data HMH 2I Project Cameo SA From Existing Project Source Code E Project From Template Cancel Figure 2 Creating Cameo SOA Project using MagicDraw New Project dialog a2 Rarnurinht A 9NNGQ 9N12 Nr Manin Ine Copyrignt 20 O9 2U0713 NO Maglc Inc Step 2 Modeling Services Architecture New created Cameo SOA project will have SoaML Cameo SOA and Provisioning profiles applied This profile might be hidden shown using Show Auxiliary Resources button in Containment tree toolbar Hide this profiles to get
Download Pdf Manuals
Related Search
Related Contents
Camera user manual Kenroy Home 32182BRZ Installation Guide TECHCONNECT TC2-HDMIW20 MANUAL DO UTILIZADOR free pdf DW9 series single phase coulometer user manual Snapper 8526, 9528, 10530, 11532 Snow Blower User Manual User`s Manual English Edition LABOSHAKE LS 2/5, RO 2/5 EXSYS EX-1092 Téléchargez - mifa yamaha Copyright © All rights reserved.
Failed to retrieve file