Telecom and Informatics INF5120 Modellbased System Development F14: Course summary - with lecture...

94
Telecom and Informatics INF5120 Modellbased System Development F14: Course summary - with lecture notes structure Lecture 05.05.2008 Arne-Jørgen Berre

Transcript of Telecom and Informatics INF5120 Modellbased System Development F14: Course summary - with lecture...

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

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

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

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

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

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

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

CIMCIM

BusinessContextModels

PIMPIM

Modeltrans-

formation

SoftwareSpecification

Models

PSMPSM

SoftwareRealisation

Models

Modeltrans-

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 servicesM

od

el-d

rive

n d

evel

op

men

t (M

DD

)

Telecom and Informatics

Fragments of a UML metamodel

UMLUML

Telecom and Informatics

Three stages in the evolution ofmodelling techniques at the OMG.

UMLUML MOFMOF

UMLUMLaModelaModel

aModelaModel

MOFMOF

UMLUML

UML_for_CORBAUML_for_CORBA

aModelaModel

SPEMSPEM WorkflowWorkflow etc.etc.

Common Warehouse Metadata

Common Warehouse Metadata

Action language Action language

(a) (b) (c)

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

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

Telecom and Informatics

Business Process Definition MetaModel

Common Abstractions

Infrastructure Library

Core

PrimitiveTypesAbstractions

Common Behavior Model

Simple Interaction

Composition Model Course Model

Activity Model

Processing Behavior

Happening & Change

Interaction Protocol Model

BPMN Extensions

Basic

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

Telecom and Informatics

Families to Persons: writing the rules

After the helpers we now write the rules: Member to Male

Member to Female

rule Member2Male {from

s : Families!Member (not s.isFemale())to

t : Persons!Male (fullName <- s.firstName + ' ' + s.familyName

)}

rule Member2Female {from

s : Families!Member (s.isFemale())to

t : Persons!Female (fullName <- s.firstName + ' ' + s.familyName

)}

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.

+

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

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.

Telecom and Informatics

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

technologiesGøran K. Olsen

SINTEF ICT

Cooperative and Trusted Systems

Telecom and Informatics

MOFScript architecture

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 classself.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;}

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

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

Service provider

Service client

Service aggregator

performs

publishes

uses

Role actions

becomes

Service operator

Market maker

Service provider

Service client

Service aggregator

performs

publishes

uses

Role actions

becomes

Service operator

Market maker

Papazoglou and Georgakopoulos CACM,Oct. 2003

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

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, …

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

Telecom and Informatics

Transports

Messaging

Description

ComposableService

Assurance

ServiceComposition

HTTP HTTPS SMTP

XML SOAP WS-Addressing

XSD WSDL UDDI WS-PolicyWS-Metadata

Exchange

WS-SecurityWeb Service ReliableMessaging (WS-RM)

WS-Transactions

WS-BPEL

Web services stack

Technologystack

Conceptualstack

Telecom and Informatics

XSD metamodel (simplified)

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

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)

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)

Telecom and Informatics

INF5120Modellbasert systemutvikling

COMET-S Business Modelling COMET-S Requirements ModellingUPMS 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-KOntologies 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 andmetamodels for BPEL, WSDL, XML,

XPDL,OWL-S, WSML, WSDL-S

TechnologyReliastion

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

Telecom and Informatics

Platform specificmodel

UMT Config model

Component implementationmodel

Bu

sin

ess

Do

mai

nS

yste

m D

om

ain

Model world Real world

Concepts& Artifacts

Processes

Actors

Business

model Goal Model

Architecturemodel

Requirementsmodel

Use case Scenario Model

Otherrequirements

Prototype

Visionfor change

Context statement

Risk analysis

Business Process & RoleModelWARM

Business Resource Model

PIM Data Types

Context Businessmodel Goal Model

Visionfor change

Context statement

Risk analysis

Business Process & RoleModel

Business Resource Model

0,1

0,1

System Boundary

*

***

Deployment

User ServiceTierUser ResourceService Tier

LS

Legacy

BusinessServiceTier

ResourceServiceTier

Presentation Tier

User Dialog Tier

Co

mp

on

ent In

frastructu

re &W

orkflo

w E

ng

ine (

Micro

wo

rkflow

)

User

Service

Do

main

Bu

siness S

erviceD

om

ain

UserInterfaceTier

RARA

LA

Workflow Service Domain

Component structureand internal design

Interface and interaction specification

Busines domain to system domainmapping

•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

Monitoring

Seismic

Acquisition

•Sales &

•Planning•Reporting &

•Monitoring

•Vessel Operation

•Exec. •Op. Mgr

•Vessel Schedule

•Work Order

•Prod. statistics

•Downtime stat.

•NCR

•Support

•Engineering

ContextContextstatementstatementContextContext

statementstatement

BusinessBusinessResourceResource

modelmodel

BusinessBusinessResourceResource

modelmodel

ObtainClubInfoand deliver toregisteringProcessor

