INF5120 ”Modellbasert Systemutvikling” ”Modelbased System … · INF5120 Model based System Development 19.01.2009 1 Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling”
Post on 09-Feb-2019
222 Views
Preview:
Transcript
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: inf5120-forelesere@ifi.uio.no
� Øvingsansvarlige:
� Tore Vatnan, Hans Huru, Anthe Rugstad
� Email: inf5120-oppgaver@ifi.uio.no
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
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
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
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
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
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
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)
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
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
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
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
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
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?
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
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
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
INF5120 Model based System Development 19.01.2009
18
Telecom and Informatics
What is BPMN (Business Process
Modeling Notation) ?
Telecom and Informatics
BPMN example
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
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
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.
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
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
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
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
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, ...
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
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
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.
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
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
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
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
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
top related