82
Session 3 Planning Emanuele Della Valle http://home.dei.polimi.it/dellavalle

Planning Phase - P&MSP2010 (3/11)

Embed Size (px)

DESCRIPTION

- Development lifecycle models - Matching lifecycles to projects - Project plans

Citation preview

Page 1: Planning Phase - P&MSP2010 (3/11)

Session 3

PlanningEmanuele Della Vallehttp://home.dei.polimi.it/dellavalle

Page 2: Planning Phase - P&MSP2010 (3/11)

Credits 2

This slides are largely based on Prof. John Musser class notes on “Principles of Software Project M t”Management”

Original slides are available at htt // j t f /http://www.projectreference.com/

Reuse and republish permission was granted

Planning and Managing Software Projects – Emanuele Della Valle

Page 3: Planning Phase - P&MSP2010 (3/11)

Today 3

1. Phases in Detail• Step-by-step of typical software project

2. Lifecycle Planning

3. Project plansj p

Next Week: Lots of Project ish Details: WBS PERT Next Week: Lots of Project-ish Details: WBS, PERT, CPM, Scheduling & Estimation

Planning and Managing Software Projects – Emanuele Della Valle

Page 4: Planning Phase - P&MSP2010 (3/11)

Session 2 Review 4

PMI Fundamentals

PMI ProcessesPMI Processes

Project and Organizations• Functional, Project, Matrix organizations, j , g• Role of PM in this type of organizations

Project Selection

Project Portfolio Management

Procurement ManagementProcurement Management

Initial documents• Statement of Work (SOW)Statement of Work (SOW)• Project Charter

Planning and Managing Software Projects – Emanuele Della Valle

Page 5: Planning Phase - P&MSP2010 (3/11)

Introduction to session 3Project Phases 5

Planning and Managing Software Projects – Emanuele Della Valle

Page 6: Planning Phase - P&MSP2010 (3/11)

Introduction to session 3Time Allocation by Phase 6

Remember the 40-20-40 Rule• Specification-Implementation-Test

Planning Code &Unit Test

Integration & TestUnit Test

Commercial DP

25% 40% 35%

Internet Systems

55% 15% 30%

Real time 35% 25% 40%Real-time Systems

35% 25% 40%

Defense 40% 20% 40%Systems

Bennatan, E.M, “On Time Within Budget”

Planning and Managing Software Projects – Emanuele Della Valle

Page 7: Planning Phase - P&MSP2010 (3/11)

Introduction to session 3Time Allocation by Phase 7

Activity Small Project (2.5K LOC)

Large Project (500K LOC)

Analysis 10% 30%Analysis 10% 30%

Design 20% 20%

Code 25% 10%

U it T t 20% 5%Unit Test 20% 5%

Integration 15% 20%

System test 10% 15%

Planning and Managing Software Projects – Emanuele Della Valle

McConnell, Steve, “Rapid Development”

Page 8: Planning Phase - P&MSP2010 (3/11)

Introduction to session 3Activities by % of Total Effort 8

Planning and Managing Software Projects – Emanuele Della Valle

NASA’s “Manager’s Handbook for Software Development”

Page 9: Planning Phase - P&MSP2010 (3/11)

Introduction to session 3Potential Deliverables by Phase 9

Planning and Managing Software Projects – Emanuele Della Valle

Page 10: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Concept Exploration 10

The “Why” phase

Not a “mandatory formal” phaseNot a mandatory formal phase• Sometimes called the “pre-project” phase

Collecting project ideasg p j• Then the “funneling” process

Project Justification• Cost-benefit analysis• Project Portfolio Matrix• ROI

Initial planning and estimates

Planning and Managing Software Projects – Emanuele Della Valle

Page 11: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Concept Exploration 11

Possibly includes Procurement Management:• RFP Process

Vendor selection• Vendor selection• Contract management

Gathering the initial teamGathering the initial team• Including PM if not already on-board

Identify the project sponsorIdentify the project sponsor• Primary contact for approval and decision making

Potential Phase Outputs: p• Concept Document, Product Description, Proposal, SOW,

Project Charter

Planning and Managing Software Projects – Emanuele Della Valle

Page 12: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Concept Exploration 12

