72
Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 1: 25.01.2010 Arne-Jørgen Berre

INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

  • Upload
    nerice

  • View
    36

  • Download
    1

Embed Size (px)

DESCRIPTION

INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”. Lecture 1: 25.01.2010 Arne-J ørgen Berre. Welcome to INF5120 “Model based System development”. Model based System Development http://www.uio.no/studier/emner/matnat/ifi/INF5120/v10 / - PowerPoint PPT Presentation

Citation preview

Page 1: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 1

INF5120”Modellbasert Systemutvikling”

”Modelbased System development”

Lecture 1: 25.01.2010Arne-Jørgen Berre

Page 2: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 2

Welcome to INF5120 “Model based System development”

Model based System Development http://www.uio.no/studier/emner/matnat/ifi/INF5120/v10/

Earlier: Modellering med objekter, Modeling with objects

Lecturers: Arne-Jørgen Berre Brian Elvesæter Gøran Olsen, Jon Oldevik, and Guest lecturers Email: [email protected]

Responsible for Obligatory exercises: Eivind Bergstøl, Tore Vatnan Email: [email protected]

Page 3: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 3

INF5120 - Lecture plan - 2010 1: 25/1: Introduction to MBSU, MDA, OO and Service/SOA modeling, Overall EA, 4 parts: MDE/SSS/MS/MDI (AJB)

Part I: MDE – Model Driven Engineering 2: 1/2: MDE I: Metamodeling. DSL and UML profiles, MDA technologies (XMI, Eclipse, EMF/GMF) (AJB/BRE) 4: 15/2: MDE II: Model transformations with MOFScript, ATL and other technologies (GO/JO) 5 :22/2: MDE III: Code generation with MOFScript, ATL and other technologies (GO/JO)

Part II: SSS – Service Science and Service/SOA technologies 3: 8/2: SSS I: Service science - Service Innovation, Service Design and Service/SOA Engineering and Technologies (AJB)

Part III: MOS – Modeling of Services - with SoaML 6: 1/3: MOS I: Business Process Modeling (CIM) - with BPMN 2.0, SoaML and BMM, EA with UPDM (AJB) 7: 8/3: MOS II: UML2 and SysML, Modelio SOA and Scope, – Collaboration and Component models (AJB) 8: 15/3: MOS III: SoaML (PIM) and Requirements modeling , CIM->PIM and SoaML (AJB) 9: 22/3: MOS IV: Method Engineering and SPEM / EPF - for Service systems (BRE)

EASTER Part IV – Model Driven Interoperability 10: 12/4: MS V: SOA and Service Design, Migration to SOA/Cloud Patterns with ADM (AJB ) 11: 19/4: MDI I: Semantic Web with Ontologies and Model Driven Interoperability (TIR) 12: 26/4: MDI II: Semantic Services and Model Driven Interoperability (TIR) 13: 3/5: MDE IV: Evolution and industrial practice of modelbased technologies (AJB++)

14: 10/5: Course summary and preparation for Exam 31/5 (AJB)

Exam: May 31st, 2010 (Monday), 0900-1200 (3 hours)

AJB – Arne J. Berre BRE – Brian Elvesæter GO – Gøran Olsen JO – Jon Oldevik TIR – Titi Roman Tjeneste innovasjon: BI/NHH, Tjeneste Design: OAH, Tjeneste Engineering: (INF5210-MS)

Page 4: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Obligatory Exercises - 2010

1: 25/1: Introducing links to Eclipse, EMG and GMF

2: 1/2: Introduction to Oblig 1, Individual - Eclipse and EMF tutorial 3: 8/2: EMF and GMF tutorial 4 :15/2: MOFScript in practice 5: 22/2: Preparations/Questions for Oblig 1 delivery, Establish groups for Oblig 2

26/2: Delivery of Oblig 1

