inf5120 ”modellbasert systemutvikling” ”modelbased system … · inf5120 model based system...

34
INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 1: 19.01.2009 Arne-Jørgen Berre Telecom and Informatics 2 Welcome to INF5120 “Model based System development” (for SOA) Model based System Development Tidligere: Modellering med objekter, Modeling with objects http://www.uio.no/studier/emner/matnat/ifi/INF5120/v09/ Ifi.uio.no/inf5120 Lecturers: Arne-Jørgen Berre, SINTEF and UIO Gøran Olsen, SINTEF Brian Elvesæter , SINTEF Some guest lectures ... Email: [email protected] Øvingsansvarlige: Tore Vatnan, Hans Huru, Anthe Rugstad Email: [email protected]

Upload: tranphuc

Post on 09-Feb-2019

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

1

Telecom and Informatics 1

INF5120

”Modellbasert Systemutvikling”

”Modelbased System development”

Lecture 1: 19.01.2009Arne-Jørgen Berre

Telecom and Informatics 2

Welcome to INF5120 “Model based

System development” (for SOA)

� Model based System Development

� Tidligere: Modellering med objekter, Modeling with objects

� http://www.uio.no/studier/emner/matnat/ifi/INF5120/v09/

� Ifi.uio.no/inf5120

� Lecturers:

� Arne-Jørgen Berre, SINTEF and UIO

� Gøran Olsen, SINTEF

� Brian Elvesæter , SINTEF

� Some guest lectures ...

� Email: [email protected]

� Øvingsansvarlige:

� Tore Vatnan, Hans Huru, Anthe Rugstad

� Email: [email protected]

Page 2: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

2

Telecom and Informatics

3 main parts of the course

� MSOA I-V (Model Driven SOA/Services)

� MDE I-V (Model Driven Engineering)

� MDI I-II (Model Driven Interoperability)

3

Telecom and Informatics 4

Objectives

� Model based System Development

� - through ”modeling with objects and services”

� 2 roles:

� 1) Tool developer (Software Factory)

� 2) Application developer, (user of Software Factory).

� Objektoriented -> Componentbased -> Service oriented� Reuse

� Learn techniques� Unified Modeling Language (UML 2.0) – for architecture

� Meta Modeling and modelltransformation *

� MDA – Modell drevet arkitektur – med modelltransformasjoner

� SOA – Service (Tjeneste) orienterte arkitekturer

� MDI – Model Driven Interoperability

Page 3: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

3

Telecom and Informatics 5

Lecture plan - 2009� 1: 19/1: Introduction to MBSU, MDA, OO and Service/SOA modeling, Overall EA (AJB)

� 2: 26/1: MS I: Business Process Modeling (CIM) - with BPMN and BMM (AJB), Objecteering UML Modeler

� 3: 2/2: MS II: UML2 and SysML, Objecteering SOA and Scope, – Collaboration /Component models

� 4: 9/2: MDE I: Metamodeling , DSL and UML profiles, MDA technologies (XMI, Eclipse, EMF/GMF) (GO/BRE)

� 5: 16/2: MS III: SoaML I (PIM) and Requirements modeling , CIM->PIM,

� 6: 23/2: MS IV: Method Engineering and SPEM / EPF (BRE)

� 7: 2/3: MS V: SoaML II and Service Design (AJB)

� 8: 9/3: MDE II: Model transformations with MOScript, (ATL and QVT) – and JEE (GO)

� 9 :16/3:: MDE II: Code generation with MOFScript and other technologies (GO)

� 10: 23/3: MDE IV: PIM and Web Services teknologi (PSM) for SOA with WSDL/XML/BPEL (PSM) (BRE)

� 11: 30/3: MDI I: Model Driven Interoperability I (AJB)

� EASTER

� 12: 20/4: MDE V: Open ArchitectureWare/Kermeta, Microsoft OSLO etc. (Neil, Franck, Anthe)

� 13: 27/4: MDI II: Model Driven Interoperability - II - Ontologies, Semantic web and Semantic Modeling (AJB)

� 14: 4/5: Course summary

� Exam: May 29th, 2009 (Friday)

� AJB – Arne J. Berre

� BRE – Brian Elvesæter

� GO – Gøran Olsen

Telecom and Informatics

Change in sequence from last year

� Instead of working bottom up, with first learning MDE and

then applying the principles for tools for Model driven

SOA, we will this year work more top down. We will this

