This proposal has been approved and the Eclipse Papyrus for xtUML project has been created.
Visit the project page for the latest information and development.

Papyrus for xtUML

Wednesday, April 20, 2016 - 11:21 by Cortland Starrett
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 community. Please login and add your feedback in the comments section.
Parent Project
Proposal State
Created
Background

Papyrus for xtUML is the Eclipse Foundation evolution of the formerly (pre-2014) proprietary version of BridgePoint.  xtUML is a dialect of UML that supports precise model editing, execution and translation for complex cyber-physical systems.  Key developers have joined with PolarSys and the Papyrus Industrial Consortium to collaborate on establishing a portfolio of modeling tools oriented toward embedded control, high-level systems, etc.  Papyrus will provide a common platform layer on top of Eclipse.

The Papyrus-xtUML source code has been released under Apache 2.0 since November of 2014 (with parts opened up 2 years before that).  The source code resides on github.com/xtuml in a few different repositories.

A substantial user base exists in industry and academia in several countries around the world.  The largest concentration of users are in Sweden, Japan and the United Kingdom.  100s of person years of application model IP exist as xtUML models.

References within Eclipse, PolarSys and Papyrus IC include Gaël Blondelle, Francis Bordeleau, Charles Rivet, Maximillian Koegel, Bengt Kvarnstrom.

See xtuml.org for more information.

Scope

Papyrus-xtUML provides a dialect of UML modeling based upon a published and accepted methodology called Shlaer-Mellor.  The method and tool has been evolving since the 1990s.  Papyrus-xtUML forms a dialect of UML that fits nicely as a peer to UML-RT (Papyrus-RT), SysML (Papyrus-SysML) and other Papyrus UML/SysML derivatives.  Papyrus-xtUML has differentiated strength in the areas of precise semantic modeling, execution and translation.

Papyrus-xtUML currently has the following features:  xtUML editor, interpretive model execution ("Verifier") and several model compilers including C, C++, SystemC, Java, HTML, DocBook.

Description

Papyrus-xtUML is a tool that supplies the capability to edit, execute and translate xtUML models.  Executable, translatable UML (xtUML) is an extension to UML based upon the Shlaer-Mellor Method of Model-Driven Architecture (MDA), which supports a powerful approach to Model-Driven Development (MDD). Papyrus-xtUML provides the system design community with access to xtUML editing, execution and translation capabilities, along with a forum to advance the use of this methodology.

Papyrus-xtUML specializes in editing UML such that platform-independent models are precisely defined to enable interpretive execution (early test) from the first edit.  The execution technology is built-in to the editor and runs partial models without compilation.  Model compilers translate xtUML into target-specific code for various architectures in C, C++, SystemC, Java (and other programming languages) and into documentation in HTML, DocBook and other formats.

Papyrus-xtUML collaborates within the Papyrus Industrial Consortium and PolarSys which pursue providing a cohesive solution set for systems modeling for complex cyber-physical systems.

Why Here?

Papyrus-xtUML helps round out a portfolio of solutions within PolarSys and Papyrus Industrial Consortium.  The synergy and collaboration of the technologies and communities works together to increase and improve each part.

  • xtUML brings a strong and committed user base to PolarSys and Papyrus IC (and to the Eclipse Foundation)
  • xtUML offers distinctive technologies around model execution and model translation
  • Eclipse, PolarSys and the Papyrus Industrial Consortium bring common technology to xtUML
  • Eclipse, PolarSys and the Papyrus Industrial Consortium represent ideal governance for xtUML
Future Work

Upcoming features for Papyrus-xtUML fall in three categories:

  • issues that critical path users need fixed and are providing or paying to have provided
  • features and migration of models for users migrating to Papyrus-xtUML
  • convergence of Papyrus-xtUML with the Papyrus Platform and to be more cohesive with the Papyrus Industrial Consortium

Examples of these include:

  • action language editor with model-aware completion and assistance
  • migration from GEF to Papyrus Platform graphics
  • support of by-reference parameter passing between elements in the model
Project Scheduling

Papyrus-xtUML is presently released as version 5.3.4 on Eclipse Mars.

The initial contribution is ready now as far as is known.

One Fact Inc currently packages and tests a special release twice per year and sells support contracts around this release.  We would anticipate continuing with the same sort of plan.

Interested Parties

PolarSys Working Group

Papyrus Industrial Consortium

Francis Bordeleau - Ericsson

Charles Rivet - Zeligsoft

Maximillian Koegel - EcipseSource

Bengt Kvarnstrom - Saab

Stefan Landemoo - Saab

Per Johnsson - Saab

Anders Eriksson - Saab

Yuki Tsuchitoi - Fuji-Xerox

Dr. Jan Köhnlein - TypeFox

Initial Contribution

The initial contribution exists in repositories under https://github.com/xtuml.

This includes all of the following:

  • xtUML editor:  UML diagrams editing capability with constraints to precisely model semantics following the xtUML paradigm
  • Verifier:  xtUML interpretation and debug (start, stop, single-step, watch, etc) environment for running xtUML models
  • model compilers:  C, C++, SystemC, Java and documentation translators that convert xtUML into these various forms
  • models:  example and real application models developed in the open
  • documentation and training materials including written and video content

All intial contribution is licensed under Apache 2.0 and Creative Commons 1.0.

 

Source Repository Type