UML 2 Models for ODP Engineering/Technology Viewpoints – An Experiment - Daisuke Hashimoto Hiroshi.

Slides:



Advertisements
Similar presentations
Overview: Guide for applying RM-ODP with UML Profile for EDOC
Advertisements

2/11/2014 8:44 AM The CDA Release 3 Specification Stack September 2009 HL7 Services-Aware Enterprise Architecture Framework (SAEAF)
1 CIS224 Software Projects: Software Engineering and Research Methods Lecture 11 Brief introduction to the UML Specification (Based on UML Superstructure.
UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
Deployment Diagrams Depicts a static view of the run-time configuration of Nodes.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
Software Testing and Quality Assurance
1 © Wolfgang Pelz UML3 UML 3 Notations describe how to use reusable software. Package Component Deployment Node.
Introduction to UML Visual modeling Models and its importance
Component and Deployment Diagrams
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
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.
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
UML Packages & Related Diagrams
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
SEG4110 – Advanced Software Design and Reengineering
Using MDA in Web Software Architectures Santiago Meliá Cristina Cachero Jaime Gómez Universidad de Alicante Spain.
DOT’98 Heidelberg 1 A. Hoffmann & M. Born Requirements for Advanced Distribution and Configuration Support GMD FOKUS Andreas Hoffmann & Marc Born
Introduction to UML 1 Quick Tour Why do we model? What is the UML? Foundation elements Unifying concepts Language architecture Relation to other OMG technologies.
An Introduction to Software Architecture
Introduction to MDA (Model Driven Architecture) CYT.
Architecting Web Services Unit – II – PART - III.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
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)
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 10 Use Case Design.
Modelling Class T16: Conceptual Modelling – Architecture Image from
XASTRO-2 Overview Presentation CCSDS SAWG Athens Meeting 12 th April 2005.
1 On Interactions in the RM-ODP Guy Genilloud, Gonzalo Génova WODPEC’2005 Workshop on ODP for Enterprise Computing * Information Engineering Group Departamento.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
On the Role of Abstract Platform in Model Driven Development* Marten van Sinderen Centre for Telematics and Information Technology, University of Twente,
TAL7011 – Lecture 4 UML for Architecture Modeling.
Implementation Diagrams
R R R CSE870: UML Component Diagrams Implementation Diagrams.
CS 772: Global Knowledge Networks V. “Juggy” Jagannathan CSEE, West Virginia University.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Technology Layer. Technology Layer Metamodel Technology Layer Concepts.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
1 Software Design Lecture What’s Design It’s a representation of something that is to be built. i.e. design  implementation.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Modeling the ODP Computational Viewpoint with UML 2.0: The Templeman Library Example José Raúl Romero, Antonio Vallecillo Universidad de Málaga, Spain.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
Identifying classes, Packages and drawing class Diagrams, Object Diagrams and composite structure diagrams Week 07 1.
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.
WG2 Roadmap Discussion Denise Warzel May 25, 2010 WG2 Convenor SC32 WG2N1424SC32 WG2N1424.
UML (Unified Modeling Language)
INTRODUCTION: This report contains the results of the International Council of System Engineer (INCOSE) UML/SySML Team efforts to produce UML/SySML Architecture.
R R R CSE870: UML Component Diagrams Implementation Diagrams.
UML Diagrams By Daniel Damaris Novarianto S..
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Workplan for Updating the As-built Architecture of the 2007 GEOSS Architecture Implementation Pilot Session 7B, 6 June 2007 GEOSS Architecture Implementation.
Unified Modeling Language
University of Central Florida COP 3330 Object Oriented Programming
UML Diagrams Jung Woo.
Version 3 April 21, 2006 Takahiro Yamada (JAXA/ISAS)
Application of ODP for Space Development
Goal Platform Independent Specific Topic Specification
UML profiles.
Analysis models and design models
Architecture Description Languages
An Introduction to Software Architecture
Design Yaodong Bi.
Presentation transcript:

UML 2 Models for ODP Engineering/Technology Viewpoints – An Experiment - Daisuke Hashimoto Hiroshi Miyazaki Akira Tanaka

2 Agenda Introduction UML 2.0 profile and models for Engineering Viewpoint UML 2.0 profile and models for Technology Viewpoint Considerations Conclusions

Introduction

4 Background and objective The ISO/IEC and ITU-T joint project, “ Use of UML for ODP system specifications, ” made a decision to shift from UML 1.4 to UML 2.0 based profile. Therefore it is necessary to examine that UML 2.0 model elements can appropriately represent necessary ODP concepts. The above project is an international collaboration, and we are interested in Engineering and Technology viewpoints for promising connection with OMG ’ s MDA initiative. Here I am to present this paper.

5 This paper is Based on... Authors are members of INTAP (Japan) ODP committee. Developed “ A Guide for using RM-ODP and UML Profile for EDOC ” (2003) This paper is based on: RM-ODP Part 2, Part 3, and Enterprise Language standards CD document of ISO/IEC and ITU-T ’ s joint project “ Use of UML for ODP system specifications ” INTAP ODP committee has liaison with Japanese committee for SC7/WG19 on RM-ODP activity. INTAP Technical Report “ Applying EDOC and MDA to the RM-ODP Engineering and Technology Viewpoints ” (2003) Profile developed with the same objective, but based on UML 1.4 UML 2.0 superstructure specification from OMG

UML 2.0 profile and models for Engineering Viewpoint

7 Target Architectural Diagrams Five architectural diagrams are quoted here from RM- ODP Part 3 Engineering Language. Those diagrams are grouped into two: Diagram 1 to 3 for Node structure modeling discussion Diagram 4 to 5 for Channel modeling discussion