year first learn about Model Driven SOA with tool support,

based on an existing commercial tool (Objecteering), and

then look at how MDE can be used to create similar tools

(Open Source etc.), including use of transformation tools

for generating models and code.

� As we did last year, we will end with Model Driven

Interoperability (MDI) and related topics.

6

Page 4: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

4

Telecom and Informatics

New since last year

� Use of Objecteering commercial modeling tool – for

UML2 and BPMN

� New standards: SysML and SoaML (was UPMS)

7

Telecom and Informatics

Which OMG modeling standards will

you learn ?

� UML 2.0 – what is new in version 2

� MDA – Model Driven Architecture

� BPMN – Business Process Modeling Notation

� BMM _ Business Motivation Model

� SysML – Systems Engineering Modeling Language

� SoaML – SOA Modeling Language

� SPEM – Software Process Engineering Metamodel

� QVT, MOF2Text – Query, View, Transformation

� See www.omg.org

8

Page 5: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

5

Telecom and Informatics

Which tools/environments will you

learn ?

� Objecteering UML Modeler (BPMN, UML 2, SysML)

� Objecteering SOA Solution (SoaML)

� Eclipse EMF and XMI, Principles of GMF

� MOFScript (Model2Text, Model2Model)

� EPF/SPEM Software Process Modeler

� Overview of ATL, KerMeta, OpenArchitectureWare-OAW,

Microsoft OSLO

9

Telecom and Informatics

OBLIG 1 and 2: – “Smart House”

� Design a platform independent Smart house system:

� 6 groups of 4 people:

� 1. Alarm-system

� 2. Temperature control

� 3. Video surveillance

� 4. Lightning and equipment control (X10)

� 5. Media control – Music/picture/video server

� 6. Integration group

� Design for use of commercially available sensors and

equipment, initially map to Java simulation, secondly map

to technology platforms/device control

10

Page 6: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

6

Telecom and Informatics

OBLIG 1 – “Smart House Design” –

increments with group presentations� CIM models (BPMN)

� CIM models (Scope, Goal, Requirements)

� Requirements models

� SoaML models

11

OBLIG 2 – “Smart House mappings

and transformations”

� MOFScript transformations to Java and potentially to

different technologies/platforms

� Discussion on Model Driven Interoperability

Telecom and Informatics 12

Requirements for the course

� Student at UIO

� Only assumption is basic knowledge of UML (but not UML

2.0) and Java

Page 7: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

7

Telecom and Informatics 13

Course literature – available on web� Material from all lectures and OBLIG

� Some selected articles and documents, and subset of standard documents from OMG

� Handbook: ”MDE with Objecteering for SOA” , Softeam and A.J. Berre

� Handbook: ”Model Driven Engineering - MDE” , A.J. Berre & B. Elvesæter

� Handbook: ”Service Oriented Architectures - SOA” , A.J. Berre & B. Elvesæter

� Handbook: ” MDE4SOA with COMET-SE” , A.J. Berre & B. Elvesæter

� Handbook: ” Model Driven Interoperability - MDI”, A.J. Berre & B. Elvesæter

� Practical use of tools (OBLIG):

� Objecteering - www.objecteering.com

� MOFScript -http://www.eclipse.org/gmt/mofscript/

� BPMN – http://www.eclipse.org/stp/bpmn

� EMF - http://www.eclipse.org/modeling/emf/

� GMF - http://www.eclipse.org/gmf/

� Papyrus UML2 - http://www.papyrusuml.org

� ATL - http://www.eclipse.org/gmt/atl/ og http://www.modelbased.net/

� JEE 5.0 - http://java.sun.com/javaee/technologies/

Telecom and Informatics 14

Supporting literature

� Book: Model-Driven Software Development: Technology, Engineering, Management (Paperback) by Thomas Stahl, Markus Voelter, Krzysztof Czarnecki

ISBN: 978-0-470-02570-3

� Engineering Service Oriented Systems: A Model Driven Approach, Karakostas, Bill; Zorgios, Yannis

ISBN10: 1599049686 ISBN13: 9781599049687Cover: Hardcover April 2008

Page 8: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

8

Telecom and Informatics 15

UML 2.0

� UML 2.0 and SysML Background and Reference material

� See www.uml-forum.com/specs.htm

� Også hos OMG:

� http://www.omg.org/uml/ (UML)

� http://www.omg.org/mda/ (MDA)

� http://www.omg.org/cwm/ (MOF, XMI, CWM)

