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

Mylyn/Modeling/ProjectProposalDraft

This is a Draft Proposal -- Comments welcome and encouraged!

The Mylyn Context Modeling project is a proposed open source project under the Mylyn Context sub-project within the Mylyn top-level project.

Background

The Eclipse Mylyn and Modeling projects are two of the most innovative and widely used projects within Eclipse. They both have strong communities and high-quality toolsets. The two technologies are also strongly complimentary. Modeling provides high-level, concept-centeric tools for representing and working with complex information, and Mylyn provides user-focussed, task-centric tools for organizing and contextualizing complex information. The aim of this project is to literally bridge the two technologies, creating a unique toolset for high-level, task-centric interaction with complex information.

Mylyn Context Modeling will bring the productivity, integration and traceability benefits of Mylyn to Eclipse Modeling. These tools also address one of the most significant challenges to the adoption of Model-Driven Software Development (MDSD) approaches in general. Models are often depicted using visual artifacts such as UML. While these approaches have real advantages over text based representations in depicting complex relationships between entities, they also have significant disadvantages that have limited the adoption and usefulness of diagram-based modeling tools. First, diagrams tend to be information sparse -- it often takes considerably more screen space to display the same amount of information. Ideally, we would like diagrams to be able to adapt themselves to depict just those things that we are interested in in order to make the best use of available space. Second, and more significantly, precisely because visual models capture relationships between entities so well, they tend to be deeply intertwined, making it difficult to pick out just those nodes and relationships relevant to a particular task from within the surrounding clutter. The Mylyn Modeling diagram tools address this issue in a novel way, by hiding those diagram elements that are not relevant to the task at hand and then revealing those elements progressively as the user draws nearer to them in relationship space.

Scope

  • The initial scope of this project is to bring Mylyn task-focus support to:
    • Diagram editors
    • EMF generated editors
    • Navigators
    • Outlines
    • Other modeling views
  • The scope will likely expand to include other modeling technologies,which could include:
    • Graphiti based editors and views supporting non-EMF based tools.
    • Forms-based editors using EEF
    • Textual models using XText
  • While the project focus is on "Mylyn for Modeling", we may also consider the other side of the equation, that is "Modeling for Mylyn". There is great potential in enriching Mylyn using modeling approaches and this project could provide a home for some of these efforts.

Initial Contribution

Provenance

The initial contribution work was developed by Tasktop Technologies and sponsored by Ericsson in the context of the Modeling Platform Industrial Working Group It is publicly available under the EPL v1.0 and pending contribution is hosted at https://github.com/MilesParker/mylyn.incubator.

Components

The initial contribution is a full-featured Mylyn bridge. It provides a focused mode for diagrams that shows only the elements related to the task-at-hand, dramatically reducing information overload for engineers working on large models. In addition, the task-focused interface extensions provide Mylyn’s one-click multitasking facilities for working with models, ensuring that developers can instantly recover from interruptions, and share model-specific expertise, when working with models in addition to what Mylyn already provides for engineers working with source code. (See details here.) Currently supported modeling tools include:

  1. Ecore Models within the Ecore Tools diagram editor and project explorer extensions.
  2. UML Class models using the Papyrus modeling tools.

The contribution also provides support at the API level allowing Mylyn for Modeling consumers to implement their own Mylyn support for existing GMF editors. (See details here.)

  1. Arbitrary domain models, including EMF-based models.
  2. Generic GMF-based diagrams.

Quality

The initial contribution has been developed using the quality standards and development processes of existing Mylyn projects, under current Mylyn Context project leadership. It has undergone significant, if not exhaustive, testing.

Plan

Initial Release

On project approval, we will submit org.eclipse.mylyn.modeling version 0.9.0 containing all of the features listed above.

Future Work

There are many potential opportunties for building capabilities on top of the existing infrastructure. Please see the project wiki for more details.

Organization

Initial Committers

  • Miles Parker (for Tasktop Technologies)

Interested Parties

We're collecting this now. Please let us know ASAP if you'd like to be included. Or just add your name here!

Related Projects

Most of the modeling related projects have some potential connection to this effort, but the following projects are the most obvious sources for potential collaboration:

  • Eclipse Modeling Framework (EMF)
  • Graphical Modeling Project (GMP) including GMF and Graphiti.
  • Ecore Tools
  • Papyrus
  • EMF Compare
  • EMF Query, Validation and Transaction
  • Eclipse Editing Framework (EEF)
  • Connected Data Objects (CDO)
  • Textual Modeling Framework (Xtext)

Mentors

TBD -- Volunteers?

Developer Community

There has been strong interest in the modeling community for this toolset and we anticipate that this project will have the participation and support of many members of that community, especially those who are involed in building tools for collaborative modeling. Of course there is strong interest in the project from within the Mylyn community as well. Non-Eclipse committers have also expressed interest in extending the toolset to other modeling domains. We encourage active participation from all users through direct contributions to the project as well as additonal consumer implementations and extensions within the modeling project and elsewhere.

User Community

The potential user community is quite large, extending to anyone who develops EMF Ecore and UML models using Eclipse tools. We've been actively promoting use of the tool through blogs, videos and other media and will continue to do so.

Back to the top