Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "UML2 Profiles Proposal"

Line 77: Line 77:
  
 
*Marc-Florian Wendland (Fraunhofer FOKUS)  
 
*Marc-Florian Wendland (Fraunhofer FOKUS)  
*Sebastien Gerard (CEA)
+
*Sebastien Gerard (CEA List)
  
 
=== Initial Committers<br>  ===
 
=== Initial Committers<br>  ===

Revision as of 13:41, 2 April 2012

UML2 Profiles Proposal

An Eclipse MDT Sub Project for a UML2 Profiles Proposal

This proposal is presented in accordance with the Eclipse Development Process and is written to declare the project's intent and scope as well as to solicit additional participation and feedback from the Eclipse community. You are invited to join the project and to provide feedback using the MDT forum (http://www.eclipse.org/forums/index.php/f/110/).


Introduction

The modeling facilities of Eclipse are an essential part of Eclipse’s annual release trains. The Eclipse Modeling Framework and associated projects, like UML2, OCL, QVTo etc., are integrated into several tools both commercial and open source. In particular the UML2 project is one of the most important implementation of the corresponding OMG UML 2.4 specification. Within the Eclipse MDT sub-project further standard implementations are announced, such as the Information Management Metamodel (IMM) or the Business Process Management Notation (BPMN). However, there is no centralized repository to host standardized UML profiles yet. As a result, lots of different and sometimes incompatible implementations of prominent UML profiles have been developed for different Eclipse-based tooling landscapes. This situation is about to be mitigated with the proposed Eclipse UML2 Profiles project as a sub-project of Eclipse MDT.
This document will propose the scope and organization of the project. A project charter will be created to describe in more detail the principles of the project, the roles and responsibilities of its participants, and the development process.

Project Scope

The Eclipse UML2 Profiles project will focus on the implementation and evolution of officially standardized UML profiles, based on the Eclipse MDT UML2 project. This mainly includes, but is not restricted to UML profiles adopted and maintained in particular by the Object Management Group (OMG) such as the Systems Engineering Modeling Language (SysML), UML Testing Profile (UTP) or the UML profile for Modeling and Analysis of Real-Time and Embedded Systems (MARTE).
The objective for establishing such a UML profile repository is twofold:

  1. To provide the Eclipse modeling community and tool vendors with a unique and standard-compliant implementation of UML profiles order to avoid an uncontrolled diversification of profile implementations that might cause technical incompatability among Eclipse-based tools.
  2. The project aims at maintaining each hosted profile’s lifecycle, so that an evolution of a profile within its standardizing authority (e.g. OMG) will be reflected as soon as possible within the repository to guarantee an up-to-date status of the provided profile implementation at any time
  3. To provide a central repository within the Eclipse MDT project to discover and install a UML profile implementations.

Each UML profile implementation would comprise the UML-based model of the profile and its corresponding EMF-based implementation. The UML2 Profiles project should claim to provide both a static and dynamic implementation of a UML profile.

Out of Scope

Clearly out of scope of the UML2 Profiles sub-project is any convenience tooling or graphical support for the profile implementations. This is similar to the scope of the UML2 project, which also provides the EMF-based implementation of OMG’s UML specification solely.
Being vendor-independent is a crucial requirement for a broad acceptance of the hosted UML profiles within the Eclipse modeling community.

Architecture

The Figure 1 depicts the intended role of the UML2 Profiles project within the overall EMF technology stack.

Uml2 profiles achitecture.jpg

Vendors may leverage the profiles hosted in the UML2 Profiles project to build modeling solutions on top of both the UML2 and the UML2 Profiles project.

Relevant UML Profile Standards