Telecom and Informatics 16

UML 2.0 recommend books:

UML 2.0 in a Nutshell

by Dan Pilone (Author), Neil Pitman (Author)

The Unified Modeling Language User Guide

Second edition (ISBN 0-321-26797-4)

(G, Booch, J. Rumbaugh, Jacobsson)

Page 9: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

9

Telecom and Informatics 17

Exam

� Case-based (ref. tidligere eksamen)

� All written material can be used

� 09-12 (3 hours) –

Friday 29 . May 2009

Telecom and Informatics 18

OMG Model-Driven Architecture (MDA)

www.omg.org/mda

Page 10: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

10

Telecom and Informatics 19

Automation in Software DevelopmentRequirements Requirements Requirements

Implementation

Source in a

general-purpose

language, e.g.,

Java or C++

Implementation

(may generate

code in

Java or C++)

Source in

domain-specific

language (DSL)

Implementation

(may generate

code in

Java or C++)

Source in

domain-specific

language (DSL)

High-level spec

(functional and

nonfunctional)

Manually

implement

Manually

implement

Manually

implement

Compile Compile Compile

Compile Compile

Implement

with

Interactive,

automated

support

Telecom and Informatics 20

PIM

CIM

BPDM, SBVR,

EDOC,UPMS,

PIM4SOA, ODM

ATL

PSM

MOFScript

BPMN, POP*, ARIS,

ArchiMate,

GERAM, GRAI, Zachman,

UEML, B.Rules

BPEL, WSDL, XML, XPDL,

OWL-S, WSML, WSDL-S

ADM

ADM

UML profiles and

metamodels for Java

JEE, BPEL, WSDL, XML, XPDL,

OWL-S, WSML, WSDL-S

Code, Java JEE,

….

Platform

Independent

Model

Computational

Independent

Model

Platform

Specific

Model/Code

MDA

CIM, PIM

and

PSM/Code

Page 11: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

11

Telecom and Informatics 21

Extending COMET for SOA (1)

Semantic

Space

Service-Oriented

Architecture Model

Web Service

Execution Artefacts

Agent

Execution Artefacts

BPEL

Execution Artefacts

P2P

Execution Artefacts

Web Service

Specification Model

Agent Specification

Model

BPEL Specification

Model

P2P Specification

Model

Model Transformation

UML Profile for Web Services

UML Profile for Agents

UML Profile for BPEL

UML Profile for P2P

Model Transformation

Architecture Specification

ATHENA Integrated

Execution Infrastructure

Registry

RepositoryServ ice Wrappers (Enterprise A)

Evaluation & Negotia tion of Available Functionality

Enhanced Service Interconnection Bus

Cross-org.

Intra-

org.

Existing Enterprise Applications

Publ icInfrastructure Services

Service Wrappers

(Enterpr ise X)

Serv ice Wrappers

(Enterprise Y)

InternalInfrastructure Servi ces

Process Execution Platform(BPEL)

Goal-o rientedAdaptive ExecutionPlatform(Agents)

Goal-o rientedAdaptive ExecutionPlatform(Agents)

ActiveModel Pla tfo rm(AKMi i)

ActiveModel Pla tfo rm(AKMi i)

Legend

Messa ge-Orien tedPlatfo rm(MQSeries)

Messa ge-Orien tedPlatfo rm(MQSeries)

Serve r-side Compone nt

Pla tfo rm(.NET, J2EE )

Serve r-side Compone nt

Pla tfo rm(.NET, J2EE )

ComposedWebServicePlatform(WebServices)

Business Process/Agent

Acti ve (Business) Model

Web/Server Component

Middleware Process/Agent

Middleware Component

Adaptive Distribu ted Res ou rce Mgt Platfo rm (P 2P)

Deployment

UML Profile for SOA

• Information

• Service

• Process

• QoS

Reference Ontology

annotated with

Model to Model Transformation

Model to Text

Transformation

OWL

Ontology

annotated

with

annotated

with

Enterprise

Model

UML Profile for POP*

• Process

• Organisation

• Product

•…

Model to Model

Transformation

Business

Requirements

Analysis

annotated with

Telecom and Informatics

Flexible business

modelsFlexible business

models

Interconnected

heterogeneous

SOA platform

models

Interconnected

heterogeneous

SOA platform

models

Heterogeneous

SOA platforms

metamodels

Heterogeneous

SOA platforms

metamodels

Business