Characteristics & Issues• Lack of full commitment and leadership

Some frustrations:• Some frustrations:– Management only getting rough estimates from

development– Development not getting enough specifics from customer– Finding a balanced team

• Budget sign-off may be your 1st major taskg g y y j• Achieved via:

– Good concept document or equivalentDemonstration of clear need (justification)– Demonstration of clear need (justification)

– Initial estimates

Planning and Managing Software Projects – Emanuele Della Valle

Page 13: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Requirements 13

The “What” phase

Inputs: SOW, ProposalInputs: SOW, Proposal

Outputs: • Requirements Document (RD)q ( )

– a.k.a.Requirements Specification Document (RSD)– Software Requirements Specification (SRS)

• 1st Project Baseline• 1st Project Baseline• Software Project Management Plan (SPMP)• Requirements Approval & Sign-Off

diffi l k i hi h– Your most difficult task in this phase

Planning and Managing Software Projects – Emanuele Della Valle

Page 14: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Requirements 14

Perhaps most important & difficult phase

Shortchanging it is a ‘classic mistake’Shortchanging it is a classic mistake

Can begin with a Project Kickoff Meeting

C d ith S ft R i t R i (SRR)Can end with a Software Requirements Review (SRR)• For Sponsor and/or customer(s) approval

Planning and Managing Software Projects – Emanuele Della Valle

Page 15: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Why are Requirements so Important? 15

Planning and Managing Software Projects – Emanuele Della Valle

Page 16: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Requirements 16

Characteristics & Issues• Conflict of interest: developer vs. customer

Potential tug of war:• Potential tug-of-war:– Disagreement on Features & Estimates– Especially in fixed-price contracts

• Frequent requirements changes• Achieving sign-off

P j t l i i ll lProject planning occurs in parallel

Planning and Managing Software Projects – Emanuele Della Valle

Page 17: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Requirements 17

Requirements are capabilities and condition to which the system – more broadly, the project – must

fconform

Planning and Managing Software Projects – Emanuele Della Valle

Page 18: Planning Phase - P&MSP2010 (3/11)

Phases in Detail 2 Types of Requirements 18

Functional (behavioral)• Features and capabilities

Non-functional (a.k.a. “technical”) (everything else)• Usability

Human factors help documentation– Human factors, help, documentation• Reliability

– Failure rates, recoverability, availabilityf• Performance

– Response times, throughput, resource usage• Supportabilitypp y

– Maintainability, internationalization• Operations: systems management, installation• Interface: integration with other systems• Interface: integration with other systems• Other: legal, packaging, hardware

Planning and Managing Software Projects – Emanuele Della Valle

Page 19: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Requirements 19

Other ways of categorizing• Go-Ahead vs. Catch-up

R l ti t titi– Relative to competition• Backward-looking vs. Forward-looking

– Backward: address issues with previous version– Forward: Anticipating future needs of customers

Must be prioritized• Must-have• Should-have• Could-have (Nice-to-have: NTH)( )

Must be approved

An example I’m proud ofAn example I m proud of• http://www.service-finder.eu/attachments/D1.1.pdf

Planning and Managing Software Projects – Emanuele Della Valle

Page 20: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Early Phase Meetings 20

Project Kickoff Meeting

Project Brainstorming MeetingProject Brainstorming Meeting• Clarify goals, scope, assumptions• Refine estimates

WBS Meeting

Planning and Managing Software Projects – Emanuele Della Valle

Page 21: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Analysis & Design 21

The “How” Phases

Inputs: Requirements DocumentInputs: Requirements Document

Outputs: • Functional Specification p• Detailed Design Document • User Interface Specification • Data ModelData Model• Prototype (can also be done with requirements)• Updated Plan (improved estimates; new baseline)

Planning and Managing Software Projects – Emanuele Della Valle

Page 22: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Analysis & Design 22

a.k.a. Top-level design & detailed design

Continues process from RDContinues process from RD

Ends with Critical Design Review (CDR)• Formal sign-offg• Can also include earlier Preliminary Design Review (PDR)

for high level design

Planning and Managing Software Projects – Emanuele Della Valle

Page 23: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Analysis & Design 23

Characteristics & Issues• Enthusiasm via momentum

