f14: course summary - with lecture notes structure · f14: course summary - with lecture notes...

47
Course Summary 05.05. 2008 1 Telecom and Informatics INF5120 Modellbased System Development F14: Course summary - with lecture notes structure Lecture 05.05.2008 Arne-Jørgen Berre Telecom and Informatics Lectures 1: 21/1: Introduction to MBSU, MDA, OO and Service/SOA modeling (AJB) 2: 28/1: Business Process Modeling (CIM) - with BPMN (AJB) 3: 4/2: Metamodeling and UML profiles, MDA technologies (EMF/GMF) – BPMN example (BRE) 4: 11/2: Language Engineering and DSL – SOA Example (BRE) 5: 18/2: Model transformations with ATL and QVT – and JEE (GO) 6: 25/2: SOA Architectures and UPMS (PIM) (AJB) 7: 3/3: Method Engineering and Service Modeling/SEMET (BRE) 8: 10/3: Code generation with MOFScript and other technologies (GO) EASTER 9 :31/3:: Service Design and Patterns (AJB) 10: 7/4: PIM and Web Services technology (PSM) with WSDL/XML/BPEL (PSM) (BRE) 11: 14/4: Web services and Model Driven Interoperability (BRE) 12: 21/4: Architecture work at Telenor and Agent technologies (JOEA, Ismar) 13: 28/4: Model Driven Semantic interoperability–with Ontologies, Semantic web and SOA (AJB) 14: 5/5: Course summary, Lecture notes structure (AJB) 15: 26/5 Preparation for exam, Course summary – QA and previous exams (AJB) Exam: June 2 nd , 2008… AJB – Arne J. Berre, BRE – Brian Elvesæter, GO – Gøran Olsen

Upload: duongminh

Post on 06-Apr-2018

236 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

1

Telecom and Informatics

INF5120Modellbased System Development

� F14: Course summary - with lecture notes structure

Lecture 05.05.2008

Arne-Jørgen Berre

Telecom and Informatics

Lectures� 1: 21/1: Introduction to MBSU, MDA, OO and Service/SOA modeling (AJB)

� 2: 28/1: Business Process Modeling (CIM) - with BPMN (AJB)

� 3: 4/2: Metamodeling and UML profiles, MDA technologies (EMF/GMF) – BPMN example (BRE)

� 4: 11/2: Language Engineering and DSL – SOA Example (BRE)

� 5: 18/2: Model transformations with ATL and QVT – and JEE (GO)

� 6: 25/2: SOA Architectures and UPMS (PIM) (AJB)

� 7: 3/3: Method Engineering and Service Modeling/SEMET (BRE)

� 8: 10/3: Code generation with MOFScript and other technologies (GO)

� EASTER

� 9 :31/3:: Service Design and Patterns (AJB)

� 10: 7/4: PIM and Web Services technology (PSM) with WSDL/XML/BPEL (PSM) (BRE)

� 11: 14/4: Web services and Model Driven Interoperability (BRE)

� 12: 21/4: Architecture work at Telenor and Agent technologies (JOEA, Ismar)

� 13: 28/4: Model Driven Semantic interoperability–with Ontologies, Semantic web and SOA (AJB)

� 14: 5/5: Course summary, Lecture notes structure (AJB)

� 15: 26/5 Preparation for exam, Course summary – QA and previous exams (AJB)

� Exam: June 2nd, 2008…

� AJB – Arne J. Berre, BRE – Brian Elvesæter, GO – Gøran Olsen

Page 2: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

2

Telecom and Informatics

Text for Exam – Pensum – Spring 2008

Text Material from all lectures and OBLIG

Lecture Notes INF5120

Part I – MDE - Model Driven Engineering

Part II – SOA – Service Oriented Arcitectures

Part III – MDE for SOA – COMET-S med UPMS

Part IV – MDI – Model Driven Interoperability

Some selected articles on MDI

Andreas Limyr, Tor Neple, Arne-Jørgen Berre, and Brian Elvesæter: Semaphore – A Model-Based Semantic Mapping

Framework, Semaphore.pdf

Arne-Jørgen Berre, Brian Elvesæter, Nicolas Figay, Claudia Guglielmina, Svein G. Johnsen, Dag Karlsen, Thomas Knothe and

Sonia Lippe: The ATHENA Interoperability Framework,. AIF_IESA_v9.pdf.

Christian Hahn, Cristian Madrigal-Mora and Klaus Fischer: Interoperability through a Platform-Independent Model for Agents,

IESA_HahnEtAl.pdf.

K. Arnarsdóttir, A.-J. Berre, A. Hahn, M. Missikoff, F. Taglino: Semantic mapping: ontology-based vs. model-based approach

Alternative or complementary approaches?, EMOI06Ppaper.pdf.

From OBLIG

ATL User manual

MOFScript user manual

Telecom and Informatics

Lectures – with pensum� 1: 21/1:F1: Introduction to MBSU, MDA, OO and Service/SOA modeling (MDA Guide, COMET_S+, SOA, OO/CRC, UML)

� 2: 28/1: F2: Business Process Modeling (CIM) - with BPMN (AJB) (BPMN)

� 3: 4/2: F3: Metamodeling and UML profiles, MDA technologies (MDA, MDD, EMF/GMF)

� 4: 11/2: F4: Language Engineering and DSL – SOA Example (UML profiles, DSL, SOA Ref.model/OASIS, UPMS)

