logo.gif

     

TaskHeap User Manual

Introduction:

TaskHeap is a tool for workgroup task management. Think of it as a shared outline providing a common reference for everything going on in a project.

A tutorial heap demonstrating basic functionality is automatically created for you when you sign up. The tutorial takes only a few minutes to complete and will familiarize you with basic TaskHeap functions.

Motivation:

TaskHeap was created to address the needs of distributed teams working on dynamic projects where a dedicated project manager may or may not be available. In these situations simple "to do" lists fail to provide adequate overview, traditional project management techniques tend to require too much overhead to be effectively maintained, and incident tracking systems may not adequately support planning structure. TaskHeap provides a unique blend of capabilities that has been developed and proven through actual project work.

The primary goals of TaskHeap as a tool are to

  1. Provide a consistent common reference view of the state of a project without excessive maintenance effort.

  2. Enable easy capture of new work definitions as they occur, and support project planning.

  3. Facilitate analysis of project evolution over time, and enable re-use of project knowledge.


Features:

  • Work item triage: New work is created within Immediate, Near or Future to automatically provide basic project prioritization on an ongoing basis.
  • Hierarchical task organization: Work items are grouped into plans to create a work breakdown description.
  • Time rollups: Remaining work and total work time is calculated based on the outline. Plans can calculate sequences of work items or concurrent parallel work.
  • Deadlines: Work items can have fixed deadlines or deadlines relative to other work or the heap as a whole.
  • Activity chromacoding: Recent changes are color coded to highlight activity:
      modified within past 24 hours
      modified within 2 days
      modified within 7 days
      modified within 14 days
      modified within 30 days
      last modified over 30 days ago
  • View filtering: The heap can be depth filtered to show only the top level plans, or you can drill down into a plan to focus on work details. You can also show only remaining work.
  • Individual assignment: Work items can be assigned to a specific person. Work assigned to you is indicated so you can see which work items are yours.
  • Role responsibilities: Work assigned to a general role which falls under your assigned responsibilities is indicated so you can see what work items you are generally responsible for.
  • Reference document: The heap is published to a single web page for general reference. The page can be downloaded for offline reference.

Associating other users:

You allow other TaskHeap users to access one of your heaps by creating a heap association for them. The association maps their account to your heap with the access you specify.

Creating a heap association is by invitation. As a heap admin, you create a new association specifying the email address of the person you want to invite. After they log in to their TaskHeap account with a matching email address, they can access your heap through the new association you have set up. Once a heap is accessed via a new association, that invitation is automatically accepted.

To remove an association, change the access to none.


Linking to information:

To provide a link to an external document, enter the URL directly into the description. So for example text like

    http://www.mysite.com/mydoc.pdf
will be translated into a hyperlink in the display. It is recommended that you set up a discussion group for your heap using your favorite online group service. By including the URL for a discussion thread within the work item description you can reference additional information or uploaded files.

When you click on an item in the heap overview, the URL that's displayed can be used to uniquely identify that work item either from another item or an outside document.


Fractional or ongoing tasks:

Fractional hour time estimates are not supported in TaskHeap, so for example it is not possible to enter a value of "0.5" as a time estimate for a task. The reasoning behind this is twofold:

  1. Even integer hours are easier to read and manage
  2. Heaps full of tiny tasks are harder to manage

But tiny tasks certainly do exist, and often they need to be recorded. The main strategy for handling this is to create a general task and then write down each of the tiny tasks within the work description for it. For example the description of a task to add a new field to an existing struct might say "add field definition, update unit test, verify and deploy to staging server". Each step in the work description could be thought of as a separate 10-20 minute task, but to reduce overall heap complexity they are gathered together into a single work item.

Tracking ongoing work can be handled in a similar fashion. Create a general task where the description and time estimate are updated on an ongoing basis as needed. For example a planned development phase might include a "bug fixes" task whose description is updated as needed during that development phase. The task is marked as finished when the phase completes and another general task is opened for the next phase. For planning these placeholder tasks can be used to capture overhead work and increase time estimate accuracy.

Reducing clutter:

As your project moves forward, the finished work starts to take up a lot of screen space. Hiding this work gets it out of your way while still allowing you to go back and reference it if you need to. To hide some finished work create a hidden Plan to hold it:

  1. Create a plan called "Archived work" or whatever name you want, and set the visibility to "hidden". Your new hidden plan will not show up in the heap display, but you can get to it by clicking on its parent plan, then following the arrows through to the actual Plan display and from there to your hidden plan.
  2. While viewing your hidden plan, click the "Set As Current" button to select your hidden plan as the place to move things to.
  3. Use the arrows on the main heap display to move older work into your hidden plan to reduce clutter.

External Plans:

If part of your project depends on work being done in another project, you can represent the outside project work in your own heap using an External Plan. Please note that External Plans consume system resources as they are checked periodically by the system.

An External Plan is a reference to a Plan in another heap. To create an External Plan you will need access to the published heap you are referencing, so have that URL, username and password handy. Then

  1. Select the plan from your own heap overview that will hold the external plan. From the summary display click the "Edit Component" button.
  2. Under the components field, click the "New" button. Choose "External Plan" as the type of plan component and click "ok".
  3. Fill out the name and description fields, then fill out the URL, username and password fields for the published heap. For the sourceID, use out the uniqueID of the Plan from the published heap that you want to reference. If you select the plan from the published heap, this is the number at the end of the URL.
  4. Click save to record your External Plan. The time estimate for the External Plan will be updated according to the refresh interval you specified.

