Jump to: navigation, search

Difference between revisions of "Mylyn/Plan/2.0"

m
Line 23: Line 23:
  
 
= Themes =
 
= Themes =
 +
 +
Legend: in progress, <font color=green>completed</font>, <font color=dimgrey>optional</font>
  
 
== Task List ==
 
== Task List ==
Line 28: Line 30:
 
* '''Support date view in Task List.'''  A common way of organizing tasks to work on in the current week is by day.  We should support this by integrating the Task Activity view's date range container presentation with the Task List.  (147084)
 
* '''Support date view in Task List.'''  A common way of organizing tasks to work on in the current week is by day.  We should support this by integrating the Task Activity view's date range container presentation with the Task List.  (147084)
  
* '''Support integration with planning/calendaring tools.'''  Many task repositories have facilities for task planning in the form of milestones, due dates, and other organizations of tasks.  The Task List and Task Editor should support such extensions, for example, allowing the Task List to be organized by milestone.  (Calendaring, privacy controls)  (e.g. 152490).
+
* '''Support integration with planning and calendaring tools.'''  Many task repositories have facilities for task planning in the form of milestones, due dates, and other organizations of tasks.  The Task List and Task Editor should support such extensions, for example, allowing the Task List to be organized by milestone.  (Calendaring, privacy controls)  (e.g. 152490).
 
+
* '''Support working set groupings.'''  A Task List that includes projects from multiple "working spheres" (e.g. Project A, Project B, Personal) can become unwieldy and distracting.  Integration of top-level working sets could address this.
+
  
 
* '''Support task dependencies.'''  Many tasks are related to other tasks, whether it's because they should be worked on in sequence or are subtasks.  We should make these dependencies explicit in the Task List and Task Editor.  (137543)
 
* '''Support task dependencies.'''  Many tasks are related to other tasks, whether it's because they should be worked on in sequence or are subtasks.  We should make these dependencies explicit in the Task List and Task Editor.  (137543)
 +
 +
* <font color="dimgrey">'''Support working set groupings.'''  A Task List that includes projects from multiple "working spheres" (e.g. Project A, Project B, Personal) can become unwieldy and distracting.  Integration of top-level working sets could address this.</font>
  
 
== Task Editing ==
 
== Task Editing ==
Line 38: Line 40:
 
