There are three articles to read this week.
Requirements Elicitation and Analysis
Read this entire chapter, but pay special attention to Section 4.5.5 and the various elicitation techniques: (brainstorming, document analysis, facilitated workshops, focus groups, interviews, observation, prototyping, and questionnaires & surveys).
O'Reilly Media, "Requirements Elicitation and Analysis," Business Analysis for Practitioners: A Practice Guide, Jan. 2015 [Online] Available: https://go.oreilly.com/byu-idaho/library/view/business-analysis-for/9781628250794/chapter04.xhtml
Requirements Engineering Processes, Tools/Technologies, & Methodologies
This article can be a bit difficult to read, but it contains a great deal of good information. Please focus on the different tools and techniques: (interviews, surveys, questionnaires, task analysis, domain analysis, repertory grids, card sorting, class responsibility collaboration, laddering, group work, brainstorming, joint application development, requirement workshop, ethnography, observation, protocol analysis, and prototyping).
Shams-Ul-Arif, Khan, and Gahyyur, "Requirements Engineering Processes, Tools/Technologies, & Methodologies," International Journal of Reviews in Computing, pp. 41-56, 2009 [Online] Available: http://www.ijric.org/volumes/Vol2/6Vol2.pdf
Requirements Elicitation: A Survey of Techniques, Approaches, and Tools
This article presents a second voice to the previous one. Again, please focus on the different tools and techniques: (interviews, questionnaires, task analysis, domain analysis, introspection, repertory grids, card sorting, laddering, group work, brainstorming, joint application development, requirements workshops, ethnography, observation, protocol analysis, apprenticing, prototyping, goal based approaches, scenarios, and viewpoints).
D. Zowghi and C. Coulin, "Requirements Elicitation: A Survey of Techniques, Approaches, and Tools" Engineering and Managing Software Requirements, pp. 19-46, 2005 [Online] Available: http://link.springer.com/chapter/10.1007%2F3-540-28244-0_2#page-1
Elicitation
When studying the different elicitation techniques, you will notice dependencies between each. Some elicitation techniques need to be completed before other, or need information from other techniques. We have provide a three stage approach to working with the different techniques.
-
Discovery:
One of the first steps in the process is to discovery what the customer really wants.
This is done through introspection and questionnaires.
This will drive the purpose, scope and features of the product.
(SRS: Section 1)
- Introspection: You should have several features and requirements about your idea.
- Questionnaire: You should have either additional features and requirements or confirmation of the features. Questionnaires can be any form of interviews or surveys.
- Brainstorming: Similar to what you did when coming up with the project idea.
-
Empathy:
The next stage is to understand how the software will be used and by whom.
What the software will do?
This will drive the product overview, specifically perspective, functions, user characteristics and limitations.
(SRS: Section 1)
- Scenarios: Think through how the software is going to be used.
- Profiles: Think carefully about who is going to be using the software.
- Card Sorting Work with stakeholders to help you understand of elements of your software and how they relate to each other.
-
Documentation:
One of the final stages of elicitation is to document the data into information that can be used to create the SRS Requirements (Section 3).
- Task Analysis: Determined potential features and sub-features of the application.
- Requirements Workshop: Collecting potential requirements using various techniques: Focus Groups, Cross-Functional, Co-op and Creative. This is done when many stakeholders can be gathered together at the same time.
All of these techniques are found in the reading in one form or another.