Requirement elicitation simply means a process to gather or get or produce requirements. It is also known as requirement gathering. Discovering or identifying requirements, analyzing requirement, and validation or checking of system requirements are different activities that are needed to be done in Requirement engineering. Functional requirements are generally identified using use cases.
Nowadays, Elicitation is very essential and important because many of the stakeholders are not being able to clearly specify and tell about problems related to business. Therefore, requirement elicitation is very much needed to be done by the analysts to simply clarify and ensure that all of the requirements that are produced and developed are simple, understandable, useful, and relevant. There are some activities that are common to all processes out of which one is Requirement elicitation. Various elicitation techniques are available like :
- Interviewing –
This is the business analysis technique used to verify and identify requirements. It is basically a systematic approach that is needed to elicit information from user or a group of people.
- Meeting –
Meeting is also called a Facility Application Specification Technique (FAST) and is widely used as an elicitation technique. In these, customers and developers work together as a team to identify problem and find out the solutions.
- Designing use case models –
It generally represents requirement graphically. These are simply required to gather and collect the requirements of a system along with internal and external influences.
- Quality function deployment –
It simply increases and maintains quality of software system. It also provides documentation for the decision-making process.
However, requirement elicitation is very difficult task. Most of the errors occur during requirement elicitation. Several problems encountered in understanding requirements of system. These are given below :
|Unrealistic expectations||If the system does not fulfill expectations of the clients and users, then project is considered to be a failure. Sometimes, Stakeholders or users are unable to specify or clearly mentions what exactly they want or what their requirements are. They sometimes expect or demand unrealistic requirements that cannot be fulfilled. Therefore, it becomes very difficult to meet the expectations of the users.|
|Differences in requirements||Different stakeholders or users have different requirements as per their needs. These requirements are received from different users and even from same user but at different times. Therefore it cannot be fulfilled at the same time because makes it difficult for requirement engineer or the analysts to resolve issue in requirements.|
|Economic and business environment||There might be change in the requirements or change in the stakeholders that will result in the change in importance of particular requirements. This is due to effective or dynamic or vigorous environment of economy and business that will cause change during analysis process. This will cause change in scope of project or process that will make the requirement elicitation difficult.|
|Political changes||Requirement for system is sometimes heavily and largely affected by political change and heavily influenced by political factors. Hence, it may alter a change in the needs or affect requirement elicitation and analysis.|
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Software Engineering | Requirements Elicitation
- Distribution Requirement Planning (DRP)
- Software Requirement Specification (SRS) Format
- Dimensions of Requirement Gathering
- Activities involved in Software Requirement Analysis
- Functional and Non-functional Requirement of a System
- What is Unit Testing and Why Developer Should Learn It ?
- Why your Regression Testing is taking you longer than necessary
- Implementation of CMMS
- Difference between Integration Testing and Sandwich Testing
- Computerized Maintenance Management System (CMMS)
- Difference between Case Study and Action research
- Difference between Software Engineer and DevOps Engineer
- Manual Code Review : Security Assessment
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.