SlideShare a Scribd company logo
Software Project Management

Session 3: Planning
1
Today
• 1. Phases in Detail
– Step-by-step of typical software project

• 2. Lifecycle Planning
• 3. Project plans
• Next Week: Lots of Project-ish Details: WBS,
PERT, CPM, Scheduling & Estimation

2
Session 2 Review
• PMI Fundamentals
• PMI Processes
• Project Organization
– Functional, Project, Matrix Orgs.

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

• Readings
3
Project Phases

4
Time Allocation by Phase
• Remember the 40-20-40 Rule
• Specification-Implementation-Test
Planning

Code &
Unit Test

Integration &
Test

Commercial
DP

25%

40%

35%

Internet
Systems

55%

15%

30%

Real-time
Systems

35%

25%

40%

Defense
Systems

40%

20%

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

5
Time Allocation by Phase
Activity

Small Project
(2.5K LOC)

Large Project
(500K LOC)

Analysis

10%

30%

Design

20%

20%

Code

25%

10%

Unit Test

20%

5%

Integration

15%

20%

System test

10%

15%
McConnell, Steve, “Rapid Development”

6
Activities by % of Total Effort

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

7
Potential Deliverables by Phase

8
Concept Exploration
• The “Why” phase
• Not a “mandatory formal” phase
– Sometimes called the “pre-project” phase

• Collecting project ideas
– Then the “funneling” process

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

• Initial planning and estimates
9
Concept Exploration
• Possibly includes Procurement Management:
• RFP Process
• Vendor selection
• Contract management

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

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

• Potential Phase Outputs:
– Concept Document, Product Description, Proposal,
SOW, Project Charter
10
Concept Exploration
• Characteristics & Issues
– Lack of full commitment and leadership
– 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 task
– Achieved via:
• Good concept document or equivalent
• Demonstration of clear need (justification)
• Initial estimates
11
Requirements
• The “What” phase
• Inputs: SOW, Proposal
• Outputs:
– Requirements Document (RD)
• a.k.a.Requirements Specification Document (RSD)
• Software Requirements Specification (SRS)

– 1st Project Baseline
– Software Project Management Plan (SPMP)
– Requirements Approval & Sign-Off
• Your most difficult task in this phase
12
Requirements
•
•
•
•

Perhaps most important & difficult phase
Shortchanging it is a ‘classic mistake’
Can begin with a Project Kickoff Meeting
Can end with a Software Requirements
Review (SRR)
– For Sponsor and/or customer(s) approval

13
Why are Requirements so Important?

14
Requirements
• Characteristics & Issues
– Conflict of interest: developer vs. customer
– Potential tug-of-war:
• Disagreement on Features & Estimates
• Especially in fixed-price contracts

– Frequent requirements changes
– Achieving sign-off

• Project planning occurs in parallel
15
Requirements
• Requirements are capabilities and condition
to which the system – more broadly, the
project – must conform

16
2 Types of Requirements
– Functional (behavioral)
– Features and capabilities

– Non-functional (a.k.a. “technical”) (everything else)
– Usability
» Human factors, help, documentation
– Reliability
» Failure rates, recoverability, availability
– Performance
» Response times, throughput, resource usage
– Supportability
» Maintainability, internationalization
– Operations: systems management, installation
– Interface: integration with other systems
– Other: legal, packaging, hardware
17
Requirements
• Other ways of categorizing
– Go-Ahead vs. Catch-up
• 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
18
Early Phase Meetings
• Project Kickoff Meeting
• Project Brainstorming Meeting
– Clarify goals, scope, assumptions
– Refine estimates

• WBS Meeting

19
Analysis & Design
• The “How” Phases
• Inputs: Requirements Document
• Outputs:
–
–
–
–
–
–

Functional Specification
Detailed Design Document
User Interface Specification
Data Model
Prototype (can also be done with requirements)
Updated Plan (improved estimates; new baseline)
20
Analysis & Design
• a.k.a. Top-level design & detailed design
• Continues process from RD
• Ends with Critical Design Review (CDR)
– Formal sign-off
– Can also include earlier Preliminary Design
Review (PDR) for high level design

21
Analysis & Design
• Characteristics & Issues
– Enthusiasm via momentum
– Team structure and assignments finalized
– Delays due to requirements changes, new
information or late ideas
– Issues around personnel responsibilities
– Unfeasible requirements (technical complexity)
– Resource Issues
• Including inter-project contention
22
Development
• The “Do It” phase
• Coding & Unit testing
• Often overlaps Design & Integration phases
– To shorten the overall schedule
– PM needs to coordinate this

23
Development
• Other concurrent activities
–
–
–
–
–
–

Design completion
Integration begins
Unit testing of individual components
Test bed setup (environment and tools)
Project plans updated
Scope and Risk Management conducted

24
Development
• Characteristics
– Pressure increases
– Staffing at highest levels
– Often a “heads-down” operation

• Issues
–
–
–
–

Last-minute changes
Team coordination (esp. in large projects)
Communication overhead
Management of sub-contractors
25
Integration & Test
• Evolves from Dev. Phase
• Often done as 2 parallel phases
– Partial integration & initial test

• Starts with integration of modules
• An initial, incomplete version constructed
• Progressively add more components

26
Integration & Test
• Integration primarily a programmer task
• Test primarily a QA team task
• Integration:
– Top-down: Core functionality first, empty
shells for incomplete routines (stubs)
– Bottom up: gradually bind low-level modules
– Prefer top-down generally
27
Integration & Test
• Tests
–
–
–
–
–

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

