UML for ODP system specifications ITU-T X.906 | ISO/IEC 19793 (A work-in-progress presentation) Antonio Vallecillo Universidad de Málaga Dept. Lenguajes.

Slides:



Advertisements
Similar presentations
ITU-T X.906 | ISO/IEC 19793: UML for ODP system specification -- Current status -- Antonio Vallecillo Universidad de Málaga Dpto. Lenguajes y Ciencias.
Advertisements

1 Aspects of IEEE P1471 Viewpoints in Unified Modeling Language (UML) Manzur Ashraf, BRAC University Humayra Binte Ali, Dhaka University Md.Mahfuz Ashraf,
2/11/2014 8:44 AM The CDA Release 3 Specification Stack September 2009 HL7 Services-Aware Enterprise Architecture Framework (SAEAF)
ITU-T/SG 27 Nov UML for ODP viewpoint specifications Bryan Wood Convenor, JTC1/SC7/WG19 ITU-T/SG 17 Geneva, 27 November.
Modeling the ODP Computational Viewpoint with UML 2.0
ITU-T/SG 17 Mar UML for ODP system specifications Bryan Wood Convenor, JTC1/SC7/WG19 ITU-T/SG 17 Geneva, 14 March 2004.
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
1 CIS224 Software Projects: Software Engineering and Research Methods Lecture 11 Brief introduction to the UML Specification (Based on UML Superstructure.
UML for ODP system specifications ITU-T X.906 | ISO/IEC (A work-in-progress presentation) Antonio Vallecillo Universidad de Málaga Dept. Lenguajes.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Open Distributed Processing in SC7 - Status and Future Bryan Wood (Convenor WG19) SC7 AG 12 May 2002.
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Nathalie Moreno and Antonio Vallecillo Dept. Lenguajes y Ciencias de la Computación Universidad de Málaga COTS component/ Legacy.
Open Distributed Processing
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
1 © Wolfgang Pelz UML3 UML 3 Notations describe how to use reusable software. Package Component Deployment Node.
Using UML for Writing and Reasoning about ODP Policies Javier Herrador, Francisco Durán, Antonio Vallecillo Felipe García, Manuel Roldán Dept. Lenguajes.
Using Architecture Frameworks
Object-Oriented Theories for Model Driven Architecture Tony Clark, King’s College, UK. Andy Evans, University of York, UK. Robert France, Colorado University,
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
© Copyright Eliyahu Brutman Programming Techniques Course.
Applying the ISO RM-ODP Standard in e-Government B. Meneklis 1, A. Kaliontzoglou 2,3, D. Polemi 1, C. Douligeris 1 1 University of Piraeus, Department.
1 ECCF Training 2.0 Introduction ECCF Training Working Group January 2011.
Part I – Viewpoint Modeling
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
OMG ADTF, 24 June ITU-T X.906 | ISO/IEC Use of UML for ODP system specifications Bryan Wood Convenor, JTC1/SC7/WG19, Modelling Languages.
International Telecommunication Union ITU-T Study Group 17, Moscow, 30 March – 8 April 2005 New Recommendations on ODP Arve Meisingset Rapporteur Q15.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
THE NEXT STEP IN WEB SERVICES By Francisco Curbera,… Memtimin MAHMUT 2012.
Formalizing ODP Computational Viewpoint Specification in Maude Raúl Romero and Antonio Vallecillo EDOC 2004 Dpto. Lenguajes y Ciencias de la Computación.
SEG4110 – Advanced Software Design and Reengineering
DOT’98 Heidelberg 1 A. Hoffmann & M. Born Requirements for Advanced Distribution and Configuration Support GMD FOKUS Andreas Hoffmann & Marc Born
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
Introduction to MDA (Model Driven Architecture) CYT.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
ISO/IEC CD and WD : Core Model and Model Mapping ISO/IEC JTC1/SC32/WG September 2005, Toronto SC32/WG2 Japan (Kanrikogaku Ltd) Masaharu.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
1 A Model-Driven Approach For Information System Migration Raymonde Le Delliou 1, Nicolas Ploquin 2, Mariano Belaunde 3, Reda Bendraou 4, Louis Féraud.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
On the Role of Abstract Platform in Model Driven Development* Marten van Sinderen Centre for Telematics and Information Technology, University of Twente,
A new viewpoint for change management in RM-ODP systems Nesrine Yahiaoui 1,2, Bruno Traverson 1, Nicole Lévy 2 1 EDF R&D - 2 UVSQ PRiSM Workshop on ODP.
UML 2 Models for ODP Engineering/Technology Viewpoints – An Experiment - Daisuke Hashimoto Hiroshi.
XASTRO Metamodel. CCSDS SAWG2 Presentation Outline XASTRO-1 Metamodel XASTRO-2 Metamodel Alignment with Model Driven Architecture.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
1 ECCF Training 2.0 Introduction ECCF Training Working Group January 2011.
Software Engineering Lecture 8 Object-Oriented Analysis.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Modeling the ODP Computational Viewpoint with UML 2.0: The Templeman Library Example José Raúl Romero, Antonio Vallecillo Universidad de Málaga, Spain.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
1 ECCF Training Computationally Independent Model (CIM) ECCF Training Working Group January 2011.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
DISCUSSION ABOUT REGISTRATION OF RM-ODP LIBRARY EXAMPLE BASED ON MFI Yuan Lin, Wang Jian, Wang Chong, Liang Peng, Feng Zaiwen.
Introduction to UML Hazleen Aris Software Eng. Dept., College of IT, UNITEN. …Unified Modeling Language.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
UML (Unified Modeling Language)
7/2/2016 1:52 AM HL7 SOA-Aware Enterprise Architecture Executive Summary HITSP October 28, 2008 Executive Summary HITSP October 28, 2008.
Workplan for Updating the As-built Architecture of the 2007 GEOSS Architecture Implementation Pilot Session 7B, 6 June 2007 GEOSS Architecture Implementation.
UML profiles.
Architecture Description Languages
Presentation transcript:

UML for ODP system specifications ITU-T X.906 | ISO/IEC (A work-in-progress presentation) Antonio Vallecillo Universidad de Málaga Dept. Lenguajes y Ciencias de la Computación

June Agenda 1. ODP system specifications 2. Use of UML for ODP system specifications 3. ODP in MDA system specifications 4. Sources and progress so far 5. Conclusions

June Important Disclaimer –This presentation describes work in progress, that may (and will) change as the ISO/IEC Standard | ITU-T Rec. X.906 is developed. Acknowledgements –The work presented here has been developed by the ISO/IEC JTC1-SC7-WG19 Working group. We’d like to acknowledge the work by many ODP experts who have been involved in investigating and addressing the problems of the UML specification of ODP systems. Specially mention deserve Sandy Tyndale- Biscoe, Akira Tanaka and Bryan Wood.

June ODP System Specifications The Reference Model of ODP (ITU-T Rec X | ISO/IEC 10746) defines a framework for system specification, covering all aspects of open distributed systems: –“enterprise” context, functionality, distribution, infrastructure, technology It comprises –a structure for system specifications in terms of viewpoints –a language (concepts and rules) for expressing each viewpoint specification –a set of object-oriented foundation modeling concepts common to all viewpoint languages

June ODP Viewpoints Different abstractions of the same system –each abstraction focuses on different concerns –each abstraction achieved using a set of viewpoint concepts and rules A mechanism for dealing with the complexity of distributed systems

June ODP Viewpoints An ODP specification includes a set of viewpoint specifications (or views) A viewpoint specification –Is a specification of a system from a specific viewpoint –is expressed in terms of the viewpoint concepts and rules (the viewpoint language) to describe the concerns and decisions covered by the viewpoint specification –Is related to, and consistent with, other viewpoint specifications (correspondences)

June ODP Viewpoints—different concernsSystem Enterprise Computational Information Technology Engineering

June The enterprise specification Specifies the roles played by the system in its organizational environment An object model of, for example, part of some social/commercial organization in terms of: –Enterprise objects –Communities (of enterprise objects) –Objectives –Behaviour Roles (fulfilled by enterprise objects in a community) Processes (leading to Objectives) –Policies –Accountability –…

June The information specification Specifies system behavior to fulfill its enterprise roles, abstracted from implementation An object model of the system describing the semantics of information and of information processing in the system, in terms of: –Information objects –Invariant schema: predicates on information objects that must always be true –Static schema: state of information objects at some location in time –Dynamic schema: allowable state changes of information objects

June The computational specification Specifies computational structure of the system in terms of units of functionality (distribution and technology independent) An object model of the system describing the structure of processing in terms of: –Computational objects –Interfaces (of computational objects): functions supported –Invocations (by computational objects): functions invoked –Computational bindings –Environment contracts (e.g., QoS constraints)

June The engineering specification Specifies the mechanisms and services that provide the distribution transparencies and QoS constraints required by the system, independent of platform and technology An object model of the system describing the infrastructure supporting the computational structure –Basic engineering objects –(Infrastructure) Engineering objects –Clusters, capsules, nodes –Channels –Functions

June The technology specification Specifies the H/W and S/W pieces from which the system is built An object model of the system –defining the configuration of technology objects that comprise the ODP system, and the interfaces between them –identifying conformance points

June An ODP system specification - Object configuration - Interactions between objects at interfaces Computational Enterprise - business aspects - What for? Why? Who? When? - information - changes to information - constraints Information - Hardware and software components implementing the system Technology Engineering - Mechanisms and services for distribution trans- parencies and QoS constraints. - and correspondences between specifications

June Correspondences between ODP VPs Enterprise Technology Engineering Computational Information

June Use of UML* for ODP system specs ITU-T X.906 | ISO/IEC 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 *currently moving to 2.0

June Use of UML* for ODP system specs ITU-T X.906 | ISO/IEC Why? –RM-ODP is notation- and methodology- independent –Which is an advantage (a-priori)... –...but hampers its widespread adoption and use Target audiences of ISO/IEC –UML Modelers that need to structure (somehow) their LARGE system specifications –ODP Modelers that need some (graphical) notation for expressing their ODP specifications and tool support –Tool vendors

June UML Profiles for ODP Viewpoint Languages

June Enterprise metamodel (excerpt)

June UML Profile – Enterprise lang. (excerpt) ConceptStereotypeUML Metaclass ODP System«EV_ODPSystem» Class Field of Application«EV_FieldOfApplication» Comment attached to Package Community«EV_Community» Subsystem Enterprise Object«EV_EnterpriseObject» Class Enterprise Object fulfilling Role«EV_FulfilsRole» Association Community Object«EV_CommunityObject» Class Objective«EV_Objective» Class Role«EV_Role» Class, StateMachine (in role model), Partition (in process model) Action«EV_Action» State Interaction«EV_Interaction» Class, StateMachine, ActivityGraph Process«EV_Process» Class, A ctivityGraph Step«EV_Step» ActionState Artefact«EV_Artefact» ObjectFlowState (in process model), Signal (in role model)

June UML Profile – Enterprise lang. (icons) «EV_EnterpriseObject» «EV_ODPSystem» «EV_Role» «EV_Interaction» «EV_Artefact» «EV_CommunityObject» «EV_Community» «EV_Objective» «EV_Process» «EV_Step»

June Information Language metamodel

June UML Profile – Information Language

June UML Profile – Information lang. (icons) «Information_Spec» «IV_InformationObject» «IV_InformationObjectType» «IV_ActionType» «IV_InvariantSchema» « IV_StaticSchema» « IV_DynamicSchema»

June Computational Language metamodel

June UML Profile – Computational Language

June ODP System specification structure >

June Engineering Language metamodel (1)

June Engineering Language metamodel (2)

June UML Profile – Engineering language

June Technology Language metamodel

June UML Profile – Technology language

June UML mappings – Technology language Technology Language ConceptsCorresponding UML elements Technology objectDeployment diagram including instances of components Implementable standarda)Stereotyped Notes attached to deployment diagram and/or instance of components or b)UML tagged values or named property list ImplementationA process of building a testable UML system according to a UML model or models IXITStereotyped Notes

