Consensus Building: Achieving Win-Win Outcomes in Requirements Engineering
Consensus Building (Win-Win)
Aims at bringing a number of stakeholders to consensus, a typical problem during requirements engineering.
Incremental, Risk-Driven Spiral Process
- Identification of stakeholders
- Identification of win conditions
- Conflict resolution
Asynchronous Groupware Tool
- Stakeholders post win conditions
- Facilitator detects conflict
- Stakeholders discuss alternatives
- Stakeholders make agreements
- Review and expand negotiation topics
Objective: Refine and customize the outline of negotiation topics.
Project Requirements
- Mandates for design team
- Global constraints, such as mandated technology, often non-negotiable
- Policy, procedure, methodology
- Tools, techniques
Project requirements should be M.A.R.S. (Measurable, Achievable, Relevant, Specific)
System Capabilities
- Features, functions, behaviors
- Nominal: primary purpose of the system
- Off-nominal: for handling exceptions, variant scenarios
Capability requirements are testable.
Interface Requirements
- How should it look and feel to the user?
- How should it tie to other software and hardware systems?
Level of Service Requirements
- How well must the system perform a given requirement?
Performance, Reliability, Portability, …
Level of Service Requirements should be M.A.R.S.
- Measurable
- Achievable
- Relevant
- Specific
Evolution Requirements
- Account for predictable future growth and change
- Capability Evolution
- Level of Service Evolution
- Interface Evolution …
How: Could-be, Should-be
- Could-be: add comments recommending change to this outline
- Should-be: a moderator reviews these comments together with the group and modifies the outline itself
Result: Shared Outline that helps to:
- stimulate your thinking,
- organize your win conditions, and
- serves as a completeness checklist for negotiations.
- Brainstorm stakeholder interests
Objective: Share perspectives, views, background, expectations.
How: Anonymous, rapid brainstorming.
Result: An unstructured set of comments about their vested interests (win conditions).
- Converge on Win Conditions
Objective: Build and organize win conditions.
How: Structured discussion to converge on key win conditions.
Result: List of clearly stated, unambiguous win conditions.
- Capture a glossary of Terms
Objective: Define and share meaning of important terms.
How: Initial definitions based on stakeholder statements; joint review.
Result: A glossary of terms with definitions and stakeholder statements showing usage of terms.
- Prioritize Win Conditions
Objective: Scope project, gain focus.
How: Vote on Business Importance & Ease of Realization.
Result: Prioritized win conditions.
- Identify Issues and Options
Objective: Surface and understand issues.
How: Analyze prioritization poll to reveal conflicts, constraints, different perceptions.
Result: Issues, sometimes Options.
- Negotiate Agreements
Objective: Explore issues and options; negotiate agreements.
How: Develop/Review pass for issues, options, agreements.
Result: A WinWin Tree:
- Win conditions
- Issues
- options,
- agreements
- Organize negotiation results
Objective: Check if negotiation topics have been sufficiently covered.
How: Joint Sorting and Reviewing.
Result: List of topics needing further attention.