Você está na página 1de 17

Software Project Management

Lecture # 7

What are we studying today?

Chapter 24 - Project Scheduling

Effort distribution
Defining task set for the software project

Project types (related topic)

Factors that influence task set selection in a project


A task set example
Defining a task network
Project Scheduling
Timeline charts
Schedule tracking
Earned Value Analysis

Effort Distribution

A recommended distribution of effort across


software process is often referred to as 4020-40 rule

40% allocated to analysis & design


20% allocated to coding
40% allocated to testing

Use the above as a guideline only as each


project dictates its own distribution effort

Defining Task Set For The


Software Project

Task set is a collection of software engineering


work tasks , milestones and deliverables that
must be accomplished to complete a particular
software project.
Task sets are different for different types of
projects
Most organizations encounter following types of
projects

Concept development projects

Explore some new business concept or application of


new technology

Defining Task Set For The


Software Project (Contd.)

New application development projects

Application Enhancement projects

Involve modification to functions, performance or interfaces


(observable by end-user) in existing software

Application maintenance projects

Undertaken as a consequence of specific customer request

That correct, adapt or extend existing software in ways that


may not be obvious to end user

Reengineering projects

Undertaken for rebuilding an existing system in whole or


part

Factors Influencing Task Set


Selection in Projects

Size of project
Number of potential users
Mission criticality
Application longevity
Stability of requirements
Ease of customer/develop communication
Maturity of applicable technology
Performance constraints
Embedded, non embedded characteristics
Project staff
Reengineering factors
These factors also provide an indication of the degree of
rigor with which the software process should be applied

A Task Set Example

Consider software engineering tasks for a Concept


Development project.
Such projects are approached by applying the
following major tasks:
1.1 Concept scoping

determines overall project scope

1.2 Preliminary concept planning

Establishes the organizations ability to undertake work


implied by project scope

1.3 Technology risk assessment

Evaluates risk associated with the technology to be


implemented

1.4 Proof of concept

Demonstrates the viability of a new technology in the


software context

A Task Set Example (Contd.)


1.5 Concept implementation

Implements the concept representation in a manner


that can be reviewed by a customer and is used for
marketing purposes when a concept must be sold to
other customers or management.

1.6 Customer Reaction

Concept solicits feedback on a new technology


concept and targets specific customer applications

Refinement of Major Tasks

The major tasks described earlier may be


used to define a macroscopic schedule for
project.
The macroscopic schedule must be refined to
create a detailed schedule.
For this each major task is decomposed into
a set of subtasks (with related work products
and milestones)
As an example consider task 1.1 concept
scoping. The refinement is shown on next
slide:

Refinement of Major Tasks


(Contd.)

See page 715

Defining a Task Network

Also known as activity network


It is a graphic representation of the
task flow for a project
Displays interdependencies and
parallelism
Project manager should be aware of
those tasks that lie on the critical path

A task set network for concept


development

1.1
1.1
Concept
Concept
Definition
Definition

1.2
1.2
Project
Project
Planning
Planning

1.4a
1.4a
Module
ModuleAA
Des/Dev
Des/Dev

1.4b
1.4b
Module
ModuleBB
Des/Dev
Des/Dev

1.5
1.5
Integrate
Integrate
&&Test
Test

1.6
1.6
Concept
Concept
Demo
Demo

Enables
Enablesthe
theteam
teamto
tosee
seethe
theessentially
essentiallyserial
serialnature
natureof
ofthe
the
project,
project, but
buttake
takeadvantage
advantageof
ofparallelism
parallelismwhere
wherepossible.
possible.

Scheduling

Two Project Scheduling methods that can be


applied to software development:

Program evaluation and review technique (PERT)


Critical Path Method (CPM)

Both are driven by Info already developed:

Estimates of effort
A decomposition of product function
The selection of appropriate process model and task
set
Decomposition of tasks

Timeline Charts

When creating software project schedule,


the planner begins with a set of tasks (work
breakdown structure)
If automated tools are used, the work
breakdown is input as a task network
Effort, duration and start date are then input
for each task
As a result of this input, a timeline chart or
Gantt chart is generated

Tracking Schedule

Accomplished in a no. of ways

Conducting periodic project status meetings in which each


team member reports progress & problems
Evaluating results of all reviews conducted throughout the
s/w engg process
Determining whether formal project milestones have been
accomplished by scheduled date
Comparing actual start date to planned date for each
project task
Meeting practitioners to get their assessment of progress
to date and problems encountered
Use earned value analysis to assess progress
quantitatively

Earned Value Analysis (EVA)

A quantitative approach for progress analysis of


project
Earned value is a measure of progress
Steps to determine earned value:
1.

The budgeted cost of work scheduled (BCWS) is


determined for each work task represented in schedule

2.

The BCWS values for all work tasks are summed to derive
the budget at completion, BAC

3.

BAC = (BCWSk) for all k tasks

Next the value for budgeted cost of work performed


(BCWP) is computed.

Its value is sum of the BCWS values for all work tasks that
have actually been completed by a point in time on the project
schedule

EVA (Continued)

According to Wilkens

BCWS represents the budget of activities that were planned to be


completed
and BCWP represents the budget of activities that were actually
completed

Important progress indicators can be computed based on BCWS,


BAC, BCWP values

SPI = BCWP/BCWS

SV = BCWP BCWS

Cost performance index value close to 1.0 indicates project is within its
defined budget
Actual Cost of Work Performed is sum of effort actually expended on work
tasks that have been completed by a point in time on project schedule

CV = BCWP ACWP

Schedule variance, is simply an absolute indication of variance from planned


schedule

CPI = BCWP/ACWP

Schedule performance index indicates efficiency with which project is using


scheduled resources. SPI value 1.0 indicates efficient execution of project
schedule

Cost Variance is an absolute indication of cost savings or shortfall at a


particular stage of project

Você também pode gostar