The importance of supporting industry-relevant standards is critical to the success of the UML2 Profiles project. The role of the overall Eclipse MDT project in the support of industry standards is to enable their implementation and maintenance within the Eclipse community. The same principle counts for the UML2 Profiles project as a sub-project of Eclipse MDT. In order to increase an early and broad acceptance from the industry, the UML2 Profiles project should concentrate on providing relevant profiles in the realm of Software Engineering at first. The subsequent list shows the UML profiles which are considered to be most relevant to the industry.

Object Management Group (OMG) adopted UML profile

  1. Systems Engineering Modeling Language (SysML)
  2. UML Testing Profile (UTP)
  3. UML Profile for Modeling and Analysis of Real-Time and Embedded Systems (MARTE)
  4. Service-oriented Architecture Modeling Language (SoaML)
  5. Unified Profile for the Dept. of Defense Architecture Framework (DoDAF) and the Ministry of Defence Architecture Framework (MODAF)
  6. UML Profile for CORBA & CORBA Component Model (CCCMP)
  7. UML Profile for Business Process Modeling Notation (BPMN) (close to finalization at OMG)
  8. UML Profile for Modeling QoS and Fault Tolerance Characteristics and Mechanisms
  9. ...

Relations to other Projects

The UML2 Profiles project potentially provides beneficial input for other Eclipse Modeling projects, such as:

  1. UML2 project: Whereas the UML2 project is aiming at providing the Eclipse Modeling community with a standard-compliant implementation of the UML2 specification, including the native UML2 profile mechanism, the implementation of concrete profiles (other than the UML2 standard profile, which is actually part of UML2 itself) is not in the scope of the UML2 project. Developers and user would benefit from the UML2 Profile project, because the would not have to implement standardized profiles theirselves.
  2. Papyrus project: As Eclipse's dedicated rich modeling environment for MOF-based models, Papyrus reuses the implementation of the UML2 project to built a rich modeling features on top of it, including diagrams and profiles. Papyrus would benefit from the UML2 Profile project in a way, so that the developer team would not have to invest resources in the maintainance or development of a standardized UML2 profile. Instead the freed resources might be leveraged to implement graphical add-ons wihtin Papyrus to make the usage of profiles within Papyrus more convenient. Such graphical add-ons might be: dedicated diagrams, new graphical notations, conveniet properties section entries, ...
  3. Amalgam project: Once the UML2 Profile project is constituted and first UML2 profile are released, Amalgam should include those profiles in the Model Discovery UI to make their identification and installation as easy as possible. By default, UML2 profiles should not be installed, since the usage of profiles is mostly depending on a particular task. User would benefit from an integration of UML2 Profiles project and Amalgam project, because they find everything related to the UML2 implementation in the Model Discovery UI of Amalgam.

Interested Parties

  • itemis AG
  • Airbus
  • Ericsson
  • Atos
  • Lockheed Martin
  • Fachhochschule Vorarlberg
  • Softeam
  • sepp.med GmbH

to be completed...


Project Organization

The UML2 Profiles project represents a brand new project within the Eclipse modeling community. In order to keep track of pertinent activities within standards authorities like OMG, all proposal leaders and initial code contributors are member of the OMG or other standardizations and actively involved in the standardization work.
The UML2 Profiles project should be set up with a dedicated web site, mailing list and a versioning repository.

Project Leaders

  • Marc-Florian Wendland (Fraunhofer FOKUS)
  • Sebastien Gerard (CEA List)

Initial Committers

There will be an initial submission of profile implementations being contributed by the project leads.
Fraunhofer FOKUS will contribute the following implementations:

  • UML Testing Profile (UTP)
  • Service-oriented Architecture Modeling Language (SoaML)
  • UML Profile for CORBA Component Model (CCM)
  • UML Profile for Modeling QoS and Fault Tolerance Characteristics and Mechanisms

CEA will provide the following implementations:

  • Systems Engineering Modeling Language (SysML)
  • UML Profile for Modeling and Analysis of Real-Time and Embedded Systems (MARTE)

Mentors

  • Kenn Hussey
  • Cedric Brun


Back to the top