metamodelsBusiness

metamodelsFlexible business

models

Business

metamodels

Semantically-

enabled

heterogeneous

SOA model

Unified and

standardised

metamodel for

SOA & SHA

Transformation

rules

Transformer

(engine)

according to

according to

source

target

transformation

engine

input

output

Transformation

rules

Transformer

(engine)

transformation

engine

source

Semantically-

enabled

heterogeneous

SOA platform

models

Semantically-

enabled

heterogeneous

SOA platform

metamodels

according to

input

targetoutput

EPC

POP*

BPDM, BPMN

BMM

Heterogeneous

service platforms

WSA

JXTA

OGSA

JACK, JADE

WSMO, WSMX

Executable business

processes

Service interfaces

Service contracts

Service enactment

Business rules

SLAs

Parameterized

services

Goals

Business rules

Business processes

Business services

E-contracts

Executable artefacts

XSD, WSDL, BPEL

Teams and plans

Resource

management

Semantic Web

Services

What service-oriented aspects to capture in m

odels

Which m

etamodels and languages to use

CIM

PIM

PSM

UPMSHA Agents

Grid

Semantic Web

Services

Service

Variability

Web

Services

P2P

Flexible

Business Models

Heterogeneous

Platforms

SoaML

Page 12: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

12

Telecom and Informatics

UPMS (core)

UPMSHA (core)

Service Variability

UPMS

WSA

PIM4

SWS

PIM4

Agents

P2P/Grid/

Components

UPMSHA

WS, WSMO, OWL-S, JACK, JADE, JXTA, OGSA, J2EE, CORBA

J2EE, NetWeaver, .Net

BPMN BPDM BMM EPC

PIMs for different

Architectural

Styles

Realisation

Technologies

PSM

Models

CIM

Business

Models

PIM

Models

Telecom and Informatics 24

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 13: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

13

Telecom and Informatics

Technologies/Realisation

Information Services Process

XML,, Metro/WSDL BPEL/XPDL

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

ODM,

Concepts

BPMNCIM

PIM

Persistence API EJB 3.0, Java,

SoaML

Jack, JADE Jack, JADE Jack, JADE

SAP SAP SAP

BMM

INF5120 OMG standard focus

PSM

Telecom and Informatics

MDA reference model

26

Page 14: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

14

Telecom and Informatics 27

PIM-K

CIM-K

BPDM, SBVR,

EDOC,UPMS,

PIM4SOA, ODM

TR/QVT

PSM-K

TR/QVT

BPMN, POP*, ARIS,

ArchiMate,

GERAM, GRAI, Zachman,

UEML, B.Rules

BPEL, WSDL, XML, XPDL,

OWL-S, WSML, WSDL-S

TR/M2T ADM

ADM

ADM

UML profiles and

metamodels for BPEL, WSDL, XML,

XPDL,

OWL-S, WSML, WSDL-S

Code

PIM-K

CIM-K

TR/QVT

PSM-K

TR/QVT

BPEL, WSDL, XML, XPDL,

OWL-S, WSML, WSDL-S

TR/M2T ADM

ADM

ADM

Code

Semantic

Interoperability

Part 3: MDI

Model Driven

Interoperabtiliy

Organisational

Interoperability

Technical

Interoperability

Telecom and Informatics 28

Enterprise Modelling (EM) is a capability

for externalising, making and sharing

enterprise knowledge.

EM tools can either be:

• used stand-alone to produce various

kinds of model views,

• integrated as front-ends to other

systems,

• part of an environment providing a

contextual user-environment.

What is Enterprise Modelling?

Page 15: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

15

Telecom and Informatics 29

Why Enterprise Architecture?

??

??

How can I

involve my people

in improving the

performance of the

business

How can I use best

practices to ensure

the success of the

business?

How can I

ensure that the IS technology

helps the work of my people?

??

Telecom and Informatics 30

Representations of Architecture

ARISZACHMAN GERAM

EN/ISO 19439

NIST

EKA -POPSEKA -POPSEKA -POPS

Athena OEA

Page 16: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

16

Telecom and Informatics 31

Three Views in

DOD Architecture Framework and C4ISR-AF

Telecom and Informatics 32

To-be Operational DoDAF

As is To bearchitecture

Target

architecture

Architectural models supported

by the necessary tools.

Organisation

Hub

Current

Architectural Standards

New Form of Service-Team Organization

To-Be

Page 17: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

17