6: 1/3: BPMN and SoaML tools – Going through Oblig 1 7: 8/3: UML2, SoaML and SysML tools – Guest Lecture Service Science, Jørn Nordlund, IBM 8: 15/3: Preparations /Questions for Oblig 2a delivery 9: 22/3: Intro to SPEM / EPF tools

EASTER 7/4: Delivery of Oblig 2a

10: 12/4: Going through Oblig 2A 11: 19/4: Semantic web/Ontology/MDI tools 12: 26/4: Preparations /Questions for Oblig 2b delivery

30/4: Delivery of Oblig 2b

13: 3/5: Going through Oblig 2B 14: 10/5: Going through old Exams INF9120 – Extra Oblig: essay on Model based system development related to thesis topic – or similar

EB – Eivind Bergstøl TV – Tore Vatnan GL - Guest lectures

Page 5: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

4 parts of the course

MDE I-V (Model Driven Engineering)

SSS (Service Science and Service technologies)

MOS I-V (Model Driven Service Systems)

MDI I-II (Model Driven Interoperability)

Each part will have a separate handbook

5

Page 6: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 6

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).

Object-oriented -> Componentbased -> Service oriented Reuse

Learn techniques MDA – Model driven architecture Meta Modeling and modelltransformation * SOA – Service oriented architecture Unified Modeling Language (UML 2.0) – for architecture MDI – Model Driven Interoperability

Page 7: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Change in sequence from 2009

We will change back to the sequence from 2008 with a bottom up approach (rather than top down as we had in 2009) – with first learning the principles and technologies for MDE in February. We will also give a short introduction to the focus area of Service Science and Service Engineering, and related SOA technologies.

In March we will focus on how to practice a model driven approach to Services (MOS), and in April we will introduce the topic of Semantic Web/services and Model Driven Interoperability (MDI) – before a final conclusion of the course

7

Page 8: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

New since last year Initial focus on Eclipse with EMF and GMF and transformation tools

Use of Modelio commercial modeling tool – for UML2 and BPMN 2.0 (This is a new version of Objecteering)

New focus on “Service Science” – with Service Innovation (with BI/NHH), Service Design (OAH) and Service Engineering (UIO)

New standards: Focus on OMG MDA standards, and on SoaML with links to BPMN 2.0, SysML and UPDM.

8

Page 9: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Which OMG modeling standards will you learn ?

SoaML – SOA Modeling Language UML 2.0 – what is new in version 2 MDA – Model Driven Architecture BPMN 2.0 – Business Process Modeling Notation BMM _ Business Motivation Model SysML – Systems Engineering Modeling Language SPEM – Software Process Engineering Metamodel QVT, MOF2Text – Query, View, Transformation

See www.omg.org

9

Page 10: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Which tools/environments will you learn ? Eclipse EMF and XMI, Principles of GMF MOFScript (Model2Text, Model2Model) EPF/SPEM Software Process Modeler Modelio UML Modeler (BPMN, UML 2, SysML) Modelio SOA Solution (SoaML)

Overview of ATL, KerMeta, OpenArchitectureWare-OAW, Microsoft OSLO

Ref. also IBM RSA/RSM, Enterprise Architect, Magic Draw supporting SoaML and BPMN

10

Page 11: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

OBLIG 1: – “MDE tools in practice” Design a GMF based editor in Eclipse with EMF and use

of MOFScript for transformations:

Practical use of EMF GMF MOFScript Compare with UML profiles

Individual work

11

Page 12: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

OBLIG 2 – “Smart House Design” – increments with group presentations CIM models (BPMN) CIM models (Scope, Goal, Requirements) Requirements models SoaML models

Access to web based sensor services

12

MOFScript transformations to Java and potentially to different technologies/platforms

Discussion on Model Driven Interoperability

Page 13: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 13

Requirements for the course

Student at UIO

Only assumption is basic knowledge of UML and Java (but not UML 2.0)

Page 14: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 14

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

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

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

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

Handbook: ” Modeling services – with SoaML” , A.J. Berre & B. Elvesæter

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

Practical use of tools (OBLIG):