8 Target Architectural Diagrams -1 Example structure supporting a basic engineering object (from RM-ODP Part 3, Clause 8 Figure 4)

9 Target Architectural Diagrams -2 Example structure of a capsule (from RM-ODP Part 3, Clause 8 Figure 5)

10 Target Architectural Diagrams -3 Example structure of a node (RM-ODP Part 3, Clause 8 Figure 6)

11 Major elements from those diagrams Need to cover at least the following major elements in UML 2.0 diagrams: Basic Engineering Object (BEO) Capsule Capsule Manager (CPM) Cluster Cluster Manager (CLM) Node Nucleus

12 Candidate UML diagrams Deployment diagram Deployment diagram has some constraints. Node: UML 2 only allows certain types of modeling elements (e.g. Node, Artifact) to be placed within a Node. Artifact is poor to represent internal structure of capsule. Communication path: This diagram ’ s communication path is association between Nodes (not communication path between capsules). Class diagram and Component diagram Component and Class (structured classifier) can have parts. Those diagram is powerful to represent internal structure of Node. Which one? Will be discussed in the following slides.

13 Issue: modeling engineering objects Candidates for modeling engineering objects. Class: may be more abstract than component? Component: may give an impression of software component? Concept of ODP ’ s Object is close to Object concept in UML. But, Object is used to represent snapshot in UML world. (UML modeling is class based) Object is defined by element of Instance specification in UML2.0. Instance specification is not classified (Class? Component?) Our choice in this paper is … Using Component for profile definition. Using Component instance for diagramming. InstanceSpecification classcomponent specification instance class component instance object

14 Profile definition (1/3)

15 Example UML 2.0 Model: Nodes

16 Example UML 2.0 model: Node(internal)

17 Target Architectural Diagrams -4 An example of a basic client/server channel (RM-ODP Part 3, Clause 8 Figure 2)

18 Target Architectural Diagrams -5 An example of a multi-endpoint channel (RM-ODP Part 3, Clause 8 Figure 3)

19 Major elements from those diagrams Channel Stub Binder Protocol Object Interceptor Candidate diagrams Composite structure diagram Represent configuration of channel in this aspect. Class or component has capability to represent it. Package diagram Not able to represent the structural aspects.

20 Issue: modeling channel Node and Channel shares the same Engineering objects (Stub, binder, Protocol Object), i.e. ideally overlapping diagram are needed to represent this situation. UML 2.0 does not provide “ overlapping diagram ” capability. Possible approaches: two separate diagrams (double occurrence of the same engineering object) one structural diagram and one package Our choice in this paper – Structural diagram for Node and use of package for Channel Node ANode B Channel Engineering object

21 Profile definition (2/3)

22 Example UML 2.0 model: Channel Note: Interface connection may be omitted.

23 Objects and domains A domain is a set of objects: which UML element can represent ODP domain concept properly? Domain: A set of objects, each of which is related by a characterizing relationship to a controlling object. Three candidates for modeling domain Class: members are parts (classes) Component : members are parts (components) Package: members are any model element.

24 Issue: modeling domain A member may belong to multiple domains, i.e. domains may share the same objects Class: parts can be shared [use of dotted line box] Component: can parts (component) be shared? Package: « import » / « access » may be used to share Our choice in this paper - Package

25 Profile definition (3/3)

26 Example UML 2.0 model: Domain and objects

27 Issue: Correspondence Engineering Viewpoint to Computational Viewpoint Assumption: Each BEO has one to one relationship to corresponding Computational Object (from Engineering to Computational, not vice versa). Correspondence could be expressed as dependency from BEO sub-Package in Engineering Viewpoint Package to Computational Objects in Computational Viewpoint Package in UML The issue How to best express this correspondence in UML CV NV

UML 2.0 profile and models for Technology Viewpoint

29 Major Elements in this viewpoint Technology Object Implementable Standard Implementation IXIT Candidate diagram Deployment diagram

30 Issue: rich set of concepts in UML The issue: extent for defining UML Profile for Technology Viewpoint Since UML 2 provides a similar set of modeling elements e.g. artifact, artifacts, device, document, executable, executionEnvironment, file, library, node, script, source, etc. What is the added value of « TV_Object » other than ODP context, if « TV_Object » is applied to both Node and Artifact? Double stereotype like « TV_Object, artifact » maybe used. Implementable Standard? Maybe as a target of « manifestation » Implementation? Maybe related to software engineering process like the one in OMG ’ s SPEM IXIT? Useful for providing additional information for testing

31 Profile definition

32 Example UML 2.0 model: Nodes and networks

33 Example UML 2.0 model: Node structure

34 Example UML 2.0 model: IXIT

35 Issue: Correspondence Technology Viewpoint to Engineering Viewpoint Each Technology Object has one to one relationship to corresponding Engineering Object. Could be expressed as dependency from Technology Objects in Technology Viewpoint Package to Engineering Objects in Engineering Viewpoint Package. The issue How to best express this correspondence in UML NV TV

Some comments

37 Consideration needed on Consistent modeling Recursive application of viewpoints Choice of consistent base classes Relationship/correspondence (specification)

38 Issue: UML tools UML 2.0 capabilities differ from tool to tool. Different Profile definition mechanisms Different UML 2.0 Implementation levels Different diagramming capabilities Different base class support Different constraint implementation Different OCL support … (Almost) No interoperability for profile definition data Development of profile data for major UML 2.0 tools and making them available, through international collaboration, is expected.

Conclusions

40 One possible use of UML 2.0 or profile demonstrated – We can use UML 2.0 tools to describe ODP specifications, and hope MDA tools to help implement the ODP systems. Consistent and practical modeling approach is important for UML4ODP. Openly available profile definitions are also important.

41 Thank you very much for your attention!