Telecom and Informatics 33

Based on work by

John A. Zachman

VA Enterprise

Architecture

DATAWhat

FUNCTIONHow

NETWORKWhere

PEOPLEWho

TIMEWhen

MOTIVATIONWhy

DATAWhat

FUNCTIONHow

NETWORKWhere

PEOPLEWho

TIMEWhen

MOTIVATIONWhy

SCOPE

(CONTEXTUAL)

Planner

ENTERPRISE

MODEL

(CONCEPTUAL)

Owner

SYSTEM MODEL

(LOGICAL)

Designer

TECHNOLOGY

MODEL

(PHYSICAL)

Builder

DETAILED

REPRESENTATIONS

(OUT-OF-CONTEXT)

Sub-Contractor

FUNCTIONING

ENTERPRISE

SCOPE

(CONTEXTUAL)

Planner

ENTERPRISE

MODEL

(CONCEPTUAL)

Owner

SYSTEM MODEL

(LOGICAL)

Designer

TECHNOLOGY

MODEL

(PHYSICAL)

Builder

DETAILED

REPRESENTATIONS

(OUT-OF-CONTEXT)

Sub-Contractor

FUNCTIONING

ENTERPRISE

Things Important

to the Business

Entity = Class of

Business Thing

Processes

Performed

Function = Class of

Business Process

Semantic Model

Ent = Business Entity

Rel = Business Relationship

Business Process

Model

Proc = Business Process

I/O = Business Resources

Business Logistics

System

Node = Business Location

Link = Business Linkage

Work Flow Model

People = Organization Unit

Work = Work Product

Master Schedule

Time = Business Event

Cycle = Business Cycle

Business Plan

End = Business Objectiv e

Means = Business Strategy

Important

Organizations

People = Major

Organizations

Business

locations

Node = Major

Business Locations

Ev ents Significant

to the Business

Time = Major

Business Event

Business Goals

and Strategy

Ends/Means =

Major Business Goals

Logical Data

Model

Ent = Data Entity

Rel = Data Relationship

Application

Architecture

Proc = Application Function

I/O = User Views

Distributed System

Architecture

Node = IS Function

Link = Line Characteristics

Human Interface

Architecture

People = Role

Work = Deliv erable

Processing

Structure

Time = System Event

Cycle = Processing Cycle

Business Rule

Model

End = Structural Assertion

Means = Action Assertion

Physical Data

Model

Ent = Segment/Table

Rel = Pointer/Key

System

Design

Proc = Computer Function

I/O = Data Elements/Sets

Technology

Architecture

Node = Hardware/Softw are

Link = Line Specifications

Presentation

Architecture

People = User

Work = Screen Format

Control

Structure

Time = Ex ecute

Cycle = Component Cycle

Rule

Design

End = Condition

Means = Action

Data

Definition

Ent = Field

Rel = Address

Program

Proc = Language Statement

I/O = Control Block

Netw ork

Architecture

Node = Addresses

Link = Protocols

Security

Architecture

People = Identity

Work = Job

Timing

Definition

Time = Interrupt

Cycle = Machine Cycle

Rule

Design

End = Sub-Condition

Means = Step

Data

Ent = Rel =

Function

Proc =I/O =

Netw ork

Node = Link =

Organization

People = Work =

Schedule

Time = Cycle =

Strategy

End = Means =

Based on work by

John A. Zachman

VA Enterprise

Architecture

DATAWhat

FUNCTIONHow

NETWORKWhere

PEOPLEWho

TIMEWhen

MOTIVATIONWhy

DATAWhat

FUNCTIONHow

NETWORKWhere

PEOPLEWho

TIMEWhen

MOTIVATIONWhy

SCOPE

(CONTEXTUAL)

Planner

ENTERPRISE

MODEL

(CONCEPTUAL)

Owner

SYSTEM MODEL

(LOGICAL)

Designer

TECHNOLOGY

MODEL

(PHYSICAL)

Builder

DETAILED

REPRESENTATIONS

(OUT-OF-CONTEXT)

Sub-Contractor

FUNCTIONING

ENTERPRISE

SCOPE

(CONTEXTUAL)

Planner

ENTERPRISE

MODEL

(CONCEPTUAL)

Owner

SYSTEM MODEL

(LOGICAL)

Designer

TECHNOLOGY

MODEL

(PHYSICAL)

Builder

DETAILED

REPRESENTATIONS

(OUT-OF-CONTEXT)

