Eclipse Papyrus – Edit models based on UML and related languages

Eclipse Papyrus provides an integrated, user-consumable environment for editing models based on UML and other related languages such as SysML. This is an industrial-grade open source model-based engineering tool.

Papyrus for UML notably features diagram editors for UML 2 diagrams, rich model editing facilities, and the glue required to integrate with other model-based tools.

It also offers a very advanced support of UML profiles that enables users to define UML-based domain-specific modeling languages. To complement the UML profiles support, Papyrus provides very powerful customization mechanisms which can be leveraged to create user-defined Papyrus perspectives and give it the same look and feel as a native DSL editor.

Papyrus is designed to be easily extensible as it is based on the principle of UML Profiles.

Features include:

  • Implements 100% of the OMG specification.
  • Supported diagrams:
    • Activity Diagrams – displays the sequence of activities.
    • Class Diagrams – shows the building blocks of any object-orientated system.
    • Communication Diagrams – an interaction diagram that shows similar information to sequence diagrams but its primary focus is on object relationships.
    • Component Diagrams – illustrates the pieces of software, embedded controllers, etc., that will make up a system.
    • Composite Structure Diagrams – shows the internal structure of a classifier, including its interaction points to other parts of the system.
    • Deployment Diagrams – models the run-time architecture of a system.
    • Interaction Overview Diagrams – a form of activity diagram in which the nodes represent interaction diagrams. Interaction diagrams can include sequence, communication, interaction overview and timing diagrams.
    • Package Diagrams – used to reflect the organization of packages and their elements.
    • Profile Diagrams – structure diagram which describes lightweight extension mechanism to the UML by defining custom stereotypes, tagged values, and constraints.
    • Object Diagrams – use a subset of the elements of a class diagram in order to emphasize the relationship between instances of classes at some point in time.
    • Sequence Diagrams – a form of interaction diagram which shows objects as lifelines running down the page, with their interactions over time represented as messages drawn as arrows from the source lifeline to the target lifeline.
    • State Machine Diagrams – models the behaviour of a single object, specifying the sequence of events that an object goes through during its lifetime in response to events.
    • Timing Diagrams – used to display the change in state or value of one or more elements over time.
    • Use Case Diagrams – captures the requirements of a system. Use cases are a way of communicating with users and other stakeholders what the system is intended to do.
  • Supported tables:
    • Class tree table.
    • Generic table.
    • Generic tree table.
    • Relationship generic matrix.
    • View table.
    • Option to create a new table from the configurations catlog.
  • Implemented standards: UML 2.5, SysML 1.1 & 1.4, fUML 1.2.1, ALF 1.0.1, MARTE 1.1, BPMNProfile 1.0, BMM 1.3, SMM 1.1, PSCS 1.0, PSSM 1.0b, FMI 2.0 and ISO/IEC 42010.
  • Domain Specific – address any specific domain, every part of Papyrus may be customized: UML profile, model explorer, diagram notation and style, properties views, palette and creation menus, and much more.
  • Papyrus enables model-based techniques: model-based simulation, model-based formal testing, safety analysis, performance/trade-offs analysis, and architecture exploration.
  • Modular extensions:
    • Papyrus Layers – layers are used to accurately control what is shown by a diagram. A layer is used to associate some properties (graphical or domain) to some views (class, package).
    • Papyrus DSML Validation – component to generate a validation plug-in from a UML Profile.
    • Moka – a Papyrus module for execution, animation and debugging of UML models.
  • Cross-platform support – runs on Linux, Mac OS X, and Windows operating systems. This is a Java application.

Website: www.eclipse.org/papyrus
Support: User Guide, Wiki, Forum
Developer: Commissariat à l’Énergie Atomique (CEA-List), Atos, Cedric Dumoulin (LIFL)
License: Eclipse Public License v1.0

Eclipse Papyrus

Eclipse Papyrus is written in Java. Learn Java with our recommended free books and free tutorials.

Return to Unified Modeling Language Tools Home Page


Make a Donation
Click the button to make a donation via flattr. Donations help us to maintain and improve the site. You can also donate via PayPal.


Read our complete collection of recommended free and open source software. The collection covers all categories of software.

The software collection forms part of our series of informative articles for Linux enthusiasts. There's tons of in-depth reviews, alternatives to Google, fun things to try, hardware, free programming books and tutorials, and much more.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.