Modelio - http://www.modeliosoft.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/

Page 15: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 15

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 16: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 16

Supporting literature – EMF and GMF

Book: Eclipse Modeling Framework (2nd Edition) (Paperback) Dave Steinberg (Author), Frank Budinsky (Author), Marcelo Paternostro

(Author), Ed Merks (Author)

Book: Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit (Paperback)

Richard C. Gronback

Page 17: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 17

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)

Page 18: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 18

UML 2.0 recommend books:

UML 2.0 in a Nutshellby 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 19: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 19

Exam

Case-based (ref. earlier exams) All written material can be used

09-12 (3 hours) –

Monday 31 . May 2010

Page 20: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 20

OMG Model-Driven Architecture (MDA)

www.omg.org/mda

Page 21: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 21

Automation in Software DevelopmentRequirements Requirements Requirements

Implementation

Source in ageneral-purposelanguage, e.g.,

Java or C++

Implementation

(may generatecode in

Java or C++)

Source indomain-specificlanguage (DSL)

Implementation

(may generatecode in

Java or C++)

Source indomain-specificlanguage (DSL)

High-level spec(functional andnonfunctional)

Manuallyimplement

Manuallyimplement

Manuallyimplement

Compile Compile Compile

Compile Compile

Implement withInteractive,automatedsupport

Page 22: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 22

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 andmetamodels for Java JEE, BPEL, WSDL, XML, XPDL,

OWL-S, WSML, WSDL-S

Code, Java JEE, ….

PlatformIndependent

Model

ComputationalIndependent

Model

PlatformSpecific

Model/Code

MDA CIM, PIM and PSM/Code

Page 23: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 23

Ext

end

ing

CO

ME

T f

or

SO

A (

1)

SemanticSpace

Service-OrientedArchitecture Model

Web ServiceExecution Artefacts

AgentExecution Artefacts

BPELExecution Artefacts

P2PExecution Artefacts

Web ServiceSpecification Model

Agent SpecificationModel

BPEL SpecificationModel

P2P SpecificationModel

Model Transformation

UML Profile for Web Services

UML Profile for Agents

UML Profile for BPEL

UML Profile for P2P

Model Transformation

Architecture Specification

ATHENA IntegratedExecution Infrastructure

RegistryRepository

Service Wrappers (Enterprise A)

Evaluation & Negotiation of Available Functionality

Enhanced Service Interconnection Bus

Cross-org.

Intra-org.

Existing Enterprise Applications

PublicInfrastructure Services

Service Wrappers(Enterprise X)

Service Wrappers(Enterprise Y)

InternalInfrastructure Services

Process Execution Platform(BPEL)

Goal-orientedAdaptive ExecutionPlatform(Agents)

Goal-orientedAdaptive ExecutionPlatform(Agents)

ActiveModel Platform(AKMii)

ActiveModel Platform(AKMii)

Legend

Message-OrientedPlatform(MQSeries)

Message-OrientedPlatform(MQSeries)

Server-side Component Platform(.NET, J2EE)

Server-side Component Platform(.NET, J2EE)

ComposedWebServicePlatform(WebServices)

Business Process/Agent

Active (Business) Model

Web/Server Component

Middleware Process/Agent

Middleware Component

Adaptive Distributed Resource Mgt Platform (P2P)

Deployment

UML Profile for SOA• Information• Service• Process• QoSR

efer

ence

On

tolo

gy

annotated with

Model to Model Transformation

Model to TextTransformation

OWLOntology

annotatedwith

annotatedwith

EnterpriseModel

UML Profile for POP*• Process• Organisation• Product• …

Model to ModelTransformation

Business Requirements

Analysis

annotated with

Page 24: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Flexible business models

Flexible business models

Interconnectedheterogeneous SOA platform

models

Interconnectedheterogeneous SOA platform

models

Heterogeneous SOA platforms

metamodels

Heterogeneous SOA platforms

metamodels

Business metamodelsBusiness

