This document discusses requirement engineering and related processes. It provides an overview of requirement elicitation, elaboration, negotiation, prioritization, validation and verification. Several prioritization techniques are described such as MOSCOW, bubble sort, and the hundred dollar method. Validation ensures requirements are complete and correct while verification checks that the product meets the documented requirements. Requirement engineering is the first step to understand customer needs and specify solutions.
2. Page 2Classification: Restricted
Agenda
• Requirement Engineering
• Elaboration and Management
• Negotiating
• Validation
• Verification
• Validation and Verification
• Requirement Engineering at a Glance
3. Page 3Classification: Restricted
Requirement Engineering
• Provides appropriate mechanism for understanding:
• Inception -what the customer wants
• Elicitation - Analyzing needs
• Elaboration - Assessing feasibility
• Negotiating a reasonable solution
• Specifying the solution
• Validating the specification
• Managing the requirements
4. Page 4Classification: Restricted
• Information from Elicitation and Inception is further expanded and refined
during elaboration
• Composed of number of modeling and refinement tasks
• Creation of Use cases and User scenarios
• Root Cause Analysis
Elaboration and Management
5. Page 5Classification: Restricted
• Identifying the real need of building the Software
• Using Prioritization techniques requirements are further analyzed
• Risk against each is calculated
• Efforts estimation OR guesstimate
• Requirements are then combined/eliminated.
Negotiating
7. Page 7Classification: Restricted
• Prioritization: Ranking
• Rank requirements on an ordinal scale
• Assigning a different numerical value against
each requirement based on importance
• Limitation:
• Works best with 1 stakeholder as it is difficult
to align different stakeholder’s perspectives.
Negotiating
8. Page 8Classification: Restricted
• Prioritization : Grouping
• Grouping requirements as per different
priority groups.
• Groups should be Clearly defines to
avoid ambiguities.
• To prevent stakeholders from putting
all requirements in one category, the
percentage in each group should be
restricted
• Limitation:
• Each group has the same priority
Negotiating
9. Page 9Classification: Restricted
• Prioritization : MOSCOW
• MUST (Mandatory)
• SHOULD (Of high priority)
• COULD (Preferred but not necessary)
• WOULD (Can be postponed and
suggested for future execution)
Negotiating
10. Page 10Classification: Restricted
• Prioritization : Bubble Sort
• Take 2 requirements and compare
• One with higher priority, Swap
• Continue in this fashion till all the
requirements are
Negotiating
11. Page 11Classification: Restricted
Prioritization : Hundred Dollar Method
• Same as Priority points
• Stakeholders are provided with
some number of priority points
• List of requirements are provided
to each
• Each stakeholder indicates the
relative importance of each
spending one or more priority
points
• Points cannot be reused
• Overall points spent on each
requirement by all stakeholders
decides which one to take up and
which one to be discarded
Negotiating
12. Page 12Classification: Restricted
Prioritization: 5 Why’s?
With five whys, the analyst asks the
stakeholder repeatedly (five times or less)
why the requirement is necessary until the
importance of the requirements is
established
Negotiating
13. Page 13Classification: Restricted
Negotiating
• Art of Negotiation
• Recognize its not a competition
• Map out a strategy
• Listed effectively
• Focus on other party’s interest
• Don’t let it go personal
• Be creative
• Be ready to commit
• ‘Best Negotiation strive for a Win-Win Result’
14. Page 14Classification: Restricted
Validation
• Validation is the process of confirming the completeness and correctness
of requirements.
• Correct – accurately states a customer or external need
• Clear – has only one possible meaning
• Feasible – can be implemented within known constraints
• Modifiable – can be easily changed, with history, when necessary
• Necessary – documents something customers really need
• Prioritized – ranked as to importance of inclusion in product
• Traceable – can be linked to system requirements, and to designs, code,
and tests
• Verifiable – correct implementation can be determined by testing,
inspection, analysis, or demonstration
15. Page 15Classification: Restricted
Verification
• Verification is the process of confirming that the designed and built
product fully addresses documented
• Validation – “Am I building the right product?” Checking a work product
against higher-level work products or authorities that frame this particular
product.
• Requirements are validated by stakeholders.
• Verification – “Am I building the product right?” Checking a work product
against some standards and conditions imposed on this type of product
and the process of its development.
• Requirements are verified by the analysts mainly.
16. Page 16Classification: Restricted
Validation :
Correct
Feasible
Necessary
Prioritized
Unambiguous
Verification :
Concise
Traceable
Non redundant
Organized
Conformant to standards
Validation and Verification