Upload
steve-rogalsky
View
1.522
Download
0
Tags:
Embed Size (px)
DESCRIPTION
As presented at Mile High Agile 2012 in Denver.Review and discuss the basic agile practices in the context of two games. The first game will illustrate why small batches are important and how they can help you address project risks sooner. The second game will illustrate how small batches can help give you better information about your project sooner and will demonstrate some of the basic agile practices at work like iterations, continuous flow, manage to done, velocity, retrospectives, etc.
Citation preview
AGILE 101: small
BATCHES
Mile High Agile 2012
@SROGALSKY
WINNIPEGAGILIST.BLOGSPOT.COM
PROTEGRA.COM
Steve Rogalsky
At Protegra we employ agile and lean techniques to give our clients an advantage – to leap out of the bowl.
Protegra Advantage
“Is your IT shop the
place where great
business ideas grind to a halt?”
SOONERnot necessarily
faster
DELIVERsooner
Validate
SOLUTION
sooner
find
DEFECTSsooner
validate
RISKS and
ASSUMPTIONSsooner
Validate
ESTIMATESsooner
CHANGESyou can make to
enable small batches
Requirements.docvs.
User Stories
(one coin) (many coins)
As a <role>I want to <some action>So that <result>
Specializationvs.
Generalized Specialists
One projectvs.
Multiple projects
1 Task 2 Tasks
3 Tasks
4 Tasks
5 Tasks
6 Tasks
0%
20%
40%
60%
80%
100%
120%
Time spent switchingTime spent on task(s)
From: QSM 1, Systems Thinking (Dorset House, 1992). Jerry Weinberg
Credit: This example is from “The Role of Quality Assurance in Lean-Agile” – Allan Shalloway
Manual Testing
vs.Automated
Testing
BDUFvs.
Change Tolerant Code
High Medium Lowvs.
Prioritizing First to Last
Individual Outputvs.
Team Throughput & Outcome
Cubiclesvs.
Face to Face
Alistair’s 3 keys to successful projects:1. Frequent Delivery
of working code2. Access to
customers3. Co-located teams
Efficient Effectivevs. and
The Manifesto1. Our highest priority is to satisfy the customer through early and continuous delivery
of valuable software. 2. Welcome changing requirements, even late in development. Agile processes harness
change for the customer's competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months,
with a preference to the shorter timescale. 4. Business people and developers must work together daily throughout the project. 5. Build projects around motivated individuals. Give them the environment and support
they need, and trust them to get the job done. 6. The most efficient and effective method of conveying information to and within a
development team is face-to-face conversation. 7. Working software is the primary measure of progress. 8. Agile processes promote sustainable development. The sponsors, developers, and
users should be able to maintain a constant pace indefinitely. 9. Continuous attention to technical excellence and good design enhances agility. 10. Simplicity--the art of maximizing the amount of work not done--is essential. 11. The best architectures, requirements, and designs emerge from self-organizing
teams. 12. At regular intervals, the team reflects on how to become more effective, then tunes
and adjusts its behaviour accordingly.
Both Efficient…1. Our highest priority is to satisfy the customer through early and continuous
delivery of valuable software.
2.Welcome changing requirements, even late in development. Agile
processes harness change for the customer's competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
4. Business people and developers must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
6. The most efficient and effective method of conveying information to and within a development team is
face-to-face conversation.
7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
9. Continuous attention to technical excellence and good design enhances agility.
10.Simplicity--the art of maximizing the amount of work not done--is essential.
11. The best architectures, requirements, and designs emerge from self-organizing teams. 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly.
… And Effective1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's
competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter
timescale. 4. Business people and developers must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment
and support they need, and trust them to get the job done. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face
conversation. 7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development. The sponsors,
developers, and users should be able to maintain a constant pace indefinitely. 9. Continuous attention to technical excellence and good design enhances agility. 10. Simplicity--the art of maximizing the amount of work not done--is essential.
11. The best architectures, requirements, and designs emerge from self-organizing teams.
12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly.
Effective Leadership
"You cannot hold people responsible for results if you supervise their
methods. You then become responsible for results and rules replace human
judgement, creativity, responsibility“
- Dr. Stephen R. Covey
Effective Leadership
"Effective leaders set up the conditions of empowerment and then... get out of
people’s way, clear their path and become a source of help as
requested.“
- Dr. Stephen R. Covey
Self-Organizing Daughter
Agile in Practice
Size 1 Size 2 Size 3 Size 8
What agile practices did we just witness?
• Iteration Planning• Prioritized backlog (1-
100 not H/M/L)• Manage to Done• Relative estimating• Velocity• Burn up/down• Demo• Retrospectives
• User Stories• Acceptance Testing• Embracing Change• Scope management• Face to face
communication• Kanban / Continuous
Flow• Work in Progress Limits• Continually testing for
failure
In Closing
Want sooner?• Be efficient with
process– (think small)
• Be effective with people
@SROGALSKY
WINNIPEGAGILIST.BLOGSPOT.COM
PROTEGRA.COM
Steve Rogalsky
Thanks! Questions?