Software Project Management lecture 9

Preview:

DESCRIPTION

 

Citation preview

1

Software Project Management

Session 9: Project Control

2

Today

• Session 8 Review• Project Control• Status Reporting• Earned Value Analysis• MS Project

3

Session 8 Review

• Project roles and team structure• CMM• Requirements

4

Project Control

• Ongoing effort to keep your project on track• 4 primary activities:

– 1. Planning performance• A SDP, schedule, and a control process

– 2. Measuring status of work performed• Actuals

– 3. Comparing to baseline• Variances

– 4. Taking corrective action as needed• Response

• Prerequisite to good control is a good plan

5

Project Control

• “Control”• Power, authority, domination. No.• Guiding a course of action to meet an objective. Yes.

• Principles• Work is controlled, not workers

– Control helps workers be more effective & efficient

• Control based on work completed– Use concrete deliverables

• Balance– Appropriate level between too much and too little– Includes:

» Micro-managing vs. neglect» Too much tracking detail vs. too little

6

Progress Monitoring

• The 3 key Progress Monitoring Questions– What is the actual status?– If there’s a variance, what is cause?– What to do about it?

• Possible responses• 1. Ignore

• 2. Take corrective action

• 3. Review the plan

7

Progress Monitoring

• Monitoring rates– Daily, weekly, monthly

– If problems occur – then adjust• You may have to monitor problem areas more closely

• For some period of time

• Almost always there’s one or more areas under closer scrutiny

• Status Reporting

– Part of the communications management plan– Which is usually just a section of SDP

8

Status Reports

• From team to PM, from PM to stakeholders• Typical format for latter

– Summary

– Accomplishments for this period (done)• Tasks, milestones, metrics

– Plans for next period (to-do)

– Risk analysis and review

– Issues & Actions

• Shoot for weekly updates– Email notes, then hold brief meeting

– More frequently during crises

9

Programming Status Reporting

• A programmer reports that he’s 90% done.– What does this mean?

• A programmer reports completing 4,000 LOC on estimated 5,000 LOC effort.

• Is this 80% complete?• Quality? • Ratio, estimated to completed?

– Your estimates could have been wrong

• If you can’t measure scope or quality you don’t know “reality”• You really only know cost (hours spent)• How can you improve this?

10

Binary Reporting

• Work packages (tasks) can only be in one of 2 states: complete or incomplete– No partial credit

• Preferred to anything subjective!• “90% Complete Syndrome”

– Software is 90% complete 90% of the time

• Use lower-level task decomposition • Tangible exit criteria• Plan for 4-80 staff hours of effort per task

11

Earned Value Analysis (EVA)

• a.k.a. Earned Value Management (EVM)• a.k.a. Variance Analysis• Metric of project tracking• “What you got for what you paid”

– Physical progress

• Pre-EVA ‘traditional’ approach• 1. Planned time and costs• 2. Actual time and costs• Progress: compare planned vs. actual

• EVA adds third dimension: value• Planned, actual, earned

12

Earned Value Analysis

• Forecasting– Old models include cost & expenditure

– EVA adds schedule estimation

• Measured in dollars or hours– Often time used in software projects

• Performance Measurement Baseline (PMB)• Time-phased budget plan against which contract performance

is measured

• Cost & schedule variances go against this

• Best via a bottom-up plan

13

Earned Value Analysis

• Different methods are available– Binary Reporting– Others include

• Based on % complete

• Weights applied to milestones

• EVA can signal errors as early as 15% into project

• Alphabet Soup

14

Earned Value Analysis

– 3 major components• BCWS: Budgeted Cost of Work Scheduled

– Now called “Planned Value” (PV)– “Yearned”– How much work should be done?

• BCWP: Budgeted Cost of Work Performed– Now called “earned value” (EV)– “Earned”– How much work is done?– BCWS * % complete

• ACWP: Actual Cost of Work Performed– Now called “Actual Cost” (AC)– “Burned”– How much did the work done cost?

15

Derived EVA Variances

• SV: Schedule Variance– BCWP – BCWS

– Planned work vs. work completed

• CV: Cost Variance– BCWP – ACWP

– Budgeted costs vs. actual costs

• Negatives are termed ‘unfavorable’

• Can be plotted on ‘spending curves’– Cumulative cost (Y axis) vs. Time (X axis)

– Typically in an ‘S’ shape

• “What is the project status”?– You can use variances to answer this

16

Earned Value Analysis

17

Derived EVA Ratios

– SPI: Schedule Performance Index– BCWP / BCWS

– CPI: Cost Performance Index– BCWP / ACWP

– Problems in project if either of these less than 1 (or 100%)

18

Earned Value Analysis

• Other Derived Values• BAC: Budget At Completion

– Sum of all budges (BCWS). Your original budget.

• EAC: Estimate At Completion– Forecast total cost at completion– EAC = ((BAC – BCWP)/CPI) + ACWP– Unfinished work divided by CPI added to sunk cost– If CPI < 1, EAC will be > BAC

