software project management (intro) project control

36
Software project management (intro) Software project management (intro) Project Project control control

Upload: elmer-gaines

Post on 12-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software project management (intro) Project control

Software project management (intro)Software project management (intro)

Project controlProject control

Page 2: Software project management (intro) Project control

IntroductionIntroduction

How information about project progress is How information about project progress is gathered and what actions must be taken gathered and what actions must be taken to ensure a project meets its targetto ensure a project meets its target

How can we deal with changes in How can we deal with changes in requirementsrequirements

Page 3: Software project management (intro) Project control

Introduction (2)Introduction (2)

If there is a mismatch between the planned If there is a mismatch between the planned outcomes and the actual onesoutcomes and the actual ones Re-planning to bring the project back on targetRe-planning to bring the project back on target The target will have to be revisedThe target will have to be revised

Departures from the planDepartures from the plan Delays in meeting the target datesDelays in meeting the target dates Shortfall in qualityShortfall in quality Inadequate functionalityInadequate functionality Costs going over targetCosts going over target

Page 4: Software project management (intro) Project control

Project control - overviewProject control - overview

The project control life-cycleThe project control life-cycle

What’s going on? Collecting control What’s going on? Collecting control informationinformation

Excuses, excuses… Reporting upwardsExcuses, excuses… Reporting upwards

Doing something about it. Corrective Doing something about it. Corrective action.action.

Page 5: Software project management (intro) Project control

The project control life-cycleThe project control life-cycle

StartPublish initial

plan

Gather project information

Compare progress vs

targets

Satisfactory?

Project complete

d?End project

Take remedial action

Publish revised plan

NoNo

NoNo

YesYes

YesYes

Page 6: Software project management (intro) Project control

What needs controllingWhat needs controlling

Costs of project must be less than benefitsDelays in implementation reduce benefits

What tasks have been completed?

Project may be on time but only because more resources have been used than were originally budgeted

Conversely, project may be late because planned resources have not been used

1. Technical1. Technical integrity

2. Business integrity of project2. Business integrity of project

Page 7: Software project management (intro) Project control

What needs controlling (2)What needs controlling (2)

3. Quality3. Quality a task has not really been finished unless the a task has not really been finished unless the

product of that task is satisfactoryproduct of that task is satisfactory activity reported as finished could need to be activity reported as finished could need to be

re-workedre-worked testing is difficult to control: depends on an testing is difficult to control: depends on an

unknown number of errorsunknown number of errors

Page 8: Software project management (intro) Project control

The bug chainThe bug chain

Requirementsgathering

errors

Design

more errors

build

even more errors

test

errors

errors

errorsHELP!

Page 9: Software project management (intro) Project control

Some problems with controlling Some problems with controlling projectsprojects

99% completion syndrome99% completion syndrome job reported as ‘on time’ until last scheduled job reported as ‘on time’ until last scheduled

weekweek job reported as ‘99% complete’ for each job reported as ‘99% complete’ for each

remaining week until task is completedremaining week until task is completed

Solution?Solution? control on deliverables control on deliverables

Page 10: Software project management (intro) Project control

Further problemFurther problem

Scope creepScope creep tendency for system to increase in size during tendency for system to increase in size during

developmentdevelopment

Solution?Solution? re-estimatingre-estimating change controlchange control

Page 11: Software project management (intro) Project control

Progress check listProgress check list

tasks completedtasks completed

staffingstaffing

scope (more scope (more requirements)requirements)

external external dependenciesdependencies

cost of qualitycost of quality

financefinance

risk analysisrisk analysis can identify sensitive can identify sensitive

factors that need factors that need monitoringmonitoring

Page 12: Software project management (intro) Project control

Levels of controlLevels of control

project board

project manager(stage manager)

project team

checkpoint reports

checkpoint meetings e.g. weekly

End-stage assessment event-driven

Mid-stage assessment time-driven e.g. monthly

Ensuring satisfactory progress

Day-to-day responsibility

Page 13: Software project management (intro) Project control

Levels of controlLevels of controlinformation control

decision-making

reporting on actions

• As information goes to higher levels it becomes more summarised• General directives are filled in with operational details as they filter down• Danger of ‘information overload’

Page 14: Software project management (intro) Project control

Collecting project informationCollecting project information

SourcesSources checkpoint meetingscheckpoint meetings time sheetstime sheets machine generated statistics e.g. connect machine generated statistics e.g. connect

timetime configuration management dataconfiguration management data internal documents e.g. error reportsinternal documents e.g. error reports

