ITU-T X.906 | ISO/IEC 19793: UML for ODP system specification -- Current status -- Antonio Vallecillo Universidad de Málaga Dpto. Lenguajes y Ciencias de la Computación
WODPEC Hong Kong 2 UML4ODP ITU-T X.906 | ISO/IEC 19793: Use of UML for ODP system specifications A standard defining: a set of UML Profiles for expressing a system specification in terms of viewpoint specifications possible relationships between the resultant ODP viewpoint specifications and how they are represented the structure of a system specification expressed as a set of UML models using ODP viewpoint profiles A standard that enables the use of MDA tools in developing and maintaining ODP system specifications
WODPEC Hong Kong 3 UML4ODP Why? RM-ODP is notation- and methodology- independent Which is an advantage (a-priori)......but hampers its widespread adoption and use Target audiences UML Modelers who need to structure (somehow) their LARGE system specifications ODP Modelers who need some (graphical) notation for expressing their ODP specifications and tool support Modeling tool suppliers who wish to develop UML-based tools that are capable of expressing RM-ODP viewpoint specifications.
WODPEC Hong Kong 4 UML4ODP This Recommendation | International Standard defines: a UML based notation for the expression of ODP specifications an approach for structuring of them using the notation, thus providing the basis for model development methods It provides: The expression of a system specification in terms of RM-ODP viewpoint specifications using defined UML concepts and extensions A set of UML 2.0 profiles (one for each viewpoint) A way of using these profiles (structuring rules) relationships between the resultant RM-ODP viewpoint specifications; A way of modelling ODP correspondences A profile for correspondences A way for modelling conformance of implementations to specifications; A profile for conformance (reference points, conformance staments, etc.) relationships between RM-ODP viewpoint specifications and model driven architectures such as the OMG MDA
WODPEC Hong Kong 5 UML4ODP – Document structure Foreword 0Introduction 1Scope 2Normative references 3Definitions 4Abbreviations 5Conventions 6Overview of modelling and system specification approach 7Enterprise Specification 8Information Specification 9Computational Specification 10Engineering Specification 11Technology Specification 12Correspondences specification 13Modelling conformance in ODP system specifications 14Conformance and compliance to this document Annex A UML profiles for ODP languages using ITU-T guidelines for UML profile design Annex B An example of ODP specifications using UML Annex C Relationship with MDA® Annex D Architectural Styles
WODPEC Hong Kong 6 UML4ODP Clause 6 6Overview of modelling and system specification approach 6.1 Introduction 6.2 Overview of ODP concepts (extracted from RM-ODP-1) 6.3 Overview of UML concepts 6.4 Universes of discourse, ODP specs and UML models 6.5 General principles for expressing and structuring ODP system specifications using UML 6.6 Correspondences between viewpoint specifications
WODPEC Hong Kong 7 UML4ODP Clause 6.4 (UoD, ODP specifications and UML models)
WODPEC Hong Kong 8 UML4ODP Clause 6.5 (Principles for expressing and structuring ODP specs using UML) The DSLs used to represent the viewpoint languages are defined using the UML lightweight extension mechanism (UML Profiles) The ODP system specification will consist of a single UML model stereotyped as «ODP_SystemSpec», that contains a set of models, one for each viewpoint specification, each stereotyped as « _Spec», where is the viewpoint concerned Stereotypes are used to represent domain specific specializations of UML metaclasses in order to express the semantics of the RM-ODP viewpoint language concerned Each viewpoint specification uses the appropriate UML profile for that language, as described in Clauses 7 to 11
WODPEC Hong Kong 9 ODP System specification structure
WODPEC Hong Kong 10 UML4ODP Clause 6.5 (Principles for expressing and structuring ODP specs using UML) The DSLs used to represent the viewpoint languages are defined using the UML lightweight extension mechanism (UML Profiles) The ODP system specification will consist of a single UML model stereotyped as «ODP_SystemSpec», that contains a set of models, one for each viewpoint specification, each stereotyped as « _Spec», where is the viewpoint concerned Stereotypes are used to represent domain specific specializations of UML metaclasses in order to express the semantics of the RM-ODP viewpoint language concerned Each viewpoint specification uses the appropriate UML profile for that language, as described in Clauses 7 to 11
WODPEC Hong Kong 11 Enterprise metamodel (excerpt 1)
WODPEC Hong Kong 12 Enterprise metamodel (excerpt 2)
WODPEC Hong Kong 13 Enterprise Profile: Classifiers (excerpt)
WODPEC Hong Kong 14 Information Language metamodel
WODPEC Hong Kong 15 Information Profile
WODPEC Hong Kong 16 UML4ODP Clause 6.6 (Correspondences) Correspondences are key to viewpoint modeling They form part of the ODP specification of a system Correspondences are not part of any viewpoint specification Correspondences are expressed in UML too
WODPEC Hong Kong 17 UML4ODP Clauses 7-11 X Specification X.1 Modelling concepts A brief description of the language Summary of the MOF-metamodel X.2 UML Profile Description on how the language concepts are mapped to UML, by extending the appropriate metaclasses UML specification of the profile X.3 specification structure (in UML terms) UML packages and grouping rules X.4 Viewpoint correspondences for the language Description of the correspondences to other viewpoints Not in UML (clause 12)
WODPEC Hong Kong 18 UML4ODP Clauses Correspondences specification 12.1 Modelling concepts 12.2 UML Profile 13 Modelling conformance in ODP system specifications 13.1Modelling concepts 13.2UML profile 14 Conformance and compliance to this document 14.1Conformance 14.2 Compliance
WODPEC Hong Kong 19 Correspondence metamodel
WODPEC Hong Kong 20 Correspondence Profile
WODPEC Hong Kong 21 Conformance Profile
WODPEC Hong Kong 22 UML4ODP Annexes Annex A: UML profiles for ODP languages using ITU-T guidelines for UML profile design Annex B An example of ODP specifications using UML Annex C Relationship with MDA Annex D Architectural Styles
WODPEC Hong Kong 23 Annex C: Relation with MDA
WODPEC Hong Kong 24 MDA An approach to system development using models as a basis for understanding, design, construction, deployment, operation, maintenance and modification Three essential elements: specifying a system independently of the platform that supports it, specifying platforms, transforming the system specification into one for a particular choice of platform. Goals: portability, interoperability and reusability Prescribes the kinds of model to be used in specifying a system, how those models are prepared and the relationships between them
WODPEC Hong Kong 25 What MDA does Identifies different viewpoints on a system different abstractions - reflecting different concerns providing a way of dealing with system complexity Specifies 3 kinds of viewpoint model for a system: a computation independent model (CIM): a view of a system that specifies its function without specifying details of its structure a platform independent model (PIM): a view of a system that specifies its computational structure independent of any specific platform - usable with different platforms of similar type. a platform specific model (PSM): a view of a system that combines the specifications in the PIM with a specification of the use of a particular type of platform. Specifies types of transformations between models
WODPEC Hong Kong 26 What MDA does not do MDA does not offer: a definition of the concerns and design decisions to be covered by each MDA model language constructs to express the concerns and decisions covered by each MDA model …but ODP can offer: a definition of the concerns and design decisions to be covered by each MDA model language constructs to express the concerns and decisions covered by each MDA model
WODPEC Hong Kong 27 ODP Specifications and the MDA
WODPEC Hong Kong 28 ODP and MDA together offer separating and integrating different system concerns combining skills and experience assigning responsibilities automating development An IT based approach to system development that provides a framework for:
WODPEC Hong Kong 29 Annex D: Architectural styles Describes some common architectural styles used in the design of distributed systems, and provides the corresponding UML Profiles The architectural styles that described are client-server, n-tier, Model-View-Controller (MVC), and Service-Oriented Architecture (SOA)
WODPEC Hong Kong 30 Client-server Profile
WODPEC Hong Kong 31 Progress and Targets Start of ProjectMay 2003 SC7 WDMay 2004 SC7 meeting 1st CDDec nd CDMay-Oct 2005 SC7 meeting FCDMay 2006 WG19 meeting FDIS?Dec 2006 WG19 meeting Current WD is available as ISO-stds/
WODPEC Hong Kong 32 Current status Clauses 6 – 14 (almost) finished Still to decide how to represent some E/L elements Very minor adjustments to all viewpoints Annexes A, C, D – done Annex B – In progress (still work to do…) It serves as a proof-of-concept, validation, and example of use Although it is not critical to the standard itself as a document… … it is key to have a usable standard A lot of help is needed To finish the missing parts (specially the example) To proof-read the document To use the proposed way of modeling ODP systems using UML (more examples, feedback, validation,…)
WODPEC Hong Kong 33 Thank you For more information Bryan Wood (WG19 convenor) Sandy-Tyndale Biscoe (UML4ODP co-editor) Antonio Vallecillo (UML4ODP co-editor) Resources
WODPEC Hong Kong 34 OPD viewpoints
WODPEC Hong Kong 35 Enterprise metamodel (1)
WODPEC Hong Kong 36 Enterprise metamodel (2)
WODPEC Hong Kong 37 Enterprise metamodel (3)
WODPEC Hong Kong 38 Enterprise metamodel (4)
WODPEC Hong Kong 39 Enterprise metamodel (5)
WODPEC Hong Kong 40 Enterprise metamodel (6)
WODPEC Hong Kong 41 Enterprise Profile: General
WODPEC Hong Kong 42 Enterprise Profile: Classifiers
WODPEC Hong Kong 43 Enterprise Profile: Activities
WODPEC Hong Kong 44 Enterprise Profile: Relations
WODPEC Hong Kong 45 Information Language metamodel
WODPEC Hong Kong 46 Information Profile
WODPEC Hong Kong 47 Computational Language metamodel
WODPEC Hong Kong 48 Computational Profile (1)
WODPEC Hong Kong 49 Computational Profile (2)
WODPEC Hong Kong 50 Engineering Metamodel (1)
WODPEC Hong Kong 51 Engineering Metamodel (2)
WODPEC Hong Kong 52 Engineering Metamodel (3)
WODPEC Hong Kong 53 Engineering Profile (1)
WODPEC Hong Kong 54 Engineering Profile (2)
WODPEC Hong Kong 55 Technology metamodel
WODPEC Hong Kong 56 Technology Profile
WODPEC Hong Kong 57 Correspondence metamodel
WODPEC Hong Kong 58 Correspondence Profile
WODPEC Hong Kong 59 Conformance Profile