Elicitation is an active effort to extract project-related information from all relevant stakeholders. The objective is to clearly define the business or project objectives. Requirements elicitation uses various analytics and techniques that allow for complete, concise and clear requirements to be gathered
Requirements elicitation is perhaps the most difficult, most error-prone and most communication intensive software development. It can be successful only through an effective customer-developer partnership. It is needed to know what the users really need.
There are a number of requirements elicitation methods. Few of them are listed below –
Interviews
Brainstorming Sessions
Facilitated Application Specification 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:
The objective of conducting an interview is to understand the customer’s expectations from the software.
It is impossible to interview every stakeholder hence representatives from groups are selected based on their expertise and credibility.
Interviews maybe are open-ended or structured.
In open-ended interviews, there is no pre-set agenda. Context-free questions may be asked to understand the problem.
In a structured interview, the agenda of fairly open questions is prepared. Sometimes a proper questionnaire is designed for the interview.
Requirements elicitation is perhaps the most difficult, most error-prone and most communication intensive software development. It can be successful only through an effective customer-developer partnership. It is needed to know what the users really need.
There are a number of requirements elicitation methods. Few of them are listed below –
Interviews
Brainstorming Sessions
Facilitated Application Specification 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:
The objective of conducting an interview is to understand the customer’s expectations from the software.
It is impossible to interview every stakeholder hence representatives from groups are selected based on their expertise and credibility.
Interviews maybe are open-ended or structured.
In open-ended interviews, there is no pre-set agenda. Context-free questions may be asked to understand the problem.
In a structured interview, the agenda of fairly open questions is prepared. Sometimes a proper questionnaire is designed for the interview.
Get practical knowledge on Elicitation from live experts at Business Analyst Training
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 which consists of the list of requirements and their priority if possible.
3. Facilitated Application Specification Technique:
It’s objective is to bridge the expectation gap – the 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-
Part of the environment that surrounds the system
Produced by the system
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 on the requirements which are valuable to the customer.
3 types of requirements are identified –
Normal requirements – In this, the objective and goals of the proposed software are discussed with the customer. Example – normal requirements for a result management system may be the entry of marks, calculation of results etc
Expected requirements – These requirements are so obvious that the customer need not explicitly state them. Example – protection from unauthorised access.
Exciting requirements – It includes features that are beyond customer’s expectations and prove to be very satisfying when present. Example – when unauthorised access is detected, it should back up and shut down all processes.
The major steps involved in this procedure are –
Identify all the stakeholders, eg. Users, developers, customers etc
List out all requirements from the customer.
A value indicating the degree of importance is assigned to each requirement.
In the end, the final list of requirements is categorised as –
It is possible to achieve
It should be deferred and the reason for it
It is impossible to achieve and should be dropped off
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, use case diagram.
Actor – It is the external agent that lies outside the system but interacts with it in some way. An actor may be a person, 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.
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.
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.
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 which consists of the list of requirements and their priority if possible.
3. Facilitated Application Specification Technique:
It’s objective is to bridge the expectation gap – the 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-
Part of the environment that surrounds the system
Produced by the system
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 on the requirements which are valuable to the customer.
3 types of requirements are identified –
Normal requirements – In this, the objective and goals of the proposed software are discussed with the customer. Example – normal requirements for a result management system may be the entry of marks, calculation of results etc
Expected requirements – These requirements are so obvious that the customer need not explicitly state them. Example – protection from unauthorised access.
Exciting requirements – It includes features that are beyond customer’s expectations and prove to be very satisfying when present. Example – when unauthorised access is detected, it should back up and shut down all processes.
The major steps involved in this procedure are –
Identify all the stakeholders, eg. Users, developers, customers etc
List out all requirements from the customer.
A value indicating the degree of importance is assigned to each requirement.
In the end, the final list of requirements is categorised as –
It is possible to achieve
It should be deferred and the reason for it
It is impossible to achieve and should be dropped off
know how to solve these requirements practically at Business Analyst Course
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, use case diagram.
Actor – It is the external agent that lies outside the system but interacts with it in some way. An actor may be a person, 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.
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.
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.
Know more information from live experts at BA Online Training
0 comments:
Post a Comment