Top Banner
Story-driven development Carl Erickson, PhD Useful requirements, engaged customers, and data-driven projects
24

Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Apr 23, 2018

Download

Documents

hoangnhu
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Story-driven development

Carl Erickson, PhD

Useful requirements, engaged customers,and data-driven projects

Page 2: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Ron Jeffries, XProgramming.com

Page 3: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Development tasksSimple design

Unit tests

Not-so-simple analogy

Customer storiesSimple featuresAcceptance tests

1. Customer dependency

2. Testing difficulty

Page 4: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Major Benefit #1

RequirementsWhen you need them

In small chunks

Actionable, unambiguous, useful

With an opportunity to learn-as-you-go

Page 5: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Stories can be estimated (small chunks)

Major Benefit #2

Predictability

Rhythm is established

Project velocity can be measured

Page 6: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Major Benefit #3

Feature managementKeeping it simple

Staying focused

Putting a cost on features

Letting the customer steer

Page 7: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Tool Support for SDD

• Coordination/Collaboration– Common documents– Messages (emailed, archived)– To-do lists

• Iteration Planning and Tracking– Estimates, status, budget, velocity– Predictions

• Time Tracking– Estimates, status, budget– Billing

Page 8: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 9: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 10: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Dynamometer Project

• 9 months• 5 pairs of developers (3 @ AO, 2 @ BP)• C#/.NET GUI client - C++/QNX server

Page 11: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 12: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 13: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 14: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 15: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 16: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 17: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 18: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 19: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

Time Tracking+

Project Status

Page 20: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 21: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 22: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron
Page 23: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

But wait, there’s more!

Automating acceptance tests gets you…Executable requirements (even more unambiguous)

Inexpensive for developers to run

Regression testing ability

Release process confidence

A few more bugs

Page 24: Useful requirements, engaged customers, and data …user.it.uu.se/~carle/softcraft/notes/StoryDrivenDev.pdf · Useful requirements, engaged customers, and data-driven projects. Ron

References

Basecampwww.basecamphq.com

ExplainPMTwww.explainpmt.com

Atomic Objectatomicobject.com

XPwmxpwestmichigan.org