resilient agile doug rosenberg. why resilient agile? many agile projects are underplanned, and thus...

Post on 12-Jan-2016

222 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

RESILIENT AGILEDoug Rosenberg

Why Resilient Agile?

Many agile projects are underplanned, and thus expensiveTimeboxed sprints create pressure to deliver shoddy softwareOften “rainy day scenarios” are not considered, leading to fragile softwarePlanning can’t happen all upfront but must be continuous and adaptive to changing requirements

Why are agile projects underplanned?

The Agile Manifesto explicitly devalues planning. So it shouldn’t be surprising that many agile projects are underplanned.

Agile projects typically start with “user stories” which are nebulously defined, rather than with more rigorous use cases.

“Architected Agile” adds a ‘sprint 0’ upfront where planning happens

We believe planning needs to happen continuously, as each use case is analyzed.

Where did Resilient Agile come from?

Resilient Agile has it’s roots in Agile/ICONIX, a minimalist use case driven UML process.It’s goals are to do “just enough planning” to hit the cost minimum“Just enough planning involves thinking through each use case carefully (both sunny-day and rainy-day scenarios)

Continuous planning means analyzing each scenario (sunny and rainy day paths) within the sprints, not just planning during “sprint 0”

Agile/Scrum refers to non-coding activities as “ceremonies”

We prefer a more engineering oriented approach.

First we make sure we’re building the right system…

Requirements, storyboards, narrative use cases and…a conceptual MVC decomposition for each use case

Then we make sure we’re building the system right

Sequence diagrams, database schemas, class diagrams, state machines

We used this process last year with a location based advertising system

Original system concept…

Now a commercially deployed system

We got some fascinating numbers last year

Now we want to gather more productivity data

• Can we do A/B testing with a software development process?• Industry won’t fund the same project built two different ways

by two different teams• Student projects in CS577 give us a unique opportunity to

gather hard data on what works best and most efficiently• We want to prove it with hard numbers

top related