You are on page 1of 10

Project Scheduling and Tracking

Project Scheduling and Tracking

- Basic Concepts
- Relationship between People and Effort
- Defining A Task Set for the Software Project
- Degree of Rigor
- Defining Adaptation Criteria
- Computing A Task Set Selector Value
- Selecting Software Engineering Tasks
- Refinement of Major Tasks
- Defining A Task Network
- Scheduling
- Timeline Charts
- Tracking the Schedule
- The Project Plan
Project Scheduling (Basic Principles)
Software project scheduling is an activity that distributes estimated effort
across the planed project duration by allocating the effort to specific software
engineering tasks.

First, a macroscopic schedule is developed.


---> a detailed schedule is redefined for each entry in the macroscopic
schedule.

A schedule evolves over time.

Basic principles guide software project scheduling:

- Compartmentalization
- Interdependency
- Time allocation
- Effort allocation
- Effort validation
- Defined responsibilities
- Defined outcomes
- Defined milestones
Defining A Task Set For The Software Project
There is no single set of tasks that is appropriate for all projects.

An effective software process should define a collection of task sets,


each
designed to meet the needs of different types of projects.

A task set is a collection of software engineering work


-> tasks, milestones, and deliverables.

Tasks sets are designed to accommodate different types of projects


and different degrees of rigor.

Typical project types:

- Concept Development Projects


- New Application Development Projects
- Application Enhancement Projects
- Application Maintenance Projects
- Reengineering Projects
Obtaining Information

Degree of Rigor:
- Casual
- Structured
- Strict
- Quick Reaction

Defining Adaptation Criteria:


-- This is used to determine the recommended degree of rigor.

Eleven criteria are defined for software projects:


- Size of the project
- Number of potential users
- Mission criticality
- Application longevity
- Ease of customer/developer communication
- Maturity of applicable technology
- Performance constraints
- Embedded/non-embedded characteristics
- Project staffing
- Reengineering factors
Defining A Task Network

Individual tasks and subtasks have interdependencies based on their sequence.

A task network is a graphic representation of the task flow for a project.


Figure 7.3 shows a schematic network for a concept development project.

Critical path:
-- the tasks on a critical path must be completed on schedule to make the whole
project on schedule.

T7 T8

T1 T2 T3 T4

T5 T6
Scheduling
Scheduling of a software project does not differ greatly from scheduling of any multitask
engineering effort.

Two project scheduling methods:


- Program Evaluation and Review Technique (PERT)
- Critical Path Method (CPM)

Both methods are driven by information developed in earlier project planning activities:
- Estimates of effort
- A decomposition of product function
- The selection of the appropriate process model
- The selection of project type and task set

Both methods allow a planer to do:


- determine the critical path
- time estimation
- calculate boundary times for each task

Boundary times:
- the earliest time and latest time to begin a task
- the earliest time and latest time to complete a task
- the total float.
Timeline Charts (Gantt charts)

Work tasks Week 1 Week 2

Task 1
Sub-task 1.1
Sub-task 1.2
Sub-task 1.3

Task 2
Sub-task 2.1
Sub-task 2.2

Task 3
Sub-task 3.1
Sub-task 3.2

Task 4
Sub-task 4.1
Sub-task 4.2
Sub-task 4.3

Task 5
Sub-task 5.1
Sub-task 5.2
Tracking the Schedule

The project schedule provides a road map for a software project manager.

It defines the tasks and milestones.

Several ways to track a project schedule:


- conducting periodic project status meeting
- evaluating the review results in the software process
- determine if formal project milestones have been accomplished (Figure 7.4)
- compare actual start date to planned start date for each task
- informal meeting with practitioners

Project manager takes the control of the schedule in the aspects of:
- project staffing
- project problems
- project resources
- reviews
- project budget
The Project Plan

The software project plan is a relatively brief document that is addressed to a diverse audience.

It must consists the following:


- communication scope, resources, staffing, and customer
- define risks and risk management techniques
- define cost and schedule for management review
- provide an overall approach to software development
- outline how quality will be ensured and change will be managed.

The plan concentrates on a general statement of what and a specific statement of how much and
how long.

The purpose of a project plan is:


-> help establish the viability of the software development effort.

The project plan need not be a lengthy and complex document.

You might also like