1 tdt4250 - modeling of information systems, autumn 2006 model-driven development (mda), software...
Post on 19-Dec-2015
215 views
TRANSCRIPT
1
TDT4250 - Modeling of Information Systems, Autumn 2006
Model-driven development (MDA), Software Oriented Architecture (SOA) and semantic web
(exemplified by WSMO)
Draft of presentation
John Krogstie
Professor, IDI, NTNU
Senior Researcher, SINTEF ICT
2
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Overview of lectures today and Wednesday
Overview on SOA and MDA / MDD, based on material produced in the Athena EU-project
More details based on the articles today
Articles A14 White, S. A. Introduction to BPMN A15. Pasley
, J. How BPEL and SOA is changing web services development, IEEE Internet computing May-June 2005
A16. de Bruijn, J, Fensel, D., Keller, U. and Lara, R. Using the web-service modelling ontology to enable semantic e-business, Communication of ACM Dec 2005
A17. France, R.B., Gosh, S. Dinh-Trong, T, and Solberg, A. Model-driven development using UML2.0: Promises and Pitfalls, IEEE Computer February 2006
A18. Jones, V., Rensik, A. and Briksma, E. Modelling mobile health systems: an application of augmented MDA for the extended healthcare enterprise
3
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
BPMN – based on a presentation by Steven White
4
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Business process management (BPM) services
5
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
6
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
7
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
8
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
9
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
10
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
11
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
12
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
13
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
14
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
15
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
16
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
17
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
18
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
19
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
20
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
21
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
22
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
23
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
24
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
25
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
26
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Model-driven development (MDD)
CIMCIM
BusinessContextModels
PIMPIM
Modeltrans-
formation
SoftwareSpecification
Models
PSMPSM
SoftwareRealisation
Models
Modeltrans-
formation
Model-driven approach to system engineering where models are used in• understanding• design• construction• deployment• operation• maintenance• modification
Model transformation tools and services are used to align the different models.
Business-driven approach to system engineering where models are refined from business needs to software solutions• Computation independent model (CIM) capturing business context and business requirements• Platform independent model (PIM) focusing on software services independent of IT technology• Platform specific model (PSM) focusing on the IT technology realisation of the software services
27
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Current MDA Architecture
CIMmodels
PIMSystemmodels
PSMSystemmodels
System
QVT
QVT
MOF2Txt
Enterprisemodeling
expert
Systemmodeling
expert
Systemrealisationinstallation
expert
UML2.0
MOF2.0
XMI2.0
Ontology
ODM
BPDM
OrgMM
BSVR
OWL
ATLMOFScriptEMF Java APIMTF (IBM)
QVT(MOF2Txt)
28
TDT4250 - Modeling of Information Systems, Autumn 2006
A17. France, R.B., Gosh, S. Dinh-Trong, T, and Solberg, A. Model-driven development using UML2.0: Promises and Pitfalls, IEEE Computer February 2006
Navigating the metamuddle
Arnor Solberg, Robert France, Raghu Reddy
Colorado State University and SINTEF Norway
29
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Claim
The complexity of the current UML 2 metamodel make the understanding, using, extending and evolving the metamodel difficult
1000 + pages specification
large and fragmented
Available as a model in Rational Rose
Only for visualization, no manipulation features available (e.g. queries)
Poorly documented
This is a risk factor for MDD in general and MDA in particular!
30
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
This is a problem since..
MDD require development teams to understand, use and extend metamodels
Configuring and tailoring MDD frameworks need to be done for each domain and even System Family to be able to succeed with MDD.
Defining domain specific modeling concepts (for example by means of profiles), specification of metamodel mappings (transformations) and model composition will be main tasks
Task for Domain and System Family architects. No out of the box tools to buy from vendors. Tailoring is needed
31
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Conceptual transformation model
Source(e.g., UML domain/PF
subset/profile)
<<metamodel>>
Source2Target Scheme
<<transformation>>
<<Model instance>>Source
implementation
<<source>>
Target(e.g. CORBA UML profile)
<<metamodel>>
<<target>>
<<source>> <<target>>
<<conforms_to>>
Transformation(e.g. MOF2.0 QVT)
<<metamodel>>
<<Model instance>>Target
Transformation
<<conforms_to>><<conforms_to>>
<<conforms_to>>
32
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Good news and bad news
Good news is
In practice only part of the UML is used
Subset of diagrams
Subset of concepts
-> Should not need to have the full knowledge of the UML metamodel to use “your” part of UML
Bad news
Need to manually navigate the metamuddle to extract the concepts you want to use
33
TDT4250 - Modeling of Information Systems, Autumn 2006
A glimpse into the story
Illustrative Example
Mapping of Simple UML interactions models (e.g. to UML profile for CORBA)
34
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Simple metamodel for UML interactions
Want to extract the Lifeline and Message concepts and their relationships.
These are core concepts for modeling interactions so you would expect to find their properties and relationships quite easily in the standard
Examination of the Interactions section in the UML specification, reveals that the information required in this simple view is not available in one place in the metamodel.
35
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Lifeline fragment (no obvious relation to Message)
36
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Messagefragment(no lifeline)
37
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Problems of UML
Large and complex Specification fragmented Leads to accidental complexity
As opposed to inherent problem complexity
This is a risk factor for the MDA vision!
Furthermore how do you evolve the UML model in a consistent manner?
How can one be sure that required changes are incorporated consistently across the metamodel?
How can one determine the impact that a change will have on other metamodel elements?
In particular, how can one ensure that the changes do not result in a metamodel that defines inconsistent or nonsensical language constructs?
It will be extremely difficult to evolve the UML 2.0 metamodel to reflect changes in the UML standard using only manual techniques.
38
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Suggestions
Need user oriented views into the metamuddle
At least a simple view of the metamodel for each diagram type that describes only the concepts and relationships that appears in the diagram
Use aspect oriented techniques e.g. to Provide views of the set of diagram types that only contain concepts that are
visible in the diagrams (abstract concepts such as NamedElement will not appear in such diagrams, but derived properties will)
Define aspects presenting views of abstract concepts reflecting language and UML-specific concerns such as name space management, element typing, connectivity of elements, and execution semantics.
Make it easier to evolve (e.g., change aspects, new aspects)
39
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Tool support
At least
Tool that allows developers to query the metamodel, to extract views of the metamodel
E.g., get all relationships and properties of a metamodel concept
Including the derived ones
Some tools provide some of this capability already
Xactium
Megamodelling, ATL (Jean Bezivin)
Better
Tool that take UML models as input and automatically extract the metamodel for this set of input models
Implicit model checking (compliance checking)
40
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Conclusion
41
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Questions
How do we eliminate accidental complexity such as the one illustrated in this presentation
Other examples exists, e.g., the QVT specification
Is this a unavoidable for new, immature fields?
Problem is to include the users in the evolution of the field when there is too much accidental complexity involved when using it
42
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Conclusion and further work
MDD framework that facilitates: Horizontal separation
Handling crosscutting features distributed across a model
Emphasis on QoS during model specification and transformation
Simplify transformations
Vertical separation of concerns Abstractions e.g., to manage diversity and evolution of platforms
Future work More case studies
Different platforms, Repository of models and mappings of common middleware concerns
Profile for specifying model weaving
Usage of framework for adaptive systems and adaptive middleware (E.g., Madam middleware)
Increase flexibility and ease evolution of adaptive systems
43
TDT4250 - Modeling of Information Systems, Autumn 2006
WSMO overviewAs basis for A16. de Bruijn, J, Fensel
, D., Keller, U. and Lara, R. Using the web-service modelling ontology to enable semantic e-business, Communication of ACM Dec 2005
44
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Contents
Mission of WSMO
WSMO Standard
45
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
Mission of WSMO
Web Service Modeling Ontology
WSMO is a conceptual model for relevant aspects related to Semantic Web Services
46
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard
Provide the formal
semantics of the
information used by
all other components
Semantic description of Web Services: - Capability (functional)- Interface (usage)
Specify objectives that a client may have
when consulting a Web Service
Connectors between components with mediation facilities (de-coupling)
47
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard - Ontologies
Non functional properties Used mediators
Importing / re-using ontologies as modular approach for ontology design. OO Mediators:
handles all ontology management issues (access, namespaces, etc.) ontology integration (merging / alignment)
=> Modularization & De-coupling Axioms
The set of axioms that belong to the represented ontology. Concepts
The set of concepts that belong to the represented ontology. Relations
The set of relations that belong to the represented ontology. Instances
The set of instances that belong to the represented ontology.
48
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard - Goals
Non functional properties
Used mediators
import ontologies using OO Mediators.
GG Mediator: Goal definition by reusing an already existing goal.
Post-conditions
describe the state of the information space that is desired.
Effects
Effects describe the state of the world that is desired.
49
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard - Mediators
Principle of De-coupling for handling complexity & heterogeneity
=> Mediators: WSMO components are never allowed to touch each other without a mediator in-between.
50
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard - Mediators
51
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard - Mediators
Non functional properties
Source component
the connected entity / entities
Target component
the connecting entity / entities
Mediation Service
links to Mediation Facility needed to resolve heterogeneity
Reduction describes the differences between the connected entities
only in WG or GG
52
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard – Web Service
Non functional properties
Used mediators OO Mediators for importing ontologies as the
formalized
terminology for describing the Web Service
Capability
functional description (WHAT), 1:1
Interfaces
description of usability & composition (HOW), 1:n
Semantic Description of Web Services to allow
(semi-)automated usage of Web Services
53
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard – Capability
Non functional properties Used mediators
OO Mediator: importing ontologies as terminology definition WG Mediator: link to a Goal that is solved by the Web Service
Pre-conditions what a web service expects in order to be able to
provide its service, i.e. conditions over the input Assumptions
Conditions on the state of the world that has to hold before
the Web Service can be executed Post-conditions
describes the computational result in relation to the input
of the Web Service, and conditions on it Effects
Conditions on the state of the world that hold after execution of the
Web Service (i.e. changes in the state of the world)
54
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard – Interfaces
describes how the functionality of the service can be achieved provides a twofold view on the operationalization of the Web
Service:
1. Choreography defines how to communicate with the web service in order to consume its functionality.
2. Orchestration defines how the overall functionality is achieved by the cooperation of more elementary service providers.
Choreography & Orchestration = different decompositions of process/capabilities to the top (service requester) and to the bottom (other service providers).
This distinction reflects the difference between communication and cooperation.
55
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard – Interfaces
56
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard – Interfaces
Non functional properties Used mediators
OO Mediators for importing ontologies as terminology definitions
Choreography provides the necessary information for the user to communicate with the web
service. described by an instantiated Message Exchange Pattern
Orchestration describes a service makes use of other web service or goals in order to achieve it's
capability. specifies the composition of Web Services used by a Web Service described as an instantiated Problem Solving Pattern.
57
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Standard – Language
F-Logic combines the advantages of conceptual high-level approaches typical for frame-based language and the expressiveness, the compact syntax, and the well defined semantics from logics.
it provides a standard model theory
it is a full first order logic language
it provides second order syntax while staying in the first order logic semantics
it has a minimal model semantics
implemented inference engines are already available.
58
TDT4250 - Modeling of Information Systems, Autumn 2006
Q
WSMO Working draftsat: http://www.wsmo.org/2004/
59
TDT4250 - Modeling of Information Systems, Autumn 2006
Model-driven development (MDA), Software Oriented Architecture (SOA) and semantic web
(exemplified by WSMO)
John Krogstie
Professor, IDI, NTNU
Senior Researcher, SINTEF ICT