• Other activities
– Final budgeting; risk mgmt.; training;
installation preparation; team reduced
28
Integration & Test
• Characteristics & Issues
–
–
–
–
–
–
–

Increased pressure
Overtime
Customer conflicts over features
Frustration over last-minute failures
Budget overruns
Motivation problems (such as burnout)
Difficulty in customer acceptance
• Esp. true for fixed-price contracts
29
Deployment & Maintenance
• Installation depends on system type
– Web-based, CD-ROM, in-house, etc.

• Migration strategy
• How to get customers up on the system
– Parallel operation

• Deployment typically in your project plan,
maintenance not
30
Deployment & Maintenance
• Maintenance
– Fix defects
– Add new features
– Improve performance

• Configuration control is very important here
• Documents need to be maintained also
• Sometimes a single team maintains multiple
products
31
Deployment & Maintenance
• Characteristics & Issues
–
–
–
–
–
–

Lack of enthusiasm
Pressure for quick fixes
Insufficient budget
Too many patches
Personnel turnover
Regression testing is critical
• Preferably through automated tools
32
Lifecycle Planning
•
•
•
•

a.k.a. Lifecycle Management or SDLC
Greatly influences your chance of success
Not choosing a lifecycle is a bad option
Three primary lifecycle model components
– Phases and their order
– Intermediate products of each phase
– Reviews used in each phase
33
Lifecycle Planning
• Different projects require different approaches
• You 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 appropriate
• There are more than covered here
• A lifecycle is not a design, modeling or
diagramming technique
– The same technique (UML, DFD, etc) can be used with
multiple lifecycles
34
Pure Waterfall
• The “granddaddy” of models
• Linear sequence of phases
– “Pure” model: no phases overlap

• Document driven
• All planning done up-front

35
Waterfall Risk
• Why does the waterfall model “invite risk”?
• Integration and testing occur at the end
– Often anyone’s 1st chance to “see” the program

36
Pure Waterfall
• Works well for projects with
– Stable product definition
– Well-understood technologies
– Quality constraints stronger than cost &
schedule
– Technically weak staff
• Provides structure
• Good for overseas projects
37
Pure Waterfall
• Disadvantages
– Not flexible
• Rigid march from start->finish

– Difficult to fully define requirements up front
– Can produce excessive documentation
– Few visible signs of progress until the end

38
Code-and-Fix
• “Code-like-Hell”
• Specification (maybe), Code (yes), Release
(maybe)
• Advantages
– No overhead
– Requires little expertise

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

• Suitable for prototypes or throwaways
39
Spiral

40
Spiral
• Emphasizes risk analysis & mgmt. in each phase
• A Series of Mini-projects
• Each addresses a set of “risks”
– Start small, explore risks, prototype, plan, repeat

• Early iterations are “cheapest”
• Number of spirals is variable
– Last set of steps are waterfall-like

41
Spiral
• Advantages
– Can be combined with other models
– As costs increase, risks decrease
– Risk orientation provides early warning

• Disadvantages
– More complex
– Requires more management
42
Modified Waterfall – Sashimi
• Overlapping phases
• Advantages
– Reduces overall schedule
– Reduces documentation
– Works well if personnel continuity

• Disadvantages
– Milestones more ambiguous
– Progress tracking more difficult
– Communication can be more difficult
43
Evolutionary Prototyping
• Design most prominent parts first
– Usually via a visual prototype

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

• Provides steady, visible progress
• Disadvantages
– Time estimation is difficult
– Project completion date may be unknown
– An excuse to do “code-and-fix”

44
Staged Delivery
• Waterfall steps through architectural design
• Then detailed design, code, test, deliver in stages
• Advantages
•
•
•
•
•

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

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

• How’s this differ from Evolutionary Prototyping?
45
V Process Model

46
V Process Model
• Designed for testability
– Emphasizes Verification & Validation

• Variation of waterfall
• Strengths
– Encourages V&V at all phases

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

• Good choice for systems that require high
reliability such as patient control systems
47
RAD
• Rapid Application Development
• Popular in the 80’s
– 1. Joint Requirements Planning (JRP)
– 2. Joint Application Design (JAD)
– 3. Construction
• Heavy use of tools: code generators
• Time-boxed; many prototypes

– 4. Cutover

• Good for systems with extensive user input
available
48
COTS
• Commercial Off-The-Shelf software
• Build-vs.-buy decision
• Advantages
– Available immediately
– Potentially lower cost

• Disadvantages
– Not as tailored to your requirements

• Remember: custom software rarely meets its ideal
(so compare that reality to COTS option)
49
XP: eXtreme Programming
• Not a Microsoft product
• Part of movement called “Agile
Development”
• A “Lightweight” methodology
• A bit counter-culture
• Currently in vogue
• Motto: “Embrace Change”
• Highly Incremental / Iterative
50
eXtreme Programming

51
eXtreme Programming
•
•
•
•
•
•
•
•

Suitable for small groups
Attempts to minimize unnecessary work
Uses an “on-site” customer
Small releases
Pair programming
Refactoring
Stories as requirements
You want good developers if you use this
52
Other “Agile” Methodologies
• Agile here means “lite”, reduced docs,
highly iterative
• Agile Software Development
– Alliance , their “manifesto”, their book

• SCRUM
– Features 30-day “Sprint” cycles

