inf5120 ”modellbasert systemutvikling” ”modelbased system ... · soa, then, is an...

84
INF5120 ”Modellbasert Systemutvikling” Modelbased System developmentModelbased System development Lecture 13: 07.04.2014 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no Telecom and Informatics 1

Upload: others

Post on 26-May-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

INF5120”Modellbasert Systemutvikling”

”Modelbased System development”Modelbased System development

Lecture 13: 07.04.2014Arne-Jørgen Berre

[email protected] or [email protected]@ @

Telecom and Informatics 1

Page 2: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Content Service Modeling SoaML introduction Soa oduc o UML 2.0 Collaboration models SoaML – Service ArchitectureSoaML Service Architecture UML 2.0 Composite models SoaML – Port/connector models SoaML Port/connector models

Download MagicDraw from NoMagic full EA version Download MagicDraw from NoMagic full EA version (Updated license file until September 1, 2013 is now provided)

Telecom and Informatics 2

Page 3: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Oblig 1 – Group work – Service Innovation and Design

“TravelAdvisor”TravelAdvisor

1. Business Model – Osterwalder/Strategyzer.com2. Service Design – with smaply.com

Personas, Stakeholder maps, Customer/Service journey maps3. BPMN diagrams (use of Cameo EA MagicDraw)4. User stories (Agile) and selected Use cases (use of Cameo EA MagicDraw)5 UI Mockup (Balsamiq)5. UI Mockup (Balsamiq)6. Non functional requirements

Telecom and Informatics 3

Page 4: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Oblig 3 – Group work – Model-based Realisation of TravelAdvisorRealisation of TravelAdvisor

“TravelAdvisor – Model-based Realisation – with UML/No Magic Enterprise Architecture models and WebRatio implementation

The starting point is the TravelAdvisor specifications from Oblig 1

OBLIG 3:

Part 1: Use of UML modeling with No Magic/MagicDraw Cameo Enterprise Architecture1. Create an Information Model for TravelAdvisor (UML class model according to the ISO 19103 standard)ISO 19103 standard)2. Create a Service Archtiecture for TravelAdvisor (UML/SoaML model according to the ISO 19119 standard and SoaML – specify only the main functional services as components with ports/interfaces and the dynamics with a UML sequence diagram). p p y q g )Create also a corresponding Service Architecture using a SoaML collaboration diagram

Part 2: Realise TravelAdvisor using WebRatio3 Use WebRatio to create a WebRatio Information/class model3. Use WebRatio to create a WebRatio Information/class model4. Use WebRatio to create an IFML model with the main user interfaces specified in Oblig 1 5. Use WebRatio to create a web-based running application for TravelAdvisor –

Telecom and Informatics 4

g pppopulate it for representative travel destination(s)

Page 5: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

MagicDrawCameo Enterprise ArchitectureCameo Enterprise Architecture

Telecom and Informatics 5

Page 6: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Telecom and Informatics 6

Page 7: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

INF5120 - Lecture plan - 2014 1 (13/1): Introduction – overview of the course. Enterprise Architecture with UML and BPMN

and DSLs 2 (20/1): Business Architecture – Business Model Canvas and Business Model Innovation

with Value Networks, Strategyzer tool. BPMN modeling, MagicDraw EA tool 3: (27/1): Service Innovation and Service Design AT ONE Smaply – BPMN Examples 3: (27/1): Service Innovation and Service Design, AT ONE, Smaply – BPMN Examples 4 (3/2): User experience and Touchpoints/UI Design – Balsamiq/WebRatio 5 (10/2): UML and Req.Modeling –Agile User stories versus Use cases 2.0 6 (17/2): ServiceML, Requirements Modeling, Goal Modeling, BMM, and Non Functional

requirements – Requirements Engineeringrequirements Requirements Engineering

7 (24/2): UI Models, WebML and IFML, Process models (WebRatio) (for Oblig 3) 8 (3/3): Model driven engineering – Metamodels, DSL, UML Profiles (for Oblig 2) 9 (10/3): Model driven engineering, transformation technologies (for Oblig 2)9 (10/3): Model driven engineering, transformation technologies (for Oblig 2) 10(17/3): Method Engineering, SW Process frameworks , SPEM/EPF, ISO 24744,

