UI Conf: Jeff Patton on Agile Development

[Live notes from UI Conf]
My final thoughts: This is a power talk, and the full day tomorrow probably covers it better.

Why agile development continues to grow in popularity

Rare combination: Companies that are strong both on agile development and user experience.

Wrong assumption. Agile is just about finishing something faster
It isn’t just about finishing faster. It’s about finishing faster. I’ll explain some more about that later.

Greedines, short-sightednes and blame

Common things go wrong when projects go wrong.

To software developers, people like you [UXP people] are just “the requirements people”

Business case:
Consider a fictitious product:
– our business people tell us it will earn us $300K monthly after release
– development costs are $100K monthly
– it will take 12 months to design, develop, test, and release
– release costs are roughly $100K
this seems like a reasonable venture
– looking at a 4 year time window – development + 3

Then suddenly
* add features (Mona Lisa with candy bar and opera house)
* cut scope
* delays and risks

Outside the process
* political
* financial
* loss of key talent

Political: “I’ve seen a lot of projects die when new management take over”. Killing predecessors descendants

Once we release it, we may be off target.
* doesn’t meet business goals
* may be unusable
* may be technical weak

Also there may be reducing financial return.

So this is our problem: We have got all these risks that may affect return of the project.

Let’s look at the opportunity

* all released features is $300 K
* 25% features might earn us $120K

Business cases go from annual release go semi-annual to quarterly
Even with the added cost of 100 K per release, were earning more money and have an annual busines casse.
Overall we earn 9% better return on investment (actually IRR)

We can even contemplate to skip the 4th quarterly release and we’ll still earn more money.

Book: Software by numbers (amazon link)

Multiple cycles to reduce risks

Multiple user stories wrapped into an iteration

Planning phase (synonym for design and vice versa)
For agile people, testing usually means automated testing.

Different levels here:
* feature
* iteration
* incremental release
* project

In theory stakeholders feel more involved. More opportunities to adjust.

Agile

Common things that go wrong with agile projects

1. planning and releasing smaller releases often results in unusable releases
2. no one really understood where the value came from in the first place
3. keeping design simple now and worrying about usability later

Why prioritization go wrong is when noone really understands the value of the customers

Not involving design people. They are good at understanding who users are, what are their values. This is actually not an agile problem, but a software development problem.

I’m
and i’m usually pulled in when things go really bad.

Q’s like
* who’s gonna use it
* what’s the value for those people
=> lot of user reasearch debt

Conversation with stakeholder:
– We already did user research
– Let me get what you already researched
– Well, this was the requirements when we started

Adding User Experience people

At least They don’t use UML, so that’s a big advantage.
Top mistakes:
1. “reasonable” research period usually too long
=> Truth is: Often a small amount of research yields preliminary designs. Also known as assumptions
=> Engaged in research often means disconnected with rest of team

2. Desing solution is too large
=> the “ideal” solution is often so big that it has to be broken down to match releases
Results in ugly releases
=> Often diff between something optimal and something slightly sub optimal. Diff for development effort is sometimes enormous.

3. not understaning impmlementation costs compared to user value.

Agile strategies recommended

* defer specific design until late
* keep scope task centric
* create useful releases to users
* grow design iteratively

Latest responsible moment borrowed from lean manufacturing.
UXP people might translate to
* doing enough research to understand users, their problems and goals

User story

User story
* able to write on a 3×5 card
* reminder for a conversation
* wikipedia is dead wrong

write user stories using this simple template (credited to Rachel Davies in Cohn’s User Stories Applied)

As a [type of user]
I want to [perform some task]
so that I can [achieve some goal]

As a [harried shopper]
I want to [locate a CD in the store]
so that I can [purchase it quickly, leave, and continue with my day.

The car metaphor

Agile question: Which feature do you want us to build first: The tires or the breaks?
All features are equally important
=> adjust scale: Kia, Toyota, Mercedes-Benz

“The simplest thing that could possibly work”

In an agile context, its only works when you understand that you may add other things later.

All these elements have some of these things in it.
* Necessity
* Flexibility added later. Make feature useful in more situations
* Safety
* Comfort (usability), luxury (UXP) and performance (run faster, smoother)

If you’re in a usecase driven approach, flexibility maps to alternative paths.

[Changed slide]
Bar diagram when adding to user story or feature
symbolizes discussion
* simplest task
* flexibility (what if)
* fair bit of safety
* usability is important

maps to
* necessity
* flexibility
* safety
* comfort, luxury, performance

Agile development needs help
* so much late decision making
* often end up building luxury, but forget necessities.

Agile softwaer development isn’t called rapid, or cheap
Agile because it’s maneuverability.

Linn miller, Alias. Written a report, recommend to download.
Good job at describing

Yahoo! has done a good job adopting Scrum, just didn’t have time to report about it yet.

I have more failures to report than successes.

[My live notes from UI Conf. All UI Conf notes. Expect updates of thes rough notes, with references, images, etc. within the first few days – this footnote will stay, though. Feel free to add comments, links to similar notes, presentations, correct quotes and add where appropriate. thanks! Also I post my pictures on Flickr tagged uiconf]

Technorati Tags: , , , , , , ,

Comments are closed.