Sub-Contractor

FUNCTIONING

ENTERPRISE

Things Important

to the Business

Entity = Class of

Business Thing

Processes

Performed

Function = Class of

Business Process

Semantic Model

Ent = Business Entity

Rel = Business Relationship

Business Process

Model

Proc = Business Process

I/O = Business Resources

Business Logistics

System

Node = Business Location

Link = Business Linkage

Work Flow Model

People = Organization Unit

Work = Work Product

Master Schedule

Time = Business Event

Cycle = Business Cycle

Business Plan

End = Business Objectiv e

Means = Business Strategy

Important

Organizations

People = Major

Organizations

Business

locations

Node = Major

Business Locations

Ev ents Significant

to the Business

Time = Major

Business Event

Business Goals

and Strategy

Ends/Means =

Major Business Goals

Logical Data

Model

Ent = Data Entity

Rel = Data Relationship

Application

Architecture

Proc = Application Function

I/O = User Views

Distributed System

Architecture

Node = IS Function

Link = Line Characteristics

Human Interface

Architecture

People = Role

Work = Deliv erable

Processing

Structure

Time = System Event

Cycle = Processing Cycle

Business Rule

Model

End = Structural Assertion

Means = Action Assertion

Physical Data

Model

Ent = Segment/Table

Rel = Pointer/Key

System

Design

Proc = Computer Function

I/O = Data Elements/Sets

Technology

Architecture

Node = Hardware/Softw are

Link = Line Specifications

Presentation

Architecture

People = User

Work = Screen Format

Control

Structure

Time = Ex ecute

Cycle = Component Cycle

Rule

Design

End = Condition

Means = Action

Data

Definition

Ent = Field

Rel = Address

Program

Proc = Language Statement

I/O = Control Block

Netw ork

Architecture

Node = Addresses

Link = Protocols

Security

Architecture

People = Identity

Work = Job

Timing

Definition

Time = Interrupt

Cycle = Machine Cycle

Rule

Design

End = Sub-Condition

Means = Step

Data

Ent = Rel =

Function

Proc =I/O =

Netw ork

Node = Link =

Organization

People = Work =

Schedule

Time = Cycle =

Strategy

End = Means =

Zachman Framework – for Enterprise

Architecture

Telecom and Informatics

Business Motivation Model (BMM) with

MeansRealizations

Page 18: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

18

Telecom and Informatics

What is BPMN (Business Process

Modeling Notation) ?

Telecom and Informatics

BPMN example

Page 19: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

19

Telecom and Informatics 37

System and objectsSystem and objects

A system is a part of the real world which we choose to regard

as a whole, separated from the rest of the world during some

period of consideration.

A whole that we choose to consider as a collection of objects,

each object being characterized by attributes and by actions

which may involve itself and other objects.

Mental modell

Manifest ModelReal-World

phenomenon

Telecom and Informatics 38

Object oriented modelingObject oriented modeling

aRealWorld-

PhenomenaroleModels

anImplemented

SystemanObjectModel

Manifest ModelReal-Worldphenomenon

Mental modelEnvironmentModel environment

System model

Page 20: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

20

Telecom and Informatics 39

OO Programming TerminologyOO Programming Terminology

� Encapsulation

� Object

� Message

� Method

� Class

� Instance

� Inheritance

� Polymorphism

� Dynamic (Late) Binding

Telecom and Informatics 40

CRC Method, class, responsibilities,

and collaborators

� Method to learn

the most basic OO concepts plus OO “thinking”

� “The most effective way of teaching the idiomatic way of thinking

with objects is to immerse the learner in the "object-ness" of the

material. To do this we must remove as much familiar material as

possible, expecting that details such as syntax and programming

environment operation will be picked up quickly enough once the

fundamentals have been thoroughly understood.”

� Technique also very useful

during informal and creative analysis and design

� Created by Kent Beck and Ward Cunningham,

Textronix, 1989

Page 21: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

21

Telecom and Informatics 41

The CRC-Card

an object of paper personalizing the object

Class (Name):

Responsibility: Collaborators:

Telecom and Informatics 42

Class, responsibilities, and

collaborators

� ClassThe class name of an object creates a vocabulary for discussing a design. Indeed, many people have remarked that object design has more in common with language design than with procedural program design. We urge learners (and spend considerable time ourselves while designing) to find just the right set of words to describe our objects, a set that is internally consistent and evocative in the context of the larger design environment.