FACESEM/ESSENCE (Brian Elvesæter)

11(24/3): Enterprise Architecture (EA) – UPDM, TOGAF, and SysML - Oblig 1 and 2 12(31/3): System Architecture and Information/Ontology modeling, UML, ISO 19103 13(7/4): UML Service Modeling – SoaML, UML 2.0 Collaboration/Service composition

EASTER 14(28/4): Guest lecture – Cloud modeling and/or Semantic modeling - and work on Oblig 2

and Oblig 3 15(5/5): Oblig 2 and 3, System realisation models (MagicDraw, JEE), MDA-ADM, Cloud ,

SBVR, MDI 16(12/5): Conclusion and Summary for INF5120 Final Oblig review

Telecom and Informatics 7

16(12/5): Conclusion and Summary for INF5120 - Final Oblig review 17(19/5): Preparation for Exam

Exam: Monday June 2nd, 2014, (4 hours)

Page 8: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service Modeling and Service DesignService Modeling and Service Design

UML 2 0 Components with Ports SoaML (and SysML) UML 2.0 Components with Ports, SoaML (and SysML)

S i i i UPDM (DODAF/MODAF/NAF) Service views in UPDM, (DODAF/MODAF/NAF) SESAR ISRM connected to AIRM GRA UML t d t NIEM GRA UML connected to NIEM ISO 19119 connected to ISO 19103, and RM/ODP

WebRatio – Information Models, UI models and service models Preparations for Oblig 3models – Preparations for Oblig 3

Telecom and Informatics 8

Page 9: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

SoaML Introduction

See SoaML standard document on course web page / Dropbox

Telecom and Informatics

Page 10: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

SoaML historyy

2006 September OMG RFP 2006, September OMG RFP 2007, June 3 initial submissions 2008 & 2009 Merge processg p 2009, December SoaML 1.0 finished 2010, March SoaML 1.0 adopted by OMG 2011, December SoaML 1.0 formal standard by OMG

FTF chairs: Arne J Berre SINTEF and Jim Amsden IBM FTF chairs: Arne J. Berre, SINTEF and Jim Amsden, IBM

http://www.soaml.orgp g

Telecom and Informatics

10

10

Page 11: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

UPMS SoaML TimelineSx – Submission version x

IBM,... Fujitsu,... SHAPE,...

Bx – Beta version x

IssuedSeptember 29, 2006

LOI DeadlineNovember 28, 2006

Initial Submission Deadline June 4, 2007

S1(3)

2006

Voting List Deadline August 5

Revised SubmissionNovember 19 2007

Revised Submission Deadline May 26

Adaptive,...

S2(2)S3(1)Deadline August 5, 2007

November 19, 2007Deadline May 26, 2008

OMG Technical Meeting June 23-27, 2008 * O t i C d

Revised Submission Deadline Aug 25, 2008

OMG Technical MeetingSept 22-26, 2008 * O l d EEUU

S42008 * Ontario Canada ead e ug 5, 008 Orlando EEUU

OMG Technical MeetingDec 08-12, 2008 * Revised Submission

Deadline Nov 10 2008S5

SoaML FTF Feb., 2009B1Santa Clara EEUU Deadline Nov 10, 2008,

SoaML FTF Nov., 2009 SoaML FTF Rec SoaML final standardB2

AMP, Aug. 2009

Telecom and Informatics

SoaML FTF Rec. Dec., 2009, Los Angeles

SoaML final standardMarch, 2010 (veto, by Oct. 2010)BPMN 2.0, Dec. 2009 B2

Page 12: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Metamodels and profilesMetamodels and profilesmodel <-> meta-model

MOF M3extension

relationship

relationship

UML process genericMeta-model M2

WorkflowM d l

UMLF 2EE

Migration oriented M t d l

UMLR l Meta-modelFor J2EE process Meta-modelReal-time

real-timemodel

migrationmodel

Workflowmodel M1

Telecom and Informatics

12

Page 13: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

UML/SoaML Metamodel approach – P2

Telecom and Informatics

13

Page 14: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

UML/SoaML Metamodel approach – P3

Telecom and Informatics

14

Page 15: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

SoaML/ShaML Metamodel approach –P4

Telecom and Informatics

15

Page 16: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

SoaML referencesSoaML references

OMG Web site SoaML Wiki: http://www.SoaML.org Specification: Specification:

http://www.omgwiki.org/SoaML/doku.php?id=specification

Telecom and Informatics

May 2009

Page 17: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

UML tools with SoaMLUML tools with SoaML

MagicDraw NoMagic MagicDraw, NoMagic

E t i A hit t S Enterprise Architect, Sparq

M d li S ft Modelio, Softeam

RSA/RSM IBM RSA/RSM, IBM

Telecom and Informatics

17

Page 18: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

SoaML – Goals

Intuitive and complete support for modelling services in UML Intuitive and complete support for modelling services in UML Support for bi-directional asynchronous services between multiple parties Support for Services Architectures where parties provide and use multiple

services. Support for services defined to contain other services Easily mapped to and made part of a business process specification Compatibility with UML, BPDM and BPMN for business processesp y , p Direct mapping to web services Top-down, bottom up or meet-in-the-middle modelling Design by contract or dynamic adaptation of servicesg y y p To specify and relate the service capability and its contract No changes to UML

Telecom and Informatics

18

Page 19: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

SoaML – ScopeSoaML Scope

Extensions to UML2 1 to support the following new modeling Extensions to UML2.1 to support the following new modeling capabilities: Identifying services Specifying servicesp y g Defining service consumers and providers Policies for using and providing services. Defining classification schemes Defining service and service usage requirements and linking them to

related OMG metamodels, such as the BMM and BPMN 2.0.

SoaML focuses on the basic service modelling concepts A foundation for further extensions both related to integration with other

OMG metamodels like BPMN 2.0, SBVR, OSM, ODM and others.

SoaML is NOT a methodology

Telecom and Informatics

19

Page 20: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Definition of service in SoaMLDefinition of service in SoaML

”A service is value delivered to another through a well defined A service is value delivered to another through a well-defined interface and available to a community (which may be the general public). A service results in work provided to one by another.”

Service Oriented Architecture (SOA) is a way of describing and understanding organizations communities and systems to maximizeunderstanding organizations, communities and systems to maximize agility, scale and interoperability.

SOA, then, is an architectural paradigm for defining how people, i ti d t id d i t hiorganizations and systems provide and use services to achieve

results. SoaML provides a standard way to architect and model SOA solutions p y

using the Unified Modeling Language (UML).

Telecom and Informatics

20

Page 21: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

SOA in Model Driven Architecture (MDA)

Business ConcernsMDATerms

GoalsBusiness ModelEnterprise Services (e-SOA)Business ModelEnterprise Services (e-SOA)ta

tion

nden

t

Goals

Policy

Enterprise Services (e-SOA)Roles, Collaborations & InteractionsProcess & Information

Enterprise Services (e-SOA)Roles, Collaborations & InteractionsProcess & Information

Refinem

e LCom

puIn

depe

nM

odel

Customers

CostsLogical System ModelTechnology Services (t-SOA), Components

Logical System ModelTechnology Services (t-SOA), Components

nt & A

uto

ine-Of-Sig

orm

pend

ent

l

AgilityComponentsInterfaces, Messages & DataComponentsInterfaces, Messages & Data

omation

ghtPl

atfo

Inde

pM

ode

m Technology SpecificationJMS, JEE, Web ServicesWSDL, BPEL, XML Schema

Technology SpecificationJMS, JEE, Web ServicesWSDL, BPEL, XML SchemaPl

atfo

rmSp

ecifi

cM

odel

Telecom and Informatics

21

Page 22: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

SoaML – Key conceptsy p

