practices agile exploring · our agile process in a nutshell release we develop the backlog &...
TRANSCRIPT
Exploring Agile
Practices
A gelled SW team is the
most powerful force there is
a team that gels takes time & effort
FORMING STORMING
NORMING
PERFORMING
FORMING
STORMING
NORMING
a brief history of
Agile
It is a dark time for SW development. Budgets and timelines have been destroyed, and frustrated companies have driven developers from their sustainable pace and
pushed them to work harder to get products delivered
Help me Agile processes, you are our only hope...
SCRUM Development Process (OOPSLA)
? ?
?
?
SCRUM Development Process (OOPSLA)
1991 1997
1996
1980s
1999
Independent thinkers met to
explore common ground among lightweight SW processes that
handled change
SCRUM Development Process (OOPSLA)
19992001
1991 1997
1996
1980s2003
• individuals & interactions
• working software
• customer collaboration
• responding to change
value the blue OVER red
Agile Manifesto • processes and tools
• documentation
• contract negotiation
• following a plan
Agile embraces the idea change is constant
Utilizes Feedback Loops that focus on questions like:• Are we providing VALUE?
• How can we improve how we deliver VALUE?
• What is blocking us from delivering VALUE?
Make a Changeto provide VALUE
Analyze Effects of Change
Learn & Improve
Examples of Feedback loops• Pair Programming
– Immediate feedback from another developer
• Code Review– Feedback form other developers
(after developed)
• TDD/Unit tests– Immediate feedback that code
works (per tests)
• CI– Feedback that code integrates
after commit/merge
• Scrum Ceremonies– Feedback every sprint
• how can we improve– Feedback every sprint
• progress vs. release plan– Feedback every sprint
• did we build right thing– Feedback every day
• progress vs. sprint plan– Feedback every day
• align team, discover impediments
When we met we agreed to some Agile Principles
● Our highest priority is to satisfy customer thru early & continuous delivery of valuable SW
● Welcome changing requirements… harness change for competitive advantage
● Deliver working SW frequently…● Business & Developers must work
together…● Build projects around motivated
individuals… trust them to get job done
● Most efficient & effective method to convey info is face to face conversation
Agile Principles● Working SW is the primary measure of
progress
● Agile promotes sustainable development… maintain pace indefinitely
● Continuous attention to technical excellence …
● Simplicity is essential
● The best [work] comes from self-organizing teams
● Team reflects on how to become more effective & adjusts accordingly
Which 1 or 2 principles stand out
most to you& why
Processes and Practices rooted in Agile Principles
daily self organized
team
backlog
story pair programming
TDD
CI/CD
small releases
retrospectiveincremental
design
short cycles
sustainable pace
business & developers
Refactoring
YAGNI
Which 1 or 2 XP practices stood out to you & why
I have a plan
what % of a plan do you
have?
● Business decides what features are most important (priority)
● Developers evaluate how long it will take to implement the features (estimates)
● Work together to establish a set of capabilities that will be released together
● Should aim for smaller releases and incremental capabilities
Release Planning● Documentation of the release
plan (wiki)
○ capabilities described at the business value level
○ identify risks and dependencies
○ state assumptions
○ initial delivery date
This is not Agile!WTF
Release Planning involves tradeoffs What does this
customer value most?
Release Planning involves tradeoffs What does this
customer value most?
Our Agile Process in a nutshell
RELEASE
● We develop the backlog & stories for each release
○ Conversation to get shared understanding of DONE
● Our stories our more fine-grained than most Agile processes suggest
○ What do you think of the tasks per story approach in the book?
Our Agile Process cmp to XP Planning● Our Kanban style flow does not
emphasize up-front iteration planning
○ progress reported @ end
● Our process doesn’t emphasize estimating. This limits metrics to establish velocity which is used for projecting future work
○ How do you determine and defend your release date?
See you next time