© agilix agile development consulting agile demystified cesario ramos

Post on 22-Dec-2015

219 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© AgiliX Agile Development Consulting

Agile Demystified

Cesario Ramos

© AgiliX Agile Development Consulting

© AgiliX Agile Development Consulting

• The idea behind the Agile Manifesto

• Why do we do these things?• What about engineering principles?

© AgiliX Agile Development Consulting

© AgiliX Agile Development Consulting

© AgiliX Agile Development Consulting

Respond To Change

© AgiliX Agile Development Consulting

• Promise the business– Respond to change – To stop whining

– Skills– Technologies– Process– Soft enough!

© AgiliX Agile Development Consulting

© AgiliX Agile Development Consulting

At the start they say ‘it will take us 10 months’

© AgiliX Agile Development Consulting

Then they disappear from view!

doing something, not clear what…

then pop up after 8 months and say there might be some delay!!!

© AgiliX Agile Development Consulting

© AgiliX Agile Development Consulting

One month before the deadline they pop up again….

and ‘we need 3 more months to finish’

© AgiliX Agile Development Consulting

© AgiliX Agile Development Consulting

So finally in month 13 the testing can begin

Plan shows it should be finished in a month!

…but issues are discovered

© AgiliX Agile Development Consulting

Promises of Working software are not enough

© AgiliX Agile Development Consulting

Working software means…

• The business gets working software every month!– Could be put into actual use – It has real value, could be validated on

customers.– Proves that there is actual progress

© AgiliX Agile Development Consulting

• IT no longer asking for trust but provides evidence.

• Goes on month after month after month– stops when the business decides there

is enough value added!

© AgiliX Agile Development Consulting

Scrum

In order to do this the business has to do some things in return

© AgiliX Agile Development Consulting

OFTEN Face to Face feedback!!

© AgiliX Agile Development Consulting

Do NOT ‘HELP’ IT by telling how to do things…

© AgiliX Agile Development Consulting

• The idea behind the Agile Manifesto• Why do we do these things?• What about engineering principles?

© AgiliX Agile Development ConsultingDesignator | author | April 06, 2009 |

Production vs. Product development

What are characteristics of production and product development?

What does it mean for the approach?

© AgiliX Agile Development Consulting

• Origins in Lean manufacturing since 1950’s

• High quality, high productivity and low cost

• Highly successful

© AgiliX Agile Development Consulting

The New New Product Development Game

• Hirotaka Takeuchi • Ikujiro Nonaka

Harvard Business Review, 1986.

© AgiliX Agile Development Consulting

© AgiliX Agile Development Consulting

Complex Adaptive System

A Complex Adaptive System (CAS) is a dynamic network of many agents acting in parallel, constantly acting and reacting to what the other agents are doing.

The control of a CAS tends to be highly dispersed and decentralized.

John H. Holland

© AgiliX Agile Development Consulting

Lean concepts

© AgiliX Agile Development Consulting

VALUE STREAM

FLOW

VALUE

PULLPERFECTION

© AgiliX Agile Development Consulting

Overproduction

Delay

Hand-offs Task Switching

Defects

InventoryRelearning

© AgiliX Agile Development Consulting

How can we eliminate it?

• Partially done work

– Divide work into small batches

– Limit WIP

• Extra Features

– Do NOT construct a signed list of everything upfront

• Hand Offs

– Face-to-face communication, cross functional teams

• Delays

– Cross functional teams, regular and short feedback cycles

• Defects

– Inspect to prevent defects, move testing to the front

© AgiliX Agile Development Consulting

Some evidence for agility

© AgiliX Agile Development Consulting

Overproduction of features

Jim Johnson. The Standish Group International Inc. 2002

© AgiliX Agile Development Consulting

Origins of defects

Others7%

Logic/Design28%

Requirements Errors41%

Documentation2%

Environment5%

Data6%

Interface6%

Human 5%

Tom Gilb. 2002

© AgiliX Agile Development Consulting

What can we do about it?

© AgiliX Agile Development Consulting

Prioritized, refined and written down in collaboration between business and development

© AgiliX Agile Development Consulting

Could be good enough to gain 80% of the benefits

© AgiliX Agile Development Consulting

Implemented and accepted throughout the project

© AgiliX Agile Development Consulting

• The idea behind the Agile Manifesto• Why do we do these things?• What about engineering

principles?

© AgiliX Agile Development Consulting

[en.wiktionary.org]

• Any apparently useless activity which, by allowing you to overcome intermediate difficulties, allows you to solve a larger problem.

– I was doing a bit of yak shaving this morning, and it looks like it might have paid off.• The actually useless activity you do that appears important when you are consciously or

unconsciously procrastinating about a larger problem. – I thought I'd get more work done if I just fixed a problem with my .emacs file, but then I

spent the whole afternoon yak shaving.

© AgiliX Agile Development Consulting

Verification

• STOP discussing things with minimal facts….

• Kent Beck: No discussion should take longer than 30 minutes without writing/looking at some code to verify stuff.

Programmers + Code >

Programmers + Time

© AgiliX Agile Development Consulting

Continuously improving the

feedback speed!

© AgiliX Agile Development Consulting

Fast Feedback

• Getting the architecture right first…. Then we can add feature by feature easily right…?

Hmmm… what if when implementing the first feature it proves that the infrastructure is wrong?

• We build a couple of features and then refactor ending up with the architecture.– Generalize to remove duplication– Building exactly and only what is needed!!!

© AgiliX Agile Development Consulting

Fast Feedback

• Automatic Tests – Let the computer provide us feedback

• Peer Reviews– Let your peer provide you with feedback– Spread knowledge

• Take the first bullet– Refactor to the Open Closed

© AgiliX Agile Development Consulting

?

© AgiliX Agile Development Consulting

Agile Demystified

Cesario Ramos

top related