metamodelsFlexible business

modelsBusiness

metamodels

Semantically-enabled

heterogeneous SOA model

Unified and standardised

metamodel for SOA & SHA

Transformationrules

Transformer(engine)

according to

according to

source

target

transformationengine

input

output

Transformationrules

Transformer(engine)

transformationengine

source

Semantically-enabled

heterogeneous SOA platform

models

Semantically-enabled

heterogeneous SOA platform metamodels

according to

input

targetoutput

EPCPOP*

BPDM, BPMNBMM

Heterogeneousservice platforms

WSAJXTAOGSA

JACK, JADEWSMO, WSMX

Executable businessprocesses

Service interfacesService contracts

Service enactmentBusiness rules

SLAsParameterized

services…

GoalsBusiness rules

Business processesBusiness services

E-contracts…

Executable artefactsXSD, WSDL, BPEL

Teams and plansResource

managementSemantic Web

Services…

Wh

at s

ervi

ce-o

rien

ted

asp

ects

to

cap

ture

in m

odel

s

Wh

ich

met

amod

els

and

lan

guag

es t

o u

se

CIM

PIM

PSM

UPMSHA Agents

Grid

Semantic WebServices

ServiceVariability

WebServices

P2P

FlexibleBusiness Models

HeterogeneousPlatforms

SoaML

Page 25: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

UPMS (core)

UPMSHA (core)

Service Variability

UPMSWSA

PIM4SWS

PIM4Agents

P2P/Grid/Components

UPMSHA

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

J2EE, NetWeaver, .Net

BPMN BPDM BMM EPC

PIMs for differentArchitectural

Styles

RealisationTechnologies

PSMModels

CIMBusinessModels

PIMModels

Page 26: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 26

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

Page 27: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

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

Page 28: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 28

SHAPE Solution

Overview

SoaML

Core

Service Variability

PIM4SWS

PIM4Agents

P2P/Grid/Components/…

SHA-ML

WSDL, WSMO, OWLS, JACK, JADE, JXTA, OGSA, CORBA, …

J2EE, NetWeaver, .Net, …

Flexible Business Modelling

BPMN EPC BMM

PIMs for differentArchitectural Styles

Execution Environments

PSMImplementation Models

CIMBusiness Models

PIMSystem Models

2nd EC Review, Brussels, January 28th 2010

Page 29: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

SHAPE Solution

MDE Technologies

29

Purpose / Benefit

Problem /State-of-Art

Solutiondeveloped

Future Plans

Flexible Business Modelling

Service & SOA Modelling

Integration of Agent Technology

Integration of SWS Technologies

Service Customization

1

2

3

4

5

Integrated & guided business

modelling

• Business-IT-Gap• Bus. Modeling techniques not

integrated

• BPMN 2.0 support• Cont. integration of

bus. modelling • Backward analysis

• Business-IT-Gap• Existing techn.

not integrated

Enable MDE for services & SOA

• MDE for SOA highly desired

• UML does not support this

• Disseminate SoaML • Commercialization • SoaML Extensions

• SoaML metamodel & profile

• Modelling tools• Methodology

Automated planning on top of

services

• Services are only passive infrastruc.

• problem solving / planning on top

• Standardiz. (AMP) • Enhanced problem

solving using services

• Framework & Tools for integration with

SoaML • Enhance AOSE

Handling Hetero-geneity + automate

service usage

• Hetero. & dynamics in larger systems

• SWS not aligned with classic SE

• Standardization (OMG,W3C,OASIS)

• MDE for Semantic Technologies

MDE for SWS: Framework, Tool,

Methodology

Customization & personalization of

services

• Complex services vs. indiv. user req.

• adequate techn-iques not existing

• Standardiz. (CVL)• Continue towards

comprehensive serv. customization

• New approach based on SPEL

• Metamodel, Tool, Methodology

Page 30: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

SHAPE Solution Matrix

30

Meta-Models

Model Trans-formations

SHAPE Tool Suite