• Feature Driven Development (FDD)
– XP with more emphasis on docs and process
53
Other “Agile” Methodologies
• Adaptive Software Development (ASD)
– Book, site

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

• Homegrown: developers often hide their
“agile adventures” from management
54
Other “Agile” Methodologies
• Pros
– Similar to XP, can reduce process overhead
– Responsive to user feedback
– Amenable to change

• Cons
– Requires close monitoring by PM
– May not “scale” to large projects
– Often requires better quality developers
55
Rational Unified Process
•
•
•
•
•
•
•
•

RUP
From Rational Corporation
“Generic” version is the Unified Process
Commercial
Extensive tool support (expensive)
Object-oriented
Incremental
Newer
56
Rational Unified Process

57
Rational Unified Process
•
•
•
•
•
•
•
•
•

Develop Iteratively
Manage Requirements
Uses UML (Unified Modeling Language)
Produces “artifacts”
Use component-based architecture
Visually model software
Complex process
A “framework”
Suitable for large scale systems
58
Choosing Your Lifecycle
•
•
•
•
•
•
•

Varies by project
Opt for “iterative” or “incremental”
How well are requirements understood?
What are the risks?
Is there a fixed deadline?
How experienced is the team or customer?
See the table in McConnell
59
IEEE 1074
• A standard for developing software
processes
–
–
–
–
–
–

Lifecycle model selection
Project management process
Predevelopment processes
Development processes
Post-development processes
Integral process
60
Planning
• “Plans are nothing. But planning is
everything.” Gen. Dwight Eisenhower

61
Planning
•
•
•
•

Preliminary planning starts on day one
Even in the pre-project phase
Should not be conducted “in secret”
Need buy-in and approval
– Very important step
– Both from above and below

62
Your PM Process
• Why
• Deliverable: ROI

• What
• SOW, Requirements

• How
• Design Specification, SDP, Lifecycle

Futrell, Shafer, Shafer, “Quality Software
Project Management”

• Do
• Execution

• Done
• PPR
63
Primary Planning Steps
•
•
•
•
•
•
•
•

Identify project scope and objectives
Identify project organizational environment
Analyze project characteristics
Identify project products and activities
Estimate effort for each activity
Identify risk
Allocate resources
Review and communicate plan
64
Documents
• Planning
• Product

65
Planning Documents
• Software Development Plan (SDP)
• Software Quality Assurance Plan (SQAP)
• Software Configuration Management Plan
(SCMP)
• Risk Management Plan
• Software Process Improvement Plan
• Communications Management Plan
• Migration Plan
• Operations Plan
66
Planning Documents
• You (the PM) need to choose which
documents are appropriate
• Docs do not have to be lengthy
• Small Set:
–
–
–
–

Software Development Plan
Risk Management Plan
Software Quality Assurance Plan
Software Configuration Management Plan
67
Planning Documents
•
•
•
•
•
•
•

Project ROI Analysis
Statement of Work (SOW)
Project Charter
Software Project Management Plan (SPMP)
Budget
Responsibility Assignment Matrix (RAM)
Risk Management Plan
68
Product Documents
• Statement of Need
• System Interface
Specification
• Software Requirements
Specification
• Software Design
Specification
• Software Validation &
Verification Plan
• User Documentation

• Support Plan
• Maintenance
Documentation

69
Software Project Survival Guide
• Another McConnell book
• See construx.com’s SPSG section
–
–
–
–
–

Good content online
Documents
Schedules
Checklists
Project web site template
70
Planning
•
•
•
•

How much will it cost?
How long will it take?
How many people will it take?
What might go wrong?

71
Planning
•
•
•
•
•

Scoping
Estimation
Risk
Schedule
Control Strategy

72
Process Issues
• 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

73
Plans Evolve Over Time

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

74
Software Development Plan
• Software Project Management Plan (SPMP)
• 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 example
75
SDP / SPMP
• Fundamental Sections
–
–
–
–
–
–
–

Project overview
Deliverables
Project organization
Managerial processes
Technical processes
Budget
Schedule
76
Communications Management Plan
• Often a section of SPMP
• Describes information flow to all parties
– Gathering and distributing information

• Status meetings
– Monthly, Weekly, Daily?
– Status reports are vital

77
Create a Project Intranet
• A great communications tool
• Reference all project resources here

78
Homework
• McConnell: 8 “Estimation”, 9 “Scheduling”
• Thayer: Cori pg. 171-182 “Fundamentals of
Master Scheduling”, Fairley 183-194
“Work Breakdown Structures”
• Class site, review relevant links as
appropriate.

79
Questions?

80

More Related Content

What's hot

Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Aman Adhikari
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
Mubashir Ali
 
SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)
uma sree
 
Gathering requirements
Gathering requirementsGathering requirements
Gathering requirements
Doan Truong Giang
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
KarthigaiSelviS3
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceEr. Nancy
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
Ajit Nayak
 
Introduction of software project management
Introduction of software project managementIntroduction of software project management
Introduction of software project management
REHMAT ULLAH
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
Hitesh Mohapatra
 
Ch 9 project monitoring & control updated
Ch 9 project monitoring & control updatedCh 9 project monitoring & control updated
Ch 9 project monitoring & control updated
Farhana Rehman
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
NoorHameed6
 
Software estimating
Software estimatingSoftware estimating
Software estimating
Adam Cole
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
UMA PARAMESWARI
 
06. Project Management Process Groups
06. Project Management Process Groups06. Project Management Process Groups
06. Project Management Process Groups
BhuWan Khadka
 
