1 / 27

Development with Seatbelts: Controlling Reqts Risk

Development with Seatbelts: Controlling Reqts Risk. David Gelperin ClearSpecs Enterprises david@clearspecs.com. Controlling Reqts Risk 1. Reqts Risk 2. Risk Mgmt 3. Safety Tactics. Reqts can be Dangerous.

Download Presentation

Development with Seatbelts: Controlling Reqts Risk

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Development with Seatbelts: Controlling Reqts Risk David Gelperin ClearSpecs Enterprises david@clearspecs.com

  2. Controlling Reqts Risk1. Reqts Risk2. Risk Mgmt3. Safety Tactics

  3. Reqts can be Dangerous • Fred Brooks is still right: The hardest single part of building a … system is deciding precisely what to build • Arthur Schlesinger is right: … the possibilities of the future are more various than the human intellect is designed to conceive

  4. Reqts are Dangerous 2006 2000

  5. Reqts Risk Risk: potential cause of significant harm or loss Synonyms: danger, hazard, peril Stakeholders Risk Implementation Risk Reqts Process Risk Change Risk Resources Risk Defects Risk

  6. Who’s in Peril “from”? Danger, Will Robinson • Project Estimator • Product Architect • Functional Designer • Product Tester • Product Developer • Documentation Author • Product User • Bystander • Product Customer

  7. 6 Types of Reqts Risk “to” risk Stakeholders Risk: potential for seriously defective reqts info rooted in inadequate understanding, involvement or inappropriate behavior Process Risk: potential for seriously defective reqts info rooted in inadequate reqts dev or mgmt processes Resources Risk: potential for seriously defective reqts info rooted in inadequate time or tools “from” risk Implementation Risk: potential for significant problems in implementing a set of one or more good reqts Change Risk: potential for significant harm or loss rooted in rapidly changing reqts info Defects Risk: potential for significant harm or loss rooted in defective reqts info

  8. Are Good Reqts Possible? Some (e.g., in the agile community) believe that large-scale reqts cannot be done effectively – and they may be right. History provides strong evidence for this view. A different interpretation of history is that just doing the basics is not enough. Proactive mgmt of reqts risk must be included.

  9. Controlling Reqts Risk1. Reqts Risk2. Risk Mgmt3. Safety Tactics

  10. Risk Mgmt is Project Mgmt for Adults An almost defining characteristic of adulthood is a willingness to confront the unpleasantness of life, from the niggling to the cataclysmic. … You have to face up to unpleasant realities. That’s what it means to be a grown-up. DeMarco & Lister

  11. SEI Continuous Risk Mgmt Process includes: • identify risk factors i.e., risks, indicators, and root causes • classify, assess and prioritize factors • develop and executearisk management strategy • monitor factors and strategy • adjust strategy, journaling causes and adjustments • communicate activities and results

  12. Project Risk Factors People • Sponsors • Management • Support • Skills • Head count • Under-performance • Politics • Conflict System • Requirements • Design • Interaction with environment • Innovation • Scale Project • Schedule • Budget Change • Turnover • Scope creep

  13. Controlling Reqts Risk1. Reqts Risk2. Risk Mgmt3. Safety Tactics (48)

  14. Categories of Safety Tactics • Avoid reqts-based failures • Mitigate impact of reqts-based problems • Minimize reqts-based problems • Monitor reqts status • Staff for reqts development • Plan for reqts risk mgmt • Prepare for reqts risk mgmt • Compensate for reqts-based problems Thinking Outside the (Reqts) Box

  15. 1. Avoid Reqts-based Failures • Reconfirm reality and satisfiability of stated needs • Triage and prioritize reqts • Manage customer expectations • Reconfirm project feasibility • Identify and resolve conflicts early • Commit incrementally

  16. 2. Mitigate Impact of Reqts-based Problems • Require frequent demos of understanding • Decouple vision from build • Prototype unfamiliar functions and interfaces • Build in multilane cycles Mitigation saves money (by definition)

  17. 3a. Minimize Comm Problems – part 1 • Maintain a climate of personal safety and respect • Use rich definitions • Use algebraic formulas rather than “magic numbers”

  18. Personal Safety and Respect Acknowledge personality types No fear of disrespect or reprisal Enables: • truth telling • voicing concerns • “don’t knows”

  19. Derived Conditions (modified nouns) Derived conditions name collections of one or more logical expressions (joined by ANDs and Ors) potential customer = bought-many-services or bought-services-A-and-B or bought-a-lot-of-service-C bought-many-services = total-invoiced-service-types > 5 bought-services-A-and-B = invoiced-for-service-A and invoiced-for-service-B bought-a-lot-of-service-C = invoiced-amount-for-service-C > $500,000.00

  20. Project Glossary Rich Definitions Nouns [unmodified] (customer, service) Entity profiles Modified Nouns (order for service, satisfied customer potential customer) Related entities Quality profiles Derived values Derived conditions Verbs, Post-modified (identify customers) Action contracts Derived tasks Verbs, Premodified (accurately identify, reliably process) Quality profiles Events (accurately identify potential customers for our new web-based order management system) Event profiles Common Definitions Plain definitions Acronyms

  21. Algebraic Formulas Example: TCAS shall provide collision avoidance protection for any two commercial aircraft (excluding the Concorde) closing horizontally at a rate up to max-horiz-closing ( = 2 max-air-speed; currently max-air-speed = 600 knots) and vertically at a rate up to max-vert-closing ( = max-control-descent + max-climb; currentlymax-control-descent = 5000 fpm and max-climb = 4000 fpm)

  22. 3a. Minimize Comm Problems – part 2 • Create user personas • Clarify with examples and measures • Structure information with spec patterns -- avoid text blocks • Picture reqts info • Capture context

  23. Structure Info with Models Context • Inter-actors • Boundary data flow • Interfaces Usage • User Stories • Use Cases • Usage Scenarios • Acceptance Tests Behavior • Decision Tables • Trigger-Response Tables • State Transition Tables

  24. Picture Reqts Info • Diagrams • entity • entity-relationship • concept maps • reqts graph • usage context • usage • scenario • collaboration • sequence • activity • state • Mockups • screens • data displays • reports • Simulations • process flow (scenario) • screen flow

  25. Now What? Goal: Reduce reqts-related risk by changing stakeholder understanding and thereby behavior • Question -- Are your reqts info and process satisfactory? How do you know? • Learn (and remember) how to accurately forecast danger (i.e. what to fear) • Use relevant tactics to develop your RRM strategy • Monitor reality and adjust

  26. BUT, it won’t be easy Risk management is the least practiced of all project managementdisciplines across all industry sectors, and nowhere less applied than the IT industry. Robert Charette quoting a PMI study

  27. Checkout technical papers at www.clearspecs.com Email questions and comments to david@clearspecs.com

More Related