blob: 916027739c2a19054c9c5bffc6c721cc0f494410 [file] [log] [blame]
<!--
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>Model Focusing Tools</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 Model Focusing Tools project is a proposed open source project under the <a
href="http://www.eclipse.org/projects/project_summary.php?projectid=mylyn.context">Mylyn Context 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>Background</h2>
<p>
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. Modeling provides high-level,
concept-centeric tools for representing and working with complex
information, and Mylyn provides user-focused, task-centric tools for
organizing and contextualizing complex information. The aim of this
project is to bridge the two technologies, creating a unique toolset
for concept and task-focused interaction with complex information. The
project brings the productivity, integration and traceability
benefits of Mylyn to Eclipse Modeling.
</p>
<p>
The tools provided by the project also address one of the most
significant challenges to the adoption of Model-Driven Software
Development (MDSD). Models are often represented in diagram
form. Diagrams are much better at depicting complex relationships
between entities than are traditional text-based approaches. But they
have significant disadvantages as well. First, because visual models
capture relationships between entities so well, those relationships
tend to be deeply intertwined, making it difficult to pick out
immediately relevant nodes and relationships from the surrounding
clutter. Second, despite conventional wisdom, diagrams tend to be
information sparse. It can take far more screen real-estate to display
the same information as in text. Ideally, diagrams could self-adapt to
depict just the interesting things, making the best use of available
space. In the initial implementation we mainly tackle the first part
of this challenge. Diagram elements that are not relevant to the task
are hidden and then revealed progressively as the user draws closer to
them in information space.
</p>
<h2>Scope</h2>
<p>
The scope of this project is to bring Mylyn's task-focused interface
to modeling tools:
</p>
<ul>
<li>Diagram editors, such as for Ecore and UML models</li>
<li>Model Navigators</li>
<li>Model Outlines</li>
<li>EMF generated editors</li>
<li>Other modeling views</li>
</ul>
<p>
The scope expands to other modeling technologies as well, which could include:
</p>
<ul>
<li>Graphiti based editors and views supporting non-EMF based tools</li>
<li>Forms-based editors using EEF</li>
<li>Textual models using XText</li>
</ul>
<p>It is out of scope to provide integration of modeling
technologies for other Mylyn projects.</p>
<!--
<h2>Description</h2>
-->
<!--
<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?
-->
<h2>Initial Contribution</h2>
<p>
The initial contribution work was developed by <a href="http://tasktop.com" class="external text" title="http://tasktop.com" rel="nofollow">Tasktop Technologies</a> and sponsored by <a href="http://www.ericsson.com/" class="external text" title="http://www.ericsson.com/" rel="nofollow">Ericsson</a> in the context of the <a href="http://wiki.eclipse.org/ModelingPlatform" class="external text" title="http://wiki.eclipse.org/ModelingPlatform" rel="nofollow">Modeling Platform Industrial Working Group</a> It is publicly available under the EPL v1.0 and pending contribution is hosted at <a href="https://github.com/Tasktop/Mylyn-Context-Modeling" class="external free" title="https://github.com/Tasktop/Mylyn-Context-Modeling" rel="nofollow">https://github.com/Tasktop/Mylyn-Context-Modeling</a>.
</p>
<h3>Components</h3>
<p>
The initial contribution is a full-featured Mylyn bridge for EMF. 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 <a href="http://wiki.eclipse.org/Mylyn/Context/Modeling_Bridge#User_Guide"
class="external text"
title="http://wiki.eclipse.org/Mylyn/Context/Modeling_Bridge#User_Guide"
rel="nofollow">for details</a>). Currently supported modeling tools
include:
</p>
<ol>
<li>Ecore Models within the Ecore Tools diagram editor and project
explorer extensions.</li>
<li>UML Class models using the Papyrus modeling tools.</li>
</ol>
<p>
The contribution also provides support at the API level allowing
integrators to implement their own Mylyn support for existing Ecore
models and GMF editors
(see <a href="http://wiki.eclipse.org/Mylyn/Context/Modeling_Bridge#Integrating_Mylyn_for_Modeling_with_custom_GMF_editors">for details</a>). Current service provider interfaces
are extensible for:
</p>
<ol>
<li>Arbitrary domain models, including EMF-based models.</li>
<li>Generic GMF-based diagrams.</li>
</ol>
<p>
The initial contribution has been developed using the conventions and development process of the Mylyn Context project.
</p>
<h2>Legal Issues</h2>
The initial contribution is licensed under the EPL. We don't expect
any problems during the IP review.
<h2>Committers</h2>
<p>The following individuals are proposed as initial committers to the project:</p>
<dl>
<dt>Shawn Minto, Tasktop Technologies (Lead)</dt>
<dd>Shawn is the lead of the Mylyn Context project.</dd>
<dt>Benjamin Muskalla, Tasktop Technologies</dt>
<dd>Benjamin provided a proto-type of the initial contribution.</dd>
<dt>Miles Parker, Individual</dt>
<dd>Miles implemented the majority of the initial contribution.</dd>
<dt>Steffen Pingel, Tasktop Technologies</dt>
<dd>Steffen provided input to the inital contribution and will
provide release engineering support for the project.</dd>
<dt>Carsten Reckord, Yatta Solutions</dt>
<dt>Manuel Bork, Yatta Solutions</dt>
<dd>Carsten and Manuel are experts for focusing models and have already
integrated the code that will be submitted as the initial contribution
into one of their commercial Eclipse-based applications.</dd>
<dt>Andreas Scharf, University of Kassel</dt>
<dd>Andreas was heavily involved in implementing the integration for the
Yatta Solutions tools.</dd>
</dl>
<p>We welcome additional committers and contributions.</p>
<h2>Mentors</h2>
<p>The following Architecture Council members will mentor this
project:</p>
<ul>
<li>Mik Kersten</li>
<li>Steffen Pingel</li>
</ul>
<h2>Interested Parties</h2>
<p>The following individuals, organisations, companies and projects have
expressed interest in this project:</p>
<ul>
<li>Tasktop Technologies</li>
<li>Obeo</li>
<li>Itemis</li>
<li>Yatta Solutions</li>
</ul>
<h2>Project Scheduling</h2>
<p>
On project approval, we will submit org.eclipse.mylyn.modeling version
0.9.0 containing all of the features listed above.
</p>
<ol>
<li>0.9 - March 2012 (Aligned with Mylyn 3.7)</li>
<li>1.0 - June 2012 (Aligned with Mylyn 3.8, Juno)</li>
</ol>
<h3>Future Work</h3>
<p>
There are many potential opportunities for building capabilities on top of the existing infrastructure. Please see the project wiki for more details.
</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>8-November-2011</td>
<td>Added committer Andreas Scharf</td>
</tr>
<tr>
<td>3-November-2011</td>
<td>Added committers Carsten Reckord, and Manuel Bork</td>
</tr>
<tr>
<td>18-October-2011</td>
<td>Document created</td>
</tr>
</table>
</body>
</html>