Software requirements
Software requirementsSoftware requirements
Software requirements
Dr. Loganathan R
 
The Software Development Process
The Software Development ProcessThe Software Development Process
The Software Development Process
Cesar Augusto Nogueira
 
software maintenance
software maintenancesoftware maintenance
software maintenance
rajshreemuthiah
 
Requirement analysis and specification
Requirement analysis and specificationRequirement analysis and specification
Requirement analysis and specification
M.E. at GTU- PG School
 
Software Project Management (SPM)
Software Project Management (SPM)Software Project Management (SPM)
Software Project Management (SPM)
RubySaud
 
Software project management 3
Software project management 3Software project management 3
Software project management 3
Indu Sharma Bhardwaj
 

What's hot (20)

Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
 
SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)
 
Gathering requirements
Gathering requirementsGathering requirements
Gathering requirements
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Introduction of software project management
Introduction of software project managementIntroduction of software project management
Introduction of software project management
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
Ch 9 project monitoring & control updated
Ch 9 project monitoring & control updatedCh 9 project monitoring & control updated
Ch 9 project monitoring & control updated
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
 
Software estimating
Software estimatingSoftware estimating
Software estimating
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
06. Project Management Process Groups
06. Project Management Process Groups06. Project Management Process Groups
06. Project Management Process Groups
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
The Software Development Process
The Software Development ProcessThe Software Development Process
The Software Development Process
 
software maintenance
software maintenancesoftware maintenance
software maintenance
 
Requirement analysis and specification
Requirement analysis and specificationRequirement analysis and specification
Requirement analysis and specification
 
Software Project Management (SPM)
Software Project Management (SPM)Software Project Management (SPM)
Software Project Management (SPM)
 
Software project management 3
Software project management 3Software project management 3
Software project management 3
 

Viewers also liked

IT Change Control Process
IT Change Control  ProcessIT Change Control  Process
IT Change Control Process
benji00
 
Software Project Management lecture 10
Software Project Management lecture 10Software Project Management lecture 10
Software Project Management lecture 10Syed Muhammad Hammad
 
Software Project Management (lecture 2)
Software Project Management (lecture 2)Software Project Management (lecture 2)
Software Project Management (lecture 2)Syed Muhammad Hammad
 
2. project scope management
2. project scope management2. project scope management
2. project scope management
Mohamed Salah Eldien Mohamed Ali
 
ERP Project Scope
ERP Project ScopeERP Project Scope
ERP Project Scope
Cathie Metcalfe
 
Organizational culture and environment the constraints
Organizational culture and environment the constraintsOrganizational culture and environment the constraints
Organizational culture and environment the constraintsPRINTDESK by Dan
 
functional and matrix organization
functional and matrix organizationfunctional and matrix organization
functional and matrix organizationBhavana Rohidekar
 
Project Management Plan - Cafe Au Lait.PDF
Project Management Plan - Cafe Au Lait.PDFProject Management Plan - Cafe Au Lait.PDF
Project Management Plan - Cafe Au Lait.PDFGeoff Penhorwood
 
Project Scope Management - PMBOK 5th Edition
Project Scope Management - PMBOK 5th EditionProject Scope Management - PMBOK 5th Edition
Project Scope Management - PMBOK 5th Edition
pankajsh10
 
Software requirements specification of Library Management System
Software requirements specification of Library Management SystemSoftware requirements specification of Library Management System
Software requirements specification of Library Management System
Soumili Sen
 

Viewers also liked (10)

IT Change Control Process
IT Change Control  ProcessIT Change Control  Process
IT Change Control Process
 
Software Project Management lecture 10
Software Project Management lecture 10Software Project Management lecture 10
Software Project Management lecture 10
 
Software Project Management (lecture 2)
Software Project Management (lecture 2)Software Project Management (lecture 2)
Software Project Management (lecture 2)
 
2. project scope management
2. project scope management2. project scope management
2. project scope management
 
ERP Project Scope
ERP Project ScopeERP Project Scope
ERP Project Scope
 
Organizational culture and environment the constraints
Organizational culture and environment the constraintsOrganizational culture and environment the constraints
Organizational culture and environment the constraints
 
functional and matrix organization
functional and matrix organizationfunctional and matrix organization
functional and matrix organization
 
Project Management Plan - Cafe Au Lait.PDF
Project Management Plan - Cafe Au Lait.PDFProject Management Plan - Cafe Au Lait.PDF
Project Management Plan - Cafe Au Lait.PDF
 
Project Scope Management - PMBOK 5th Edition
Project Scope Management - PMBOK 5th EditionProject Scope Management - PMBOK 5th Edition
Project Scope Management - PMBOK 5th Edition
 
Software requirements specification of Library Management System
Software requirements specification of Library Management SystemSoftware requirements specification of Library Management System
Software requirements specification of Library Management System
 

Similar to Software Project Management (lecture 3)

Spm lecture-3
Spm lecture-3Spm lecture-3
Spm lecture-3
Sulman Ahmed
 
Lect3
Lect3Lect3
Mg6088 spm unit-2
Mg6088 spm unit-2Mg6088 spm unit-2
Mg6088 spm unit-2
SIMONTHOMAS S
 
project_life_cycles_models.ppt
project_life_cycles_models.pptproject_life_cycles_models.ppt
project_life_cycles_models.ppt
chandrasekarnatraj
 