Team structure and assignments finalized• Team structure and assignments finalized• Delays due to requirements changes, new information or

late ideas• Issues around personnel responsibilities• Issues around personnel responsibilities• Unfeasible requirements (technical complexity)• Resource Issues

– Including inter-project contention

Planning and Managing Software Projects – Emanuele Della Valle

Page 24: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Development 24

The “Do It” phase

Coding & Unit testingCoding & Unit testing

Often overlaps Design & Integration phases• To shorten the overall schedule• PM needs to coordinate this

Planning and Managing Software Projects – Emanuele Della Valle

Page 25: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Development 25

Other concurrent activities• Design completion

Integration begins• Integration begins• Unit testing of individual components• Test bed setup (environment and tools)

l d d• Project plans updated• Scope and Risk Management conducted

Planning and Managing Software Projects – Emanuele Della Valle

Page 26: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Development 26

Characteristics• Pressure increases

Staffing at highest levels• Staffing at highest levels• Often a “heads-down” operation

IssuesIssues• Last-minute changes• Team coordination (esp. in large projects)

Communication overhead• Communication overhead• Management of sub-contractors

Planning and Managing Software Projects – Emanuele Della Valle

Page 27: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Integration & Test 27

Evolves from Dev. Phase

Often done as 2 parallel phasesOften done as 2 parallel phases• Partial integration & initial test

Starts with integration of modulesg

An initial, incomplete version constructed

Progressively add more componentsProgressively add more components

Planning and Managing Software Projects – Emanuele Della Valle

Page 28: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Integration & Test 28

Integration primarily a programmer task

Test primarily a QA team taskTest primarily a QA team task

Integration:• Top-down: Core functionality first, empty shells for p y , p y

incomplete routines (stubs)• Bottom up: gradually bind low-level modules• Prefer top-down generallyp g y

Planning and Managing Software Projects – Emanuele Della Valle

Page 29: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Integration & Test 29

Tests• Integration testing

Black & White box testing• Black & White-box testing• Load & Stress testing• Alpha & Beta testing• Acceptance testing

Other activitiesFinal budgeting; risk mgmt ; training; installation • Final budgeting; risk mgmt.; training; installation preparation; team reduced

Planning and Managing Software Projects – Emanuele Della Valle

Page 30: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Integration & Test 30

Characteristics & Issues• Increased pressure

Overtime• Overtime• Customer conflicts over features• Frustration over last-minute failures

d• Budget overruns• Motivation problems (such as burnout)• Difficulty in customer acceptance

– Esp. true for fixed-price contracts

Planning and Managing Software Projects – Emanuele Della Valle

Page 31: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Deployment & Maintenance 31

Installation depends on system type• Web-based, CD-ROM, in-house, etc.

Migration strategy

How to get customers up on the systemg p y• Parallel operation

Deployment typically in your project plan, maintenance not

Planning and Managing Software Projects – Emanuele Della Valle

Page 32: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Deployment & Maintenance 32

Maintenance• Fix defects

Add new features• Add new features• Improve performance

Configuration control is very important hereConfiguration control is very important here

Documents need to be maintained also

Sometimes a single team maintains multiple products

Planning and Managing Software Projects – Emanuele Della Valle

Page 33: Planning Phase - P&MSP2010 (3/11)

Phases in Detail Deployment & Maintenance 33

Characteristics & Issues• Lack of enthusiasm

Pressure for quick fixes• Pressure for quick fixes• Insufficient budget• Too many patches

l• Personnel turnover• Regression testing is critical

– Preferably through automated toolsy g

Planning and Managing Software Projects – Emanuele Della Valle

Page 34: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning 34

a.k.a. Lifecycle Management or Systems Development Life Cycle (SDLC )

Greatly influences your chance of success

Not choosing a lifecycle is a bad optionot c oos g a ecyc e s a bad opt o

Three primary lifecycle model components • Phases and their order• Intermediate products of each phase• Reviews used in each phase

Planning and Managing Software Projects – Emanuele Della Valle

Page 35: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning 35

Different projects require different approaches

You do not need to know all models by nameYou do not need to know all models by name

You should know how that if given a certain scenario what sort of SDLC would be appropriateat so t o S C ou d be app op ate