Parallel work:

If your project has several areas of work going on at the same time, then you want the estimated completion to be calculated from the maximum time across these ongoing efforts rather than the total time that would occur if the work items were done one after the other.

To reflect parallel efforts, create a Plan that holds the parallel work items, and set the execution to "parallel" rather than "sequential". This tells the rollup calculations to use the maximum time of the contained work items, rather than the sum total when calculating the estimated completion time. The total time in hours for the project remains the same.


Task Types and Phases:

TaskHeap provides work classifications as Task Types, with completion stages defined as Task Phases. The predefined "to do", "development", and "bug" types are adequate for many things, but your project can also define additional types with their own completion steps.

When defining a custom type, first consider the phases it will have. It is recommended that any type you create should include the "finished" and "closed" phases, since these are referenced by the time calculation to indicate a task whose time no longer contributes to the estimated completion. For consistency, you may also want to have the initial phase be "pending", although this is not required. When you have determined which phases your custom type should have, create any new phases you need using the "Task Phases" tab on the Resources screen.

Once your phases have been created, use the "Task Types" tab on the Resources screen to create your new custom type. Use the find button next to the phases field to find the work phases your new type will have. When you are done adding phases, save your new Task Type. The next time you edit a Task, you can choose your new type as one of the type options.


Heap strategies:

The immediate triage of new work items based on the top level plan definitions has been demonstrated to provide significant help with managing projects over time. To maximize this leverage, we recommend the following supplemental strategies to consider when working with your heap:

  1. Limit the contents of everything under Immediate to approximately two weeks of team effort. This will keep the size manageable both visually and mentally for everyone involved. Anything outside that scope should be moved down into Near.

  2. Take the time to organize the contents of the Near plan to reflect the work breakdown so you can easily read it and move things around to reflect changing priorities. As Immediate work is completed and moved to Finished you can move things up from Near according to plan.

  3. Organize Future work based on conceptual categories so you can find things when the time is right. If future items are no longer under consideration, close them out and move them to Finished.

  4. You may find it helpful to subdivide Finished into three sub plans:

    1. Recently completed is where all work is first moved to when it is finished.
    2. Reference is for all completed work that is referred to on a regular basis for answering questions, modeling, or other purposes.
    3. Archive is a hidden plan for old work used to reduce general clutter.

  5. Use good names! The few additional seconds spent creating a concise descriptive name for a work item will save many minutes of reading over the course of a project.

  6. Every couple of weeks or so, save a copy of your published heap. You can compare the versions over time to see how your project has progressed, improve estimates and look for patterns that might be useful in the future.


Project Management terms:

Here's a glossary of a few project management terms and how they relate to TaskHeap:

  • Work item recording is the process of creating new work in response to situations as they come up, without getting bogged down in planning at the time. Sometimes this is handled through a separate incident tracking system, in TaskHeap this is handled by simply creating a new Task.

  • Planning refers to creating the overall structure of the project and organizing the work to be done. In TaskHeap this is handled by creating Plans and moving work items around. It may also consist of creating placeholder work items to be fleshed out later. Milestones can be recorded as higher level organizational plans with optional deadlines.

  • Progress reporting refers to updating task status as work is completed, and providing an overview of the state of the project to everyone who needs it. TaskHeap handles this through it's interactive interface and published heap documents.

  • Work Breakdown Structure (WBS) refers to a hierarchical view of all defined work for a project, represented either as an outline or a graphical display. The heap outline in TaskHeap provides a concise, functional WBS.

  • Program Evaluation and Review Technique (PERT) is a method for managing projects based on probability where all tasks have a best, nominal, and worst case time estimate. Developed in 1958 by the DoD Navy Special Projects Office to help measure and control the progress of the Polaris Fleet Ballistic Missile program, PERT calculates an expected duration and a standard deviation for all work. TaskHeap does not support PERT because of the additional task entry overhead and complexity associated with entering and managing multiple time estimates.

  • Gantt is a technique developed by Henry Laurence Gantt in the 1920s and used for projects like the Hoover dam and the interstate highway network. Each logical unit of work is tracked as separate horizontal line against the timeline at the top of the report. TaskHeap does not support Gantt because the amount of display real estate required, and the decreasing accuracy of work definitions the further out in time things get.

  • Critical Path Method (CPM) was invented by the DuPont Corporation in the 1950s and uses single number time estimates to compute a total time based on the longest path through all the work. TaskHeap does not directly support CPM, although you can place several work items under a parallel plan to track which will take longest.

  • Agile Development describes a wide range of specific techniques, but generally refers to iterative software development model that can be described as a "release early, release often" approach. TaskHeap generally supports agile development.


Support:

Support for TaskHeap is available by email. Send a complete description of your question, problem or suggestion to support@TaskHeap.com.

We are committed to keeping costs low in order to make TaskHeap accessible to everyone, and we've found that email is the most effective way to do this. Premium support, consulting, custom development, custom installations and other services are available on a retainer fee basis. TaskHeap is an open source component of Structs and Nodes Development.

TaskHeap is developed using TaskHeap, and has been in use since 2002. It has helped us a lot and we hope it helps you also.


   






© 2007 SAND Services Inc.