Services architecture specification of community Services architecture – specification of community Participants – role Service contracts collaboration (provide and Service contracts – collaboration (provide and

consume) Service contract – specification of service Service contract specification of service Role – Provider and consumer Interfaces Interfaces Choreography (protocol, behaviour)

Service interface bi directional service Service interface – bi-directional service Simple interface – one-directional service Message Type data exchanged between services

Telecom and Informatics

22

Message Type – data exchanged between services

Page 23: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Marketplace Services – ExampleMarketplace Services Example

umer

Order

Conformation

ProvidCon

sConformation

Shippedder

Status

Mechanics Are UsDealer

Acme IndustriesManufacturer

Ship Req

Shipped

StatusConsumerConsumer

ProviderPhysicalDelivery

DeliveredProvider

Provider

G tItTh F i ht Shi

Telecom and Informatics

23

GetItThere Freight Shipper

Page 24: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

ServiceContracts and ServiceArchitectures Metamodel

Telecom and Informatics

Page 25: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

ServiceContracts and ServiceArchitectures Profile

Telecom and Informatics

Page 26: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

UML 2 0 Collaboration diagramsUML 2.0 Collaboration diagramsand SoaML

Telecom and Informatics

Page 27: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

CollaborationCollaboration

Telecom and Informatics

Start - Explanation of standard UML 2.3

Page 28: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

CollaborationCollaboration

Telecom and Informatics

Page 29: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

CollaborationUseCollaborationUse

Telecom and Informatics

Page 30: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

CollaborationUseCollaborationUse

Telecom and Informatics

Page 31: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

CollaborationUse

End - Explanation of standard UML 2.3

Telecom and Informatics

p

Page 32: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Services architecturePurchasing serviceservice

Shipping i

Ship serviceStatus

service

A ServicesArchitecture (or SOA): is a network of participant roles providing and consuming services to fulfil a

purpose.purpose. defines the requirements for the types of participants and service realizations that

fulfil those roles. It is defined using a UML Collaboration.

Telecom and Informatics

32

Page 33: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Inside the Manufacturer

OrderO de

Conformation

Order ProcessingShipped

Order Processing

Service

AccountingShip Req

Shipped

Delivered

Telecom and Informatics

33

Page 34: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service contractService contract

A S i C t t A ServiceContract: Fully specifies the service (terms, conditions, interfaces, choreography, etc.) is binding on both the providers and consumers of that service. is defined using a UML collaboration that is focused on the interactions involved in is defined using 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 ServicesArchitecture d l l l th id f i ifi d band also plays a role as the provider or user of services specified by

ServiceContracts.

Telecom and Informatics

34

Page 35: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

rvice contract Service Contract

R l ithi

Contract

Role within service

Role within serviceRole within service

Service interface

Information processed by order processor

Service interface correspondin

interface corresponding to role

order processortype type

corresponding to role

Information received by orderer

The service contract specifies the details of the service – what information, assets and responsibilities are exchanged and under

orderer

Telecom and Informatics

35

p gwhat rules.

Page 36: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Simple protocol choreography for Ordering service contractOrdering service contract

Behaviour in SoaML can also be specified with Activity Diagrams or State M hiMachines.

Telecom and Informatics

36

Page 37: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

ParticipantsParticipants

ParticipantParticipantp

Participants:p represent logical or real people or organizational units that participate in services

architectures and/or business processes. provide and use services, defining their external contract

Telecom and Informatics

37

Page 38: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service Choreography for “Place Order”

The role of the consumer (a participant that places orders) and the consumers interface

The role of the provider (an order taker) and their interfaceand the consumers interface order taker) and their interface

The optional interaction toThe optional interaction to request a quoteThe optional interaction to

return the quote

The required interaction toThe required interaction to place an order

The required interaction to accept or reject the orderp j

A more detailed look at the same service. Note that this models a fully asynchronous SOA – like most business interactions, the document message types are detailed on the next page

Telecom and Informatics

document message types are detailed on the next page.

Page 39: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service Data MetamodelService Data Metamodel

Telecom and Informatics

Page 40: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service Data ProfileService Data Profile

Telecom and Informatics

Page 41: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Message Detail for Place Orderg

fThis is the detail for the message types that correspond to the interactions for the place order service.

Note that at the technology level this can produce XML schema forNote that at the technology level this can produce XML schema for the messages.