Registrator Secretariat application ClubRegister

Check if Club exists

Club registration Information

Ask ClubRegisterto checkif Club already exists

ExistingClubInfo

Ask to edit and confirm existingClubInfoExistingClubInfo

Edit and accept existingclubInfoAsk to register Club

Add Club

[Club Exists]

[Club do not Exists]

BusinessBusinessprocessprocessmodelmodel

BusinessBusinessprocessprocessmodelmodel

Subsystem 1 Subsystem 2

Subsystem 3Subsystem 4

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

BusinesscomponentsGeneralcomponentsOS

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 typeDette er etforsøk påå fylle denne kommenten med text

ComponentComponentinteraction modelinteraction model

ComponentComponentinteraction modelinteraction model

: SecretariatApplication

: ClubRegister : Registrator

registerClub

clubExists

registerClub

Arnorer en kul typeDette er etforsøk påå fylle denne kommenten med text

Platform profile Platform profile modelmodel

Platform profile Platform profile modelmodel

ObtainClubInfoand deliver toregisteringProcessor

Registrator Secretariat application ClubRegister

Check if Club exists

Club registration Information

Ask ClubRegisterto checkif Club already exists

ExistingClubInfo

Ask to edit and confirm existingClubInfoExistingClubInfo

Edit and accept existingclubInfoAsk to register Club

Add Club

[Club Exists]

[Club do not Exists]

Telecom and Informatics

BMM (Metamodel)

Telecom and Informatics

BMMoverview

ServicesArchitecture/Community

executed by

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

Telecom and Informatics

UPMS

Technologies/Realisation

Information Services Process

XML,, Metro/WSDL BPEL/XPDL

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

ODMOntologies

BPMN/BPDM

CIM,BM

PIM

PSM/Code

Persistence API EJB 3.0, Java, JEE 5WSSWSAgent

ERPJack Jack Jack

SAP SAP SAP

OthersSCA, .Net

BMM/ORG

“Goal modeling”

MODUS - SOHA

ATL

MOFScript

Telecom and Informatics

UPMS

Technologies/Realisation

Information Services Process

XM WSDL BPEL

BPMN/BPDM

CIM,BM

PIM

PSM/Code

Persistence API EJB 3.0, Java, JEE 5WS

INF5120 - Exercises

ATL

MOFScript

Telecom and Informatics

What is BPMN ?

Telecom and Informatics

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.

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

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

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)

Telecom and Informatics

Metamodel – Overview

Telecom and Informatics

Metamodel – Services (abstract syntax)

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

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.

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

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

Telecom and Informatics

Platform specificmodel

UMT Config model

Component implementationmodel

Bu

sin

ess

Do

mai

nS

yste

m D

om

ain

Model world Real world

Concepts& Artifacts

Processes

Actors

Business

model Goal Model

Architecturemodel

Requirementsmodel

Use case Scenario Model

Otherrequirements

Prototype

Visionfor change

Context statement

Risk analysis

Business Process & RoleModelWARM

Business Resource Model

PIM Data Types

Context Businessmodel Goal Model

Visionfor change

Context statement

Risk analysis

Business Process & RoleModel

Business Resource Model

0,1

0,1

System Boundary

*

***

Deployment

User ServiceTierUser ResourceService Tier

LS

Legacy

BusinessServiceTier

ResourceServiceTier

Presentation Tier

User Dialog Tier

Co

mp

on

ent In

frastructu

re &W

orkflo

w E

ng

ine (

Micro

wo

rkflow

)

User

Service

Do

main

Bu

siness S

erviceD

om

ain

UserInterfaceTier

RARA

LA

Workflow Service Domain

Service architecturestructure and internal

Service Interfaceand interaction specification

Busines domain to system domainmapping

•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

ToolApplication

Telecom and Informatics

UPMS metamodel (partial)

Telecom and Informatics

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

technologiesGøran K. Olsen

SINTEF ICT

Cooperative and Trusted Systems

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

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

del-D

rive

n In

tero

pera

bili

ty

Sem

an

tics

and

On

tolo

gie

s

Enterprise/Business

Processes

Services

Information/Data

Provided Required

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

needs Optimizedco-operation

model

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

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

Telecom and Informatics

Run-time

SemAnnot

Set#2

Internet SemRec

Rules#2

Local

Software &

Data

SwApp#1

Local

Software &

Data

SwApp#2Sem

AnnotSet#1

SemRec

Rules#1

ReferenceOntology

Architecture for semantic annotation and reconciliation

Reconciliation

Design-time

Telecom and Informatics 92

Evolution of the semantic web

Telecom and Informatics

Ontology-based reconciliation

Local Schema Local Schema

Enterprise A Enterprise B

SemanticAnnotation

SemanticAnnotation

ReconciliationRules

CustomizedMRE

CustomizedMRE

ReconciliationRules

Local Data Local Data

Design phase

Run-time phase

Interch.Repres.

Reference

Ontology

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