Software Project Management( lecture 1)
Software Project Management( lecture 1)Software Project Management( lecture 1)
Software Project Management( lecture 1)Syed Muhammad Hammad
 
System development methodologies L2.ppt
System development methodologies L2.pptSystem development methodologies L2.ppt
System development methodologies L2.ppt
NyamburaKinyua
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
RIKSOF
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
ElieNGOMSEU
 
Session2.pptx.ppt
Session2.pptx.pptSession2.pptx.ppt
Session2.pptx.ppt
AbdugafforAbduganiye
 
SDLC.PPT
SDLC.PPTSDLC.PPT
SDLC.PPT
SravyaPreethi1
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
Mehuk1
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
AqeelAbbas94
 
presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)
EveryThing68
 
SDLC.ppt
SDLC.pptSDLC.ppt
SDLC.ppt
SnehaBarua5
 
project on software industry
project on software industryproject on software industry
project on software industry
Aamir chouhan
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
Azhar Shaik
 

Similar to Software Project Management (lecture 3) (20)

Spm lecture-3
Spm lecture-3Spm lecture-3
Spm lecture-3
 
Lect3
Lect3Lect3
Lect3
 
Mg6088 spm unit-2
Mg6088 spm unit-2Mg6088 spm unit-2
Mg6088 spm unit-2
 
project_life_cycles_models.ppt
project_life_cycles_models.pptproject_life_cycles_models.ppt
project_life_cycles_models.ppt
 
Software Project Management( lecture 1)
Software Project Management( lecture 1)Software Project Management( lecture 1)
Software Project Management( lecture 1)
 
System development methodologies L2.ppt
System development methodologies L2.pptSystem development methodologies L2.ppt
System development methodologies L2.ppt
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
ddd.ppt
ddd.pptddd.ppt
ddd.ppt
 
Session2.pptx.ppt
Session2.pptx.pptSession2.pptx.ppt
Session2.pptx.ppt
 
Session2 (1).ppt
Session2 (1).pptSession2 (1).ppt
Session2 (1).ppt
 
SDLC.PPT
SDLC.PPTSDLC.PPT
SDLC.PPT
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)
 
SDLC.ppt
SDLC.pptSDLC.ppt
SDLC.ppt
 
project on software industry
project on software industryproject on software industry
project on software industry
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
Sdlc
SdlcSdlc
Sdlc
 

More from Syed Muhammad Hammad

Software Project Management lecture 12
Software Project Management lecture 12Software Project Management lecture 12
Software Project Management lecture 12Syed Muhammad Hammad
 
Software Project Management lecture 9
Software Project Management lecture 9Software Project Management lecture 9
Software Project Management lecture 9Syed Muhammad Hammad
 
Software Project Management lecture 8
Software Project Management lecture 8Software Project Management lecture 8
Software Project Management lecture 8Syed Muhammad Hammad
 
Software Project Management lecture 7
Software Project Management lecture 7Software Project Management lecture 7
Software Project Management lecture 7Syed Muhammad Hammad
 
Software Project Mangmement (Lecture 5)
Software Project Mangmement (Lecture 5)Software Project Mangmement (Lecture 5)
Software Project Mangmement (Lecture 5)Syed Muhammad Hammad
 
Software Project Management (lecture 4)
Software Project Management (lecture 4)Software Project Management (lecture 4)
Software Project Management (lecture 4)Syed Muhammad Hammad
 
Scm
ScmScm
An interdisciplinary course_in_digital_image_processing
An interdisciplinary course_in_digital_image_processingAn interdisciplinary course_in_digital_image_processing
An interdisciplinary course_in_digital_image_processingSyed Muhammad Hammad
 

More from Syed Muhammad Hammad (12)

Software Project Management lecture 12
Software Project Management lecture 12Software Project Management lecture 12
Software Project Management lecture 12
 
Software Project Management lecture 9
Software Project Management lecture 9Software Project Management lecture 9
Software Project Management lecture 9
 
Software Project Management lecture 8
Software Project Management lecture 8Software Project Management lecture 8
Software Project Management lecture 8
 
Software Project Management lecture 7
Software Project Management lecture 7Software Project Management lecture 7
Software Project Management lecture 7
 
Software Project Mangmement (Lecture 5)
Software Project Mangmement (Lecture 5)Software Project Mangmement (Lecture 5)
Software Project Mangmement (Lecture 5)
 
Software Project Management (lecture 4)
Software Project Management (lecture 4)Software Project Management (lecture 4)
Software Project Management (lecture 4)
 
Scm
ScmScm
Scm
 
Java easy learning
Java easy  learningJava easy  learning
Java easy learning
 
An interdisciplinary course_in_digital_image_processing
An interdisciplinary course_in_digital_image_processingAn interdisciplinary course_in_digital_image_processing
An interdisciplinary course_in_digital_image_processing
 
Image Segmentation
 Image Segmentation Image Segmentation
Image Segmentation
 
Image processing tatorial
Image processing tatorialImage processing tatorial
Image processing tatorial
 
Mat-lab image processing tatorial
Mat-lab  image processing tatorialMat-lab  image processing tatorial
Mat-lab image processing tatorial
 

Recently uploaded

The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf
CarlosHernanMontoyab2
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
Jisc
 
Honest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptxHonest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptx
timhan337
 
special B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdfspecial B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdf
Special education needs
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
JosvitaDsouza2
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
Embracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic ImperativeEmbracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic Imperative
Peter Windle
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
Balvir Singh
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
Tamralipta Mahavidyalaya
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
vaibhavrinwa19
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
RaedMohamed3
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
TechSoup
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
MysoreMuleSoftMeetup
 
