Requirements Elicitation. Slinger Jansen. 1. Motivation 2. Requirements 3. Continuous RE 4. The RE Framework 7. Fundamentals of Goal Orientation 8. Documenting Goals 9. Fundamentals of Scenarios 10. Scenario Types 11. Documenting Scenarios 12. Benefits of using Goals and Scenarios
1. Motivation 2. Requirements 3. Continuous RE 4. The RE Framework 7. Fundamentals of Goal Orientation 8. Documenting Goals 9. Fundamentals of Scenarios 10. Scenario Types 11. Documenting Scenarios 12. Benefits of using Goals and Scenarios 13. Fundamentals of Solutions 14. Documenting Solution Oriented Requirements 15. Integration of the Three Perspectives 16. Fundamentals of Documentation 20. Interrelation of Model Based and Textual Requirements 21. Fundamentals of Elicitation 22. Elicitation Techniques 24. Fundamentals of Requirements Negotiation 27. Fundamentals of Requirements Validation 30. Fundamentals of Requirements Management 31. Requirements Traceability 32. Prioritizing Requirements 37. RE for SPL 38. Requirements-based Testing
Gathering from external sources Customer: Extension of product features: Specialization: new attributes, process variants Completion: covering the whole workflow Interoperability: interfacing with other products Market: Product positioning Standard functionality coverage Market distinction: unique selling points Partners: Product implementation Voice of customers Partner revenue generating features
Gathering from internal sources - 1 Company board Long term product vision Major product themes Influence from portfolio and lifecycle decisions Sales Input from Request for Information (RFI) and Request for Proposals (RFP) Short term vision Marketing Sense of the market; market trends, Competitors, market analysis
Gathering from internal sources - 2 Research & innovation Functional feature innovation Technical platform innovation; prototypes with new devices Development Refactoring of architectural problems Process optimization Services Features that facilitate implementation: migration tools, business modeling tools Voice of customer Support Frequently occurring problems
Communication channels Stakeholder input channel: Specific process for each channel Educate internal stakeholders about process obligations (sales and marketing, board, etc.) Do NOT allow bypassing of product management Agenda time allocation per input channel Always give a response to every input of a market requirement Careful with explicit communication of release inclusion, best in case of development completion
Requirements gathering techniques Lead user interviews User groups Workshops Brainstorming Beta customers Prototyping Questionnaires
Lead user interviews Interviews with representatives of certain groups of stakeholders or key accounts Lead Users are users of a product that currently experience needs still unknown to the public and who also benefit greatly if they obtain a solution to these needs (von Hippel, 1986)
User groups Groups of customers who commonly use your products and services. They provide input on product improvements, and offer feedback on their needs and desires
Workshops Or: Joint requirements development sessions Requirements are jointly identified and defined by stakeholders. Cross-functional implications that are unknown to individual stakeholders are uncovered.
Brainstorming Gathering of stakeholders and the exchange of ideas in an open atmosphere where no one risks being ridiculed for their ideas and no ideas are rejected/criticized.
Beta customers Users who test the beta-version of a working product in a real production environment
Prototyping Users can experiment with the system and point out its strengths and weaknesses of the implemented requirements.
Questionnaires Research instrument to get quantitative data from respondents
Based on: A.M. Hickey, A.M. Davis, "Elicitation Technique Selection: How Do Experts Do It?," 11th IEEE International Requirements Engineering Conference (RE'03), pp.169, 2003. Selection of techniques Catch-up high Mature Experience Customer / User Fuzzyproblem Teaching low low high Experience Product team Fuzzy problem: Brainstorming Workshops Teaching: Prototypes Beta-customers Catch-up: Lead user interviews User groups Work in user setting Mature: Questionnaires Workshops Prototypes
Demonstration of Customer voting Electronic voting on prepared list of requirements User suggestions for Facebook features Find out which profiles are visited by your friends (y:15, n: 30) Show statistics of visitors of your profile (y: 9, n: 18) Turn off game application notifications from others (y: 45) Find out who visited your profile (y:17, n: 16) Face recognition functionality to find look-a-likes (y:28, n:7)