SHAPE Methodology

Flexible Business Modelling

Service & SOA Modelling

Integration of Agent Technology

Integration of SWS Technologies

Service Customization

1

2

3

4

5

BPMN, EPCData, Org., RulesBMM, Ontologies

SoaML

SHAML – Agent Extension

SHAML – SWS Extension

Service Variability Metamodel

CIM->CIM (mult.)CIM -> PIM (mult.)

SoaML -> WS SoaML -> JEE

SoaML -> PIM4AgentsPIm4Agents -> PSM

SoaML-> SWSPimSWSPim -> WSMO

SoaML-> SV-Spec.SV-Res. -> Soaml

CIMFlexModelio

ModelioComposition Studio

PIM4Agents

WSMT

Service Variability Tools

CIMFlex ModelingBPMN + UML Ontology Engin.

SoaML & WS Modelling

Agent Modelling (PIM ->PIM2PSM->PSM)

Service Variability Modelling & Variant Creation

SWS Modelling (PIM ->PIM2PSM->PSM)

MDE Infrastructure

Page 31: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 31

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 andmetamodels 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

SemanticInteroperability

Part 4: MDIModel Driven

Interoperabtiliy

OrganisationalInteroperability

TechnicalInteroperability

Page 32: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

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.

Page 33: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 33

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 34: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 34

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?

????

Page 35: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 35

Representations of Architecture

ARIS ZACHMAN GERAM

EN/ISO 19439

NIST

EKA -POPSEKA -POPSEKA -POPS

Athena OEA

Page 36: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 36

Three Views in DOD Architecture Framework and C4ISR-AF

Page 37: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 37

To-be Operational DoDAF

As is To bearchitectureTarget

architecture

Architectural models supportedby the necessary tools.

Organisation

Hub

Current

Architectural Standards

New Form of Service-Team Organization

To-Be

Page 38: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 38

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

ENTERPRISEMODEL(CONCEPTUAL)

Owner

SYSTEM MODEL(LOGICAL)

Designer

TECHNOLOGYMODEL(PHYSICAL)

Builder

DETAILEDREPRESENTATIONS(OUT-OF-CONTEXT)

Sub-Contractor

FUNCTIONINGENTERPRISE

SCOPE(CONTEXTUAL)

Planner

ENTERPRISEMODEL

(CONCEPTUAL)

Owner

SYSTEM MODEL(LOGICAL)

Designer

TECHNOLOGYMODEL

(PHYSICAL)

Builder

DETAILEDREPRESENTATIONS(OUT-OF-CONTEXT)

Sub-Contractor

FUNCTIONINGENTERPRISE

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 LogisticsSystem

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

ImportantOrganizations

People = Major Organizations

Business locations

Node = Major Business Locations

Ev ents Significantto the Business

Time = MajorBusiness Event

Business Goalsand Strategy

Ends/Means =Major Business Goals

Logical DataModel

Ent = Data Entity Rel = Data Relationship

Application Architecture

Proc = Application Function I/O = User Views

Distributed SystemArchitecture

Node = IS Function Link = Line Characteristics

Human InterfaceArchitecture

People = Role Work = Deliv erable

ProcessingStructure

Time = System Event Cycle = Processing Cycle

Business RuleModel

End = Structural Assertion Means = Action Assertion

Physical DataModel

Ent = Segment/Table Rel = Pointer/Key

SystemDesign

Proc = Computer Function I/O = Data Elements/Sets

TechnologyArchitecture

Node = Hardware/Softw are Link = Line Specifications

PresentationArchitecture

People = User Work = Screen Format

ControlStructure

Time = Ex ecute Cycle = Component Cycle

RuleDesign

End = Condition Means = Action

DataDefinition

Ent = Field Rel = Address

Program

Proc = Language Statement I/O = Control Block

Netw orkArchitecture

Node = Addresses Link = Protocols

SecurityArchitecture

People = IdentityWork = Job

Timing Definition