• CR: Critical Ratio– SPI x CPI– 1: everything on track– > .9 and < 1.2 ok– Can be charted

19

EVA Example

As of 1-July where are we?

BCWS

BCWP

ACWP

20

EVA Example

CV

SV

CPI

SPI

CR

21

Earned Value Analysis

• BCWS– Use ‘loaded labor’ rates if possible

• Direct pay + overhead

• Remember it’s an aggregate figure– May hide where the problem lies– Beware of counterbalancing issues

• Over in one area vs. under in another

22

Earned Value Analysis

• Benefits– Consistent unit of measure for total progress– Consistent methodology

• Across cost and completed activity• Apples and apples comparisons

– Ability to forecast cost & schedule– Can provide warnings early

• Success factors– A full WBS is required (all scope)– Beware of GIGO: Garbage-in, garbage-out

23

The MS-Project Process

• Move WBS into a Project outline (in Task Sheet)• Add resources (team members or roles)• Add costs for resources• Assign resources to tasks• Establish dependencies• Refine and optimize• Create baseline• Track progress (enter actuals, etc.)

24

Project Overview

• This is a ‘quickie’ overview

• We will return to all of these steps individually over the next few weeks

• Sample project from McConnell

25

Project UI

• Views– Default is Gant Chart View

• 2 panes

• Task Sheet on left (a table)

• Gantt Chart on right

– View Bar on far left

26

Project UI

Indicators

Task Sheet

View Bar

Enter TasksHere

Gantt Chart

Timescale

Task Bars

Milestone

Split Bar

OutlineButtons

(Un)Link Buttons Toolbars

27

Create Your Project

• File/New• Setup start date• Setup calendar

– Menu: Project/Project Information

– Often left with default settings

– Hours, holidays

28

Enter WBS

• Outlining• Sub-tasks and summary tasks• Do not enter start/end dates for each• Just start with Task Name and Duration for each• Use Indent/Outdent buttons to define summary

tasks and subtasks• You can enter specific Start/End dates but don’t

most of the time

29

Establish Durations

• Know the abbreviations– h/d/w/m

– D is default

• Can use partial– .5d is a half-day task

• Elapsed durations• Estimated durations

– Put a ‘?’ after duration

30

Add Resources

• Work Resources– People

• Material Resources– Things

– Can be used to track costs• Ex: amount of equipment purshased

– Not used as often in typical software project

31

Resource Sheet

• Can add new resources here– Or directly in the task entry sheet

• Beware of mis-spellings (Project will create near-duplicates)

• Setup costs– Such as annual salary (put ‘yr’ after ‘Std. Rate’)

32

Effort-Driven Scheduling

• MS-Project default• Duration * Units = Work

• Duration = Work / Units (D = W/U)• Work = Duration * Units (W = D*U)• Units = Work / Duration (U = W/D)

• Adding more resources to a task shortens duration• Can be changed on a per-task basis

• In the advanced tab of Task Information dialog box• Task Type setting

• Beware the Mythical Man-month• Good for laying bricks, not always so for software development

33

Link Tasks

• On toolbar: Link & Unlink buttons– Good for many at once

• Or via Gantt chart– Drag from one task to another

34

Milestones

• Zero duration tasks• Insert task ‘normally’ but put 0 in duration

35

Make Assignments

• Approach 1. Using Task Sheet– Using Resource Names column

– You can create new ones by just typing-in here

• 2. Using Assign Resources dialog box– Good for multiple resources

– Highlight task, Tools/Resources or toolbar button

• 3. Using Task Information dialog– Resources tab

• 4. Task Entry view– View/More Views/Task Entry

– Or Task Entry view on Resource Mgmt. toolbar

36

Save Baseline

• Saves all current information about your project– Dates, resource assignments, durations, costs

37

Fine Tune

• Then is used later as basis for comparing against “actuals”

• Menu: Tools/Tracking/Save Baseline

38

Project 2002

• 3 Editions: Standard, Professional, Server• MS Project Server 2002

• Upgrade of old “Project Central”

• Includes “Project Web Access”, web-based UI (partial)

• Workgroup and resource notification features

• Requires SQL-Server and IIS

• “Portfolio Analyzer”– Drill-down into projects via pivot tables & charts

• “Portfolio Modeler”– Create models and “what-if” scenarios

• SharePoint Team Services integration

39

Project 2002

• MS-Project Professional– “Build Team” feature

• Skills-based resource matching

– Resource Pools: with skill set tracking

– Resource Substitution Wizard

• “Project Guide” feature– Customizable “process component”

40

MS-Project Q&A

• Your WBS in Project

• How did it go?

• Any questions?

41

Homework

• Schwalbe: 7 “Project Quality Management”• URLs

– “Introduction to Software Testing”• http://www.iplbath.com/pdf/p0820.pdf

– “Introduction to Software Testing Principles”• http://www.qestest.com/principl.htm

• Project plan: – Develop and submit an initial copy of the project plan

(limited to tasks & milestones) for your individual project

42

Questions?

Recommended