Page 15: Software project management (intro) Project control

Example of TimesheetExample of Timesheet

Page 16: Software project management (intro) Project control

Risk Reporting:Risk Reporting:Red, amber, greenRed, amber, green

• red not on plan: recoverable only with difficulty• amber not on plan: recoverable• green on schedule

Page 17: Software project management (intro) Project control

PresentationPresentation

avoid ‘information overload’avoid ‘information overload’focus on real problems - exceptions to focus on real problems - exceptions to planned activityplanned activitysome approaches some approaches graphical representationgraphical representation

Gantt ChartGantt ChartSlip ChartSlip ChartBall ChartBall ChartTimelineTimeline

high-light problem caseshigh-light problem cases

Page 18: Software project management (intro) Project control

Progress report contentProgress report content

Achievements in reporting periodAchievements in reporting period Tasks that should have been finishedTasks that should have been finished Tasks that should have been startedTasks that should have been started

Costs - Costs - actual costs compare to budgetedactual costs compare to budgeted

Staffing - Staffing - joiners, leavers, sickness etc.joiners, leavers, sickness etc.

Risk monitoring Risk monitoring - status of identified risks- status of identified risks

OutlookOutlook how things are likely to progress in next periodhow things are likely to progress in next period

Page 19: Software project management (intro) Project control

Graphical representationGraphical representation

Gantt ChartGantt Chart

Gavin

Purdy

Justin

Spencer

Amanda

3/01

4/01

5/01

6/01 7/01 8/01 9/

01

Page 20: Software project management (intro) Project control

Graphical representationGraphical representation

Slip ChartSlip Chart

Gavin

Purdy

Justin

Spencer

Amanda

3/01

4/01

5/01

6/01 7/01 8/01 9/

01

‘Slip-chart’ red-line indicates position as of todayA very uneven line suggests need for rescheduling

Page 21: Software project management (intro) Project control

Graphical representationGraphical representation

Ball ChartBall Chart

31/3/9931/3/99

11/5/9921/5/99

Code and test module A

6/4/998/4/99

13/5/9917/5/99

Code and test module B

originalActual

Encourage competitiveness between teamsRelatively easy to keep up to date

Page 22: Software project management (intro) Project control

Graphical representationGraphical representation

TimelineTimelineA method of recording A method of recording and displaying the way and displaying the way

in which the targets have in which the targets have changed throughout the changed throughout the

duration of the projectduration of the project

Page 23: Software project management (intro) Project control

Corrective actionCorrective actionToleranceTolerance acceptable margins of overshoot may be specified acceptable margins of overshoot may be specified

in planin plan

ContingencyContingency this is not owned by the activity but by the project: this is not owned by the activity but by the project:

give and take between activitiesgive and take between activities

Exception plansException plans drawn up when the original plan needs major drawn up when the original plan needs major

change: especially change to scope or costschange: especially change to scope or costs requires project board authorityrequires project board authority

Page 24: Software project management (intro) Project control

Some possible actions to Some possible actions to recover projectrecover project

Re-scheduleRe-schedule

make more resources availablemake more resources available

redefine scoperedefine scope

modify quality requirementsmodify quality requirements

enhance productivity e.g. through training, enhance productivity e.g. through training, toolstools

Page 25: Software project management (intro) Project control

Cost MonitoringCost Monitoring

Accumulative chartAccumulative chart

0

20

40

60

80

100

120

1 2 3 4 5 6 7 8 9 10 11

week number

% c

om

ple

te planned

actual

-- behind schedule and over budget

Page 26: Software project management (intro) Project control

Earned value analysisEarned value analysis

1. Identify ‘modules’1. Identify ‘modules’good if users can recognize thesegood if users can recognize these

2. Identify ‘checkpoints’2. Identify ‘checkpoints’

when a phase finishes - should be when a phase finishes - should be specific and measurablespecific and measurable

3. Identify %durations3. Identify %durations

e.g. design 30% code 25% test e.g. design 30% code 25% test 45%45%

Page 27: Software project management (intro) Project control

Earned value analysis -Earned value analysis -continuedcontinued

4. Estimate size/effort for each module4. Estimate size/effort for each module

5. When phase is completed for a module5. When phase is completed for a modulethat percentage of the project has been that percentage of the project has been ‘earned’‘earned’

Page 28: Software project management (intro) Project control

EARNED VALUE ANALYSIS EARNED VALUE ANALYSIS (EVA)(EVA)

Using only actual and planned costs can mislead management and Using only actual and planned costs can mislead management and customerscustomers

