Module 0 - Introduction To Agile 2023
Module 0 - Introduction To Agile 2023
TO AGILE
• What is Agile?
• Uncertainty, Risk & Life Cycle Selection
• Scrum
1
What is Agile
TOPIC A
2
What is Agile?
3
What is Agile?
4
How Did Agile Come About?
5
Agile Manifesto Values, Principles & Common
Practices
• The embodiment of the agile mindset, values, and principles defines what constitutes an
agile approach.
• The various agile approaches in use today share common roots with the agile mindset,
values, and principles.
6
Being Agile v Doing Agile
Beware!
“Culture eats strategy for breakfast” – Peter Drucker*
7
Agile Values
8
Individuals and interactions
over processes and tools
9
Working software over
comprehensive
documentation
• Focus on delivering value vs.
paperwork.
• Agile documents should be barely
sufficient
• Delivering software that does what it
should comes first, before creating
documentation.
• Agile dramatically simplifies the
administrative paperwork relating to
time, cost, and scope control
10
11
Customer collaboration
over contract negotiation
• Be flexible and accommodating, instead
of fixed and uncooperative
• Manage change, don’t suppress it!
• A shared definition of “done”
• Requires trusting relationship
12
Responding to change
over following a plan
13
Agile Guiding Principles 1-4
14
Agile Guiding Principles 5-9
15
Agile Guiding Principles 10-12
16
Agile Mindset
• Welcoming change
• Working in small value increments
• Learning through discovery
• Value-driven development
• Failing fast with learning
• Continuous delivery
• Continuous improvement
17
Agile Approaches & Methods
• “Agile approaches” and “agile methods” are umbrella terms that cover a variety of frameworks
and methods.
• Agile and the Kanban method are descendants of Lean thinking.
• The shared heritage is very similar and focuses on delivering value, respect for people,
minimizing waste, being transparent, adapting to change, and continuously improving
18
Agile vs. Predictive/Traditional Approach
• Agile builds in increments while
traditional project management builds
as one whole.
• Agile does planning throughout while in
traditional project management,
detailed planning is done all at once
and upfront.
• Agile delivers products over time while
traditional delivers the final product all
at once.
• Agile delivers value faster while
traditional delivers value later – usually
at the end
• Agile embraces changes while
traditional project management
“discourages” changes
19
Benefits of Agile
20
UNCERTAINTY, RISK, AND LIFE CYCLE SELECTION
TOPIC B
21
Definable Work vs. High Uncertainty Work
• Project work ranges from definable work to high-uncertainty work
• Definable work projects are characterized by clear procedures that have proved successful on
similar projects in the past e.g., the production of a car.
• The production domain and processes involved there are usually well understood and there
are typically low levels of execution uncertainty and risk.
• New design, problem-solving, and not-done-before work is exploratory. It requires Subject
Matter Experts (SMEs) to collaborate and solve problems to create a solution e.g., doctors,
lawyers, and many problem solving-engineers.
• As more definable work is getting automated, project teams are undertaking more high-
uncertainty work.
• High-uncertainty project work has high rates of change, complexity, and risk. These
characteristics can present problems for traditional predictive approaches that aim to
determine the bulk of the requirements upfront and control changes through a change request
process.
• Agile processes were created to explore feasibility in short cycles and quickly adapt based on
evaluation and feedback.
22
Uncertainty, Risk, & Life Cycle Selection
Far from
agreement
CHAOS
Fundamentally
risky
COMPLEX
Requirements
Adaptive
approaches
COMPLICATED work well here
Linear
SIMPLE approaches
Close to work well here
agreement
Close to Far from
certainty Technical Capability
certainty
23
When to Apply Agile Methodilogies
24
Uncertainty, Risk, & Life
Cycle Selection
• Some projects have considerable
uncertainty around project requirements
and how to fulfill those requirements with
current knowledge and technology.
• These uncertainties can contribute to
high rates of change and project
complexity.
• As project uncertainty increases, so too
does the risk of rework and the need to
use a different approach.
•To mitigate the impacts of these risks,
teams select life cycles that allow them to
tackle projects with high amounts of
uncertainty via small increments of work.
•Teams can verify their work when they
use small increments and can change what
they do next.
•When teams deliver small increments,
they are better able to understand the true
customer requirements faster and more
accurately than with a static written
specification 25
Uncertainty, Risk, & Life Cycle Selection
• Many teams discover that when they explore the requirements iteratively and deliver
more often incrementally, the teams adapt to changes more easily.
• These iterative and incremental approaches reduce waste and rework because the
teams gain feedback. These approaches use:
ü Very short feedback loops
ü Frequent adaptation of process
ü Reprioritization
ü Regularly updated plans, and
ü Frequent delivery
• These iterative, incremental, and agile approaches work well for projects that involve
new or novel tools, techniques, materials, or application domains. They also work
well for projects that:
Ø Require research and development
Ø Have high rates of change
Ø Have unclear or unknown requirements, uncertainty, or risk; or
Ø Have a final goal that is hard to describe
• By building a small increment and then testing and reviewing it, the team can
explore uncertainty at a low cost in a short time, reduce risk, and maximize business
value delivery.
26
Uncertainty, Risk, & Life Cycle Selection
• In order for the project to become reliably possible, it needs one of the uncertainty
variables to be contained.
27
Life Cycle Selection
• Projects come in many shapes and there are a variety of ways to undertake them.
Project teams need awareness of the characteristics and options available to select
the approach most likely to be successful for the situation.
1. Predictive life cycle. A more traditional approach, with the bulk of planning
occurring upfront, then executing in a single pass; a sequential process.
2. Iterative life cycle. An approach that allows feedback for unfinished work to
improve and modify that work.
3. Incremental life cycle. An approach that provides finished deliverables that the
customer may be able to use immediately.
4. Agile life cycle. An approach that is both iterative and incremental to refine work
items and deliver frequently.
28
Characteristics of Project Life Cycles
29
The Continuum of Life Cycles
30
The Continuum of Project Life Cycles
31
Characteristics of Project Life Cycles
• No life cycle can be perfect for all projects. Instead, each project finds a spot on the
continuum that provides an optimum balance of characteristics for its context.
v Predictive life cycle. Take advantage of things that are known and proven. This
reduced uncertainty and complexity allows teams to segment work into a sequence
of predictable groupings.
v Iterative life cycle. Allow feedback on partially completed work to improve and
modify that work.
v Incremental life cycle. Provide finished deliverables that the customer may be able
to use immediately.
v Agile life cycle. Leverage both the aspects of iterative and incremental
characteristics. When teams use agile approaches, they iterate over the product to
create finished deliverables. The team gains early feedback and provides customer
visibility, confidence, and control of the product.
• Because the agile team can deliver earlier, the project may provide an earlier return
on investment because the team delivers the highest value work first.
32
34
35
Planning Horizons of Various Project
Approaches
v Predictive life cycle/Waterfall. Detailed planning for the entire project is done early
during the project. Implementation/execution of the project work follows the plan in a
“predicted” way, with minimal changes.
v Agile life cycle. Because of high level of uncertainty characterizing agile projects just a
few days of work (usually 1-2 weeks) can be planned in detail, with most of the project’s
work remaining open to allow for changes and modification.
36
Planning Horizons of Various Project
Approaches
37
Characteristics of
Hybrid Life Cycles
• It is not necessary to use a single
approach for an entire project. Projects
often combine elements of different life
cycles in order to achieve certain goals
• A combination of predictive, iterative,
incremental, and/or agile approaches is
a hybrid approach.
• This approach can be used when there
is uncertainty, complexity, and risk in the
development portion of the project that
would benefit from an agile approach,
followed by a defined, repeatable rollout
phase that is appropriate to undertake
in a predictive way, perhaps by a
different team.
• For example, the development of a new
high-tech product followed by rollout
and training to thousands of users.
Agile Development + Predictive Rollout
39
Combined Agile + Predictive Approach
Simultaneously
• Daily stand-ups
• Retrospectives
• Short iterations
40
Predominantly Predictive Approach with
some Agile Simultaneously
• A portion of the project with uncertainty, complexity or opportunity for scope creep is
being tackled in an agile way but the rest of the project is managed using predictive
approaches.
• For example, an engineering firm building a facility with a new component or
technology. While the majority of the project may be routine and predictable, this
project incorporates a new roofing material.
• The contractor may plan for small-scale installation trials on the ground first to
determine the best installation method and to uncover issues while there is plenty of
time to solve them and incrementally improve processes through experimentation
and adaptation.
41
Largely Agile Approach with a Predictive Component
42
Inverting the Triangle
43
Common Agile Terms
• Product Owner - Designated person that represents the customer on the project
• Agile Project Manager/Scrum Master – Manages the agile project
• Product Backlog - Project requirements from the stakeholders
• Sprint Planning Meeting- Meeting done by the agile team to determine what features will be
done in the next sprint
• Sprint Backlog – Work the team selects to get done in the next sprint
Sprint - A short iteration where the project teams work to complete the work in the sprint
backlog, (1-4 weeks typical)
• Daily Stand Up Meeting - A quick meeting each day to discuss project statuses, led by the
Scrum Master. Usually 15 minutes
• Sprint Review – An inspection done at the end of the sprint by the customers Retrospective
– Meeting done to determine what went wrong during the sprint and what when right. Lesson
learned for the sprint.
• Partial Completed Product - Customers Demo the product and provides feedback. This
feedback adjust the next Sprint priorities
• Release - Several Sprints worth of work directed to operations for possible rollout and testing
NB: Refer to glossary from page 957 of the PMBOK Guide 6th Edition for more agile terms
44
Scrum
TOPIC C
45
Scrum Definition
• Scrum is a lightweight framework that helps
people, teams, and organizations generate
value through adaptive solutions for complex
problems.
• In a nutshell, Scrum requires a Scrum Master
to foster an environment where:
46
The Three Pillars of Empiricism
Empiricism means working in a fact-based, experience-based, and evidence-based
manner.
47
The Three Pillars of Empiricism
1. Transparency
• All people involved are transparent in their day-to-day dealings with others.
They all trust each other, and they have the courage to share good news as
well as bad news. All are focused on the organizational objective
2. Inspection
• Timely checks – by everyone on the team - on how well a project is
progressing toward goals.
• The inspection can be done for the product, processes, people aspects,
practices, and continuous improvements. For example, the team openly and
transparently shows the product at the end of each Sprint to the customer in
order to gather valuable feedback
3. Adaptation
• Adaptation is in the context of continuous improvement based on the results
of the inspection. Everyone in the organization must ask this question
regularly: “Are we better off than yesterday?”
48
History of Scrum
https://scrumguides.org 49
50
Scrum Requires Courage
51
Roles, Artifacts, and Events in the Scrum Framework
Roles
• Product Owner
• Development Team
• Scrum Master
Artifacts
• Product Backlog
• Sprint Backlog
• Increment
Events
• Sprint Planning
• Sprint
• Daily Scrum
• Sprint Review
• Sprint Retrospective
52
Scrum Roles
1. Product Owner
• Owns Product vision
• Chooses what and when to
release
• Maximizes the value of the product
• Responsible for market success
• Manages product backlog and
prioritizes features according to
market value
• Represents stakeholders and
customers to the development
team
• Ideally, the Product Owner has
profit and loss accountability for
the product
53
User Stories
54
User Stories - Examples
55
User Stories Should Be “INVEST”
56
2. Scrum Master
• Responsible for facilitating the
process
• Promotes and supports Scrum as
defined in the Scrum Guide
• Helps everyone understand Scrum
theory, values, practices, and rules
• Focuses Team and protects them
from external interruption
• Looks for ways to enhance
productivity
• Servant leader
57
3. Development Team
• Creates the product increment
• A small group containing all necessary
project skills
• Focuses on steady delivery of high-
quality features
• Operates in a series of Sprints
• Organizes itself and its work
• Collaborates with Product Owner to
maximize value
58
Scrum Team
59
Scrum Artifacts
60
1. Scrum Artifacts: Product Backlog
61
Product Backlog Refinement
62
2. Scrum Artifacts: Sprint Backlog
• The set of Product Backlog items selected for the Sprint (what?)
63
3. Scrum Artifacts: Increment
64
Scrum Events
65
Roles, Artifacts, and Events in the Scrum Framework
66
1. Scrum Events: Sprint
Planning Meeting (1/3)
• Initiates the Sprint by laying out
the work to be performed for the
Sprint.
• Scrum Team discuss the most
important Product Backlog items
and how they map to the Product
Goal.
• Addresses the following topics:
1. Why is this Sprint valuable?
• The Product Owner proposes
how the product could increase
its value or utility in the current
Sprint
• The Scrum team defines a Sprint
Goal that communicates why the
Sprint is valuable to Stakeholders
• The Sprint Goal must be defined
by the end of Sprint Planning
67
1. Scrum Events: Sprint
Planning Meeting (2/3)
2. What can be done in this
Sprint?
• In discussion with the Product
Owner, the Developers select
items from the Product Backlog to
include in the current Sprint
• The Scrum Team may refine these
items during this process, which
increases understanding and
confidence
• Selecting how much can be
completed within a Sprint may be
challenging. The more the
Developers know about their past
performance, their upcoming
capacity, and their Definition of
Done, the more confident they will
be in their Sprint forecasts.
68
1. Scrum Events: Sprint Planning
Meeting (3/3)
3. How will the chosen work get
done?
• For each selected Product
Backlog item, the Developers plan
the work necessary to create an
Increment that meets the
Definition of Done.
• How this is done is at the sole
discretion of the Developers. No
one else tells them how to turn
Product Backlog items into
Increments of value.
• The Sprint Goal, the Product
Backlog items selected for the
Sprint, plus the plan for delivering
them are together referred to as
the Sprint Backlog.
• Sprint Planning is timeboxed to a
maximum of eight hours for a one-
month Sprint. For shorter Sprints,
the event is usually shorter
69
Definition of Done (DoD)
70
2. Scrum Events: Sprint
• Sprints are the heartbeat of Scrum, where ideas are turned into value.
• They are fixed-length events of one month, or less, to create consistency.
• A new Sprint starts immediately after the conclusion of the previous Sprint.
• All the work necessary to achieve the Product Goal, including Sprint Planning, Daily
Scrum, Sprint Review, and Sprint Retrospective, happen within Sprints.
• Starts with Sprint Planning
• Ends with Sprint Retrospective
71
Sprint Goal
72
3. Scrum Events: Daily Scrum
73
Why Daily Scrum?
• Development Team share commitments
• Identify impediments
• Create focus
• Increase and maintain situational
awareness
74
4. Scrum Events: Sprint
Review
• The Product Increment is inspected
with the stakeholders (customer,
marketing, sales, etc)
• Designed to gather feedback from
stakeholders on what the
Development Team has completed in
the Sprint
• To create a conversation between the
Team and the stakeholders about
how to make the product better.
• The Product Backlog is updated with
new insights
• Should be time-boxed to no more
than an hour per week of Sprint
75
What Happens at Sprint Reviews?
76
5. Scrum Events: Sprint
Retrospective
• The purpose of the Sprint Retrospective is to
plan ways to increase quality and
effectiveness.
• The Scrum Team inspects how the last Sprint
went with regard to individuals, interactions,
processes, tools, and their Definition of Done.
• The Scrum Team discusses what went well
during the Sprint, what problems it
encountered, and how those problems were
(or were not) solved.
• The Scrum Team identifies the most helpful
changes to improve its effectiveness. The
most impactful improvements are addressed
as soon as possible. They may even be
added to the Sprint Backlog for the next
Sprint.
• The Sprint Retrospective concludes the
Sprint.
77
Other “Agile” Approaches
TOPIC D
79
Other “Agile” Approaches
80
1. Kanban
• Also known as a “Pull System” is a
system for visually managing workflow
as it moves through your process.
• “Kanban” is a Japanese word that
loosely translates to “sign” or
“billboard”
• Was developed by Toyota in the 1950s
for manufacturing
• Kanban does not use time-boxed
iterations
• A Kanban system is intended to send
signals to the entire value chain from
the supplier to the end consumer.
• It helps prevent supply disruption,
overproduction, and excess inventory
at various stages of the manufacturing
process.
• Originally intended for manufacturing
but is now used in many non-
manufacturing applications, especially
in software development.
81
1. Kanban
https://youtu.be/jf0tlbt9lx0
82
Kanban Board
• An "information radiator" - ensures efficient diffusion of
information
• Can be drawn on a whiteboard or even a section of wall
• Makes iteration backlog visible
• Serves as a focal point for the daily meeting
84
2. Extreme Programming (XP)
• Extreme Programming is a software development methodology intended to
improve software quality and responsiveness to changing customer requirements.
• As a type of agile software development, it advocates frequent releases in short
development cycles, intended to improve productivity and introduce checkpoints at which
new customer requirements can be adopted
85
XP Core Values
• Simplicity – reduce complexity, extra features, and waste. “what is the
simplest thing that will work?”
• Communication – Software development is inherently a team effort that relies
on communication to transfer knowledge from one team member to everyone
else on the team. XP prefers face-to-face discussion with the aid of a
whiteboard
• Feedback - gives the team an opportunity to improve. The team builds
something, gathers feedback on your design and implementation, and then
adjusts your product going forward
• Courage – You need courage to raise organizational issues that reduce your
team’s effectiveness; to stop doing something that doesn’t work and try
something else; to accept and act on feedback, even when it’s difficult to
accept.
• Respect – members of your team need to respect each other in order to
communicate with each other, provide and accept feedback, and to work
together to identify simple designs and solutions.
http://www.extremeprogramming.org/start.html
86
XP Team Roles
1. The Coach: Usually an outside consultant or someone from elsewhere in
your organization who has used XP before. Mentors the other team
members on the XP Practices
2. The Customer: Provides requirements, defines acceptance criteria,
defines business case, and prioritizes features. Is actively engaged and
ideally becomes part of the team.
3. The Developer: The developers who write the code. Responsible for
realizing the stories identified by the Customer. Cross-functional teams.
4. Trackers: In addition to programming, they track relevant Agile metrics,
such as velocity, burndown charts etc. This helps them track their team’s
progress and identify where the team can improve.
87
XP Core Practices (1/2)
Whole Team
• Team members are colocated
• Generalizing specialists, not role specialist
• Efficient sharing of information
Customer Tests
• The customer specifies scenarios to test when a user story has been correctly
implemented.
• A story can have one or many acceptance tests, whatever it takes to ensure
the functionality works.
Collective Code Ownership
• Any developer can improve or amend the code or fix bugs
• Multiple people will work on all the code
• Improves defect discovery and resolution
• Knowledge is shared, not hoarded.
88
XP Core Practices (1/2)
Sustainable Pace
• Productivity is optimized through a sustainable pace
• Consistent overtime and long hours are not sustainable
Refactoring
• Cleaning up the code by removing redundancy, eliminating unused
functionality, and rejuvenating obsolete designs
89
3. Lean Product Development
• Lean is a way of thinking about creating needed value with fewer
resources and less waste.
• The focus of Lean is on reducing waste in all business processes. The
result is the reduction of cost and lead time as well as an increase in
quality.
• To be lean is to provide what is needed, when it is needed, with the
minimum amount of materials, equipment, labour, and space.
• Lean thinking always starts with the customer. Ask: “What problem does
the customer need to solve?”
• The Toyota Production System is widely acclaimed as the most successful
implementation of Lean manufacturing
90
Seven Lean Core Concepts
1. Eliminate waste
2. Empower the team
3. Deliver fast
4. Build quality in
5. Defer decisions - to the last responsible moment
6. Amplify learning
7. See the whole - Be flashlight focused rather than laser-focused
91
Seven Wastes of Lean
8. Unutilized talent
93
Summing Up
• 50% of the PMP exam questions are on agile and hybrid approaches
• Agile approaches use rolling-wave planning, iterative, and incremental
delivery to deliver value early in projects characterized by uncertainty and
complexity
• There are four project life cycles that project teams can harness for the
successful delivery of value: predictive, iterative, incremental, and agile.
• A hybrid approach leverages the strengths of the four main life cycles
• Project teams should select the right project life cycle based on the
characteristics of the project.
• “Agile” is not a methodology or framework. Rather, it’s an umbrella term
covering a variety of frameworks and methods.
94
Go Ye Forth and Be Agile…
https://www.pmi.org/certifications/become-a-project-manager/certification-
framework
95