Home : Project Tracker Documentation : 3. For Developers : 3.2. Project Tracker Application Requirements 

3.2. Project Tracker Application Requirements

Table of Contents

3.2.1. Introduction
3.2.2. Vision Statement
3.2.3. System/Application Overview
3.2.4. User Scenario
3.2.5. Competitive Analysis
3.2.6. Related Links
3.2.7. Requirements
3.2.8. Revision History

By Nobuko Asakai

3.2.1. Introduction

This is a requirements document for the Project Tracker (PT) web based project management tool.

3.2.2. Vision Statement

Planning a project is all about organizing and tracking tasks. In planning a project we organize tasks, estimate duration, and match them against resources. In tracking a project we mark tasks as completed with the allocated resources, or adjust plans for chagnes in scope, resources, or schedule. PT will help you achieve these planning and tracking needs collaboratively. Powered by the ACS and the ACS-Workflow, it will bring people, partners, and processes to come together in a common application.

3.2.3. System/Application Overview

Project Tracker takes care of how tasks in a project are organized. Tasks, are built on the ACS 4 Workflow engine.

Here's a breakdown of the high-level activities that Project Tracker will support:

  • Entering Tasks The PT will allow a set of tasks to be entered quickly and easily.

  • Organizing Tasks The process of reorganizing the task hierarchy must be easy and efficient.

  • Tracking Tasks The PT must enable users to update the status on their tasks. Users can input the actual time spent to complete the task.

  • My Tasks, or the Universal Task List Tasks entered in Project Tracker are also viewable in the workflow task-list. The workflow task-list all tasks assigned to a user from different applications.

3.2.4. User Scenario

Cast of characters:

  • Marc Manager: The Vice President of Technology

  • Peter Project-Manager: A Project Lead well versed in the profundities of project management.

  • Paula Programmer: A stellar programmer with a degree in Quantitative Physical Modeling and a minor in Group Dynamics from MIT.

  • Kai Koder: A new employee

  • Claus Client: Fortune 500 client

Peter Project-Manager works with Clint Client to define the objectives and deliverables Project X. This and other broad information (client, project-manager in charge, start date of a project, etc) are entered into the project-tracker.

Peter works with his (Paula and Kai) to estimate the effort required to fulfill each of the requirements, and then assigns each functional area a team members. Paula is now assigned the task deploying the bboard system. At this point the bulletin board task appears on Paula's universal task list in ACS-workflow, and she receives an email notice. Paula breaks this task into installing the bboard package, modifying the datamodel, customizing the UI, and testing and enters this information into the Project Tracker. She estimates duration for each subtask.

Peter is now ready to show the project plan to Claus. However Peter doesn't want Claus to change the plan. So he defines access permissions for Claus and gives him the url to the project plan. Now Claus can see how the tasks are organized but cannot see who is assigned to them, and he cannot edit the task information.

As the project progresses, Peter and his team are getting continuous email updates on the status of different tasks. Peter checks in on what everyone is working on, and which tasks are behind schedule. A report shows him that many tasks are taking "longer than expected". Peter sends out a little memo on accurate estimation techniques.

Peter's boss, Marc Manager supervises four project managers. Every so often Marc checks in to view a status report for all the projects. He is able to quickly assess which projects are behind schedule, and how close a project is to completion. Marc sees that Peter's estimates are mostly on target and sends Peter an email to congratulate him.

The project is a huge success, and Peter and his team receives ample appraise from Marc. Peter adds some closing remarks and closes the project.

3.2.5. Competitive Analysis

There are numerous project management tools available, both open and closed sourced. While writing this document several system were reviewed to find useful features. The results can be found in Reviews of Existing Systems. Features found in MS Project is discussed in a separate document Review of MS Project

3.2.7. Requirements

VI. A Requirements Datamodel

10.0 Projects

A project is the starting point of all tasks. It is also the point of connection between PT and other ACS applications (eg. Intranet II).

20.0 Tasks

20.10 Basic Information

The following attributes must exist for each task:

  • Name

  • Description

  • Assignee (support multiple assignments)

  • Time estimate, user must be able to estimate duration for a task

  • Actual time spent on a task

  • Status

20.20 Extended information

In addition, tasks may have the following attributes:

  • Task hierarchy, what the parent task is

  • Who assigned the task

  • Time of last activity on the task

30.0 Subtasks

30.10

User must be able to organize a set of tasks into a hierarchical structure of tasks and subtasks.

30.20 Rules

  • When a parent task is moved to a different location, all subtasks must follow (i.e. the entire branch must move wherever the parent task may go).

80.0 Workflow

80.10

The different states for a task must be handled by the ACS-Workflow.

80.20 Initial workflow type

The initial workflow type for project tracker must do the following:

  • Send email notice to the assignee when a task is assigned

  • Allow tasks to move between complete/incomplete states

  • Allow users to comment on the task without changing its state

80.30 Flexibility It must be possible to implement different types of task with different workflows.

VI. B Requirements API

100.10 Create a task

100.10 Delete a task

100.20 Provide answer to the question "What project does this task belong to"

100.30 Move a task

100.40 Start project

100.50 Drop a task from a project

100.60 Delete a project

VI. C Requirements UI

150.0 Management functionality

User must be able to add/edit tasks easily within the context of the task-list (ie. do not take user to a separate form page for each task)

100.20 Organizing tasks

User must be able to move task branches

150.30 Task maintenance

User must be able to perform the following updates on tasks.

  • Assign tasks to other users (one or more)

  • Change status of a task

  • Drop a task from a project without deleting it

  • Delete a task

  • Comment on the task without changing its status

200.0 Viewing Information

210.10 Task information

User must be able to view the following information about a task

  • Who created the task

  • When it was created

  • Who the task is assigned to

  • The status of the task

  • Resolution (explanation of how the task was executed)

  • Change history (who changed what when)

  • Time of last activity

220.10 Task list

User must be able to view a subset and a sorted view of the task list organized by the following criteria:

  • By assignee

  • By due date (subset: today, this week, in two weeks, sort by due date)

  • By last activity (subset: today, this week, in two weeks, sort by last activity)

  • By priority

  • By status

300.0 Permissions

Administrator (project owner) must be able to define who has read/write permissions for each project.

  • Create a task

  • View tasks and all of it's attributes

  • View only some of it's attributes (defined as defined by project owner)

  • Modify a task

3.2.8. Revision History

Document Revision #Action Taken, NotesWhen?By Whom?
0.6Converted to DocBook XML and updated3/07/01Nobuko Asakai
0.5Dependencies and scheduling features dropped. Document updated to reflect changes2/13/01Nobuko Asakai
0.4Reviewed by Kai Wu12/13/00Nobuko Asakai
0.3Revision with feedback from Marc A. new emphasis on historical data12/13/00Nobuko Asakai
0.2Added user scenario and requirements12/11/00Nobuko Asakai
0.1Creation - Kai Wu

nasakai@arsdigita.com

($Id: requirements.xml,v 1.1.1.1 2001/04/10 21:00:10 nasakai Exp $)