agile101 small batches

Post on 28-May-2015

1.521 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

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.

TRANSCRIPT

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.

info@protegra.comblog.protegra.comwww.protegra.com

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?

top related