* '''Increase Task Editor information density'''.  The task editor is a very frequent target of interaction, and we need to continue streamlining it.  When opened it should show the user the most relevant information with minimal clicking and scrolling required. ([https://bugs.eclipse.org/bugs/show_bug.cgi?id=158921 158921]).
 
* '''Increase Task Editor information density'''.  The task editor is a very frequent target of interaction, and we need to continue streamlining it.  When opened it should show the user the most relevant information with minimal clicking and scrolling required. ([https://bugs.eclipse.org/bugs/show_bug.cgi?id=158921 158921]).
  
* '''Streamline task creation.''' Make it easier to create tasks, fork them, or promote local tasks to repository tasks.  (154896, 152211)
+
* '''Improve task activity timing.''' We currently have a task activity mechanism, but it is not explicit enough, and does not capture time spent outside of the workbenchIt should also be extensible to OS-specific monitoring. (135668).
  
* '''Provide task workflow mechanism.'''  There are many common workflows, such as commit/complete/deactivate.  We should provide a mechanism for specifying and executing task-related workflows.  This requires direct editing of task data (i.e., without editor submission).  (160780, 124224)
+
* <font color=dimgrey>'''Provide task workflow mechanism.'''  There are many common workflows, such as commit/complete/deactivate.  We should provide a mechanism for specifying and executing task-related workflows.  This requires direct editing of task data (i.e., without editor submission).  (160780, 124224)</font>
  
* '''Improve task activity timing.''' We currently have a task activity mechanism, but it is not explicit enough, and does not capture time spent outside of the workbench.  It should also be extensible to OS-specific monitoring. (135668).
+
* <font color=dimgrey>'''Streamline task creation.''' Make it easier to create tasks, fork them, or promote local tasks to repository tasks. (154896, 152211)</font>
  
 
== Task Repositories ==
 
== Task Repositories ==
  
* '''Make offline cache faster and more robust.'''  The offline cache is currently one large serialized file.  We should make it more robust so that changes to connectors and the framework do not cause the offline data to be cleared.  This should make it possible to put a repository into offline mode permanently, and never lose the task data. (165809)
+
* '''Make offline cache faster and more robust.'''  The offline cache is currently one large serialized file.  We should make it more robust so that changes to connectors and the framework do not cause the offline data to be cleared.  This should make it possible to put a repository into offline mode permanently, and never lose the task data. (165809)</font>
 +
 
 +
* '''Streamline task searching'''.  It is currently impossible to search through local and cached task data.  We could improve the search experience by providing Google-style syntax in the ''Task List'' find box, e.g. severity=critical.  (bug 163341)
  
 
* '''Improve connectivity problem and performance handling.'''  Lack of or degraded connectivity should be transparent, and jobs should be cancellable. (165833)
 
* '''Improve connectivity problem and performance handling.'''  Lack of or degraded connectivity should be transparent, and jobs should be cancellable. (165833)
 
* '''Improve consistency between local and repository tasks.'''  Need to consider how to promote task between local and repository, and whether local tasks should be a kind of repository.  (12431)
 
 
* '''Provide standard XML for for tasks.'''  We should create a canonical and extensible XML for for tasks that we use for retrieving task data.  Connector providers returning this form would not need custom attribute mappings.
 
  
 
* '''Improve synchronization control'''. (offline mode for repositories bug 165809, finer-grained control bug 165473)
 
* '''Improve synchronization control'''. (offline mode for repositories bug 165809, finer-grained control bug 165473)
  
* '''Streamline task searching'''. It is currently impossible to search through local and cached task data.  We could improve the search experience by providing Google-style syntax in the ''Task List'' find box, e.g. severity=critical.  (bug 163341)
+
* <font color=dimgrey>'''Provide standard XML for for tasks.'''  We should create a canonical and extensible XML for for tasks that we use for retrieving task data.  Connector providers returning this form would not need custom attribute mappings.</font>
 +
 
 +
* <font color=dimgrey>'''Improve consistency between local and repository tasks.'''  Need to consider how to promote task between local and repository, and whether local tasks should be a kind of repository.  (12431)</font>
  
 
== Task-Focused UI ==
 
== Task-Focused UI ==
  
 
* '''Provide preview and editing of task context.''' For submitting and retrieving contexts, or wanting to inspect a context for a non-active task, we should provide a preview pane.  This should also support operations such as merge and element deletion.  (bug 107259)
 
* '''Provide preview and editing of task context.''' For submitting and retrieving contexts, or wanting to inspect a context for a non-active task, we should provide a preview pane.  This should also support operations such as merge and element deletion.  (bug 107259)
 
* '''Preserve element identity through refactoring.'''  Currently only the active context participates in refactoring.  We either need to maintain a dependency map to update the element handles of inactive contexts, or migrate them when they are activated, via the refactoring history.  (164243)
 
  
 
* '''Support debugging views'''.  This includes improved filtering of the thread tree, and automatic toggling/loading of breakpoints with task context.
 
* '''Support debugging views'''.  This includes improved filtering of the thread tree, and automatic toggling/loading of breakpoints with task context.
 +
 +
* <font color=dimgrey>'''Preserve element identity through refactoring.'''  Currently only the active context participates in refactoring.  We either need to maintain a dependency map to update the element handles of inactive contexts, or migrate them when they are activated, via the refactoring history.  (164243)</font>
  
 
== General ==
 
== General ==
 
* '''Generalize task and context storage mechanisms.'''  Our API currently specifies files and paths as the storage mechanism, but it should be general, to allow for alternate mechanisms such as server-based storage.
 
  
 
* '''Improve error handling and resolution.'''  When an error happens, we should do automatic duplicate detection, and if no duplicate is found prompt to submit a bug to the failing plug-in.
 
* '''Improve error handling and resolution.'''  When an error happens, we should do automatic duplicate detection, and if no duplicate is found prompt to submit a bug to the failing plug-in.
  
* '''Improve representation of people'''.  Support real names, selecting CCs, content assist for fields with people.  The user's identity should be represented in the UI (e.g. different icon when user appears in the CC list).
+
* '''Generalize task and context storage mechanisms.'''  Our API currently specifies files and paths as the storage mechanism, but it should be general, to allow for alternate mechanisms such as server-based storage.
 +
 
 +
* <font color=dimgrey>'''Improve representation of people'''.  Support real names, selecting CCs, content assist for fields with people.  The user's identity should be represented in the UI (e.g. different icon when user appears in the CC list).</font>
  
* '''Hyperlinking everywhere'''.  Wherever structured elements show up, we should be hyperlinking them (e.g. bug 165827)
+
* <font color=dimgrey>'''Hyperlinking everywhere'''.  Wherever structured elements show up, we should be hyperlinking them (e.g. bug 165827)</font>

Revision as of 14:36, 5 February 2007

This is an early draft and not yet ready for comment.

Milestones

Mylar milestones are released 1 week after Eclipse milestones.

  • 2.0M1: February 16, 2007
  • 2.0M2: March 30, 2007
  • 2.0M3: May 11, 2007
  • 2.0RC1: June 15, 2007
  • 2.0: June 29, 2007

Platforms

  • Eclipse 3.3: Mylar 2.0 and future Mylar releases
  • Eclipse 3.2: Mylar 2.0 will be the the end-of-life for 3.2 branch
  • Requires Java 5 and later

Priorities

Committers will prioritize bugs without external contributions (i.e. patches) in the following order:

  1. Tasks framework & API
  2. Task List and Task Editor UI
  3. Task-Focused UI
  4. Context framework & API
  5. Connector improvements

Themes

Legend: in progress, completed, optional

Task List

  • Support date view in Task List. A common way of organizing tasks to work on in the current week is by day. We should support this by integrating the Task Activity view's date range container presentation with the Task List. (147084)
  • Support integration with planning and calendaring tools. Many task repositories have facilities for task planning in the form of milestones, due dates, and other organizations of tasks. The Task List and Task Editor should support such extensions, for example, allowing the Task List to be organized by milestone. (Calendaring, privacy controls) (e.g. 152490).
  • Support task dependencies. Many tasks are related to other tasks, whether it's because they should be worked on in sequence or are subtasks. We should make these dependencies explicit in the Task List and Task Editor. (137543)
  • Support working set groupings. A Task List that includes projects from multiple "working spheres" (e.g. Project A, Project B, Personal) can become unwieldy and distracting. Integration of top-level working sets could address this.

Task Editing

  • Increase Task Editor information density. The task editor is a very frequent target of interaction, and we need to continue streamlining it. When opened it should show the user the most relevant information with minimal clicking and scrolling required. (158921).
  • Improve task activity timing. We currently have a task activity mechanism, but it is not explicit enough, and does not capture time spent outside of the workbench. It should also be extensible to OS-specific monitoring. (135668).
  • Provide task workflow mechanism. There are many common workflows, such as commit/complete/deactivate. We should provide a mechanism for specifying and executing task-related workflows. This requires direct editing of task data (i.e., without editor submission). (160780, 124224)
  • Streamline task creation. Make it easier to create tasks, fork them, or promote local tasks to repository tasks. (154896, 152211)

Task Repositories

  • Make offline cache faster and more robust. The offline cache is currently one large serialized file. We should make it more robust so that changes to connectors and the framework do not cause the offline data to be cleared. This should make it possible to put a repository into offline mode permanently, and never lose the task data. (165809)</font>
  • Streamline task searching. It is currently impossible to search through local and cached task data. We could improve the search experience by providing Google-style syntax in the Task List find box, e.g. severity=critical. (bug 163341)
  • Improve connectivity problem and performance handling. Lack of or degraded connectivity should be transparent, and jobs should be cancellable. (165833)
  • Improve synchronization control. (offline mode for repositories bug 165809, finer-grained control bug 165473)
  • Provide standard XML for for tasks. We should create a canonical and extensible XML for for tasks that we use for retrieving task data. Connector providers returning this form would not need custom attribute mappings.
  • Improve consistency between local and repository tasks. Need to consider how to promote task between local and repository, and whether local tasks should be a kind of repository. (12431)

Task-Focused UI

  • Provide preview and editing of task context. For submitting and retrieving contexts, or wanting to inspect a context for a non-active task, we should provide a preview pane. This should also support operations such as merge and element deletion. (bug 107259)
  • Support debugging views. This includes improved filtering of the thread tree, and automatic toggling/loading of breakpoints with task context.
  • Preserve element identity through refactoring. Currently only the active context participates in refactoring. We either need to maintain a dependency map to update the element handles of inactive contexts, or migrate them when they are activated, via the refactoring history. (164243)

General

  • Improve error handling and resolution. When an error happens, we should do automatic duplicate detection, and if no duplicate is found prompt to submit a bug to the failing plug-in.
  • Generalize task and context storage mechanisms. Our API currently specifies files and paths as the storage mechanism, but it should be general, to allow for alternate mechanisms such as server-based storage.
  • Improve representation of people. Support real names, selecting CCs, content assist for fields with people. The user's identity should be represented in the UI (e.g. different icon when user appears in the CC list).
  • Hyperlinking everywhere. Wherever structured elements show up, we should be hyperlinking them (e.g. bug 165827)