Telecom and Informatics

Page 42: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Example Information ModelpCRR Information Model

Telecom and Informatics

Page 43: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Linking messages to business informationinformation

SOA Messages can reference and include parts of the logicalparts of the logical information model –forming a connection between SOA and enterprise data

Telecom and Informatics

Page 44: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Linking the Business Process

A business process represents the desired behavior among the Each participant is given a

i l hi h t i th

modeled here as a UML y

the desired behavior among the various participants in a services architecture. This is modeled here as a UML activity.

swimlane which contains the actions carried out by that participant within the business process.

The overall behavior emerges as an orchestration of the actions carried out by each of the participants. Interactions with

which they interact.

participants must be consistent with the service contracts by which they interact.

This is the business process for the “RIB Claims Processing”Processing enterprise SOA we saw earlier.

Telecom and Informatics

Page 45: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

UML 2 0 Composite diagramsUML 2.0 Composite diagramsand SoaML

Telecom and Informatics

Page 46: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service ports and service participantsThe image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.

A Service port: is the offer of a service by one participant to others using well defined terms,

conditions and interfacesconditions and interfaces defines the connection point through which a Participant offers its capabilities and

provides a service to clients. It is defined using a UML Port on a Participant, and stereotyped as a <<Service>>

A Service port is a mechanism by which a provider Participant makes available services that meet the needs of consumer requests as defined by ServiceInterfaces, Interfaces and ServiceContracts.

Telecom and Informatics

46

Page 47: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

ServiceInterfaces and Participants Metamodel

Telecom and Informatics

47

Page 48: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

ServiceInterfaces and Participants Profile

Telecom and Informatics

48

Page 49: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

UML Composite Diagramsp g Composite Diagrams

A composite structure diagram is a diagram that showsA composite structure diagram is a diagram that shows the internal structure of a classifier, including its interaction points to other parts of the system. It shows the configuration and relationship of parts, that together, perform the behavior of the containing classifier.

classes can be displayed as composite elements exposing interfaces and containing ports and parts.interfaces and containing ports and parts.

Start - Explanation of standard UML 2.3

Telecom and Informatics

49

Page 50: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

PartPart

A part is an element that represents a set of one or more A part is an element that represents a set of one or more instances which are owned by a containing classifier instance. So for example, if a diagram instance owned ainstance. So for example, if a diagram instance owned a set of graphical elements, then the graphical elements could be represented as parts; if it were useful to do so, to model some kind of relationship between them. Note that a part can be removed from its parent before the parent is deleted so that the part isn't deleted at the same timedeleted, so that the part isn t deleted at the same time.

A part is shown as an unadorned rectangle containedA part is shown as an unadorned rectangle contained within the body of a class or component element.

Telecom and Informatics

50

Page 51: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

PortsPorts A port is attached to an active class.p The port has:

A name. A i t f if i th i l th t b i d An interface specifying the signals that can be received. An interface specifying the signals that can be sent.

Two types of ports: Connected to internal communication channels (by

default)default). Connected to the state machine for the class instance (a

behaviour port).

In interface

Out interface

Telecom and Informatics

A behaviour port

Out interface

Page 52: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Composite StructureComposite Structure

A composite structure diagram shows the relationship among internal A composite structure diagram shows the relationship among internal components of a class, in terms of communication paths.

The class may have one or more communications ports through which signals can be sent or received.

The ports are connected either to: Internal components Internal components

Channels connect the ports of the class to the ports of the internal components.

Channels can be unidirectional (one direction only) or bidirectional (both directions).

The state machine behaviour of the class (a behaviour port) The state machine behaviour of the class (a behaviour port).

Telecom and Informatics

Page 53: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Object instance referencesObject instance references

instance name

class name

Telecom and Informatics

Page 54: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Composite StructureComposite Structure

Telecom and Informatics

Page 55: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Composite class (incomplete) ith t t d t part with parts, ports and connectors p

ATM

:CardReaderUser-Reader

port

ATM-bank:Screen

User-Screen

:CashDispenser:KeyboardUser-Keyboard