Time = InterruptCycle = Machine Cycle

RuleDesign

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

ENTERPRISEMODEL(CONCEPTUAL)

Owner

SYSTEM MODEL(LOGICAL)

Designer

TECHNOLOGYMODEL(PHYSICAL)

Builder

DETAILEDREPRESENTATIONS(OUT-OF-CONTEXT)

Sub-Contractor

FUNCTIONINGENTERPRISE

SCOPE(CONTEXTUAL)

Planner

ENTERPRISEMODEL

(CONCEPTUAL)

Owner

SYSTEM MODEL(LOGICAL)

Designer

TECHNOLOGYMODEL

(PHYSICAL)

Builder

DETAILEDREPRESENTATIONS(OUT-OF-CONTEXT)

Sub-Contractor

FUNCTIONINGENTERPRISE

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 LogisticsSystem

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

ImportantOrganizations

People = Major Organizations

Business locations

Node = Major Business Locations

Ev ents Significantto the Business

Time = MajorBusiness Event

Business Goalsand Strategy

Ends/Means =Major Business Goals

Logical DataModel

Ent = Data Entity Rel = Data Relationship

Application Architecture

Proc = Application Function I/O = User Views

Distributed SystemArchitecture

Node = IS Function Link = Line Characteristics

Human InterfaceArchitecture

People = Role Work = Deliv erable

ProcessingStructure

Time = System Event Cycle = Processing Cycle

Business RuleModel

End = Structural Assertion Means = Action Assertion

Physical DataModel

Ent = Segment/Table Rel = Pointer/Key

SystemDesign

Proc = Computer Function I/O = Data Elements/Sets

TechnologyArchitecture

Node = Hardware/Softw are Link = Line Specifications

PresentationArchitecture

People = User Work = Screen Format

ControlStructure

Time = Ex ecute Cycle = Component Cycle

RuleDesign

End = Condition Means = Action

DataDefinition

Ent = Field Rel = Address

Program

Proc = Language Statement I/O = Control Block

Netw orkArchitecture

Node = Addresses Link = Protocols

SecurityArchitecture

People = IdentityWork = Job

Timing Definition

Time = InterruptCycle = Machine Cycle

RuleDesign

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

Page 39: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Business Motivation Model (BMM) with MeansRealizations

Page 40: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

What is BPMN (Business Process Modeling Notation) ?

Page 41: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

BPMN example

Page 42: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 42

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-Worldphenomenon

Page 43: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 43

Object oriented modelingObject oriented modeling

aRealWorld-Phenomena

roleModelsanImplemented

SystemanObjectModel

Manifest ModelReal-Worldphenomenon

Mental modelEnvironmentModel environment

System model

Page 44: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 44

OO Programming TerminologyOO Programming Terminology

Encapsulation Object Message Method Class Instance Inheritance Polymorphism Dynamic (Late) Binding

Page 45: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 45

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 46: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 46

The CRC-Cardan object of paper personalizing the object

Class (Name):

Responsibility: Collaborators:

Page 47: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 47

Class, responsibilities, and collaborators Class

The 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 48: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 48

UML og ( R )UP

UnifiedModelingLanguage

Process

Convergence Today

Unification leads to “standards”

Convergence Today

Unification leads to “standards”

Convergence in the future

Process frameworks through consensus

Convergence in the future

Process frameworks through consensus

Two parts of a Harmonized Whole

Page 49: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 49

UML Structural Modeling

Class Diagram Object Diagram Component Diagram (new in UML 2.0) Package Diagram Deployment diagram

Page 50: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 50

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)

Page 51: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 51

Different kind of models

Conceptual models

Specification models

Implementation models

Page 52: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 52

Service ScienceSSME: Service Science, Management & Engineering

Operations Research and Industrial Engineering More realistic models of people

Computer Science and Electrical Engineering, Information Systems

Software and systems that adaptively change with business strategy

Economics and Business Strategy, Service Management and Operations

Better models of scaling and innovation