Polish students' mobility in the Czech Republic
Polish students' mobility in the Czech RepublicPolish students' mobility in the Czech Republic
Polish students' mobility in the Czech Republic
Anna Sz.
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 

Recently uploaded (20)

The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf678020731-Sumas-y-Restas-Para-Colorear.pdf
678020731-Sumas-y-Restas-Para-Colorear.pdf
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
 
Honest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptxHonest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptx
 
special B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdfspecial B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdf
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
Embracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic ImperativeEmbracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic Imperative
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
 
Polish students' mobility in the Czech Republic
Polish students' mobility in the Czech RepublicPolish students' mobility in the Czech Republic
Polish students' mobility in the Czech Republic
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 

Software Project Management (lecture 3)

  • 2. Today • 1. Phases in Detail – Step-by-step of typical software project • 2. Lifecycle Planning • 3. Project plans • Next Week: Lots of Project-ish Details: WBS, PERT, CPM, Scheduling & Estimation 2
  • 3. Session 2 Review • PMI Fundamentals • PMI Processes • Project Organization – Functional, Project, Matrix Orgs. • Initial documents – Statement of Work (SOW) – Project Charter • Readings 3
  • 5. Time Allocation by Phase • Remember the 40-20-40 Rule • Specification-Implementation-Test Planning Code & Unit Test Integration & Test Commercial DP 25% 40% 35% Internet Systems 55% 15% 30% Real-time Systems 35% 25% 40% Defense Systems 40% 20% 40% Bennatan, E.M, “On Time Within Budget” 5
  • 6. Time Allocation by Phase Activity Small Project (2.5K LOC) Large Project (500K LOC) Analysis 10% 30% Design 20% 20% Code 25% 10% Unit Test 20% 5% Integration 15% 20% System test 10% 15% McConnell, Steve, “Rapid Development” 6
  • 7. Activities by % of Total Effort NASA’s “Manager’s Handbook for Software Development” 7
  • 9. Concept Exploration • The “Why” phase • Not a “mandatory formal” phase – Sometimes called the “pre-project” phase • Collecting project ideas – Then the “funneling” process • Project Justification – ROI – Cost-benefit analysis – Project Portfolio Matrix • Initial planning and estimates 9
  • 10. Concept Exploration • Possibly includes Procurement Management: • RFP Process • Vendor selection • Contract management • Gathering the initial team – Including PM if not already on-board • Identify the project sponsor – Primary contact for approval and decision making • Potential Phase Outputs: – Concept Document, Product Description, Proposal, SOW, Project Charter 10
  • 11. Concept Exploration • Characteristics & Issues – Lack of full commitment and leadership – 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 task – Achieved via: • Good concept document or equivalent • Demonstration of clear need (justification) • Initial estimates 11
  • 12. Requirements • The “What” phase • Inputs: SOW, Proposal • Outputs: – Requirements Document (RD) • a.k.a.Requirements Specification Document (RSD) • Software Requirements Specification (SRS) – 1st Project Baseline – Software Project Management Plan (SPMP) – Requirements Approval & Sign-Off • Your most difficult task in this phase 12
  • 13. Requirements • • • • Perhaps most important & difficult phase Shortchanging it is a ‘classic mistake’ Can begin with a Project Kickoff Meeting Can end with a Software Requirements Review (SRR) – For Sponsor and/or customer(s) approval 13
  • 14. Why are Requirements so Important? 14
  • 15. Requirements • Characteristics & Issues – Conflict of interest: developer vs. customer – Potential tug-of-war: • Disagreement on Features & Estimates • Especially in fixed-price contracts – Frequent requirements changes – Achieving sign-off • Project planning occurs in parallel 15
  • 16. Requirements • Requirements are capabilities and condition to which the system – more broadly, the project – must conform 16
  • 17. 2 Types of Requirements – Functional (behavioral) – Features and capabilities – Non-functional (a.k.a. “technical”) (everything else) – Usability » Human factors, help, documentation – Reliability » Failure rates, recoverability, availability – Performance » Response times, throughput, resource usage – Supportability » Maintainability, internationalization – Operations: systems management, installation – Interface: integration with other systems – Other: legal, packaging, hardware 17
  • 18. Requirements • Other ways of categorizing – Go-Ahead vs. Catch-up • 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 18
  • 19. Early Phase Meetings • Project Kickoff Meeting • Project Brainstorming Meeting – Clarify goals, scope, assumptions – Refine estimates • WBS Meeting 19
  • 20. Analysis & Design • The “How” Phases • Inputs: Requirements Document • Outputs: – – – – – – Functional Specification Detailed Design Document User Interface Specification Data Model Prototype (can also be done with requirements) Updated Plan (improved estimates; new baseline) 20
  • 21. Analysis & Design • a.k.a. Top-level design & detailed design • Continues process from RD • Ends with Critical Design Review (CDR) – Formal sign-off – Can also include earlier Preliminary Design Review (PDR) for high level design 21
  • 22. Analysis & Design • Characteristics & Issues – Enthusiasm via momentum – Team structure and assignments finalized – Delays due to requirements changes, new information or late ideas – Issues around personnel responsibilities – Unfeasible requirements (technical complexity) – Resource Issues • Including inter-project contention 22
  • 23. Development • The “Do It” phase • Coding & Unit testing • Often overlaps Design & Integration phases – To shorten the overall schedule – PM needs to coordinate this 23
  • 24. Development • Other concurrent activities – – – – – – Design completion Integration begins Unit testing of individual components Test bed setup (environment and tools) Project plans updated Scope and Risk Management conducted 24
  • 25. Development • Characteristics – Pressure increases – Staffing at highest levels – Often a “heads-down” operation • Issues – – – – Last-minute changes Team coordination (esp. in large projects) Communication overhead Management of sub-contractors 25
  • 26. Integration & Test • Evolves from Dev. Phase • Often done as 2 parallel phases – Partial integration & initial test • Starts with integration of modules • An initial, incomplete version constructed • Progressively add more components 26
  • 27. Integration & Test • Integration primarily a programmer task • Test primarily a QA team task • Integration: – Top-down: Core functionality first, empty shells for incomplete routines (stubs) – Bottom up: gradually bind low-level modules – Prefer top-down generally 27
  • 28. Integration & Test • Tests – – – – – Integration testing Black & White-box testing Load & Stress testing Alpha & Beta testing Acceptance testing • Other activities – Final budgeting; risk mgmt.; training; installation preparation; team reduced 28
  • 29. Integration & Test • Characteristics & Issues – – – – – – – Increased pressure Overtime Customer conflicts over features Frustration over last-minute failures Budget overruns Motivation problems (such as burnout) Difficulty in customer acceptance • Esp. true for fixed-price contracts 29
  • 30. Deployment & Maintenance • Installation depends on system type – Web-based, CD-ROM, in-house, etc. • Migration strategy • How to get customers up on the system – Parallel operation • Deployment typically in your project plan, maintenance not 30
  • 31. Deployment & Maintenance • Maintenance – Fix defects – Add new features – Improve performance • Configuration control is very important here • Documents need to be maintained also • Sometimes a single team maintains multiple products 31
  • 32. Deployment & Maintenance • Characteristics & Issues – – – – – – Lack of enthusiasm Pressure for quick fixes Insufficient budget Too many patches Personnel turnover Regression testing is critical • Preferably through automated tools 32
  • 33. Lifecycle Planning • • • • a.k.a. Lifecycle Management or SDLC Greatly influences your chance of success Not choosing a lifecycle is a bad option Three primary lifecycle model components – Phases and their order – Intermediate products of each phase – Reviews used in each phase 33
  • 34. Lifecycle Planning • Different projects require different approaches • You 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 appropriate • There are more than covered here • A lifecycle is not a design, modeling or diagramming technique – The same technique (UML, DFD, etc) can be used with multiple lifecycles 34
  • 35. Pure Waterfall • The “granddaddy” of models • Linear sequence of phases – “Pure” model: no phases overlap • Document driven • All planning done up-front 35
  • 36. Waterfall Risk • Why does the waterfall model “invite risk”? • Integration and testing occur at the end – Often anyone’s 1st chance to “see” the program 36
  • 37. Pure Waterfall • Works well for projects with – Stable product definition – Well-understood technologies – Quality constraints stronger than cost & schedule – Technically weak staff • Provides structure • Good for overseas projects 37
  • 38. Pure Waterfall • Disadvantages – Not flexible • Rigid march from start->finish – Difficult to fully define requirements up front – Can produce excessive documentation – Few visible signs of progress until the end 38
  • 39. Code-and-Fix • “Code-like-Hell” • Specification (maybe), Code (yes), Release (maybe) • Advantages – No overhead – Requires little expertise • Disadvantages – No process, quality control, etc. – Highly risky • Suitable for prototypes or throwaways 39
  • 41. Spiral • Emphasizes risk analysis & mgmt. in each phase • A Series of Mini-projects • Each addresses a set of “risks” – Start small, explore risks, prototype, plan, repeat • Early iterations are “cheapest” • Number of spirals is variable – Last set of steps are waterfall-like 41
  • 42. Spiral • Advantages – Can be combined with other models – As costs increase, risks decrease – Risk orientation provides early warning • Disadvantages – More complex – Requires more management 42
  • 43. Modified Waterfall – Sashimi • Overlapping phases • Advantages – Reduces overall schedule – Reduces documentation – Works well if personnel continuity • Disadvantages – Milestones more ambiguous – Progress tracking more difficult – Communication can be more difficult 43
  • 44. Evolutionary Prototyping • Design most prominent parts first – Usually via a visual prototype • Good for situations with: – Rapidly changing requirements – Non-committal customer – Vague problem domain • Provides steady, visible progress • Disadvantages – Time estimation is difficult – Project completion date may be unknown – An excuse to do “code-and-fix” 44
  • 45. Staged Delivery • Waterfall steps through architectural design • Then detailed design, code, test, deliver in stages • Advantages • • • • • Customers get product much sooner Tangible signs of progress sooner Problems discovered earlier Increases flexibility Reduces: status reporting overhead & estimation error • Disadvantages • Requires more planning (for you the PM) • More releases increase effort (and possible feature creep) • How’s this differ from Evolutionary Prototyping? 45
  • 47. V Process Model • Designed for testability – Emphasizes Verification & Validation • Variation of waterfall • Strengths – Encourages V&V at all phases • Weaknesses – Does not handle iterations – Changes can be more difficult to handle • Good choice for systems that require high reliability such as patient control systems 47
  • 48. RAD • Rapid Application Development • Popular in the 80’s – 1. Joint Requirements Planning (JRP) – 2. Joint Application Design (JAD) – 3. Construction • Heavy use of tools: code generators • Time-boxed; many prototypes – 4. Cutover • Good for systems with extensive user input available 48
  • 49. COTS • Commercial Off-The-Shelf software • Build-vs.-buy decision • Advantages – Available immediately – Potentially lower cost • Disadvantages – Not as tailored to your requirements • Remember: custom software rarely meets its ideal (so compare that reality to COTS option) 49
  • 50. XP: eXtreme Programming • Not a Microsoft product • Part of movement called “Agile Development” • A “Lightweight” methodology • A bit counter-culture • Currently in vogue • Motto: “Embrace Change” • Highly Incremental / Iterative 50
  • 52. eXtreme Programming • • • • • • • • Suitable for small groups Attempts to minimize unnecessary work Uses an “on-site” customer Small releases Pair programming Refactoring Stories as requirements You want good developers if you use this 52
  • 53. Other “Agile” Methodologies • Agile here means “lite”, reduced docs, highly iterative • Agile Software Development – Alliance , their “manifesto”, their book • SCRUM – Features 30-day “Sprint” cycles • Feature Driven Development (FDD) – XP with more emphasis on docs and process 53
  • 54. Other “Agile” Methodologies • Adaptive Software Development (ASD) – Book, site • Dynamic System Development Method (DSDM) – Popular in Europe • Homegrown: developers often hide their “agile adventures” from management 54
  • 55. Other “Agile” Methodologies • Pros – Similar to XP, can reduce process overhead – Responsive to user feedback – Amenable to change • Cons – Requires close monitoring by PM – May not “scale” to large projects – Often requires better quality developers 55
  • 56. Rational Unified Process • • • • • • • • RUP From Rational Corporation “Generic” version is the Unified Process Commercial Extensive tool support (expensive) Object-oriented Incremental Newer 56
  • 58. Rational Unified Process • • • • • • • • • Develop Iteratively Manage Requirements Uses UML (Unified Modeling Language) Produces “artifacts” Use component-based architecture Visually model software Complex process A “framework” Suitable for large scale systems 58
  • 59. Choosing Your Lifecycle • • • • • • • Varies by project Opt for “iterative” or “incremental” How well are requirements understood? What are the risks? Is there a fixed deadline? How experienced is the team or customer? See the table in McConnell 59
  • 60. IEEE 1074 • A standard for developing software processes – – – – – – Lifecycle model selection Project management process Predevelopment processes Development processes Post-development processes Integral process 60
  • 61. Planning • “Plans are nothing. But planning is everything.” Gen. Dwight Eisenhower 61
  • 62. Planning • • • • Preliminary planning starts on day one Even in the pre-project phase Should not be conducted “in secret” Need buy-in and approval – Very important step – Both from above and below 62
  • 63. Your PM Process • Why • Deliverable: ROI • What • SOW, Requirements • How • Design Specification, SDP, Lifecycle Futrell, Shafer, Shafer, “Quality Software Project Management” • Do • Execution • Done • PPR 63
  • 64. Primary Planning Steps • • • • • • • • Identify project scope and objectives Identify project organizational environment Analyze project characteristics Identify project products and activities Estimate effort for each activity Identify risk Allocate resources Review and communicate plan 64
  • 66. Planning Documents • Software Development Plan (SDP) • Software Quality Assurance Plan (SQAP) • Software Configuration Management Plan (SCMP) • Risk Management Plan • Software Process Improvement Plan • Communications Management Plan • Migration Plan • Operations Plan 66
  • 67. Planning Documents • You (the PM) need to choose which documents are appropriate • Docs do not have to be lengthy • Small Set: – – – – Software Development Plan Risk Management Plan Software Quality Assurance Plan Software Configuration Management Plan 67
  • 68. Planning Documents • • • • • • • Project ROI Analysis Statement of Work (SOW) Project Charter Software Project Management Plan (SPMP) Budget Responsibility Assignment Matrix (RAM) Risk Management Plan 68
  • 69. Product Documents • Statement of Need • System Interface Specification • Software Requirements Specification • Software Design Specification • Software Validation & Verification Plan • User Documentation • Support Plan • Maintenance Documentation 69
  • 70. Software Project Survival Guide • Another McConnell book • See construx.com’s SPSG section – – – – – Good content online Documents Schedules Checklists Project web site template 70
  • 71. Planning • • • • How much will it cost? How long will it take? How many people will it take? What might go wrong? 71
  • 73. Process Issues • 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 73
  • 74. Plans Evolve Over Time NASA’s “Manager’s Handbook for Software Development” 74
  • 75. Software Development Plan • Software Project Management Plan (SPMP) • 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 example 75
  • 76. SDP / SPMP • Fundamental Sections – – – – – – – Project overview Deliverables Project organization Managerial processes Technical processes Budget Schedule 76
  • 77. Communications Management Plan • Often a section of SPMP • Describes information flow to all parties – Gathering and distributing information • Status meetings – Monthly, Weekly, Daily? – Status reports are vital 77
  • 78. Create a Project Intranet • A great communications tool • Reference all project resources here 78
  • 79. Homework • McConnell: 8 “Estimation”, 9 “Scheduling” • Thayer: Cori pg. 171-182 “Fundamentals of Master Scheduling”, Fairley 183-194 “Work Breakdown Structures” • Class site, review relevant links as appropriate. 79

Editor's Notes

  1. No lab today More lab in later term