connector:CashDispenser:Keyboard connector

Telecom and Informatics 55

User-Cash

Page 56: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Context Model in UML2.0 - I it t t t f C ll b ti composite structure as part of a Collaboration

BankContext

:User :ATM :Bank

User-Reader

ATM-bank:User :ATM :Bank

User-Keyboard

User-Cash

User-Screen

User Cash

Telecom and Informatics 56

Page 57: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Context Model in UML2 0 - IIContext Model in UML2.0 II

Including multiplicities on parts Including multiplicities on partsmultiplicity

BankContext

:User[1 10000]

:ATM[1 100] :Bank

User-Reader

ATM-bank[1..10000] [1..100] :Bank

User-Keyboard

User-Cash

User-Screen

User Cash

Telecom and Informatics 57

End - Explanation of standard UML 2.3

Page 58: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service interface

A ServiceInterface: can type a service port. if bi di ti l i can specify a bi-directional service

(both the provider and consumer have responsibilities to send and receive messages and events).g )

A ServiceInterface is defined from the perspective of thefrom the perspective of the service provider using three primary sections: provided and required Interfaces ServiceInterface class protocol Behavior.

Telecom and Informatics

58

Page 59: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Participant with service and request ports

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.

A Service Port is typed by a ServiceInterface A Request port is typed by a conjugate ServiceInterface (defines the use of a

service rather than its provision). This will allow us to connect service providers and consumers in a Participant.

Telecom and Informatics

59

Can be transformed to the appropriate interface/implementation code.

Page 60: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Interfaces for ParticipantspEach role in the service that receives interactions has an interface, this is the interface for a logical technology component and is implemented byand is implemented by components providing or using this service. This service is bi-directional -messages flow in both directions.

Interfaces will correspond with parts of WSDL in a web services

Telecom and Informatics

mapping of SoaML

Page 61: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Logical System ComponentsComponents implement the Logical System Components service interfaces providing the link to systems. Participants andParticipants and services may be used in multiple architectures.

“Ports” on the participating components provide and require

Telecom and Informatics

p p qthe service interfaces for each service provided or used

Page 62: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Composite Application ComponentsEnterprise systems can be integrated with adapter componentscomponents

This component is defined as a composition of other componentscomponents.

Or, new implementation can be defined inside of

t

Components can be assembled from other components by linking their services. This corresponds to the architecture for Acme.

components.

Telecom and Informatics

p

Page 63: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service ArchitectingService ArchitectingExamples from European SESARProject of Air Traffic Management

Overall Architecting Process Overview

Telecom and Informatics 63

Service Architecting Process Overview

Page 64: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service architecting processService architecting process

Telecom and Informatics 64

Page 65: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service DesignService DesignRefined

capabilities Specify detailed i t t dec

tsSpecify service messages and data types

pmodel service contract and

service interfaces

peci

fy s

tatic

asp

eConsolidated

Service Portolio

Service contract

types

Specify service behaviour Service

Sp

asp

ects

Service Architectures

Specify service orchestration

Service Interface

Specification

Quality ofSpec

ify d

ynam

ic

Draft service contracts

Specify Quality of Service and Service Policies

Service

Quality of Service

specification

S

isio

n as

pect

s

Optional activity

Optional artefact

Policies SpecificationSpecify service

provision by participants

Spec

ify p

rov

Telecom and Informatics 65

Page 66: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service Interface Specification characteristics

S

Des In

Service Provision

Servic

Comsign Abstraction

nteroperability L

n/ Consum

ption

ce Data M

essage

mm

unication Techn Level

Level

architecture des

e Schema

hnology

sign

Service Design HIGH LEVEL LOGICAL HIGH LEVEL LOGICAL N/A

Physical Service InterfaceDesign

DETAILED / TECHNOLOGY-

ORIENTEDPHYSICAL DETAILED PHYSICAL IDENTIFIED

Telecom and Informatics 66

Page 67: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service to requirements mappingService to requirements mapping

Telecom and Informatics 67

Page 68: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Capability to Requirements mappingCapability to Requirements mapping

Telecom and Informatics 68