There are more than covered here

A lifecycle is not a design modeling or diagramming A lifecycle is not a design, modeling or diagramming technique • The same technique (UML, DFD, etc) can be used with

l i l lif lmultiple lifecycles

Planning and Managing Software Projects – Emanuele Della Valle

Page 36: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Pure Waterfall 36

The “granddaddy” of models

Linear sequence of phasesLinear sequence of phases• “Pure” model: no phases overlap

Document driven

All planning done up-front

Planning and Managing Software Projects – Emanuele Della Valle

Page 37: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Waterfall Risk 37

Why does the waterfall model “invite risk”?

Integration and testing occur at the endIntegration and testing occur at the end• Often anyone’s 1st chance to “see” the program

Planning and Managing Software Projects – Emanuele Della Valle

Page 38: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Pure Waterfall 38

Works well for projects with• Stable product definition

Well understood technologies• Well-understood technologies• Quality constraints stronger than cost & schedule• Technically weak staff

– Provides structure– Good for overseas projects

Planning and Managing Software Projects – Emanuele Della Valle

Page 39: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Pure Waterfall 39

Disadvantages• Not flexible

Ri id h f t t fi i h– Rigid march from start->finish• Difficult to fully define requirements up front• Can produce excessive documentation• Few visible signs of progress until the end

Planning and Managing Software Projects – Emanuele Della Valle

Page 40: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Code-and-Fix 40

“Code-like-Hell”

Specification (maybe), Code (yes), Release (maybe)Specification (maybe), Code (yes), Release (maybe)

Advantages• No overhead• Requires little expertise

Disadvantages• No process, quality control, etc.• Highly risky

S it bl f t t thSuitable for prototypes or throwaways

Planning and Managing Software Projects – Emanuele Della Valle

Page 41: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Spiral 41

Planning and Managing Software Projects – Emanuele Della Valle

Page 42: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Spiral 42

Emphasizes risk analysis & mgmt. in each phase

A Series of Mini-projectsA Series of Mini projects

Each addresses a set of “risks”• Start small, explore risks, prototype, plan, repeat, p , p yp , p , p

Early iterations are “cheapest”

Number of spirals is variableNumber of spirals is variable• Last set of steps are waterfall-like

Planning and Managing Software Projects – Emanuele Della Valle

Page 43: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Spiral 43

Advantages• Can be combined with other models

As costs increase risks decrease• As costs increase, risks decrease• Risk orientation provides early warning

DisadvantagesDisadvantages• More complex• Requires more management

Planning and Managing Software Projects – Emanuele Della Valle

Page 44: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Modified Waterfall – Sashimi 44

Overlapping phases

AdvantagesAdvantages• Reduces overall schedule• Reduces documentation• Works well if personnel continuity• Works well if personnel continuity

Disadvantages• Milestones more ambiguousMilestones more ambiguous• Progress tracking more difficult• Communication can be more difficult

Planning and Managing Software Projects – Emanuele Della Valle

Page 45: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Evolutionary Prototyping 45

Design most prominent parts first• Usually via a visual prototype

Good for situations with:• Rapidly changing requirements• Non-committal customer• Non-committal customer• Vague problem domain

Provides steady, visible progressProvides steady, visible progress

Disadvantages• Time estimation is difficult• Project completion date may be unknown• An excuse to do “code-and-fix”

Planning and Managing Software Projects – Emanuele Della Valle

Page 46: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Staged Delivery 46

Waterfall steps through architectural design

Then detailed design, code, test, deliver in stagesThen detailed design, code, test, deliver in stages

Advantages• Customers get product much soonerg p• Tangible signs of progress sooner• Problems discovered earlier• Increases flexibilityIncreases flexibility• Reduces: status reporting overhead & estimation error

Disadvantagesg• Requires more planning (for you the PM)• More releases increase effort (and possible feature

creep)p)

How’s this differ from Evolutionary Prototyping?

Planning and Managing Software Projects – Emanuele Della Valle

Page 47: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning V Process Model 47

Planning and Managing Software Projects – Emanuele Della Valle

Page 48: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning V Process Model 48

Designed for testability• Emphasizes Verification & Validation

Variation of waterfall