� 5: 18/2: F5: Model transformations with ATL and other technologies ((MOF, QVT, ATL starters guide, User manual!!)

� 6: 25/2: F6: SOA Architectures and UPMS (PIM) (COMET-S, BM, Req Modeling, OOram, SOA-Profile, UPMS light)

� 7: 3/3: F7: Method Engineering and Service Modeling (SPEM, EPF, COMET Serv.mod, - UPMS)

� 8: 10/3: F8: Code generation with MOFScript and other technologies (MOFScript User guide, JEE)

� EASTER

� 9 :31/3:: F9: Service Design and Patterns (Design patterns, GRASP, OO/SOA articles Erl SOA Design patterns)

� 10: 7/4: F10: SOA, Web services architecture, XML (IEEE Std 1471-2000, SOA, UDDI, SOAP, XML)

� 11: 14/4: F11: Web services and Model Driven Interoperability (WSDL, BPEL, MDI, AIF, AIM)

� 12: 21/4: F12: Multi Agent software technologies and Practical Architecture work at Telenor (PIM4Agents, EA)

� 13: 28/4: F13: Model Driven Semantic interoperability–with Semantic web. Ontologies and semantic SOA (Semantic Web)

� 14: 5/5: F14: Course summary, Lecture notes structure (AJB)

� 15: 26/5 F15: Preparation for exam, – QA and previous exams (AJB)

� Exam: June 2nd, 2008…

� AJB – Arne J. Berre, BRE – Brian Elvesæter, GO – Gøran Olsen

Page 3: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

3

Telecom and Informatics

Oblig 1

� 1 Introduction

� 2 Goal of the exercises

� 3 OBLIG 1-a: BPMN modelling – Webshop� 3.1 Further Description

� 4 OBLIG 1-b: UPMS light in EMF/GMF and UML profile in Papyrus� 4.1 Metamodel description

� 4.2 GMF Editor

� 4.2.1 UPMS light service diagram

� 4.2.2 UPMS light interface diagram

� 4.2.3 Quick guide� 4.3 UML Profile in Papyrus

� 5 OBLIG 1-c: ATL transformation rules from UPMS Light to Java EE WS Metamodel

� 6 Files

Telecom and Informatics

Oblig 2

� 1 Introduction

� 2 Goal of the exercises

� 3 Description

� 3.1 OBLIG 2-a: MOFScript rules from UPMS light to JEE

� 3.1.1 Optional: Running the Services

� 3.2 OBLIG 2-b: MDI extension - Essay delivery

Page 4: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

4

Telecom and Informatics

Exam

� Case based

� Ref. previous exams

� All written material is allowed

� 09-12 (3 hours) –Monday June 2nd, 2008

Telecom and Informatics

Part IMDE – Model Driven Engineering

Page 5: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

5

Telecom and Informatics 9

INF5120 – Model-Based System Development

Lecture #3: Metamodelling and UML profiles, MDA technologies

04 February 2008

Brian Elvesæter, SINTEF ICT

Telecom and Informatics

OMG Model-Driven Architecture (MDA)

www.omg.org/mda

Page 6: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

6

Telecom and Informatics

Model-Driven Interoperability (MDI) Framework

MDA & Interoperability

Metamodelling

UML Profiles & DSLs

Model Transformations

Method Engineering

Reusable MDI Assets

• Method chunks• Tools and services

• Models and metamodels• Model transformations• DSLs and UML profiles

• Reference examples

Telecom and Informatics

CIM

BusinessContextModels

PIM

Model

trans-

formation

SoftwareSpecification

Models

PSM

SoftwareRealisation

Models

Model

trans-

formation

Model-driven approach to system

engineering where models are used in

• understanding• design• construction• deployment• operation• maintenance• modification

Model transformation tools and services are used to align the different models.

Business-driven approach to system

engineering where models are refined from

business needs to software solutions

• Computation independent model (CIM) capturing business context and business requirements

• Platform independent model (PIM) focusing on software services independent of IT technology

• Platform specific model (PSM) focusing on the IT technology realisation of the software services

Mo

del-

dri

ven

develo

pm

en

t (M

DD

)

Page 7: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

7

Telecom and Informatics

Fragments of a UML metamodel

UML

Telecom and Informatics

Three stages in the evolution ofmodelling techniques at the OMG.

UML MOF

UMLaModel

aModel

MOF

UML

UML_for_CORBA

aModel

SPEM Workflow etc.

Common Warehouse Metadata

Action language

(a) (b) (c)

Page 8: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

8

Telecom and Informatics

The three modelling levels

the MOFMMM

the UMLMM

a UMLmodel m

a particularuse of m

the UPMMM (SPEM)

the CWMMM

another UMLmodel m’

anotheruse of m

M3 level

M2 level

M1 level

M0 level

CCMEDOCetc.

Telecom and Informatics

Model -> Metamodel

UML MM

Class Attribute*1

UML model

Client

Name: String

entity →→→→ meta-entity

relationship

model →→→→ meta-model

relationship

Page 9: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

9

Telecom and Informatics

EMF Models and Ecore

� Ecore is the model used to represent EMF models

� Ecore is also an EMF model and therefore its own metamodel

� And its own meta-meta-….-model, but never mind

� Available elements are:

� EClass

� EAttributes

� EReference

� EDataType

� EEnum, EEnum Literal

� EPackage

� EOperation, EParameter

� Conceptually equal to OMGs Essential MOF (EMOF)

Telecom and Informatics

3 shades of EMF

Book book = LibraryFactory.eINSTANCE.createBook();

book.setTitle(“How to be a meta role model”);

Ecore model Generated Java files

Creation of an instance

Page 10: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

10

Telecom and Informatics

Business Process Definit ion MetaModelBusiness Process Definit ion MetaModelBusiness Process Definit ion MetaModelBusiness Process Definit ion MetaModel

Common Ab strac tionsCommon Ab strac tionsCommon Ab strac tionsCommon Ab strac tions

Infrastruc ture LibraryInfrastruc ture LibraryInfrastruc ture LibraryInfrastruc ture Library

Core

Primit iv eTypesPrimit iv eTypesPrimit iv eTypesPrimit iv eTypesAbstrac tionsAbstrac tionsAbstrac tionsAbstrac tions

Common Behav ior ModelCommon Behav ior ModelCommon Behav ior ModelCommon Behav ior Model

Simple Interac tionSimple Interac tionSimple Interac tionSimple Interac tion

Composition ModelComposition ModelComposition ModelComposition Model Cou rse Mode lCou rse Mode lCou rse Mode lCou rse Mode l

Ac tiv ity ModelAc tiv ity ModelAc tiv ity ModelAc tiv ity Model

ProcessingProcessingProcessingProcessing Behav ior Behav ior Behav ior Behav ior

Happening &Happening &Happening &Happening & Change Change Change Change

Interac tion Protocol ModelInterac tion Protocol ModelInterac tion Protocol ModelInterac tion Protocol Model

BPMN ExtensionsBPMN ExtensionsBPMN ExtensionsBPMN Extensions

BasicBasicBasicBasic

BPDM Packages

� Two complementary process models� Activity Model

� BPMN Extensions� Interaction Protocol Model

� Common Process Elements� Happening (Event)� Processing Behavior (Steps)� Simple Interaction

� Common abstractions � Composition Model� Course Model

� Use of UML 2 basic infrastructure � Element / Type� Data Types� Primitives Types� Package� Expressions

BPMN

Telecom and Informatics

INF 5120 - Lecture #5 Model transformations with ATL and other

technologies

Gøran K. Olsen

SINTEF ICT

Cooperative and Trusted Systems

Page 11: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

11

Telecom and Informatics

Families to Persons: writing the rules

� After the helpers we now write the rules:

� Member to Male

� Member to Female

Telecom and Informatics

Summary of the Transformation

1. For each instance of the class "Member" in the IN model, create an instance in the OUT model.

2. If the original "Member" instance is a "mother" or one of the "daughters" of a given "Family", then we create an instance of the "Female" class in the OUT model.

3. If the original "Member" instance is a "father" or one of the "sons" of a given "Family", then we create an instance of the "Male" class in the OUT model.

4. In both cases, the "fullname" of the created instance is the concatenation of the Member "firstName" and of the Family "lastName", separated by a blank.

+

Page 12: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

12

Telecom and Informatics

Metamodeling and use of ATL !

� Read – and practice - ATL User Guide – Tutorial

� See

� http://www.eclipse.org/m2m/atl/doc/

� http://www.eclipse.org/m2m/atl/doc/ATL_User_Manual[v0.7].pdf

� Examples: Person, Biblio, Table, …

� Many examples on metamodels and transformations in ATL Inventory (Zoo)

� http://www.eclipse.org/m2m/atl/atlTransformations/

Telecom and Informatics

Course Wiki – See reference to tutorials

� Internal tutorials

� BPMN Basic tutorial This tutorial gives a basic introduction on how to develop a BPMN model with the BPMN editor in the Soa tool plugin for eclipse

� EMF and GMF - Basic Tutorial This tutorial gives a basic introduction on how to develop a metamodel with EMF, and a corresponding DSL with GMF

� EMF and GMF - Intermediate Tutorial This tutorial extends on the basic tutorial and introduces more elements into the metamodel and show how to reflect this in the DSL

� ATL basic tutorial. A simple tutorial for model to model transformation using ATL. See the resources section for links to a lot of other examples.

� MOFScript Basic Tutorial Also se external tutorials and MOFScript.

� ATL – Book2Publish, PIM4SOA to XSD

� ATL User manual

Page 13: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

13

Telecom and Informatics 25

INF5120 – Model-Based System Development

Lecture #4: Language Engineering and DSL – SOA Example

11 February 2008

Brian Elvesæter, SINTEF ICT

Telecom and Informatics

UML and DSLs

� The issue of the role of UML is often stated in overly simplistic terms: MDD advocates the use of UML for all domain modelling while the Software Factories approach advocates that UML never used.

� This is an incorrect statement of the positions of both camps.� While the MDD approach treats UML, with customization, as the modelling

language of choice for most application modelling, it also acknowledges the value of custom languages in certain specialized circumstances.

� This is the purpose of the OMG Meta-Object Facility (MOF) standard that plays an important role in MDD. UML itself is defined using MOF and there are MOF definitions of many other languages.

� The MDD approach acknowledges the value of non-UML DSLs as a technique to be applied judiciously.

� Further, the Software Factories approach does not reject UML entirely. It suggests that you use UML for developing sketches and documentation, where DSLs should be used for developing models from which code is generated.

Page 14: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

14

Telecom and Informatics

INF 5120 - Lecture #8 Code generation with MOFScript and other

technologies

Gøran K. Olsen

SINTEF ICT

Cooperative and Trusted Systems

Telecom and Informatics

MOFScript architecture

Page 15: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

15

Telecom and Informatics

MOFScript a model to text tool

� Provides the means of:

� Editing, compiling and executing

� Syntax high-lightning

� Content assist

� Outline

� MOFScript Console

Telecom and Informatics

Uml2Java Example

//Context class

self.ownedAttribute->forEach(p : uml.Property | p.association = null) {p.attributeGetterSetters()

}// Generate Getter and Setters

uml.Property::attributeGettersSetters () {

'public ' self.type.name ' get' self.name.firstToUpper() ' () {'

'return ' self.name ';\n }\n'

'public void set' self.name.firstToUpper() '(' self.type.name ' input ) { '

self .name ' = input; \n } '

}

public String getBookTitle(){return bookTitle;

}public void setBookTitle(String input){

bookTitle = input;}public Integer getNumberOfPages(){

return numberOfPages}public void setNumberOfPages(Integer input){

numberOfPages = input;}

Page 16: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

16

Telecom and Informatics

FamilyModel example

uml.Class::outputGeneralization(){

self.generalization->forEach(g: uml.Generalization){

if(not g.target.isEmpty()){

g.target->forEach(c: uml.Class){

stdout.println("Generalization target name: "+ c.name )

} //g.target forEach

}//if target

if(not g.source.isEmpty()){

g.source->forEach(c:uml.Class){

stdout.println("Generalization source name: "+c.name)

}//g.sourse forEach

}//if source

}//self.generalization

}//outputGeneralization()

Generalization target name: IndividualGeneralization source name: Male

Telecom and Informatics

Part IISOA – Service Oriented

Architecture

Page 17: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

17

Telecom and Informatics 33

INF5120 – Model-Based System Development

Lecture #4: Language Engineering and DSL – SOA Example

11 February 2008

Brian Elvesæter, SINTEF ICT

Telecom and Informatics

Extended service-oriented architecture

Composition

Description & Basic Operations

Mana-gement

•Capability•Inteface•Behavior•QoS

•Coordination•Conformance•Monitoring

•QoS

•Publication•Discovery•Selection•Binding

Service provider

Service client

Service aggregator

performs

publishes

uses

Role actions

becomes

Operations•Assurance•Support

Market•Certification•Rating•SLAs

Service operator

Market maker

Managed services

Composite services

Basic services

Composition

Description & Basic Operations

Mana-gement

•Capability•Inteface•Behavior•QoS

•Coordination•Conformance•Monitoring

•QoS

•Publication•Discovery•Selection•Binding

Service provider

Service client

Service aggregator

performs

publishes

uses

Role actions

becomes

Operations•Assurance•Support

Market•Certification•Rating•SLAs

Service operator

Market maker

Managed services

Composite services

Basic services

Papazoglou and GeorgakopoulosCACM,Oct. 2003

Page 18: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

18

Telecom and Informatics

OASIS Reference Model forService Oriented Architecture 1.0

� OASIS� http://www.oasis-open.org/home/index.php

� Abstract framework.� Understanding significant entities and relationships between them within a

service-oriented environment.� Development of consistent standards or specifications supporting service-

oriented environment.

� Based on unifying concepts of SOA and may be used by� architects developing specific service-oriented architectures� in training and explaining SOA.

� Reference model not directly tied to any standards, technologies or other concrete implementation details

� Provide a common semantics that can be used unambiguously across and between different implementations.

� The reference model focuses on the field of software architecture.

Telecom and Informatics

Scope of the reference model

Page 19: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

19

Telecom and Informatics

INF5120 – Model-based System Development

Lecture #10: SOA, Web services architecture, XML, WSDL, BPEL

7 April 2008

Brian Elvesæter, SINTEF ICT

Based on material developed in the ATHENA (IST-507849), COMBINE (IST-1999-20839),INTEROP (IST-508011), and MODELWARE (IST-511731) research projects.

Telecom and Informatics

IEEE Std 1471-2000

� IEEE Std 1471-2000

� IEEE Recommended Practice for Architectural Description of Software-Intensive Systems

� Adopted September 2000

� Architecture definition

� Structure(s) of a system in terms of

� components,

� their externally visible properties,

� their relations,

� and the underlying principles

� Common frame of reference for architectural descriptions

� Common terminology

� architecture, architectural description, model, view, viewpoint, system, stakeholder, concern, …

Page 20: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

20

Telecom and Informatics

Developed using the methods established by its viewpoint, consisting of views expressing an architectural description.

The expression of a systems architecture with respect to a particular viewpoint. Addresses one or more of the concerns of the system stakeholder.

described by

identifies

SystemEnvironmentinfluences

inhabits

Mission

Stakeholder

has

fulfills

Architecturehas an

Architectural description

Concern

is important to

has identifies

ViewViewpointused to cover

is addressed to

selects organized by

conforms to

Modelestablishes methods for

participates in

consists of aggregates

participates in

Library viewpoint

has source

Rationaleprovides

1..*

1..*

1..*

1..*

1..*1..*

1..*

1..*

1..*

1..*

0..1

1..*

1..*

1..*

1..*

The fundamental organisation of a system embodied in its components, their relationships to each other and to the environment, and the principles guiding its design and evolution.

Has interest in, or concerns relative to the system.

Those interests which pertain the system’s development, operation and other aspects that are critical or otherwise important to one or more stakeholders.

Telecom and Informatics

Page 21: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

21

Telecom and Informatics

Web services stack

Technologystack

Conceptualstack

Telecom and Informatics

XSD metamodel (simplified)

Page 22: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

22

Telecom and Informatics

INF5120 – Model-based System Development

Lecture #11: WSDL, BPEL and Model-driven interoperability

14 April 2008

Brian Elvesæter, SINTEF ICT

Based on material developed in the ATHENA (IST-507849), COMBINE (IST-1999-20839),INTEROP (IST-508011), and MODELWARE (IST-511731) research projects.

Telecom and Informatics

WSDL 1.1 metamodel

WSDL DocumentWSDL Component

0..10..1

Port

+ Name

Operation

+ Name

Part

+ Name

+ Type

+ Element

Service

+ Name

1..*1..*

Binding

+ Name

1

1

1

1

Port Type

+ Name

11 11

Message

+ Name

1..*

0..1

1..*

+input

0..10..1

+output

0..10..1+fault 0..1

0..*0..*

Import

+ NameSpace

+ Location

Include

+ Location

Element

+ Name

+ BaseType

+ MinOccurs

+ MaxOccurs

Definition

+ Name

+ TargetNameSpace0..*0..*

0..*0..*0..*0..*

0..*0..*

0..*0..*

Schema

+ TargetNameSpaceTypes

0..10..1

A collection of related endpoints

A single endpoint defined as a combination of a binding and a network address

A concrete protocol and data format specification for a particular port type

An abstract set of operations supported by one or more endpoints

An abstract, typed definition of the data being communicated

An abstract, description of an action supported by the service

A container for data type definitions

Page 23: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

23

Telecom and Informatics

BPEL process and scope activities

PrimaryActivity

Partner Links

Partners

<process/> only

Fault Handlers

Compensation Handler

Event Handlers

Install special purpose activities in scope

Compensation of completed scopes

Variables

Message variables shared by activities in <scope/>

Correlation SetsCorrelation sets for associating messages with process/activity instances

Telecom and Informatics

UML profile for BPEL (3)

Page 24: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

24

Telecom and Informatics 47

INF5120”Modellbasert Systemutvikling”

”Modelbased System development”

Lecture 12: Multi Agent technologies / PIM4Agents

Telecom and Informatics

Part IIIMDE for SOA – (COMET-S)

Page 25: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

25

Telecom and Informatics

INF5120Modellbasert systemutvikling

� COMET-S Business Modelling

� COMET-S Requirements Modelling

�UPMS SOA profile

�COMET-S: COMET with Standards, for Services

�See COMET, www.modelbased.net/comet

Forelesning F06 - 25.02.2008

Arne J. Berre

Telecom and Informatics

PIM-K

CIM-K

Ontologies Bus.Process Bus.Rules Goals NFA/Qualities Org

BPDM, SBVR,

EDOC,UPMS,

PIM4SOA, ODM

PSM-K

BPMN, POP*, ARIS,

ArchiMate,

GERAM, GRAI, Zachman,

UEML, B.Rules. ..

Technologies/Realisation-K

UML profiles and

metamodels for BPEL, WSDL, XML,

XPDL,

OWL-S, WSML, WSDL-S

Technology

Reliastion

Code

Information Process Services Rules NFA UI

Data Wflow/Comp Interfaces Rules NFA UI

XML, BPEL/XPDL, WSDL, SWRL, Security, AJAX

OWL, OWL-S/WSML WSDL-S, Induction, … QoS

Legacy and New systems/services, ERPs/ESAs

Page 26: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

26

Telecom and Informatics

Platform specific

model

UMT Config model

Component implementationmodel

Bu

sin

ess D

om

ain

Syste

m D

om

ain

Model world Real world

Concepts& Artifacts

Processes

Actors

Business

model Goal Model

Architecture

model

Requirementsmodel

Use case Scenario Model

Otherrequirements

Prototype

Visionfor change

Contextstatement

Riskanalysis

Business Process & RoleModelWARM

Business Resource Model

PIM Data Types

Context Business

model Goal Model

Visionfor change

Contextstatement

Riskanalysis

Business Process & RoleModel

Business Resource Model

0,1

0,1

System Boundary

*

**

*

Deployment

User Service

Tier

User Resource

Service TierLS

Legacy

Business

Service

Tier

Resource

Service

Tier

Presentation Tier

User Dialog Tier

Co

mp

on

en

t Infra

stru

ctu

re &

Wo

rkflo

w E

ng

ine (

Mic

row

ork

flow

)

User

Serv

ice

Do

main

Bu

sin

ess S

erv

ice

Do

main

User

Interface

Tier

RARA

LA

Workflow Service Domain

Component structureand internal design

Interface and interaction specification

Busines domain to system domain

mapping

•Subsystem grouping and BCE

(Combine Ref Arch)

•BM analysis

Work Element Analysis Model

BCE Model

BMM

BPMN

UPMSw/SOA profile

and role modeling

Telecom and Informatics

Monitor ing

Seismic

Acquisition

• Sales &

• Planning

• Reporting &

• Monitor ing

• Vessel Operation

• Exec. • Op. Mgr

• Vessel Schedule

• Work Order

• Prod. statistics

• Downtime stat.

• NCR

• Support

• Engineering

ContextContextstatementstatementContextContext

statementstatement

BusinessBusinessResourceResource

modelmodel

BusinessBusinessResourceResource

modelmodel

ObtainClubInfoand deliver to

registeringProcessor

Registrator Secretariat application ClubRegister

Check if Club exists

Club registration Information

AskClubRegisterto checkif Club already exists

ExistingClubInfo

Ask to edit and confirm existing

ClubInfoExistingClubInfo

Edit and accept existingclubInfoAsk to register Club

Add Club

[Club Exists]

[Club do not Exists]

BusinessBusinessprocessprocessmodelmodel

BusinessBusinessprocessprocessmodelmodel

Subsystem1 Subsystem 2

Subsystem3Subsystem4

ComponentComponentstructure modelstructure model

ComponentComponentstructure modelstructure model

IterativeIterative&&

IncrementalIncremental

IterativeIterative&&

IncrementalIncremental

Vision for Vision for changechange

Vision for Vision for changechange

Risk analysisRisk analysisRisk analysisRisk analysis

Applications

Businesscomponents

Generalcomponents

OS

HW

ComponentComponentImplementationImplementation

ModelModel

ComponentComponentImplementationImplementation

ModelModel

Business Model (What and why)

Requirements Model(What)

Architecture Model(How)

Platform Specificmodel

(HowSolution)

Problem domain

Solution domain

BCE BCE ModelModelBCE BCE

ModelModel

Interface &Interface &InformationInformation

ModelModel

Interface &Interface &InformationInformation

ModelModel

GoalGoalModelModelGoalGoal

ModelModel

WorkWorkAnalysisAnalysis

RefinementRefinement

WorkWorkAnalysisAnalysis

RefinementRefinement

SystemSystemBoundaryBoundary

ModelModel

SystemSystemBoundaryBoundary

ModelModel

Use case scenarioUse case scenarioModelModel

Use case scenarioUse case scenarioModelModel

: SecretariatApplication

: ClubRegister: Registrator

registerClub

clubExists

registerClub

OtherOtherrequirementsrequirements

OtherOtherrequirementsrequirements

PrototypesPrototypesPrototypesPrototypes

Arnorer en kul type

Dette er etforsøk på

å fylle denne kommenten

med text

ComponentComponentinteraction modelinteraction model

ComponentComponentinteraction modelinteraction model

: SecretariatApplication

: ClubRegister: Registrator

registerClub

clubExists

registerClub

Arnor

er en kul type

Dette er et

forsøk på

å fylle denne

kommenten

med text

Platform profile Platform profile modelmodel

Platform profile Platform profile modelmodel

ObtainClubInfoand deliver to

registeringProcessor

Registrator Secretariat application ClubRegister

Check if Club exists

Club registration Information

AskClubRegisterto check

if Club al ready exists

ExistingClubInfo

Ask to edit and confirm existing

ClubInfoExistingClubInfo

Edit and accept existingclubInfoAsk to register Club

Add Club

[Club Exists]

[Club do not Exists]

Page 27: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

27

Telecom and Informatics

BMM (Metamodel)

Telecom and Informatics

BMMoverview

ServicesArchitecture/Community

executed by

Page 28: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

28

Telecom and Informatics 55

INF5120”Modellbasert Systemutvikling”

”Modelbased System development”

Lecture 2: 28.01.2008 - BPMNArne-Jørgen Berre

Telecom and Informatics

BPMN – Business Process Modeling Notation (OMG)

� Ref BPMN 1.1

� BPMN editor in Eclipse

� Ref. Lecture F02 and Oblig 1a

� 2 new proposals for BPMN 2.0 per February 10th 2008

Page 29: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

29

Telecom and Informatics

UPMS

Technologies/Realisation

Information Services Process

XML,, Metro/WSDL BPEL/XPDL

OWL,WSML OWL-S/WSML SA/WSML ASM

ODM

Ontologies

BPMN/

BPDMCIM,

BM

PIM

PSM/

Code

Persistence API EJB 3.0, Java, JEE 5

WS

SWS

Agent

ERP

Jack Jack Jack

SAP SAP SAP

Others

SCA, .Net

BMM/

ORG

“Goal modeling”

MODUS - SOHA

ATL

MOF

Script

Telecom and Informatics

UPMS

Technologies/Realisation

Information Services Process

XM WSDL BPEL

BPMN/

BPDMCIM,

BM

PIM

PSM/

Code

Persistence API EJB 3.0, Java, JEE 5

WS

INF5120 - Exercises

ATL

MOF

Script

Page 30: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

30

Telecom and Informatics

What is BPMN ?

Telecom and Informatics

Page 31: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

31

Telecom and Informatics

COMET-S Requirements and User Modelling

Ref. Goal-oriented use cases

(Alistair Cockburn, course responsible INF5120 (IN-MMO)with A.J. Berre

at UiOI/Ifi in 1997/1998, PhD UiO 2003)

Telecom and Informatics

Use Case Model

� The Use Case Model describes the system in terms of

� Actors

� use cases

� scenario descriptions

� It is defined a use case template to be used as a vehicle for developing the use case model.

� Non functional requirements are part of the use case model as these kinds of requirements are associated with use cases according to the use case template.

� General non functional requirements that applies for the whole system are associated with the system boundary which is also included in the use case model.

Page 32: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

32

Telecom and Informatics

System Boundary

� Goals� Identify and describe system boundaries, main services and

actors.

� Assure a common understanding of the system and its purpose.

� Identify interactions between the system and its environment.

� Deliverables� A high-level UML Use case diagram showing the system, the

actors and the actors responsibilities.

� A detailed UML Use case diagram showing the system boundary, the actors and their main use cases.

� Each use case should be numbered for later reference.

� General extra requirements that applies for the complete system are associated with the System Boundary

Telecom and Informatics

OORAM role model

Page 33: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

33

Telecom and Informatics

UPMS SOA Profile by Example

Using UML for Services Architectures with the SOA Profile

Telecom and Informatics

Services Architecture for the dealer network

Page 34: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

34

Telecom and Informatics 67

INF5120 – Model-Based System Development

Lecture #4: Language Engineering and DSL – SOA Example - UPMS

11 February 2008

Brian Elvesæter, SINTEF ICT

Telecom and Informatics

UML Profile and Metamodel for Services (UPMS)

Page 35: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

35

Telecom and Informatics

Metamodel – Overview

Telecom and Informatics

Metamodel – Services (abstract syntax)

Page 36: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

36

Telecom and Informatics

INF5120 – Model-Based System Development

Lecture #7: Method engineering and service modelling

3 March 2008

Brian Elvesæter, SINTEF ICT

Based on material developed in the ATHENA (IST-507849), COMBINE (IST-1999-20839),INTEROP (IST-508011), and MODELWARE (IST-511731) research projects.

Telecom and Informatics

ATHENA Model-Driven Interoperability (MDI) Framework

MDA & Interoperability

Metamodelling

UML Profiles & DSLs

Model Transformations

Method Engineering

Reusable MDI Assets

• Method chunks• Tools and services

• Models and metamodels• Model transformations• DSLs and UML profiles

• Reference examples

Page 37: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

37

Telecom and Informatics

MDD process framework steps

The method engineer builds a system development process based on process elements from the MDD process framework and other process frameworks.

The project manager adapts the system development process to the project-specific context.

The system development team uses the process adapted to the specificities of the system development process to build the system.

Lastly, the method engineer, the application designer and the project manager should provide feedback to the knowledge engineer for the modification, deletion or insertion of new process elements in the process frameworks. This final task allows maintaining an updated source of knowledge within the organisation.

Telecom and Informatics

SPEM (1/3)

� SPEM: Software Process Engineering Metamodel

� Metamodel and UML profile to describe software engineering processes

� Identifies the typical concepts of a process (process, phase, role, model, etc.)

� Defines them using UML extensions (stereotypes applied to various elements: class, use cases, operations, etc.)

� Assigns a characteristic icon to each new item.

Page 38: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

38

Telecom and Informatics

Eclipse Process Framework

� Eclipse Process Framework (EPF) presents a

� process management tool platform and conceptual framework for

� authoring,

� tailoring and

� deploying

� development processes.

Telecom and Informatics

EPF Concepts to Create Process Frameworks

Process FrameworkResponsible for creating and modifying work

products

Input or output of performing roles

Assigned to a role in a creation of modification

of a work product

Used to define processes, can relate to other activities to create

work flows

Complete process template for a specific

type of project

Express process knowledge for a key area of interest

Page 39: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

39

Telecom and Informatics

EPF Composer

� EPF Composer isa tool platform for process engineers,project leads, projectand program managerswho are responsiblefor mainteining and implementing processesfor development organizations or individual projects

� Aims to:

� provide for development practitioners a knowledge base of intelectual capital that allows them to browse, manage and deploy content.

� provide process engineering capabilities by supporting processe engineers and project managers in selecting, tailoring, and rapidly assembling processes for their concrete development process.

Telecom and Informatics

Service modelling in the COMET-S methodology

Page 40: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

40

Telecom and Informatics

Platform specific

model

UMT Config model

Component implementationmodel

Bu

sin

ess D

om

ain

Syste

m D

om

ain

Model world Real world

Concepts& Artifacts

Processes

Actors

Business

model Goal Model

Architecture

model

Requirementsmodel

Use case Scenario Model

Otherrequirements

Prototype

Visionfor change

Contextstatement

Riskanalysis

Business Process & RoleModelWARM

Business Resource Model

PIM Data Types

Context Business

model Goal Model

Visionfor change

Contextstatement

Riskanalysis

Business Process & RoleModel

Business Resource Model

0,1

0,1

System Boundary

*

**

*

Deployment

User Service

Tier

User Resource

Service TierLS

Legacy

Business

Service

Tier

Resource

Service

Tier

Presentation Tier

User Dialog Tier

Co

mp

on

en

t Infra

stru

ctu

re &

Wo

rkflo

w E

ng

ine (

Mic

row

ork

flow

)

User

Serv

ice

Do

main

Bu

sin

ess S

erv

ice

Do

main

User

Interface

Tier

RARA

LA

Workflow Service Domain

Service architecturestructure and internal

Service Interfaceand interaction specification

Busines domain to system domain

mapping

•Subsystem grouping and BCE

(Combine Ref Arch)

•BM analysis

Work Element Analysis Model

BCE Model

BMM

BPMN

UPMSw/SOA profile

and role modeling

Telecom and Informatics

4+2 tier reference architecture

User Service

Tier

User ResourceService Tier

LS

Legacy

Business

ServiceTier

Resource

Service

Tier

Presentation Tier

User Dialog Tier Co

mp

on

en

tIn

frastru

ctu

re

Key

Component

Inter-component

communication

User

Serv

ice

Do

ma

in

Bu

sin

ess S

erv

ice

Do

ma

in

User

InterfaceTier

LS

Resource AdapterRARA

LA

RA

LA Local Adapter

Local Storage

Database

ToolApplication

Page 41: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

41

Telecom and Informatics

UPMS metamodel (partial)

Telecom and Informatics

INF 5120 - Lecture #8 Code generation with MOFScript and other

technologies

Gøran K. Olsen

SINTEF ICT

Cooperative and Trusted Systems

Page 42: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

42

Telecom and Informatics

JEE

� Java Platform, Enterprise Edition (Java EE) builds on the solid foundation of Java Platform, Standard Edition (Java SE)

� Is the industry standard for implementing enterprise-class service-oriented architecture (SOA) and next-generation web applications

� The Java EE 5 platform introduces a simplified programming model (annotations on POJOs)

Telecom and Informatics

Part IVMDI – Model Driven

Interoperability

Page 43: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

43

Telecom and Informatics

INF5120 – Model-based System Development

Lecture #11: Model-driven interoperability

14 April 2008

Brian Elvesæter, SINTEF ICT

Based on material developed in the ATHENA (IST-507849), COMBINE (IST-1999-20839),INTEROP (IST-508011), and MODELWARE (IST-511731) research projects.

Telecom and Informatics

ATHENA Interoperability Reference Architecture

Enterprise/Business

Processes

Services

Information/Data

Cross-OrganisationalBusiness Processes

Collaborative EnterpriseModelling

Flexible Execution and Composition of Services

InformationInteroperability

Mo

de

l-D

riven Inte

rope

rabili

ty

Sem

antics a

nd O

nto

logie

s

Enterprise/Business

Processes

Services

Information/Data

Provided Required

Page 44: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

44

Telecom and Informatics

ATHENA Interoperability Methodology (AIM)

Definition

Phases

Analysis Negotiation Realisation Operation Termination

Def. #1 Analyis. #1 Neg. #1 Real. #1 Real. #2 Oper. #1 Term. #1

Iterations

Support disciplines

Interoperability disciplines

Project management

Business collaboration modelling

Testing

Implementation

Interoperability maturity analysis

Deployment and assessment

Analysis and requirements

Solution mapping and design

Telecom and Informatics

Baseline methodology

EIMM

Interoperabilityanalysis

Requirementssolutionmapping

Test definition

Implementation

Testing

IIAM

Implicit strategicbusiness

needsOptimized

co-operationmodel

Interoperabilitymaturity and

modelling approach

Requirements related to

business needs

Solution blueprint(generic solutions)

Solution instance(actual solutions)

Testprocedure

Solutionimplementation

ROI(impact)

Methodology overview(V-model view)

Formalized interoperability business needs

BIF

Page 45: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

45

Telecom and Informatics

INF5120Modellbasert Systemutvikling

� F13: Model Driven Semantic interoperability –with Semantic web, Ontologies and Semantic SOA

Forelesning 28.04.2008

Arne-Jørgen Berre

Telecom and Informatics 90

Current MDA Interoperability Architecture

CIM/EMmodels

PIMSystemmodels

PSMSystemmodels

System

Ref.ontologySemantic

annotation

Semanticannotation

Semanticannotation

CIM/EMmodels

PIMSystemmodels

PSMSystemmodels

System

Semanticannotation

Semanticannotation

Semanticannotation

Sem.mapping

Technicalmapping

Interoperabilityexecution

IF IF

Page 46: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

46

Telecom and Informatics

Run-time

Sem

Annot

Set

#2

InternetSem

Rec

Rules

#2

Local

Softwar

e &

Data

SwApp#1

Local

Softwar

e &

Data

SwApp#2

Sem

Annot

Set

#1

Sem

Rec

Rules

#1

ReferenceOntology

Architecture for semantic annotation and reconciliation

Reconciliation

Design-time

Telecom and Informatics 92

Evolution of the semantic web

Page 47: F14: Course summary - with lecture notes structure · F14: Course summary - with lecture notes structure ... Course summary, Lecture notes structure ... 28/1: F2: Business Process

Course Summary 05.05. 2008

47

Telecom and Informatics

Ontology-based reconciliation

Local Schema Local Schema

Enterprise A Enterprise B

Semantic

Annotation

Semantic

Annotation

Reconciliation

Rules

Customized

MRE

Customized

MRE

Reconciliation

Rules

Local Data Local Data

Design phase

Run-time phase

Interch.

Repres.

ReferenceOntology

FWD transf BWD transf

BWD transf FWD transf

SW App SW App

Semantic Mediation

and Reconciliation

Platform

Semantic Mediation

and Reconciliation

Platform

Telecom and Informatics 94

INF5120”Modellbasert Systemutvikling”

”Modelbased System development”

Lecture 12: Practical architecture work at TeleNor