Page 69: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service to Capability mappingsService to Capability mappings

Telecom and Informatics 69

Page 70: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service to BPMN operational processService to BPMN operational process

BPMN Book a VPA

Name: Book a VPAAuthor: 08.03.05 Ashley Will iasVersion: 1.0Created: 20.11.2011 00:00:00Updated: 26.04.2012 00:00:00

ConflictPropose another

solution [8.1]

VPAs (VPAX1, X2, X4 and X6) he needs to book;

Upper and Lower levels;

Penetration status – segregation or restriction.

Call sign;

Number and type of aircraft;

Aerodrome of departure (ADEP);

Aerodrome of destination (ADES);

Mission type;

Link with another mission (if existing).

Move other mission [9.1]Counter proposal[8]

se A

lpha

se A

lpha

Tige

r 16

Tige

r 16

Tige

rTi

ger As soon as the

airspace volume is

Day beforeoperation [2]

Update thebooking [2](User Task)

Confirm thebooking [2](User Task)

between 2requestsidentified [4]

Highlightconflict [4]

(Service Task)

Identifiyconflict [4]

(Service Task)

(User Task)

Receivecounterproposal

Accept counterProposal [7](User Task)

Result?

Send acception

The ARES;The date;The slot for the

Coordinate withSquadron Leader

[8.2]

Send rejection [8.2]

Reject[8]

[8]

Accept [8]

(Mili

tary

Air

?) B

as(M

ilita

ry A

ir?)

Bas

Squ

adro

n T

Lead

erS

quad

ron

TLe

ader

Book a ARESL1093 or VPA[1] (User Task)

identified L1093Confirm

Booking [3](User Task) Send

confirmedbooking

ghte

r 25

ghte

r 25

The slot for the mission (start and end time);The priority.

Accept counterProposal [11.1]

Fig

Fig

Receive counterproposal [10.1]

p [ ](User Task)

Acceptable?[11.1]

Counter proposal accepted [11.1]

R i j ti [8 2]

Natio

nal L

evel

Natio

nal L

evel

Appr

oved

Age

ncy

Beta

Appr

oved

Age

ncy

Beta

Receiveconfirmedbooking

Conflictbetween 2requestsidentified [4]

Identifiyconflict [4]

(Service Task)

Highlightconflict [4]

(Service Task)

Make a counterproposal [5](User Task)

Sendcounterproposal

Approve thebooking [9/12]

(User Task)

Bookings approvedReceiveacception [8]

Receice rejection [8.2]

Check proposal[9.2] (User

Task)

Is another solution suitable?

ARES not booked[11.2]

Don't approve thebooking [10.2]

(User Task)

NO

YES

Telecom and Informatics 70

Page 71: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Focus on service interactionsFocus on service interactions

BPMN Request an ARESBPMN Request an ARES

Name: Request an ARESAuthor: 08.03.05 Ashley Wil l iasVersion: 1.0Created: 06.06.2013 18:23:42Updated: 06.06.2013 18:29:07

ool»

Air

spac

e Us

eroo

l» A

irsp

ace

User

Confirm Booking [3](User Task)

Accept counterProposal [7] (User

Task)

Update the booking[2] (User Task)

Make a counterproposal [5] (User

Task)

Book a ARES L1093or VPA [1] (User

Task)

Check proposal [9.2](User Task)

«Po

«Po

Counter proposal Request approved ARES not bookedRejectionAcception

Counter proposalConfirmed request Counter proposal accepted

MC

MC Identifiy confl ict [4] Highlight confl ict [4] Approve the booking

q pp ARES not bookedRejectionp p

«Poo

l» A

«Poo

l» A (Service Task) (Service Task) [9/12] (User Task)

Telecom and Informatics 71

Page 72: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service to Activity relationshipService to Activity relationship

Telecom and Informatics 72

Page 73: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

ServiceInterface interactionServiceInterface interaction

Telecom and Informatics 73

Page 74: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service ArchitectureService Architecture

Telecom and Informatics 74

Page 75: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Quality of Service (QoS)Quality of Service (QoS)

Telecom and Informatics 75

