Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Reducing Risk Using Behavior-Based Requirements

Jeffrey
August 16, 2012

Reducing Risk Using Behavior-Based Requirements

Presentation: Reducing Risk in Software Projects Using Behavior-Based Requirements

Given at the UT Dallas 6th Annual Project Management Symposium
by Jeffrey S. Davidson

Abstract
Requirements are the key to implementing the vision of a business or client. Software project failures are a significant factor to lost capital and operational expenses, lost time, and eventually lost opportunity and revenue. While project failures have been well documented, less attention is paid to the similar costs from unused and underutilized features within software projects.
With upwards of 45% of software features never used and an additional 32% rarely used it is time to pay attention to the core needs and jettison the wasted effort, expense, and code that is bogging down project success.
A key methodology in correcting this problem is Behavior Driven Development (BDD). Originally developed to help developers understand the business needs, it has grown beyond its roots and is capable of making a significant impact on curbing excess demands, requests, and gold plating.

Often seen as solely an Agile software development technique, this toolset provides insight into the core functionality of a software product and can lead to significant improvements in user experiences by removing unnecessary functionality before it becomes embedded in modern and future systems.

Jeffrey

August 16, 2012
Tweet

More Decks by Jeffrey

Other Decks in Technology

Transcript

  1. Reducing Risk in Software Projects Using Behavior Based Requirements Jeffrey

    Davidson, CSPO PMC e: [email protected] b: goodrequirements.com UT DALLAS 6th Annual Project Management Symposium August 16, 2012
  2. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Standish Group,

    CHAOS Reports 0% 20% 40% 60% 80% 100% 1994 1996 1998 2000 2002 2004 2006 2009 2011 Failed (%) Challenged (%) Successful (%)
  3. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Today’s Agenda

    !   Thinking like an investor !   Communicating through examples
  4. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 IT Complexity

    Crisis $3 trillion Global impact of IT failures
  5. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Feature Injection

    !   Hunt the value !   Inject the features !   Spot the examples
  6. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Feature Injection:

    Hunt the Value Models !   Business Value !   Specific !   Communicated
  7. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Feature Injection:

    Inject the Features Features !   Focused !   Drives specific output
  8. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Feature Injection:

    Spot the Examples Examples !   Negative paths !   Communication !   Validation
  9. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Built right

    or Right product? Gojko Adzic in Specification by Example, 2011 Built Right Focus Right Product Spec by example
  10. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Built right

    or Right product? Built Right Right Product Business Failure Useless Crap Success Maintenance Nightmare Gojko Adzic in Specification by Example, 2011
  11. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Simple? !

     “We can only hope to make reliable those things that we can understand. !  We can only consider a few things at a time. !  Intertwined things must be considered together. !  Complexity undermines understanding.” “Simple Made Easy” by Rich Hickey @ StrangeLoop 2011
  12. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Behavior Driven

    Development BDD !   Behavior !   Story format
  13. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 – –

    context You & Your condition What you do What you see Simple Structure event response
  14. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 – –

    Given You & Your condition What you do What you see Simple Structure When Then
  15. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Helpful Guidelines

    Given: I am documenting reqs When: I write req using design agnostic behavior Then: My requirements may be reused
  16. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Helpful Guidelines

    Given: I am documenting reqs When: I write req using natural language Then: My requirements will be understood
  17. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Helpful Guidelines

    Given: I am documenting reqs When: I write req using business terms Then: My business partners will understand the req
  18. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Helpful Guidelines

    Given: I am documenting reqs When: I add example scenarios with data Then: I can validate what has been built meets the goals
  19. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Who Benefits?

    Everyone! !   Seriously, it helps everyone •  Sponsors •  Business partners •  Users •  Testers •  Developers •  Analysts
  20. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 The Power

    of Stories !   Precise grammatical structure !   Discovery & understanding !   Captured conversation
  21. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Recap !

      Find the value !   Model the output !   Communicate with behavior- based requirements
  22. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Recommended Resources

    ! Gojko Adzic BDD / Specification by Example gojko.net !   Liz Keogh BDD lunivore.com !   Chris Matts Invented: Feature Injection theitriskmanager.wordpress.com !   Dan North Invented: BDD dannorth.net
  23. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Share &

    Tell This is licensed under Creative Commons Sharealike [CC BY 3.0] !   Please use it !   Please share it !   Please improve it !   As long as you credit me somewhere
  24. © Jeffrey Davidson, 2012 © Jeffrey Davidson, 2012 Contact Information

    Jeffrey Davidson, CSPO PMC Principal Consultant, President, IIBA Dallas !   email [email protected] !   blog http://goodrequirements.com !   Twitter @JeffreyGoodReq
  25. Reducing Risk in Software Projects Using Behavior Based Requirements Jeffrey

    Davidson, CSPO PMC e: [email protected] b: goodrequirements.com UT DALLAS 6th Annual Project Management Symposium August 16, 2012