Keynote at Agile Testing Days Berlin 2013
If you’re involved with software development, there is probably no way you can ignore it anymore: the agile approach. With everyone talking about it, there is a certain pressure to adopt agile methods. This brings with it the danger of introducing a bunch of practices without placing enough emphasis on the two main success factors: continuously improving software and continuously improving teams.
The latter is usually driven more or less automatically by the self-interest of the directly affected individuals – after all, nobody deliberately wants to be inefficient. "Continuously improving software" on the other hand will almost certainly go wrong at first, because trust and feedback are much harder to establish between stakeholders (customers, team) than within a team. This often leads to efficient teams building the wrong product, or, even worse, just investing into iterative delivery without enjoying any of its benefits.
Efficiency is therefore just one component for ensuring a good return on investment when adopting Agile. In this talk, I want to focus on the other part – effectiveness – and how it impacts on the way teams collaborate with their customers. I'll introduce a few techniques (Story Mapping, Specification-By-Example) that support this change and present examples from past projects in the financial and public sector where they proved successful.
2. 2
Are we scaling the right thing?
The DAD Agile Lifecycle
Copyright 2012 – Scott Ambler and Associates
Envision the
future
Identify,
prioritize
and select
projects
Production
ready
Delighted
stakeholders
4. 9
The SAP “Business by Design” disaster
• Target 2010:10.000 customers, 1bn/year
•Started in 2003
•2-3bn investment
•Announced for 2007
• “Merged” with HANA in 2013
•First release only in 2010
•<1000 customers by 2013
•<100 Mio revenue / year
5. 11
Fixed time and budget
are NOT the problem –
… it’s waiting too long
and spending too much
before validation!
11. 17
Your job as developers is
NOT to develop software,
your job is to change the world.
- Jeff Patton
12. 18
What can we learn from
Pinky and the Brain about
changing the world?
Be prepared that
the best
laid plans
don't work out.
13. 19
Your job as tester is
NOT to verify software,
your job is to verify the world
is actually changing
(fast enough).
14. 20
Scaling TDD to the enterprise
Write a
failing
unit test
Make the
test pass
Refactor
Write a failing
acceptance
test
Set a
desired
business goal
Get feedback
on deployable
system
Measure
impact
of deployed
system
Define a
desired
behavior change
Measure
impact
of behavior
changes
Refine
feature
Refine
deliverable
Refine
strategy
break down
stakeholders
break down
deliverables
break down
units
extend
system
15. 21
Impact Maps
Goal
Actors
Impacts
Deliverables
Increase yearly revenue by 3%
Keep market share in
blockbuster concerts
Reduce call-center load
from blockbuster concerts
Introduce mobile platform for
concert tickets web shop
Mobile phone
shop users
Customers calling
to order by phone
Reduce
bounce
rate
Order
blockbuster
tickets
Hang-up
to order
online
Static info on
blockbuster concerts
Order one particular
blockbuster concert
Announcement
for mobile order
possibility
17. 23
Influence
Control
Goal
Actors
Impacts
Deliverables
Scaling agile principles
Test Goals and Impacts
as early and as often as possible
• Scale: what to measure
• Meter: how to measure
• Range: Benchmark, Constraint, Target
Define roadmap of goals
Smaller deliverable slices to production
Easier to parallelize
Across systems and departments
Prioritized with business sponsors
18. 24
Delivering flexible scopeStory Maps
• Introduced by Jeff Patton
• Optimize scope of a deliverable for
particular impacts
• Provide overview about backlog
• Help with collaboration and
release planning
19. 25
Story Map structure Mobile phone
shop user
Order blockbuster
tickets
Reduce
bounce rate
Static info on
blockbuster concerts
Order one particular
blockbuster concert
Becomes
aware of
new concert
Tries to buy
when sale
starts
Waits for
concert
Attends
concert
Upcoming
concert
sales
Additional
artist info
Pay by
credit card
Pay by
invoice
Print paper
ticket
Validate
using NFC
News about
concert
Likely order
of events
Priority
20. 26
walking
skeleton
Prioritizing slices Mobile phone
shop user
Order blockbuster
tickets
Reduce
bounce rate
Static info on
blockbuster concerts
Order one particular
blockbuster concert
Becomes
aware of
new concert
Tries to buy
when sale
starts
Waits for
concert
Attends
concert
Upcoming
concert
sales
Additional
artist info
Pay by
credit card
Pay by
invoice
Print paper
ticket
Validate
using NFC
News about
concert
Likely order
of events
Priority
Omitted
steps
Manual
workarnd
21. 27
Slicing for impacts Mobile phone
shop user
Order blockbuster
tickets
Reduce
bounce rate
Static info on
blockbuster concerts
Order one particular
blockbuster concert
Becomes
aware of
new concert
Tries to buy
when sale
starts
Waits for
concert
Attends
concert
Upcoming
concert
sales
Additional
artist info
Pay by
credit card
Pay by
invoice
Print paper
ticket
Validate
using NFC
News about
concert
Likely order
of events
Priority
34. 41
Live it – or leave it …
• Don’t just focus on delivering
larger backlogs with larger teams
• Apply principles to next level:
focus on impacts and business goals
• Elevate your practices:
build – measure – learn
@chrishassa
www.techtalk.at
Visit:
www.productownersurvivalcamp.com