Page 76: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

ServiceInterface to ServiceFunctionServiceInterface to ServiceFunction

Telecom and Informatics 76

Page 77: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service MessageTypeService MessageType

Telecom and Informatics 77

Page 78: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service Message Types«messageType»

ClearanceRequestMessage

- fl ightID: FlightIdent

«messageType»ClearanceMessage

- clearanceID: CharacterString

Defining messageattributes

Composition of message (adding payload)

«messageType»DepartureClearanceMessage

«messageType»StartupApprov alMessage

«messageType»AcknowledgeClearanceMessage

„Projection“ of

«datatype»SID

- sid: StandardInstrumentDeparture

«datatype»SSR

- ssrCode: SSRCode

«datatype»Frequency

- frequency: FrequencyType

«datatype»Runway

- designator: TextDesignatorType

«datatype»TSAT

- time: DateTime

An AIRM entity

«messageType»DepartureClearanceAndStartupApprov alMessage

Runway::Runway{root}

«trace»Using AIRM datatypesfor typing of attributes

+ designator: TextDesignatorType+ type: CodeRunwayType+ nominalLength: Distance+ lengthAccuracy: Distance+ nominalWidth: Distance+ widthAccuracy: Distance+ widthShoulder: Distance+ lengthStrip: Distance+ widthStrip: Distance+ lengthOffset: ValDistanceSignedType

Related AIRM entity

«datatype»Message and DataTypes::Error

- code: CharacterString- description: CharacterString

«messageType»Message and DataTypes::

AcknowledgementMessage

- acknowledgement: Acknowledgement0..*

Telecom and Informatics 78

+ lengthOffset: ValDistanceSignedType+ widthOffset: ValDistanceSignedType+ abandoned: Logical

Acknowledgement/error message and data type

Page 79: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

ISO 19119ISO 19119

Services (from ISO/TC211 Geographic Information but Services (from ISO/TC211 Geographic Information – but is mostly independent of the domain)

See ISO 19119 standard document on course web page / Dropbox

Telecom and Informatics 79

Page 80: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Interface with Message TypeInterface with Message Type

Telecom and Informatics 80

Page 81: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Architectural reference modelArchitectural reference model

GIS applications

ServiceAPI

APIAPI API API

APIGeographic

GIS applications

GeographicServiceaccess

Information Technology Services

API API API APIGeographicInformation Services

GeographicInformation Services

Information Technology Services

NNI

ISIHTI

NNI

ISI HTI

Information Technology Services

CSI CSI

Information Technology Services

Data sharing andtransfer based oncommon conceptual

NNI NNI

API - Aplication Programming Interface

Legendcommon conceptualmodels

API - Aplication Programming InterfaceHTI - Human Technology InterfaceISI - Information Services InterfaceCSI - Communications Services InterfaceNNI - Network to Network Interface

Telecom and Informatics 81

Page 82: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service Taxonomy – service typesService Taxonomy service types

GIS applicationsLegend

G - GeographicIT - Information Technology

API APIAPIGeographic Information Services

GHS GWS

IT - Information Technology

HS - Human Interaction ServicesMS - Model Management ServicesWS - Workflow/Task Services

API APIAPI

GMS GSS GPS GCS

IT IT IT IT IT IT

Information Technology Services

WS - Workflow/Task ServicesSS - System Management ServicesPS - Processing ServicesCS - Communication Services

ISIHTI

ITHS

ITMS

ITWS

ITSS

ITPS

ITCS The approach is to define Geographic

Information Services in each of the sixgroups, where general InformationTechnology services do not meet the

CSITechnology services do not meet therequirements.NNI

Telecom and Informatics 82

Page 83: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Logical multi tiered architectureLogical multi tiered architecture

Human interactionservices

Communication

Workflow/Taskservices

User processingservices

Communicationservices System

managementservices

Shared processingservices

Model/Informationmanagement

servicesservices

managementservices

Telecom and Informatics 83

Page 84: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ... · SOA, then, is an architectural paradigm for defining how people, organiti d t id d i t hiizations and systems

Service life cycleService life cycle

Telecom and Informatics 84