| <!-- |
| This document is provided as a template along with some guidance for creating |
| your project proposal. This is just a template. Feel free to change it as |
| you see fit (add sections, remove section). We feel, however, that the |
| suggestions represented in this document represent the reasonable minimum |
| amount of information to move forward. |
| |
| Please keep the formatting in this document simple. Please do not edit |
| this document in Microsoft Word as it adds huge piles of markup that make |
| it difficult to restyle. |
| |
| More information is available here: |
| |
| http://wiki.eclipse.org/Development_Resources/HOWTO/Pre-Proposal_Phase |
| |
| Direct any questions about this template to emo@eclipse.org |
| --> |
| |
| <html> |
| <head> |
| |
| <!-- |
| Include the title here. We will parse it out of here and include it on the |
| rendered webpage. Do not duplicate the title within the text of your page. |
| --> |
| |
| <title>Eclipse UML Profiles Repository</title> |
| </head> |
| |
| <!-- |
| We make use of the 'classic' HTML Definition List (dl) tag to specify |
| committers. I know... you haven't seen this tag in a long while... |
| --> |
| |
| <style> |
| dt { |
| display: list-item; |
| list-style-position: outside; |
| list-style-image: |
| url(/eclipse.org-common/themes/Phoenix/images/arrow.gif); |
| margin-left: 16px; |
| } |
| |
| dd { |
| margin-left: 25px; |
| margin-bottom: 5px; |
| } |
| </style> |
| |
| <body> |
| <p> |
| The Eclipse UML Profiles Repository project is a proposed open source project under the |
| <a href="http://www.eclipse.org/projects/project.php?id=modeling">Modeling |
| Top-level Project</a>. |
| </p> |
| |
| <!-- |
| The communication channel must be specified. Typically, this is the |
| "Proposals" forum. In general, you don't need to change this. |
| --> |
| <p> |
| This proposal is in the Project Proposal Phase (as defined in the |
| Eclipse Development Process) and is written to declare its intent and |
| scope. We solicit additional participation and input from the Eclipse |
| community. Please send all feedback to the <a |
| href="http://www.eclipse.org/forums/eclipse.proposals">Eclipse |
| Proposals</a> Forum. |
| </p> |
| |
| <h2>Scope</h2> |
| |
| <!-- |
| All projects must have a well-defined scope. Describe, concisely, what |
| is in-scope and (optionally) what is out-of-scope. An Eclipse project |
| cannot have an open-ended scope. |
| --> |
| |
| <p>The Eclipse UML Profiles Repository 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:</p> |
| <ol> |
| <li>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 incompatibility among |
| Eclipse-based tools.</li> |
| <li>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</li> |
| <li>To provide a central repository within the Eclipse MDT |
| project to discover and install UML profile implementations.</li> |
| </ol> |
| <p>Each UML profile implementation would comprise the UML-based |
| model of the profile and its corresponding EMF-based implementation.</p> |
| |
| <p> |
| <b>Out of Scope</b> |
| </p> |
| |
| <p>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.</p> |
| |
| <h2>Description</h2> |
| |
| <!-- |
| Describe the project here. Be concise, but provide enough information that |
| somebody who doesn't already know very much about your project idea or domain |
| has at least a fighting chance of understanding its purpose. |
| --> |
| |
| <p>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 either already |
| available, such as the Object Constraint Language (OCL) or announced, |
| such as the Semantic Business Vocabulary and Rules (SBVR) 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 UML Profiles Repository project as a |
| sub-project of Eclipse MDT. The proposed project provides |
| implementations of "standard" UML profiles and a repository |
| in/from which to discover/install them.</p> |
| |
| <p>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.</p> |
| |
| <p>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.</p> |
| |
| <p>Object Management Group (OMG) adopted UML profiles</p> |
| <ul> |
| <li>Systems Engineering Modeling Language (SysML)</li> |
| <li>UML Testing Profile (UTP)</li> |
| <li>UML Profile for Modeling and Analysis of Real-Time and |
| Embedded Systems (MARTE)</li> |
| <li>Service-oriented Architecture Modeling Language (SoaML)</li> |
| <li>Unified Profile for the Dept. of Defense Architecture |
| Framework (DoDAF) and the Ministry of Defence Architecture Framework |
| (MODAF)</li> |
| <li>UML Profile for CORBA & CORBA Component Model (CCCMP)</li> |
| <li>UML Profile for Business Process Modeling Notation (BPMN) |
| (close to finalization at OMG)</li> |
| <li>UML Profile for Modeling QoS and Fault Tolerance |
| Characteristics and Mechanisms</li> |
| </ul> |
| |
| <p>Figure 1 depicts the intended role of the UML2 Profiles project |
| within the overall EMF technology stack.</p> |
| |
| <p> |
| <img src="uml2arch.jpg" width="480px" |
| alt="UML2 Profiles Technology Stack" /> |
| </p> |
| |
| <p>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. Additionally, the UML2 Profiles project |
| potentially provides beneficial input for other Eclipse Modeling |
| projects, such as: |
| <ol> |
| <li>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 themselves.</li> |
| <li>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 maintenance or development of a |
| standardized UML2 profile. Instead the freed resources might be |
| leveraged to implement graphical add-ons within Papyrus to make the |
| usage of profiles within Papyrus more convenient. Such graphical |
| add-ons might be: dedicated diagrams, new graphical notations, |
| convenient properties section entries, ...</li> |
| <li>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.</li> |
| </ol> |
| </p> |
| |
| |
| <h2>Why Eclipse?</h2> |
| |
| <!-- |
| Answer these two questions: What value does this project bring to the Eclipse |
| community? What value do you expect to obtain from hosting your project at Eclipse? |
| |
| What value do you get by having your project at Eclipse over and above the value |
| of hosting at Eclipse Labs? |
| --> |
| |
| <p>The Eclipse modeling community has steadily matured to one of |
| the world largest modeling ecosystems for metamodeling and modeling |
| techniques that are based on the Object Management Group's (OMG) |
| Meta-Object Facility (MOF). Several specifications meaningful to that |
| community have already been implemented, maintained and provided under |
| the Eclipse Modeling umbrella, such as EMF (as de facto implementation |
| of MOF), OCL, UML or QVT in the first place.</p> |
| |
| <p>UML itself provides sort of a dedicated metamodeling approach, |
| based on so called UML profiles. The UML profile mechanism has been |
| heavily exploited for standardizing a lot of profiles pertinent to |
| different kinds of systems (service oriented architectures, real time |
| and embedded systems, socio-technical systems, test systems etc.) and |
| to different domain-specific solutions (profile for department of |
| defense, profile for modeling business processes etc.) at the OMG in |
| the last years. The absence of a centralized repository under the |
| Eclipse Modeling umbrella has led to a situation where several |
| different, slightly varying and potentially incompatible |
| implementations of standardized UML profiles have been developed by |
| different users. As a result, the interchange of UML models becomes |
| more and more complicated, even within the boundaries of the Eclipse |
| Modeling ecosystem.</p> |
| |
| <p>There is an urgent need for the Eclipse Modeling project to |
| treat UML profiles, as an important niche in the OMG specification |
| catalogue with a strong relation to industrial needs, in the same way |
| like for pure MOF-based metamodels such as UML, OCL, BPMN, etc.</p> |
| |
| <h2>Initial Contribution</h2> |
| |
| <!-- |
| Projects are expected to arrive at Eclipse with existing code. |
| |
| Describe the existing code that will be contributed to the project. Please provide |
| a couple of paragraphs describing the code with modest detail, including important |
| information like code ownership (who holds the copyright?), and some consideration |
| of community that exists around the code. Include a listing of third-party libraries |
| and associated licenses. |
| --> |
| |
| <p>There will be an initial contribution of profile |
| implementations.</p> |
| <ul> |
| <li>UML Testing Profile (UTP)</li> |
| <li>Service-oriented Architecture Modeling Language (SoaML)</li> |
| <li>Systems Engineering Modeling Language (SysML)</li> |
| <li>UML Profile for Modeling and Analysis of Real-Time and |
| Embedded Systems (MARTE)</li> |
| <li>Deployment and Configuration of Component-based Distributed |
| Applications Specification (DEPL)</li> |
| </ul> |
| <h2>Legal Issues</h2> |
| |
| <!-- |
| Please describe any potential legal issues in this section. Does somebody else |
| own the trademark to the project name? Is there some issue that prevents you |
| from licensing the project under the Eclipse Public License? Are parts of the |
| code available under some other license? Are there any LGPL/GPL bits that you |
| absolutely require? |
| --> |
| |
| <p>None.</p> |
| |
| <h2>Committers</h2> |
| |
| <!-- |
| List any initial committers that should be provisioned along with the |
| new project. Include affiliation, but do not include email addresses at |
| this point. |
| --> |
| |
| <p>The following individuals are proposed as initial committers to |
| the project:</p> |
| |
| <dl> |
| <dt>Marc-Florian Wendland, Fraunhofer FOKUS</dt> |
| <dd>Marc-Florian Wendland will contribute an implementation of |
| the OMG UML Testing Profile (UTP) and the Service-oriented Modeling |
| Language (SoaML) in this new project.</dd> |
| <dt>Remi Schnekenburger, CEA LIST</dt> |
| <dd>Remi Schnekenburger is part of the Eclipse Papyrus |
| development team for several years now. He will provide the |
| implementation of the System Engineering Modeling Language (SysML)</dd> |
| <dt>Chokri Mraidha, CEA LIST</dt> |
| <dd>Chokri Maidrha is part of the Eclipse Papyrus development |
| team for several years now. He will provide the implementation of the |
| Modeling and Analysis of Real-Time and Embedded Systems (MARTE)</dd> |
| <dt>Max Bureck, Fraunhofer FOKUS</dt> |
| <dd>Max Bureck has suggested several patches for known issues |
| mainly in the Eclipse Modeling domain. He will provide the |
| implementation of the Deployment and Configuration of Component-based |
| Distributed Applications Specification (DEPL) |
| </dl> |
| |
| <p>We welcome additional committers and contributions.</p> |
| |
| <!-- |
| Describe any initial contributions of code that will be brought to the |
| project. If there is no existing code, just remove this section. |
| --> |
| |
| <p>The MARTE and SysML profiles are contributions from the Eclipse Papyrus |
| project.</p> |
| |
| <h2>Project Leads</h2> |
| <ul> |
| <li>Marc-Florian Wendland, Fraunhofer FOKUS</li> |
| <li>Sébastien Gerard, CEA LIST</li> |
| </ul> |
| <h2>Mentors</h2> |
| |
| <!-- |
| New Eclipse projects require a minimum of two mentors from the Architecture |
| Council. You need to identify two mentors before the project is created. The |
| proposal can be posted before this section is filled in (it's a little easier |
| to find a mentor when the proposal itself is public). |
| --> |
| |
| <p>The following Architecture Council members will mentor this |
| project:</p> |
| |
| <ul> |
| <li>Kenn Hussey</li> |
| <li>Cedric Brun</li> |
| </ul> |
| |
| <h2>Interested Parties</h2> |
| |
| <!-- |
| Provide a list of individuals, organisations, companies, and other Eclipse |
| projects that are interested in this project. This list will provide some |
| insight into who your project's community will ultimately include. Where |
| possible, include affiliations. Do not include email addresses. |
| --> |
| |
| <p>The following individuals, organisations, companies and projects |
| have expressed interest in this project:</p> |
| |
| <ul> |
| <li>itemis AG</li> |
| <li>Airbus</li> |
| <li>Ericsson</li> |
| <li>Atos</li> |
| <li>Lockheed Martin</li> |
| <li>Fachhochschule Vorarlberg</li> |
| <li>Softeam</li> |
| <li>sepp.med GmbH</li> |
| <li>Eclipse Papyrus</li> |
| <li>Eclipse UML2</li> |
| </ul> |
| |
| <h2>Project Scheduling</h2> |
| |
| <!-- |
| Describe, in rough terms, what the basic scheduling of the project will |
| be. You might, for example, include an indication of when an initial contribution |
| should be expected, when your first build will be ready, etc. Exact |
| dates are not required. |
| --> |
| |
| <p>All above mentioned profile implementations are planned to be |
| available from the beginning of November, 2012 at the latest.</p> |
| |
| <h2>Changes to this Document</h2> |
| |
| <!-- |
| List any changes that have occurred in the document here. |
| You only need to document changes that have occurred after the document |
| has been posted live for the community to view and comment. |
| --> |
| |
| <table> |
| <tr> |
| <th>Date</th> |
| <th>Change</th> |
| </tr> |
| <tr> |
| <td>26-June-2012</td> |
| <td>Document created</td> |
| </tr> |
| <tr> |
| <td>18-July-2012</td> |
| <td>Added Project Lead; Updated Image</td> |
| </tr> |
| </table> |
| </body> |
| </html> |