Professional Documents
Culture Documents
• Increment vs as a whole
• Planning throughout vs done all at once
• Delivery over time vs all at once
• Faster value vs at the end
• Encourages Change vs Discouraging Change
Why we need to know
Agile?
Agile Benefits
• Customer Involvement
• Stakeholder Interaction
• Frequent Feedback
• Value upfront
• Change is welcomed
• Incremental Funding
• Continuously adapt to risk and
change
Agile Mindset
• Welcoming change
• Working in small value increments
• Using build and feedback loops
• Learning through discovery
• Value -driven development
• Failing fast with learning
• Continuous delivery
• Continuous improvement
Inverting the Triangle
Agile Manifesto
• Contains
o 4 values
o 12 guiding principles
The Agile Manifesto
Values
Working Software
Over Comprehensive Document
Customer collaboration
Over Contract negotiation
Responding to change
Over Following a plan
Agile Guiding Principles
1-3
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software
Welcome changing requirements, even late in development. Agile processes harness change for the
customer's competitive advantage
Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to
the shorter timescale
Agile Guiding Principles
4-6
Business people and developers must work together daily throughout the project
Build projects around motivated individuals. Give them the environment and support they need, and trust
them to get the job done
The most efficient and effective method of conveying information to and within a development team is
face-to-face conversation
Agile Guiding Principles
7-9
Agile processes promote sustainable development. The sponsors, developers)and users should be able
to maintain a constant pace indefinitely
Simplicity; the art of maximizing the amount of work not done is essential
The best architectures, requirements and designs emerge from self-organizing teams
At regular intervals, the team reflects on how to become more effective then tunes and adjusts its
behavior accordingly
Agile Terms
• Product owner (PO)
• Agile Project Manager/Scrum Master
• Product Backlog
• Sprint Planning Meeting
• Sprint Backlog
• Sprint
• Daily Stand Up Meeting
• Sprint Review
• Retrospective
• Release
Definition of Done (DoD)
LEAN
Scrum is a simple light weight framework that Continuous process improvement
technique
helps people, teams & organizations to
generate value through adaptive solutions for AGILE
complex problems Mindset that emphasizes flexibility,
collaboration & iterations to
promote value
KANBAN XP
SCRUM CRYSTAL
3 Pillars of scrum
3 5 3
Sprint
Sprint Retrospective
3 Pillars of scrum
Inputs from
Executives, Team,
Stakeholders,
Customer, Users
Task
Breakout
Product Owner
• Owns Product vision
• Define Features
• Decides on Release Date
• Responsible for market success
• Prioritization
• Can change & prioritize sprint
ScrumMaster
Facilitation
Clear impediments/blockers
Protector
Assists PO
Scrum Processes
Development Team
Contains all necessary project skills
Sprint Prioritization
Team Capacity Sprint
• Select Sprint Goal Goal
• Analyse & evaluate market backlog
Marketing backlog
Sprint Planning
Business Priorities
• Decide how to achieve Sprint Goal Sprint
Product status • Create Sprint backlog backlog
• Estimate Sprint backlog
Competition
Sprint
Daily Scrum
03 Questions:
Simplicity Courage
• Reduce complexity, extra features
and waste
1 4 • Allow our work to be visible to
others
• Find the simplest thing
Communication Respect
• Team members know what is
2 5
Core Values
5 • Everyone is accountable for the
expected of them and what others success or failure of the project
are working on • Recognize people work differently
• Daily stand-up meeting and respect the differences
Feedback
• Get review of correctness early
• Failing fast allows faster
3
improvement
XP vs ….
Roles & Responsibilities
Acts as a mentor, guiding the Business representative who Developers who build the Help the customer define and
process and helping the provides the requirements, product. write the acceptance tests
team stay on track. priorities, and drives the for the user stories.
business direction Write the codes.
Is a facilitator helping the team
become effective.
Release Iteration
Small Releases
Planning Planning
• Customer describes one or more • Any pair of developers can improve or • Follow consistent coding standard
tests to show software is working amend any code • Code looks as if it has been written
• Team builds automated tests to • Multiple people work on all code, by a single programmer
prove software is working. Teams which results in increased visibility
use Devops, Jenkins these days • Leads to a higher level of quality; with
more eyes on the code, more defects
surface out
• Less hand switching cost
XP Practices
Sustainable Continuous
Metaphor
Pace Integration
• Periods of overtime are • XP uses metaphors and similes to • Involves bringing all quantum of
unsustainable and counterproductive explain designs and create a shared code together and making sure it
• The practice of maintaining a technical vision compiles and works together
sustainable pace of development • These descriptions establish • It brings problems to the surface
optimizes the delivery of long-term comparisons that all the stakeholders before more code is built on top of
value can understand to help explain how faulty or incompatible designs
the system should work
XP Practices
Test -Driven
Pair
Development Refactoring
Programming
(TDD)
• The team writes tests prior to • Production code is written by two • Remove redundancy, eliminate
developing the new code developers working as a pair to write unused functionality, and
• The initial code might fail the tests and provide real-time reviews of the rejuvenate obsolete designs
• The code will pass the test once it software as it emerges • Refactoring throughout the entire
is written correctly • Working in pairs also helps spread project life cycle saves time and
knowledge about the system through increases quality
the team • Code is kept clean and concise, so
it is easier to understand, modify,
and extend
Summing
Up
SYSTEM THINKING
Problem solving approach, focuses on
relationship, dependencies & Interactions
LEAN
Continuous process
improvement technique
AGILE
Mindset that emphasizes
flexibility, collaboration &
iterations to promote value
KANBAN XP
SCRUM CRYSTAL
Lean
Software
Development
Partially done work Extra Processes Extra features
LEAN
Continuous process
improvement technique
AGILE
Mindset that emphasizes
flexibility, collaboration &
iterations to promote value
KANBAN XP
SCRUM CRYSTAL
Kanban Board
Other Agile
Methods
Dynamic
System
Development
Methods
• Broader focus than most
other Agile approaches
• Simple Scheme
• MoSCoW prioritization
• Dot Voting or Multi-voting
• Monopoly Money
• 100-point method
• Kano Analysis
Minimal Viable
Product (MVP)
• Co-located Teams
• Team Space
• Osmotic Communication
• Global and Cultural Diversity
• Distributed teams
Co-Located Teams
• Time Zones
• Cultures
• Native Languages
• Styles of communications
Distributed Teams
• Burn Charts
o Burnup - Work that has been done
o Burndown - Work that remains to
be done
• Velocity Charts - Show how the team is
performing
Velocity Charts
Backlog Grooming -
Keeping the backlog
updated and
accurately prioritized
Sprint 1 Sprint 2 Sprint 3
Sprint Bucketing
T Shirt Sizing
Fibonacci Series Story Points
Story Point Estimation
Team should own Story point
the definition of estimates should be
their story all-inclusive
points
Complexity, work
Point sizes should be effort, and risk should
relative all be
included in the
estimate
Estimation Technique
- Planning Poker
High-level planning
Product Roadmap tool
Serves as the
“product roadmap”
Start Sprint 0
Cost of Change
Cost
Cost
Of
Change
Contracting
Fixed price work package
It mitigates the risk of under and
over estimation
Gulf of Evaluation
What one These are solved by :
person
describes is Frequent validation
often Sprint review
different
from Pair programming
Agile Helps another
person Negotiation
interprets Stand ups
Gulf of Execution
It is the gap between what a user
wants to do and how they do it