1 / 36

Modeling the ODP Computational Viewpoint with UML 2.0

Modeling the ODP Computational Viewpoint with UML 2.0. José Raúl Romero, Antonio Vallecillo Universidad de Málaga, Spain Dept. Lenguajes y Ciencias de la Computación {jrromero,av}@lcc.uma.es. Agenda. The Reference Model for Open Distributed Processing A (graphical) notation for the ODP CV

jereni
Download Presentation

Modeling the ODP Computational Viewpoint with UML 2.0

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modeling the ODP Computational Viewpoint with UML 2.0 José Raúl Romero, Antonio Vallecillo Universidad de Málaga, Spain Dept. Lenguajes y Ciencias de la Computación {jrromero,av}@lcc.uma.es

  2. Agenda • The Reference Model for Open Distributed Processing • A (graphical) notation for the ODP CV • Modeling the ODP CV with UML 2.0 • Issues for discussion • Conclusions ITU-T SG17 Meeting

  3. Important Acknowledgements • This work has been developed within WG19 of ISO/JTC1/SC7, in the context of the development of ISO/IEC 19793 | ITU-T Rec. X.906: “Use of UML for ODP system specification” • Although the views in this presentation are the authors’ solely responsibility, they could not have been formulated without the previous work and the many hours of detailed discussions with ISO experts on ODP, who have been involved in investigating and addressing the problems of the UML specification of ODP systems. Special mention deserve Akira Tanaka, Peter Linington and Bryan Wood. Disclaimer • This presentation describes work in progress, that may (and will) change as the ISO/IEC Standard 19793 | ITU-T Rec. X.906 is developed. ITU-T SG17 Meeting

  4. The Reference Model for Open Distributed Processing (I) • RM-ODPis a framework for ODP standardization and system specification covering all aspects of distributed systems: enterprise business, system, technology, distribution,… • comprehensive and coherent object-oriented modeling concepts • based on separation of concerns: viewpoint specifications • Transparencies • Common functions • Viewpoints • Different abstractions of the same system • Reflect different concerns • Expressed in terms of specific viewpoint languages • Powerful mechanism for dealing with the complexity of distributed systems ITU-T SG17 Meeting

  5. The Reference Model for Open Distributed Processing (II) Viewpoint languages and notations • ODP Viewpoint languagesare abstract, i.e., ODP does not prescribe any notation for expressing viewpoint specifications • Without aconcrete syntax… • it is difficult to write ODP specifications • there is no tool support • no analysis of the specifications (formal or informal) • the industrial acceptance and application of ODP might be hindered • Formal methodsare convenient for precise/unambiguous interpretation of ODP concepts and specifications (eg. Z, Object-Z, LOTOS, maude, …) • … but traditionally useless We need a general-purpose modeling notation, familiar to developers, easy to learn and to use, with commercial tool support … ITU-T SG17 Meeting

  6. ISO/IEC 19793 | ITU-T Rec X.906:Use of UML for ODP system specification • 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 • Target audiences of ISO/IEC 19793 | ITU-T Rec. X.906 • 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 ITU-T SG17 Meeting

  7. The Reference Model for Open Distributed Processing (III) Enterprise Information Technology Computation Engineering The RM-ODP viewpoints ODP System Business aspects who? why? Information, changes, constraints Hard- and software components That implement the system Configuration of objects interacting at interfaces Mechanisms and services for distribution transparencies ITU-T SG17 Meeting

  8. The Reference Model for Open Distributed Processing (and IV) Computational specifications • The Computational Viewpoint describes the functionality of the ODP system and its environment through the decomposition of the system into objects, which interact at interfaces, in a distribution transparent manner. • A Computational Specification describes the functional decomposition of an ODP system as: • A configuration of computational objects; • The internal actions of those; • The interactions among those objects; • Environment contracts for those objects and their interfaces. ITU-T SG17 Meeting

  9. Graphical notation for the ODP-CV (I) ODP-CV Concepts UML 1.x Approaches Mapping to UML elements Previous approaches • UML 1.4+ was already proposed forODP computational VP modeling: • UML Profile for EDOC (Component Collaboration Architecture – CCA) • Distributed System design within the DSE4DS Project (Akehurst et al.) + CQML (for environment contracts) • Very complete and precise approaches, but … • There is a big gap between the ODP and UML 1.x concepts • Which made UML 1.X proposals too large and complex for a wide industrial acceptance ITU-T SG17 Meeting

  10. Graphical notation for the ODP-CV (and II) ODP-CV Metamodel UML 2.0 Profile for the ODP Computational Viewpoint Mapping to UML elements Unified Modeling Language v2.0 • UML 2.0 provides several improvements to UML 1.x that make it more suitable for modeling the software architecture of large distributed systems • The addition of new diagrams (e.g., interaction overview diagrams, timing diagrams, etc.) and enhancements to the existing ones (e.g., the component diagram) • The influenceofthe mature SDL language and the MSCs • The fully alignment of OCL with UML 2.0 • The enhancement of thelanguage extension mechanisms ITU-T SG17 Meeting

  11. Relationships between UOD, ODP specifications, and UML models ITU-T SG17 Meeting

  12. Modeling the ODP-CV in UML 2.0 (I) The UML 2.0 Profile for the ODP Computational Viewpoint The UML Profile defines the stereotypes, tags and constraints that allow us to use the specific domain terminology The profile presented here serves as input to the WG19 forthcoming standard on ISO/IEC 19793 | ITU-T Rec. X.906: UML for ODP system specifications (2nd CD due next month) ITU-T SG17 Meeting

  13. The Profile is based on a Metamodel for the ODP Computational Viewpoint ITU-T SG17 Meeting

  14. Modeling the ODP-CV in UML 2.0 (II) Computational objects and interfaces ITU-T SG17 Meeting

  15. Modeling the ODP-CV in UML 2.0 (II) Computational objects and interfaces ITU-T SG17 Meeting

  16. Modeling the ODP-CV in UML 2.0 (II) Computational objects and interfaces ITU-T SG17 Meeting

  17. Modeling the ODP-CV in UML 2.0 (II) Computational objects and interfaces ITU-T SG17 Meeting

  18. Modeling the ODP-CV in UML 2.0 (II) Computational objects and interfaces ITU-T SG17 Meeting

  19. Modeling the ODP-CV in UML 2.0 (III) Interactions ITU-T SG17 Meeting

  20. Modeling the ODP-CV in UML 2.0 (III) Interactions ITU-T SG17 Meeting

  21. Modeling the ODP-CV in UML 2.0 (III) Interactions ITU-T SG17 Meeting

  22. Modeling the ODP-CV in UML 2.0 (III) Interactions ITU-T SG17 Meeting

  23. UML Profile (I) ITU-T SG17 Meeting

  24. UML Profile (II) ITU-T SG17 Meeting

  25. UML Profile (III) ITU-T SG17 Meeting

  26. UML Profile (IV) ITU-T SG17 Meeting

  27. Modeling the ODP-CV in UML 2.0 (IV) Specifying ODP systems Component diagramsare used to describe theODP systemStructure • Behaviour is described in terms of: • Interaction models (message passing) • Activity models (sequence, i/o, …) • Statecharts (changes caused by events, …) • Environment contracts are modeled: • using UML restriction mechanisms (OCL, timing diagrams, …) • applying other UMLprofiles (e.g., UML Profile for Modeling QoS Characteristics) ITU-T SG17 Meeting

  28. Modeling the ODP-CV in UML 2.0 (V) Example 1: Structure specification ITU-T SG17 Meeting

  29. Modeling the ODP-CV in UML 2.0 (VI) Example 1: Structure specification ITU-T SG17 Meeting

  30. Modeling the ODP-CV in UML 2.0 (VII) Example 1: Behaviour specification ITU-T SG17 Meeting

  31. Modeling the ODP-CV in UML 2.0 (VIII) Example 1: Behaviour specification ITU-T SG17 Meeting

  32. Snapshot Computational Templates Modeling the ODP-CV in UML 2.0 (IX) Example 2: Structure specification • A multimedia system composed by listeners who want to receive audio frames from an audio streamer (i.e. Internet radio station) • A binding object manages the multicast of audio frames from a audio streamer to its registered listeners. • A service manager object manages the listeners’ selections ITU-T SG17 Meeting

  33. Computational Object Template Modeling the ODP-CV in UML 2.0 (and X) Example 2: Behaviour specification ITU-T SG17 Meeting

  34. Issues for discussion • Differences between the ODP and UML object models • The UML object model assumes that classes are first-class citizens. Objects are instances of these classes. • The ODP model considers objects as first-class citizens. Types are predicates on objects, and classes are collections of objects. • In UML, invariants and operations are owned by individual objects. ODP uses “collective state” for invariants, and “collective behavior” for operation and interaction specifications • UML 2.0 allow semantic variations • Terminology conflicts • ODP object vs. UML object • ODP type vs. UML type • ODP interface vs. UML interface; • ODP class vs. UML class • Structuring rules • In ODP, signals with different causalities can coexist in an interface. UML requires different UML interfaces for signals with different causalities. • ODP computational objects can instantiate interface templates. UML ports cannot be individually instantiated. ITU-T SG17 Meeting

  35. Conclusions • UML 2.0 enables the representation of ODP Computational concepts in a more natural manner than UML 1.5 • There is not a "perfect" match of concepts, but this does not invalidate the profile • The UML 2.0 Profile for the ODP Computational Viewpoint will be discussed during the forthcoming ISO/JTC1/SC7 WG19 meeting in Bari (Italy), 24-28 October, 2005. ITU-T SG17 Meeting

  36. End of Presentation Thank You ! Antonio Vallecillo av@lcc.uma.es http://www.lcc.uma.es/~av ITU-T SG17 Meeting

More Related