What are the different types of requirements elicitation techniques? Explain in brief.
There are different types of requirements elicitation methods or techniques. A few of them are listed below:-
- Interview
- Brainstorming session
- Facilitated Application-Specific Technique (FAST)
- Quality Function Deployment (QFD)
- Use Case Approach
The success of an elicitation technique used depends on the maturity of the analyst, developers, users, and the customer involved.
1. Interviews:
- Objective of conducting an interview is to understand the customer's expectations of the software.
- It is impossible to interview every stakeholder hence representatives from groups are selected based on their expertise and credibility.
- Interviews maybe be open-ended or structured.
a) In open-ended interviews there is no pre-set agenda. Context-free questions may be asked to understand the problem.
b) In a structured interview, agenda of fairly open questions are prepared. Sometimes a proper questionnaire is designed for the interview.
2. Brainstorming Sessions:
- It is a group technique
- It is intended to generate lots of new ideas hence providing a platform to share views
- A highly trained facilitator is required to handle group bias and group conflicts.
- Every idea is documented so that everyone can see it.
- Finally, a document is prepared that consists of the list of requirements and their priority if possible.
3. Facilitated Application Specification Technique:
- Its objective is to bridge the expectation gap difference between what the developers think they are supposed to build and what customers think they are going to get.
- A team-oriented approach is developed for requirements gathering.
- Each attendee is asked to make a list of objects that are
a) Part of the environment that surrounds the system
b) Produced by the system
c) Used by the system
- Each participant prepares his/her list, different lists are then combined, redundant entries are eliminated, the team is divided into smaller sub-teams to develop mini-specifications and finally, a draft of specifications is written down using all the inputs from the meeting.
4. Quality Function Deployment:
- In this technique customer satisfaction is of prime concern, hence it emphasizes the requirements which are valuable to the customer.
- 3 types of requirements are identified -
a) Normal requirements - the objective and goals of the proposed software are discussed with the customer. For example - normal requirements for a result management system may be the entry of marks, calculation of results, etc...
b) Expected requirements - These requirements are so obvious that the customer need not explicitly state them. Example - protection from unauthorized access.
c) Exciting requirements - It includes features that are beyond the customer's expectations and prove to be very satisfying when present. For example - when unauthorized access is detected, it should back up and shut down all processes.
5. Use Case Approach:
- This technique combines text and pictures to provide a better understanding of the requirements.
- The use cases describe the 'what', of a system and not 'how'. Hence they only give a functional view of the system.
- The components of the use case design include three major things - Actor, Use cases, and use case diagram.
a) Actor - It is the external agent that lies outside the system but interacts with it in some way. An actor may be a person, a machine, etc. It is represented as a stick figure. Actors can be primary actors or secondary actors.
• Primary actors - It requires assistance from the system to achieve a goal.
• Secondary actor - It is an actor from which the system needs assistance.
b) Use cases - They describe the sequence of interactions between actors and the system. They capture who(actors) do what(interaction) with the system. A complete set of use cases specifies all possible ways to use the system.
c) Use case diagram - A use case diagram graphically represents what happens when an actor interacts with a system. It captures
the functional aspect of the system.
• A stick figure is used to represent an actor.
• An oval is used to represent a use case.
• A line is used to represent a relationship between an actor and a use case.
Comments
Post a Comment