Lect 4 Agile - Course - Domain 1 Agile Methodologies
Lect 4 Agile - Course - Domain 1 Agile Methodologies
MS Project Management
2
Agile methods
1. XP (Extreme Programing) – Software development model
2. FDD (Features Driven Development) – Model based on
features
3. DSDM (Dynamic System Development Method) –
Includes feasibility and business in development model
4. Crystal – Clear, Yellow, Orange and Red
5. Scrum – lightweight model easy to understand
6. Lean Software Development – Principles of development
7. Kanban Development – Visual board, limits WIP
Extreme Programming (XP)
4
XP Practices and Loops
5
XP Roles
6
Feature Driven Development (FDD)
Principles:
8
Crystal Methodology
9
Crystal Methodology
• Based on 3 pillars
1. Transparency: Gives visibility to all of the outcome
2. Inspection: Checks to look for problems & deviations
3. Adaption: Adjusting processes to reduce future issues
14
Scrum Definitions
ROLES
• Product owner – Responsible for managing the
product backlog.
• Scrum master – Servant leader to the
development team. Responsible for removing
impediments to progress
• Team – Group of professional who build the
product. The team is empowered to mange its
own work.
Scrum Definitions
CEREMONIES
• Sprint planning meeting – Done to determine what is
to be delivered in the scrum
• Sprint Review – Takes place at the end of each sprint
• Daily scrum – 15 minute time boxed meeting
– What has been done since last meeting
– What will be done before the next meeting
– What are the impediments
• Sprint Retrospective – Occurs at the closing of each
sprint after demo, Lesson Learned
16
Scrum Roles
PRODUCT OWNER
• Decides what will be built and in which order i.e., grooms the
Product backlog
• Defines the features of the product or desired outcomes in form
of releases of the project and Chooses release date .
• Ensures profitability (ROI) .
• Prioritizes features according to market value
• Adjusts initially and re-adjusts features, combination of features,
releases, etc.
• Accepts or rejects work results during demo ceremony .
• Facilitates scrum planning ceremony
Scrum Roles
SCRUM MASTER
• Scrum Master is a facilitative team Leader
• Ensures that the team adheres to its chosen process
& also ensures eradication of obstacles
• Ensures full functionality and productivity of team
• Enables close cooperation across all roles and
functions.
• Shields the team from external interferences
• Ensures that the process is followed. 18
Scrum Roles
SCRUM MASTER
• Ensures that all ceremonies are appropriately
staged and conducted.
• Facilitates the daily scrums and scrum of scrums if
there is big team
• Ensures open, candid and participative
environment during retrospective meeting for
process improvement and the lessons learnt
Scrum Roles
TEAM
• Should be cross-functional and appropriate size (7+ or -2)
• More than 09, splits the team and conduct scrum of scrums
• Self organized and self motivated, selects for only sprint
goals
• Generally does not pledges for velocity > than their
previous sprint .
• Should be innovative to look for all practical options to
achieve goals
• Team demonstrates its work
20 results to the product owner
Scrum Ceremonies
SPRINT PLANNING
• Takes place at start of each sprint.
• Team meets with the product owner and discusses next
stage of the project by setting highest priority items from
the product backlog
• In second part, converting the prioritized sprint backlog into
tasks with explicit estimate & responsible persons
• The probable shippable deliverable commitment coming
from the team is generally based on the teams known
velocity and their precedence history
Scrum Ceremonies
SPRINT REVIEW
• Takes place at the end of each sprint.
23
Scrum Ceremonies
DAILY SCRUM
• Team meets for a maximum of 15 minutes per day
with the Scrum Master around the team task board
• Team members update the task board
• Team also aligns itself with one another on tasks
• Team answers the following three questions
• What is done in the last 24 hours?
• What will be doing in the next 24 hours?
• What might be the probable obstacles for his recent
activity?
Scrum Artifacts
PRODUCT BACKLOG
• Prioritized by Product Owner and divided into Releases
(grouping of items as per business and customer’s need.
• Backlog should be appropriately Detailed, Estimable,
Emergent & Prioritized (DEEP)
SPRINT BACKLOG
• Stories that the team plans to take up in the upcoming
sprint are placed here
BURNDOWN CHARTS
• Chart used to communicate progress during or end of
sprint; As the project progresses the burn down chart also
burns downs (melts)
Scrum flow diagram
Scrum Process flow diagram
27
28
Scrum Process
29
Scrum Process
Scrum Events Scrum values
• Sprint
• Sprint Planning
• Daily Scrum
• Sprint Review
• Sprint Retrospective
SCRUM ARTIFACTS
• Product Backlog
• Sprint Backlog
• Increment
30
Scrum of Scrum Team
31
Scrum of Scrum Team
32
Let’s Test Our Understanding
Item Development Team Product Owner Scrum Master
Estimates
Backlog Priorities
Agile Coaching
Coordination of Work
Definition of “Done”
Process adherence
Technical decisions
Sprint Planning
33
Let’s Test Our Understanding
Item Development Team Product Owner Scrum Master
Estimates X
Backlog Priorities X
Agile Coaching X
Coordination of Work X
Definition of “Done” X X X
Process adherence X
Technical decisions X
Sprint Planning X X X
34
Lean Software Development
Lean Software Development
• Lean software development is not an agile methodology,
however lean and agile principles are closely aligned.
38
Lean Manufacturing Principles
• Eliminate waste
• Kaizen (continuous improvement)
• Respect human elements
• Heijunka (level production) output remains the same every day)
• JIT (Just In Time) production
• One piece flow: limiting WIP to a single item
• Quality built-in:
• Poka-Yoke (mistake proofing): every process can be
engineered to inherently prevent mistakes
• Jidoka (detecting defects through automation)
39
Lean 05 Core Principle
40
Seven Wastes of Lean
People assigned to multiple
Requirements defects, projects
software bugs
Gold plating,
Technology features
Distributed teams.
Handoffs
42
Can You Identify The Waste?
Waste Activity Type
Queuing for elevator Waiting
Rebooting a computer after a program crash Defects, Waiting
43
Lean Principles 5s
44
45
46
Kanban Development
(sign board)
Kanban Development
(sign board)
• Kanban has been derived from lean production system in Toyota.
Kanban means ‘sign-board’ or ‘task-board’.
• Kanban limits the work in progress (WIP).
• Kanban is a method for doing work with an emphasis on just-in-time
delivery while not overloading the team members.
• The process, in which work is displayed to see by the team
• Team members pull work from a queue.
• It is a visual process management system that tells what to produce,
when to produce it, and how much to produce.
Kanban Core Values
1. Visualize the workflow
– Have some method for visualizing how the work is flowing
2. Limit WIP
– Keep the amount to work in progress low to increase visibility
3. Manage Flow of work
– Tracking work can identify issues
4. Make process policies explicit
– Ensure everybody understand the requirements of the process
5. Improve collaboratively
– Team should collectively own and improve the processes
Kanban Principles
50
KANBAN BOARD
Work In
To Do Done
Progress
Stock Stock Data
search update base
Item Amend scheme
details order
Create
Order Process Order
list order
Order Log-in
refund
55
Kanban Board
56
57
Limiting WIP (Work In Progress)
• Lowering WIP actually increases a team’s productivity – it speeds up the rate
at which the work is completed.
• A WIP limit helps teams focus on correct decisions, completion, and quality.
• WIP represents risk in the form of potential rework, since there may still be
change to items until those items have been accepted. Larger the WIP, larger
the risk of scrap/rework – if not accepted
58
Visualizing WIP
59
Generalizing Specialists
• Team members have both a focus specialty plus a breadth
of experience across multiple skills, rather than a single
specialization.
61
Ó PMI – Lahore Chapter 2013 - All rights reserved.
Artifact – The output of a process or work, typically in the form of a
document, drawing, model, or code
Ceremony – Regular meeting of an agile project, such as iteration
planning meeting.
Chicken – Someone who is involved in the project but not
committed and should not be part of the core team
Done – Term used to define that a piece of work is complete. All
teams members should agree on the exact definition of done.
Grooming – Cleaning up the product backlog, by removing items,
disaggregating items, or estimating items.
Ground rules – Unwritten rules that apply to all team members.
Ideal time – Amount of time the assignment will take if there were
no interruptions.
Timebox - A previously agreed period of time during which a team
works steadily towards completion of some goal.
62
Information radiator – A group of artifacts that is used
communicate project status and other information
Metaphor – Substituting common name for a technical name,
so that non-technical stakeholders can understand
Osmotic communication – Communication that occurs as a
result of people sitting in an environment by over hearing
others.
Parking lot chart – Chart used for gathering requirements for
later discussion.
Persona – an imaginary person or identity created by the
team to model interactions with the system to gather
requirements
Pig – Someone on the project who is committed and is
impacted by the outcome.
63
Planning poker – a method of estimating size of a story.
Members are given cards with numbers and they show their
cards simultaneously to show the number of points they want
to give to a story.
Refactoring – Reorganizing the working code without having
an effect on the functionality or performance.
Smells – Symptoms of problems that effect the team
indicating that something is not right
Spike – A quick experiment used to help the team answer a
question and the path forward
Velocity – The number of features or user stories a team can
deliver in a fixed iteration.
War room – A location were the entire team can work in one
dedicated space.
64
Glossary of Scrum Terms
• Scrum: Framework for team collaboration on complex projects.
• Scrum Master: The Scrum master role is akin to a coach who helps team with their expertise.
• Scrum Team: Product owner, team and Scrum master. Learn more about the Scrum roles.
• Sprint: Short tasks, one following immediately after the completion of another.
• Sprint Review: Short review of sprint to help add improvements to the next one.