RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus...

15
RESILIENT AGILE Doug Rosenberg

Transcript of RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus...

Page 1: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

RESILIENT AGILEDoug Rosenberg

Page 2: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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

Page 3: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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.

Page 4: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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)

Page 5: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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

Page 6: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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

We prefer a more engineering oriented approach.

Page 7: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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

Page 8: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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

Page 9: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

Then we make sure we’re building the system right

Page 10: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

Sequence diagrams, database schemas, class diagrams, state machines

Page 11: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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

Page 12: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

Original system concept…

Page 13: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

Now a commercially deployed system

Page 14: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

We got some fascinating numbers last year

Page 15: RESILIENT AGILE Doug Rosenberg. Why Resilient Agile? Many agile projects are underplanned, and thus expensive Timeboxed sprints create pressure to deliver.

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