Eg.Eg. A project has duration of 10 month & a cost of A project has duration of 10 month & a cost of $200,000/month (total cost = $2 million)$200,000/month (total cost = $2 million)For the first 5 months, actual cost is $1,3 millionFor the first 5 months, actual cost is $1,3 million

Is there a cost overrun of $300,000?Is there a cost overrun of $300,000? Or, is it ahead of schedule?Or, is it ahead of schedule?

For the first 5 months, actual cost is $0.8 millionFor the first 5 months, actual cost is $0.8 million Is the cost less than expected by $200,000?Is the cost less than expected by $200,000? Or, is it behind schedule?Or, is it behind schedule?

Need to keep track schedules and budgets against Need to keep track schedules and budgets against timetime

++++

Page 29: Software project management (intro) Project control

ExampleExample

10 20 30 40 50

25%

100%

50%

75%

85%

$400

$340

$300

$200

$100

BCWPEarned Value

BCWSBaseline

ACWPActual Cost

SV CV

duration

++++

Page 30: Software project management (intro) Project control

Interpretation of Interpretation of GraphGraph

At the end of period 25, 75% of work was scheduled to At the end of period 25, 75% of work was scheduled to be accomplished (BSWS)be accomplished (BSWS)

At the end of period 25, the At the end of period 25, the valuevalue of the work of the work accomplished is 50% (BCWP)accomplished is 50% (BCWP)

At the end of period 25, the At the end of period 25, the actual costactual cost is $340 or 85% is $340 or 85%(ACWP)(ACWP)

Cost Variance shows that the project is over budget by Cost Variance shows that the project is over budget by $140 ($200 - $340)$140 ($200 - $340)

Schedule Variance suggests that the project is behind Schedule Variance suggests that the project is behind schedule ($200 - $300 = -$100)schedule ($200 - $300 = -$100)

++++

Page 31: Software project management (intro) Project control

EVA indicators - costEVA indicators - cost

BCWP Budgeted cost of work performedBCWP Budgeted cost of work performed

ACWP Actual cost of work performed ACWP Actual cost of work performed i.e. what it actually cost to get BCWPi.e. what it actually cost to get BCWP

Cost variance BCWP - ACWPCost variance BCWP - ACWP

Example (using time)Example (using time) work should have taken 20 dayswork should have taken 20 days work actually took 30 dayswork actually took 30 days

Page 32: Software project management (intro) Project control

EVA indicators - schedule EVA indicators - schedule performanceperformance

BCWS Budgeted cost of work scheduled: BCWS Budgeted cost of work scheduled: BCWP that would be achieved if all work BCWP that would be achieved if all work had been finished on timehad been finished on time

Schedule variance BCWP - BCWSSchedule variance BCWP - BCWS

ExampleExample three tasks each planned to take 10 days three tasks each planned to take 10 days

should have been completed: only two haveshould have been completed: only two have

Page 33: Software project management (intro) Project control

EVA performance indicesEVA performance indices

Cost performance indicator (CPI)Cost performance indicator (CPI) BCWP/ACWPBCWP/ACWP

Schedule performance indicator (SPI)Schedule performance indicator (SPI) BCWP/BCWSBCWP/BCWS

less than 1.00 is not good!less than 1.00 is not good!

Page 34: Software project management (intro) Project control

Prioritizing MonitoringPrioritizing Monitoring

Critical path activitiesCritical path activities

Activities with no free floatActivities with no free float

Activities with less than a specified floatActivities with less than a specified float

High risk activitiesHigh risk activities

Activities using critical resourcesActivities using critical resources

Page 35: Software project management (intro) Project control

Getting the project back to targetGetting the project back to target

Shorten the critical pathShorten the critical path Staff to work harderStaff to work harder Increase resource levelIncrease resource level Allocate more efficient resource on the critical Allocate more efficient resource on the critical

activitiesactivities

Reconsider the precedence requirementsReconsider the precedence requirements Subdivide activity Subdivide activity

Reconsider: quality, riskReconsider: quality, risk

Page 36: Software project management (intro) Project control

Change ControlChange Control

Request from userRequest from userThe user management consider the requestThe user management consider the requestAssess the products that would be affectedAssess the products that would be affectedThe development management decide – whether to go The development management decide – whether to go aheadaheadDevelopers are authorized to take copies of the master Developers are authorized to take copies of the master productproductThe copies are modifiedThe copies are modifiedThe user management is notifiedThe user management is notifiedWhen user is satisfied, the master copies will be When user is satisfied, the master copies will be replacedreplaced