project management for agile projects. introduction the project management job day to day...

23
Project Management for Agile Projects

Upload: carol-williams

Post on 31-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Project Management for Agile Projects

Introduction

The Project Management Job Day to day administration Managing the process Managing external relationships

IntroductionThe External Context Still based on a waterfall view of projects

“On time / on Budget” “Manage to the Plan”

Use success criteria that consistently fail “80% of all software projects fail”

Introduction The Real Problem Everyone is frustrated with the time it takes to

complete software. Managers feel powerless to control it. The “on time – on budget” approach

aggravates the problem.

Project ModelsTwo Project Models Deterministic Project Model

We can predict how the project will unfold Non deterministic Project Model

Software development is a discovery process

Project ModelsDeterministic Project Model The amount of time that it will take to complete the

project is predictable. Focus is on controlling cost. Process is to establish a plan based on work

breakdown structures and “manage to the plan”. The plan is static.

The development team, including the project manager, the primary participants.

Success is delivering the project “on time / on budget”

Project ModelsNon Deterministic Project Management Recognizes that software development is a

discovery process. Focused on value/cost tradeoffs Process is to identify discoveries that our current

assumptions, assess the impact the new information has on the value model and “manage the plan”. Plan is volatile.

The project steering committee, including the business and technical sponsors, the primary participants.

Success is delivering good value in reasonable time

Project ModelsNothin’ New Almost all projects eventually revert to non-

deterministic project management.

Some core project management truisms are non-deterministic.

Project ModelsNothin’ New – cont. Popular process (RUP, Agile, Adaptive

Programming…) succeed because they are discovery processes.

Still “on-time / on-budget” is the holy mantra.

Legalizing Non-Deterministic Project Management If we recognize the non determinist model as

a normal and legitimate tool we can: Make good business driven decisions in the

inception and elaboration phases. Establish and improve processes Set realistic expectations Okay to abandon projects as soon as we discover

they are marginal.

Project ModelsWorking together Non-Deterministic Project Management not a

replacement for Deterministic Project Management

Non – Deterministic Project Management

Deterministic Project Management

Project ModelsWorking Together – cont.

The deterministic model provides constraints “the objective is not to provide the best solution

we can, but to provide the best solution we can afford”

Projects will fail without a well executed deterministic components The non deterministic model works because the

deterministic part actually is predictable.

Non Deterministic ProcessStrategy Provide early estimates of value and cost

referenced to a business process. Create a project plan based on delivering

subsystems prioritized by value. As the project progresses, the development

team will design solutions to fit in the plan’s resource and schedule constraints.

Reevaluate value as the understanding of the application improves and adjust plan.

Non Deterministic ProcessRoles

Project Steering Committee IT Sponsor, Business Sponsors Project Manager, Architect, Lead Analyst, Lead

Subject Matter Expert Development Team

Project Manager, Architect, Lead Analyst, Lead Subject Matter Expert

Non Deterministic ProcessEarly Estimates They need to be useful for management

decision making. Structure more important then accuracy. Understanding how the application is going to

deliver value is as important (and as volitile) as understanding what it will cost.

Non Deterministic ProcessEarly Estimate – Value Estimate Artifact List of Business Processes (Business Use

Cases) For each Process

Process Description Frequency of Use How will the application improve the process How will the improvement result in business value What will it cost to operate the application Quantify the improvement in value

Non Deterministic ProcessEarly Estimate – Cost Estimate Artifact List of Business Processes For each process and supplementary

requirement The system use case(s) to support it Technical Strategy for implementing the use case

or supplementary requirement Effort estimate

Metric for translating effort estimate into hours

Non Deterministic ProcessAllowance for the Undiscovered Value Estimate

Rows labeled “unknown process” Cost Estimate

Rows for “unknown use cases” to be associated with business processes (at least as many as unknown processes)

Rows for “unknown requirements” to be included in the Supplementary Specification section

Budget for technical solutions to become more complex then originally anticipated.

Non Deterministic ProcessProject Plan Estimate Negotiations Iterations are ordered to deliver highest value

first. Technical Risk needs to be considered Project Plan includes a budget for the

undiscovered.

Non Deterministic ProcessMonitoring Status – Development Team The Development team is responsible for

designing solutions that fit within the constraints of the project plan.

Monitor and report Changes in Value Model Changes in operating costs Changes in Technical solutions Changes in Effort to Hours metric Recommendations to improve value

Non Deterministic ProcessMonitoring Status – Steering Committee Based on reporting from the development

team, adjust the project plan Choices between alternatives Priorities Schedule and Resources

MiscellaneousValue in Software Development Projects The simplest possible solution is the baseline Incremental improvements in value need to

be justified A few key features need Cadillac solutions. Infrequently used features need Escort solutions.

The development team should make most of these decisions to stay within the project constraints

Miscellaneous – SummaryKey Phrases

“Software development is a discovery process”

“not the best solution; the affordable solution” “invent successful outcomes”