June Proof of concept: the Templeman Library The standard will include, as an example, a partial specification of a computerized system that supports the operations of a University Library, in particular those related to the borrowing process of Library items. The system should keep track of the items of the University Library, its borrowers, and their outstanding loans. The library system will be used by the library staff (librarian and assistants) to help them record loans, returns, etc.

June UML specification of the ODP system

June Enterprise Specifications

June Enterprise specification – Global

June Enterprise spec – Library Community

June Enterprise spec – enterprise objects

June Enterprise spec – Role fulfilment

June Enterprise spec – Processes

June Enterprise spec – Activity graph

June Enterprise spec – Interactions

June Enterprise spec – Request Item and Delegations

June Enterprise spec – state diagram for Borrower role

June Enterprise spec – Artefact roles of Loan

June Enterprise spec – Policies

June Enterprise spec – Interactions between comunities context Templeman Library System (E Spec)::Library::Behaviour::Roles::Librarian inv: self.roleFiller <> Templeman Library System (E Spec)::Personnel::Behaviour::Roles::Dean.roleFiller

June Information Specifications

June Information specification

June Information spec – Object types

June Information spec – Action types

June Information spec – invariant schemata context Library inv undergradLimits: (undergradMaxLoans = 8) and (undergradBookLoanPeriod = 28) and (undergradPeriodicalLoanPeriod = 0) context Library inv uniqueIdentifiers: self.items->forAll( itm1,itm2 | itm1.id <> itm2.id) and self.users->forAll( usr1,usr2 | usr1.id <> usr2.id) context Library inv oneLibrarianAndOneClockWhileOpen: self.isOpen implies (self.Librarian->size() = 1) and (self.Calendar->size() = 1) context Library inv consistentNumberOfLoans: self.users.borrowedItems->sum() = self.loans->size() context Loan inv wellFormedLoans: issueDate <= dueDate

June Information spec – Static schema

June Information spec – Dynamic schema

June Computational Specifications

June Computational specification

June Computational specification

June Engineering Specifications

June Engineering specification

June Technology Specifications

June Technology specification - example

June ODP in MDA System Specifications

June What is 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

June 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 transformations between models

June 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

June ODP Specifications and the MDA

June 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:

June UML 4 ODP – (Some) Sources Japanese Association of Healthcare Information System Industry (JAHSI) - Hospital Information Reference Enterprise Model project European research projects: –e.g. COMBINE - investigating the organisation and process for component-based system development Industrial Practice OMG –UML profile for Enterprise Distributed Object Computing (EDOC) A worked example for the standard

June Progress and Targets Start of ProjectMay 2003 SC7 WDMay 2004SC7 meeting 1st CDDec 2004 FCDMay-Oct 2005 SC7 meeting FDISDec 2005 ISMay 2006 SC7 meeting Current WD is available as ISO-stds/