Why Requirement Elicitation is difficult?
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.|