- Forward


Generating Product Requirements
in an Agile/Incremental Process


Prof. David Bernstein
James Madison University

Computer Science Department
bernstdh@jmu.edu

Print

A Reminder
Back SMYC Forward
  • Product Design:
    • Analysis - understanding the problem (i.e., eliciting needs)
    • Resolution - creating a solution (i.e., generating product requirements)
  • Resolution in an Agile/Incremental Process:
    • Requirements are generated "just in time" (i.e., just enough requirements are generated to allow construction to begin/continue)
    • The requirements are modified continuously (based on conversations and negotiations with stakeholders)
Rationale
Back SMYC Forward
  • Problems with Heavyweight/Non-Incremental Processes:
    • Changes are expensive because the work in process (i.e., the detailed requirements and the construction based on them) might need to be discarded
  • Advantages of Incremental Processes:
    • Low-value requirements can be eliminated and high-value requirements can be added
    • Complete specifications can't be created up-front for innovative products
Approach
Back SMYC Forward
  • Progressive Refinement:
    • Requirements that will be realized sooner have more detail than requirements that will be realized later
    • Product backlog items (PBIs) act as placeholders
    • Disaggregation occurs "just in time"
  • Conversation:
    • Don't create detailed written descriptions (which are likely to contain defects), have timely conversations
There's Always More to Learn
Back -