Strengthsg• Encourages V&V at all phases

Weaknesses• Does not handle iterations• Changes can be more difficult to handle

G d h i f t th t i hi h li bilit Good choice for systems that require high reliability such as patient control systems

Planning and Managing Software Projects – Emanuele Della Valle

Page 49: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning RAD 49

Rapid Application Development

Popular in the 80’sPopular in the 80 s• 1. Joint Requirements Planning (JRP)• 2. Joint Application Design (JAD)• 3 Construction • 3. Construction

– Heavy use of tools: code generators– Time-boxed; many prototypes

C• 4. Cutover

Good for systems with extensive user input available

Planning and Managing Software Projects – Emanuele Della Valle

Page 50: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning COTS 50

Commercial Off-The-Shelf software

Build-vs.-buy decisionBuild vs. buy decision

Advantages• Available immediatelyy• Potentially lower cost

Disadvantages• Not as tailored to your requirements

Remember: custom software rarely meets its ideal (so h l CO S )compare that reality to COTS option)

Planning and Managing Software Projects – Emanuele Della Valle

Page 51: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Choosing Your Lifecycle 51

Varies by project

Opt for “iterative” or “incremental” Opt for iterative or incremental

How well are requirements understood?

Wh t th i k ?What are the risks?

Is there a fixed deadline?

How experienced is the team or customer?

Planning and Managing Software Projects – Emanuele Della Valle

Page 52: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning McConnell’s way of choosing a Lifeclycle 52

Model a b c d e f g h i j kPure Waterfall x x ~ ~ ~Code and Fix x x

Legend: x = excellent, ~ = fair to excellent, Code-and-Fix x x

Spiral x x x x x ~ ~ ~ x xModified Waterfalls ~ ~ x x ~ ~ x ~ ~ ~E ol tion P otot ping

fair to excellent, empty box = poor.

Evolutionary Prototyping x ~ x ~ ~ x x ~Staged Delivery x x ~ ~ ~ ~ xCommercial (COTS) x x x ~

a. Works with poorly understood requirementsb. Works with poorly understood architecturec. Produces highly reliable systemg y yd. Produces system with large growth envelopee. Manages risksf. Can be constrained to a predefined scheduleg Has low overheadg. Has low overheadh. Allows for midcourse correctionsi. Provides customer with progress visibilityj. Provides management with progress visibility

Planning and Managing Software Projects – Emanuele Della Valle

j. Provides management with progress visibilityk. Requires little manager or developer sophistication