� Responsibilities Responsibilities identify problems to be solved. The solutions will exist in many versions and refinements. A responsibility serves as a handle for discussing potential solutions. The responsibilities of an object are expressed by a handful of short verb phrases, each containing an active verb. The more that can be expressed by these phrases, the more powerful and concise the design. Again, searching for just the right words is a valuable use of time while designing.

� CollaboratorsObjects which will send or be sent messages in the course of satisfying responsibilities. Collaboration is not necessarily a symmetric relation. For example in Smalltalk, View and Controller operate as near equals while OrderedCollection offers a service with little regard or even awareness of its client.

Page 22: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

22

Telecom and Informatics 43

UML og ( R )UP

Unified

Modeling

Language

Process

� Convergence Today

� Unification leads to “standards”

� Convergencein the future

� Process frameworks through consensus

Two parts of a Harmonized Whole

Telecom and Informatics 44

UML Structural Modeling

� Class Diagram

� Object Diagram

� Component Diagram (new in UML 2.0)

� Package Diagram

� Deployment diagram

Page 23: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

23

Telecom and Informatics 45

UML Behavioral Modelling

� Use Case Diagrams

� Interactions

� Sequence diagrams (enhanced in UML 2.0)

� Timing diagrams (new in UML 2.0)

� Interaction overview diagrams (new in UML 2.0)

� Communication diagrams (i.e. collaboration diagram)

� State machine diagrams (enhanced in UML 2.0)

� Activity Diagrams (enhanced in UML 2.0)

Telecom and Informatics 46

Different kind of models

� Conceptual models

� Specification models

� Implementation models

Page 24: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

24

Telecom and Informatics 47

SOA – Service oriented architecture

� From Objects (1967 – 1995+)

� To Components (1990-2000+)

� To Services (2000- 2010+)

Telecom and Informatics 48

SOA

� Services

� Messages

� Dynamic discovery

� Web services

Page 25: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

25

Telecom and Informatics 49

Service Oriented Architecture

(SOA) definition

� A set of components which can be invoked, and whose

interface descriptions can be published and discovered

(W3C).

� The policies, practices, frameworks that enable application

functionality to be provided and consumed as sets of

services published at a granularity relevant to the service

consumer. Services can be invoked, published and

discovered, and are abstracted away from the

implementation using a single, standards-based form of

interface. (CBDI) (www.cbdiforum.com)

Telecom and Informatics 50

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 26: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

26

Telecom and Informatics 51

Dealing with Complexity – and Change

� Working at the right level of abstraction

� OO dealing with complexity

� objects -> components -> services *SOA

� Design by contract, role composition

� Aspect-oriented programming

� Use of patterns

� Visual Modeling (MDA)

� Architecture

Telecom and Informatics 52

PhaseClass

TraditionalSA/SD/ERA

SA-based OO

ERA-based OO

Hybrid SA/ER-based OO

SA - Yordon SD - Page Jones

ERA - Chen ER-Rel.db - 3NF

OO RT SA - Wards

OOA/OOD - Coad/Yordon

OMT - Rumbaugh et. al

Fusion - HP

OOAD - Booch (93 w/C++)

HOOD - ESA

OOSD - WassermanSD-basert OO

OO-based

RDOOD - Wirfs-Brock et. al

CRC-cards - Cunningham

OOram - Reenskaug et. al

ANALYSIS DESIGN DETAILED DESIGN

OOAD - Martin/Odell

OSDL-92 - CCITT/Bræk et. al

OOSE/ObjectOry - Jacobson

Ada(C++)-based

SDL-based OO

UML (96)Booch/OMT/ObjectOry

OOAD methods

Catalysis, Syntropy, SOMA, OBA, BHS, ...

Page 27: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

27

Telecom and Informatics 53

Evolution of the UML

Booch ´91

Booch ´93

Unified Method 0.8

UML 1.0

OMT - 2

OMT - 1 OOSE

UML 0.9 & 0.91

OOPSLA ´95

June ´96 & Oct ´96

Submission of UML 1.1 to OMG

for adoption, Sept ´97

Other methods

public

feedback UML Partners’

Expertise

UML 1.1 (Sept. 1997)

Taskon,SINTEF

UML 1.4UML 2.0

(2004)

Telecom and Informatics 54

Evolution of methodologies

UML1.0

UML1.1

UML1.2

UML1.3

UML1.4

OMT

Objectory

Booch

UML Components

Catalysis