Law and Political Economy Better models of social innovation – in what way is passing a law

innovation

Complex Systems and Systems Engineering Better model of robustness and fragility of service systems

(sustainability)

Service systems are value co-creation configurations of people, technology, internal and external service systems connected by value propositions, and shared information (such as language, laws, measures, models, etc.).

This is a multidisciplinary approach in understanding, defining, creating and delivering service systems

Page 53: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 53

Service Science New academic cross discipline

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

Service Innovation

Service Design

Service Engineering

Page 54: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 54

SOA – Service oriented architecture

From Objects (1967 – 1995+)

To Components (1990-2000+)

To Services (2000- 2010+)

Page 55: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 55

SOA

Services Messages Dynamic discovery Web services

Page 56: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 56

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)

Page 57: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 57

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

Page 58: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 58

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

Page 59: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 59

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 - ESAOOSD - Wasserman

SD-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 methodsOOAD methods

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

Page 60: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 60

Evolution of the UMLEvolution 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 OMGfor adoption, Sept ´97

Other methods

publicfeedback UML Partners’

Expertise

UML 1.1 (Sept. 1997)

Taskon,SINTEF

UML 1.4UML 2.0

(2004)

Page 61: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 61

Evolution of methodologies

UML1.0

UML1.1

UML1.2

UML1.3

UML1.4

OMT

Objectory

Booch

UML Components

Catalysis

OOram

KobrA

COMETCOMET-S

UML4EDOC

UML2

Pulse

UP

RUP

Notation

Process

2001

1995-1999

2000

ObjecteeringSOA

Page 62: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 62

See also: www.soaml.org

Final version of SoaMLper March , 2010

Page 63: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

SoaML UML Profile & Metamodel

Page 64: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Example: Marketplace Services

Order

Conformation

Ship Req

Shipped

Shipped

PhysicalDelivery

Delivered

Status

Provider

Consumer

ProviderC

onsu

mer

Consumer

Provider

GetItThere Freight Shipper

Mechanics Are UsDealer

Acme IndustriesManufacturer

Page 65: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

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 66: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Compound services

Page 67: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

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 68: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

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

Page 69: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 69

Project Management

Process Configuration

Requirem entsAnalysis

ArchitectureLevel

C lass Level

Im plementation

Test

Design

preliminaryiteration(s)

iter.#1

PhasesProcessCom ponents

Iterations

Elaboration Construction TransitionInception

SupportingCom ponents

iter.#2

iter.#n

iter.#n+1

iter.#n+2

iter.#m

iter.#m+1

Project Management

Process Configuration

Requirem entsAnalysis

ArchitectureLevel

C lass Level

Im plementation

Test

Design

preliminaryiteration(s)

iter.#1

PhasesProcessCom ponents

Iterations

Elaboration Construction TransitionInception

SupportingCom ponents

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 70: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics

Modelio SOA method and tool support

70

Page 71: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 71

ResourceServiceTier

BusinessServiceTier

UserServiceTier

UserInterfaceTier

LS

RARA

LA

Concepts & Artifacts

Processes

Actors Bu

sin

ess

do

ma

in

“Real world”Model world

Web Servicesmodel

Web Servicesimplementationmodel

Web Services profilemodel

Business

model

Domain model

Riskanalysis

Product vision

& product desc.

Requirementsmodel

boundarySystemboundarymodel

Use caseScenario model

Otherrequirements

Prototype

BCE model

Service-Oriented Architecturemodel

Componentstructure model

Serviceinteractionmodel

Serviceinterfacemodel.

Tec

hn

ical

do

mai

n

COMET-S model architecture

Page 72: INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Telecom and Informatics 72

Next Lecture – MDE I February 1st, 2010 Metamodeling

Domain specific languages

Eclipse EMF and GMF

UML profiles Draft handbook for MDE will be provided at the INF5120 webpages

Oblig 1 intro: See Eclipse EMF/GMF tutorials http://www.eclipse.org/modeling/