[source http://acmesoffware.com/acme/default.asp ]

Page 53: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning XP: eXtreme Programming 53

Not a Microsoft product

Part of movement called “Agile Development”Part of movement called Agile Development

A “Lightweight” methodology

A bit t ltA bit counter-culture

Currently in vogue

Motto: “Embrace Change”

Highly Incremental / Iterativeg y /

Planning and Managing Software Projects – Emanuele Della Valle

Page 54: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning eXtreme Programming 54

Planning and Managing Software Projects – Emanuele Della Valle

Page 55: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning eXtreme Programming 55

Suitable for small groups

Attempts to minimize unnecessary workAttempts to minimize unnecessary work

Uses an “on-site” customer

S ll lSmall releases

Pair programming

Refactoring

Stories as requirementsq

You want good developers if you use this

Planning and Managing Software Projects – Emanuele Della Valle

Page 56: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Other “Agile” Methodologies 56

Agile here means “lite”, reduced docs, highly iterative

Agile Software DevelopmentAgile Software Development• Alliance , http://www.agilealliance.org/home• their “manifesto”, http://agilemanifesto.org/• their book• their book

http://www.amazon.com/exec/obidos/ASIN/0201699699/104-2402656-5403151

SCRUM• Features 30-day “Sprint” cycles• See http://jeffsutherland.org/scrum/

Feature Driven Development (FDD)Feature Driven Development (FDD)• XP with more emphasis on docs and process

Planning and Managing Software Projects – Emanuele Della Valle

Page 57: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Other “Agile” Methodologies 57

Adaptive Software Development (ASD)• Book http://www.amazon.com/exec/obidos/tg/detail/-/0932633404/

Site http://www adaptivesd com/learn html• Site http://www.adaptivesd.com/learn.html

Dynamic System Development Method (DSDM)• Popular in Europe• Popular in Europe

Homegrown: developers often hide their “agile adventures” from managementadventures from management

Planning and Managing Software Projects – Emanuele Della Valle

Page 58: Planning Phase - P&MSP2010 (3/11)

Lifecycle Planning Other “Agile” Methodologies 58

Pros• Similar to XP, can reduce process overhead

Responsive to user feedback• Responsive to user feedback• Amenable to change

ConsCons• Requires close monitoring by PM• May not “scale” to large projects

Often requires better quality developers• Often requires better quality developers

Planning and Managing Software Projects – Emanuele Della Valle

Page 59: Planning Phase - P&MSP2010 (3/11)

Project Plans Planning 59

“Plans are nothing. But planning is everything.” Gen. Dwight Eisenhower

Planning and Managing Software Projects – Emanuele Della Valle

Page 60: Planning Phase - P&MSP2010 (3/11)

Project Plans Planning 60

Preliminary planning starts on day one

Even in the pre-project phaseEven in the pre project phase

Should not be conducted “in secret”

N d b i d lNeed buy-in and approval• Very important step• Both from above and below

Planning and Managing Software Projects – Emanuele Della Valle

Page 61: Planning Phase - P&MSP2010 (3/11)

Project Plans Your PM Process 61

Why• Deliverable: ROI

What• SOW, Requirements

How• Design Specification,

Software Software Development Plan, Lifecycle Futrell, Shafer, Shafer, “Quality Software Project Management”

Do it• Execution

Did it• Post Project Report

Planning and Managing Software Projects – Emanuele Della Valle

Page 62: Planning Phase - P&MSP2010 (3/11)

Project Plans Primary Planning Steps 62

Identify project scope and objectives

Identify project organizational environmentIdentify project organizational environment

Analyze project characteristics

Id tif j t d t d ti iti Identify project products and activities

Estimate effort for each activity

Identify risk

Allocate resources

Review and communicate plan

Planning and Managing Software Projects – Emanuele Della Valle

Page 63: Planning Phase - P&MSP2010 (3/11)

Project Plans Documents 63

Planning

ProductProduct

Planning and Managing Software Projects – Emanuele Della Valle

Page 64: Planning Phase - P&MSP2010 (3/11)

Project Plans Planning Documents 64

Software Development Plan (SDP)

Software Quality Assurance Plan (SQAP)Software Quality Assurance Plan (SQAP)

Software Configuration Management Plan (SCMP)

Ri k M t PlRisk Management Plan

Software Process Improvement Plan

Communications Management Plan

Migration Plang

Operations Plan

Planning and Managing Software Projects – Emanuele Della Valle

Page 65: Planning Phase - P&MSP2010 (3/11)

Project Plans Planning Documents 65

You (the PM) need to choose which documents are appropriate

Docs do not have to be lengthy

Small Set:S a Set• Software Development Plan• Risk Management Plan• Software Quality Assurance Plan • Software Quality Assurance Plan • Software Configuration Management Plan

Planning and Managing Software Projects – Emanuele Della Valle

Page 66: Planning Phase - P&MSP2010 (3/11)

Project Plans My Choice 66

Statement of Work (SOW)

Project CharterProject Charter

Software Project Management Plan (SPMP)

B d tBudget

Responsibility Assignment Matrix (RAM)

Risk Management Plan

Planning and Managing Software Projects – Emanuele Della Valle

Page 67: Planning Phase - P&MSP2010 (3/11)

Project Plans Product Documents 67

Statement of Need

System Interface SpecificationSystem Interface Specification

Software Requirements Specification

Software Design Specification

Software Validation & Verification PlanSoftware Validation & Verification Plan

User Documentation

Support Plan

Maintenance Documentation

Planning and Managing Software Projects – Emanuele Della Valle

Page 68: Planning Phase - P&MSP2010 (3/11)

Project Plans Software Project Survival Guide 68

Another McConnell book

See construx.com’s SPSG sectionSee construx.com s SPSG sectionhttp://www.construx.com/survivalguide/subject.htm• Good content online• Documents• Documents• Schedules• Checklists

P j t b it t l t• Project web site template

I tool I’ve often used• Software Project Survival Test• Software Project Survival Test

– http://www.construx.com/Page.aspx?hid=1229

Planning and Managing Software Projects – Emanuele Della Valle

Page 69: Planning Phase - P&MSP2010 (3/11)

Project Plans Planning 69

How much will it cost?

How long will it take?How long will it take?

How many people will it take?

Wh t i ht ?What might go wrong?

Planning and Managing Software Projects – Emanuele Della Valle

Page 70: Planning Phase - P&MSP2010 (3/11)

Project Plans Planning 70

Scoping

EstimationEstimation

Risk

S h d lSchedule

Control Strategy

Planning and Managing Software Projects – Emanuele Della Valle

Page 71: Planning Phase - P&MSP2010 (3/11)

Project Plans Process Issues 71

You want a fairly sophisticated process without incurring much overhead

Remember, projects are often larger than they first appear

Easier to loosen too much process than add later

Planning and Managing Software Projects – Emanuele Della Valle

Page 72: Planning Phase - P&MSP2010 (3/11)

Project Plans Plans Evolve Over Time 72

NASA’s “Manager’s Handbook for Software Development”

Planning and Managing Software Projects – Emanuele Della Valle

Page 73: Planning Phase - P&MSP2010 (3/11)

Project Plans Software Development Plan 73

Software Project Management Plan (SPMP)

Some consider it the most important document in the Some consider it the most important document in the project (along with SRS)• Can be seen as an aggregation of other core documents

Evolves over time as pieces come together

McConnell’s examplep• http://www.construx.com/Page.aspx?nid=240

Planning and Managing Software Projects – Emanuele Della Valle

Page 74: Planning Phase - P&MSP2010 (3/11)

Project Plans SDP / SPMP 74

Fundamental Sections• Project overview

Deliverables• Deliverables• Project organization• Managerial processes

h l• Technical processes• Budget• Schedule

Planning and Managing Software Projects – Emanuele Della Valle

Page 75: Planning Phase - P&MSP2010 (3/11)

Project Plans Communications Management Plan 75

Often a section of SPMP

Describes information flow to all partiesDescribes information flow to all parties• Gathering and distributing information

Status meetingsg• Monthly, Weekly, Daily?• Status reports are vital

Planning and Managing Software Projects – Emanuele Della Valle

Page 76: Planning Phase - P&MSP2010 (3/11)

Project Plans Create a Project Intranet 76

A great communications tool

Reference all project resources hereReference all project resources here

For instance have a look at portals of my current projectsp ojects• http://www.service-finder.eu• http://www.larkc.eu and http://wiki.larkc.eu• http://www search-computing it/• http://www.search computing.it/

Planning and Managing Software Projects – Emanuele Della Valle

Page 77: Planning Phase - P&MSP2010 (3/11)

Optional Readings 77

McConnell: 8 “Estimation”, 9 “Scheduling”

Thayer: Cori pg. 171-182 “Fundamentals of Master Thayer: Cori pg. 171 182 Fundamentals of Master Scheduling”, Fairley 183-194 “Work Breakdown Structures”

Review relevant links as appropriate on http://www.projectreference.com/

Planning and Managing Software Projects – Emanuele Della Valle

Page 78: Planning Phase - P&MSP2010 (3/11)

Questions? 78

Planning and Managing Software Projects – Emanuele Della Valle

Page 79: Planning Phase - P&MSP2010 (3/11)

Comics 79

Planning and Managing Software Projects – Emanuele Della Valle

[source http://www.cs.ucl.ac.uk/external/atanu/req.gif ]

Page 80: Planning Phase - P&MSP2010 (3/11)

80

Planning and Managing Software Projects – Emanuele Della Valle

Page 81: Planning Phase - P&MSP2010 (3/11)

Comics 81

Planning and Managing Software Projects – Emanuele Della Valle

[source http://www.codinghorror.com/blog/images/software-engineering-explained.png ]

Page 82: Planning Phase - P&MSP2010 (3/11)

Read out more about the tree swing 82

http://www.businessballs.com/treeswing.htm

Planning and Managing Software Projects – Emanuele Della Valle