OOram

KobrA

COMET

COMET-S

UML4EDOC

UML2

Pulse

UP

RUP

Notation

Process

2001

1995-

1999

2000

Objecteering

SOA

Page 28: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

28

Telecom and Informatics 55

Find the document here:

http://www.omg.org/cgi-bin/doc?ad/08-08-04.pdf

See also: www.soaml.org

Revised version of SoaML

per November 10th, 2008

and January 31st, 2009

Telecom and Informatics

SoaML UML Profile & Metamodel

Page 29: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

29

Telecom and Informatics

Example: Marketplace Services

Order

Conformation

Ship Req

Shipped

Shipped

Physical

DeliveryDelivered

Status

Provider

Consumer

Provider

Consumer

Consumer

Provider

GetItThere Freight Shipper

Mechanics Are Us

DealerAcme Industries

Manufacturer

Telecom and Informatics

Services Architecture

A ServicesArchitecture (or SOA) is a network of participant

roles providing and consuming services to fulfill a purpose. The

services architecture defines the requirements for the types of

participants and service realizations that fulfill those roles.

Page 30: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

30

Telecom and Informatics

Compound services

Telecom and Informatics

Participants may be assemblies of other Participants (UML 2.0)

Participant

Participant part

Service – capabilities

typed by

ServiceInterface

Request – needs

typed by

ServiceInterface

Page 31: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

31

Telecom and Informatics

MOFScript placed in the 4-layer

metamodel architecture (MDE)MOFMOF

Source Source MetamodelMetamodel

Source Source modelmodel

MOFScript MOFScript languagelanguage

MOFScript MOFScript transformationtransformation

TargetTargettexttext

MOFScript MOFScript tool tool engineengine

executed byexecuted by

inputinput

outputoutput

conforms toconforms to conforms toconforms to

conforms toconforms to

based onbased on

M1M1

M2M2

M3M3

conforms toconforms to

Telecom and Informatics 62

Project Management

Process Configuration

RequirementsAnalysis

ArchitectureLevel

Class Level

Implementation

Test

Design

preliminaryiteration(s)

iter.#1

PhasesProcessComponents

Iterations

Elaboration Construction TransitionInception

SupportingComponents

iter.#2

iter.#n

iter.#n+1

iter.#n+2

iter.#m

iter.#m+1

Unified Process Framework

Process Workflows

Business ModelingBusiness ModelingRequirementsRequirements

Analysis Analysis DesignDesign

ImplementationImplementationTestTest

DeploymentDeployment

ManagementManagement

Conf. MngmtConf. Mngmt

EnvironmentEnvironment

Supporting Workflows

Disciplines

Page 32: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

32

Telecom and Informatics

Objecteering SOA method and tool

support

63

Telecom and Informatics

Objecteering for SOA

64

Page 33: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

33

Telecom and Informatics 65

Resource

Service

Tier

Business

Service

Tier

User

Service

Tier

User

Interface

Tier

LS

RARA

LA

Concepts & Artifacts

Processes

Actors Business

domain

“Real world”Model world

Web Services

model

Web Servicesimplementationmodel

Web Services

profile

model

Business

model

Domain model

Risk

analysis

Product vision

& product desc.

Requirements

model

boundarySystemboundarymodel

Use caseScenario model

Otherrequirements

Prototype

BCE model

Service-Oriented Architecturemodel

Componentstructure model

Serviceinteractionmodel

Serviceinterfacemodel.

Technical domain

COMET-S model architecture

Telecom and Informatics 66

Phases - organisation along time

Iterations:

Requirements Model

Architecture Model

Platform specific Model

Elaboration Specification&ConstructionInception Transition

iter .#1

iter#2

iter#n

iter#n+1

iter#n+2

preliminaryiteration(s)

iter#m

iter#m+1

Business Model

Models

Supporting activitiesProject management

Work productmanagement

Review milestones:

Inception Review

Product Launch

Technical Audit

Demonstrator

Iteration Launch

Demo / Delivery

Beta Test Launch

Accept Meeting

Demonstrator

Iteration Launch

Prototype

Iteration Launch

Test

COMET-S process architecture

Page 34: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”

INF5120 Model based System Development 19.01.2009

34

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 68

Next Lecture – January 26th, 2009

� Business Modeling with BPMN

� Enterprise Modeling

� CIM – Computational Independent Model (OMG MDA)

� Use of Softeam UML/BPMN modeling tool