TaskDashboardDesignSpec

Revision as of 16:36, 18 April 2012 by RichGunther (Talk | contribs)

Contents

Description of this document

This document is intended to serve as a specification for the look and feel, the features and functionality, and the user interaction with the proposed Task Dashboard window in Netbeans.

Look and Feel

The base look and feel of the Task Dashboard is shown here:

Media:Task_Dashboard_MarkedUp.PNG

User Interface Description

General

The general User Interface is that of a dockable window. The intent is to provide a common location where developers can organize, access, and manipulate issues coming out of various Issue Trackers like Jira or Bugzilla.

Description of UI Aspects

Here are descriptions of the UI Aspects shown in the mockup above, based on the numerical callouts shown therein:

1.) Categories: Categories are user-created buckets into which individual issues can be placed. These can be for priority, due date, area of functionality, severity, or any other delineation that the user wants to segment their issues by. Once categorized, issues will appear in this area until the user removes them, or they can be filtered out once closed.

2.) Repositories: Each Issue Tracker which is registered in NetBeans is given a top-level node in the Repositories tree. While it is assumed there might only be one or two, the proposal is to break it up by connection. There is also the notion of local tasks, that is, tasks that are created by the developer outside of any given repository, and kept private. More details on local tasks are here.

3.) Queries: For each repository, there are various subnodes which map to a named/saved query upon that Issue Tracker. Users might set up a few named queries that organize their issues by various parameters and attributes. In each case, the Dashboard shows the total number of results as well as the number of issues that have changed in some way. These changed issues are shown at the top in blue text. Each issue is then shown as a subnode to the query and can be clicked to show or edit its details, or can be added to a category from here.

4.) Repository Operators: There are four functions related to repositories. From right to left, they are:

  • Create New Task: creates a new issue using the parameters specific to the given repository.
  • Search in Repository: gives ability to query the repository. From here, you can create new named queries.
  • Refresh: re-runs all named queries to update results and status.
  • Close: closes the connection to the issue repository and removes it from the tree.

5.) Filtering: There are two ways to globally filter the task dashboard. These filters will apply to the issues that appear both in Categories as well as in the Repository Query Results. The first filter is a dynamic text filter, shown as a text box. As you enter letters into this textbox, they are highlighted in relevant results, and non-matching results disappear. The numbers for results and changed also update to show the number of matches based on the current query. The second capability is a dropdown filter that gives the following options:

Media:Filter_Menu.png

Notes on "Status": The idea behind status is that there will be the ability to specify, on a repository-by-repository basis, which statuses equate to "open" and which to "closed", since different Issue Trackers have different notions of these statuses (e.g. "resolved", "fixed", "completed).

6.) Query Results: The query results show up both as summary text (i.e. the number of results and number of changed issues), as well as individual nodes that can be opened, edited, and/or categorized. Users can also schedule an issue, that is, give it a due date which can be used to organize or filter it later. It is also possible to right-click the Repository and group results by relevant attributes like priority:

Media:Group_Priority.png

7.) When issues, categories, and repositories are "closed", a new top-level node called "Closed" shows up here, and will be toggled closed by default. This is to support the notion of Issue Tracker connections that are used for one project but then not for the next, for Categories that a developer wants to get out of their hair, or when issues are marked as closed.


8.) New Category: New Categories can be created from here. Clicking this button launches a dialog that allows the user to provide a new name for their category.

9.) New Repository: Launches the new Issue Tracker dialog for adding a new repository connection.

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo