PMIAZ Development Approaches and Life Cycles - Kevin Archbold
PMIAZ Development Approaches and Life Cycles - Kevin Archbold
• Development Approach
- Method used to create and evolve the product, service, or result during the project.
• Project Life Cycle
- The series of phases that a project passes through from its start to its completion.
A Guide to the Project Management Body of Knowledge – Seventh Edition
Project Management Institute Inc., 2021, Glossary.
• So, what’s the difference? In the real world, not much. In the PMBOK, the Project Life
Cycle is the whole initiative, whereas the Development Approach is just the portion of
the project related to actual product creation
• Organizations often develop standard Project Life Cycles
2
Development Approaches
• Predictive
• Adaptive
- Iterative
- Incremental
- Agile
• Hybrid
3
Predictive
• Also known as Fully Plan-Driven, or Waterfall
• Project scope is approved as early as possible, and then the time and cost required are
determined. (Fixed-scope projects)
• Changes are carefully managed, and require re-planning and formal acceptance
• Project is often defined as a series of Phases
• May use Rolling-wave Planning, where future work is planned in less detail than
upcoming work
4
Predictive
• Often preferred when:
- Scope is well understood
- A complete product is required before
significant business value is realized (e.g. construction)
- Change is expensive
- Predictability and coordinated timing is important
- Regulatory (including safety) implications are significant
5
Predictive
• Project Phase
- A collection of logically related project activities that culminates in the completion
of one or more deliverables.
A Guide to the Project Management Body of Knowledge – Seventh Edition
Project Management Institute Inc., 2021, Glossary.
• Each phase has certain assigned attributes such as name, number, entrance criteria,
exit criteria etc.
• These attributes are often organization-specific i.e. defined by the organization
• Common phase names include: Concept Development, Feasibility, Design, Build etc.
6
Phase-to-Phase Relationships
• Sequential
Phase 1 Phase 2
7
Phase-to-Phase Relationships
• Overlapping
Phase 1
Phase 2
• Reduces schedule, but will probably require more resources, increase risk, and
potential for rework
• Fast Tracking
- A schedule compression technique in which activities or phases normally done in
sequence are performed in parallel for at least a portion of their duration.
A Guide to the Project Management Body of Knowledge – Seventh Edition
Project Management Institute Inc., 2021, Glossary.
8
Phase-to-Phase Relationships
• Not all projects have the same relationship type throughout the project
• A project might have two or more relationship types:
Design
Implementation
9
Example Predictive - Waterfall (Sequential)
Analysis
Document
Requirement
s
Design
Implement
Testing &
Integration
Transfer to
Operations
10
Example Predictive - Automotive (Sequential)
# Month Description
11
Predictive Approach Characteristics
• Often (although not always) costs and staffing are low at the start, higher in the middle,
and drop off towards the end
• Frequently this data is shown as a cumulative graph, which results in an S-curve
12
Phase Gates A Guide to the Project Management Body of Knowledge – Seventh Edition
Project Management Institute Inc., 2021, Glossary.
• Phase Gate
- A review at the end of a phase in which a decision is made to continue to the next
phase, to continue with modification, or to end a project or program.
• Also called phase-ends, stage gates, decision gates, milestone phase review, phase exit
reviews, or kill points
• Are phase deliverables complete and acceptable?
• Should the project continue into the next phase? Or be terminated?
• Are there problems that need to be fixed, and all/some of the phases should be
repeated?
• What lessons have been learned?
13
Example Phase Gate Checklist
www.pmo.mt.gov
14
Iterative Approach
• Project is broken into iterations
• Each iteration probably looks similar to previous iterations in terms of work steps
• Iterations generally expand or change the functionality of existing deliverables
• Detailed scope is progressively elaborated one iteration at a time, based on a high-level
vision
• Time and cost estimates can be revised with each iteration as more is learned about
the project
• Allows the team to leverage lessons learned, successes and failures from earlier
iterations
15
Iterative Approach
• Predictive
• Iterative
16
Iterative
• Example: A website development
project where all pages are initially
deployed with very basic content and
functionality, but become increasingly
content rich and sophisticated with each
new iteration
www.shellmethod.com
17
Incremental
• Made up of increments
• Each increment may look similar to previous increments in terms of work steps
• In this model, increments create new deliverables instead of building on existing ones
• Detailed scope is often developed one increment at a time, based on a high-level vision
• Example: A website development project where the site is divided into a number
prioritized sections. Each section is released over time as a fully functional area of the
website
18
Iterative Approach
• Predictive
• Iterative
• Incremental
10 10 10 10 10 10 10 10 10 10
19
Iterative and Incremental Approaches
• Feedback is gathered repeatedly
• Business Value starts to be realized early
• Often preferred when you need to manage changing objectives, undertake a high risk
and/or complex project, and/or when partial product delivery has business value
without negatively impacting future project work
20
Agile
• Are an “extreme” case of Iterative and Incremental approaches
• Aimed at projects with high levels of change/innovation/uncertainty
• Usually regard cost and/or time as fixed, but scope as more variable
• Variations of Iterative/Incremental approaches have existed for a long time, but “Agile”
became a popular term after the 2001 Agile Manifesto
• Agile is an umbrella term that covers a variety of frameworks and methods based on
the Agile Manifesto and the 12 Agile Principles
• Most Agile approaches are Iteration-based, but there are also Flow-based approaches
• Preferred where changes are relatively easy, waste is not costly, the end product is not
fully known, and/or user feedback is very valuable
21
Agile
• At the time the Agile Manifesto was written, software development projects suffered
from numerous problems, including:
- Scope Bloat: Unnecessary product features being included out of fear of changes
later in the project
- Project managers with strong technical skills but poor people skills
- Inflexible project management methodologies that tried to be one-size-fits all
- Large development teams, often geographically dispersed
- All-or-nothing style Project Life Cycles
22
Iteration-Based Agile (e.g. Scrum)
Product Backlog
2w 2w 2w 2w 2w
…
...
23
Iteration-Based Agile (e.g. Scrum)
• Potential product scope is documented in a prioritized Product Backlog
• Stakeholders are actively and continuously engaged to provide feedback, identify new
requirements etc.
• New items are added to the Product Backlog as they are identified throughout the
project
• Ideally uses small dedicated collocated teams of 5 to 9 people
24
Iteration-Based Agile (e.g. Scrum)
• Short iterations of fixed length (e.g. 1 to 4 weeks)
• Each iteration takes a small, achievable, number of the high priority items from the
Product Backlog and plans and implements those items
• Each iteration results in finished product ready for customer review. (Potentially
shippable capabilities)
• Examples: Scrum, eXtreme Programming (XP), Crystal, Scaled Agile Framework (SAFe)
25
Example Interactive Agile Approach: Scrum
www.conchango.com
26
Flow-Based Agile
• When a team member has the capacity to perform more work, the team member
selects a suitable high priority item from the Product Backlog and then
plans/implements that item i.e. no iterations
• Each item may take a different amount of time to complete
• Workflow is defined using columns on a task board
• Team strives to keep the quantity of work-in-progress items small
• Without fixed iterations, the team and business stakeholders determine the most
appropriate schedule for higher-level planning, product reviews, and retrospectives
• E.g. Kanban
27
Task Board: Example
www.vertex42.com/ExcelTemplates/agile-kanban-board.html
28
Predictive versus Agile
• Approach
- Predictive : Assumes most events affecting a project can be largely anticipated and
planned for
- Agile : The project is constantly changing
• Phases
- Agile : Product is developed by feature, and features changes are allowed
until final approval
- Predictive : Project lifecycle is divided into distinct phases. Normally assumed that
once a phase is complete it will not be revisited
29
Predictive versus Agile
• Planning
- Predictive : Significant up-front planning, with tightly controlled scope changes.
Change is discouraged
- Agile : Requirements are modified and added throughout the project. Change
is encouraged
• Requirements
- Predictive : Customers/users are encouraged to state all their requirements up-
front, at the beginning of the project
- Agile : Not all requirements are identified up-front. All requirements may not
be fulfilled
30
Predictive versus Agile
• Customer Approval
- Agile : Approvals are obtained throughout the project – each iteration
- Predictive : Most approvals come near the end of the project
• Feature Development
- Agile : Features of the highest priority are developed first. Low priority
features may not get implemented
- Predictive : Products can end up over-engineered
• Project Management Style
- Predictive : Can be very top down
- Agile : Self-empowered team
31
Predictive versus Agile
• Team Management
- Predictive : Team members are often time-sliced and moved on/off the project
- Agile : Team members normally dedicated to the project and often colocated
• Business Value
- Predictive : Value may not be obtained until the project is complete
- Agile : Value is maximized as early as possible
• Cost of Changes
- Agile : Less of an increases over time
- Predictive : Significantly increases over time
32
Hybrid Approaches
• A combination of Predictive and Adaptive approaches
• Well known/understood/defined parts of the project are addressed with a Predictive
approach. Other parts of the project that are higher risk and/or less well understood are
addressed with an Adaptive approach
• Or, the project uses short delivery time frames, iterative product releases, and involves
stakeholders regularly, but with more in-depth planning and scope definition
33
Hybrid Life Cycles
Agile
Agile Predictive Predictive
Agile Predictive
Agile
Predictive
Predictive/Agile
Predictive/Agile
34
Selection
36