RESUMO
Ambiguity is a common challenge in specifying natural language (NL) requirements. One of the reasons for the occurrence of ambiguity in software requirements is the lack of user involvement in requirements elicitation and inspection phases. Even if they get involved, it is hard for them to understand the context of the system, and ultimately unable to provide requirements correctly due to a lack of interest. Previously, the researchers have worked on ambiguity avoidance, detection, and removal techniques in requirements. Still, less work is reported in the literature to actively engage users in the system to reduce ambiguity at the early stages of requirements engineering. Traditionally, ambiguity is addressed during inspection when requirements are initially specified in the SRS document. Resolving or removing ambiguity during the inspection is time-consuming, costly, and laborious. Also, traditional elicitation techniques have limitations like lack of user involvement, inactive user participation, biases, incomplete requirements, etc. Therefore, in this study, we have designed a framework, Gamif ication for Lex ical Amb iguity (Gamify4LexAmb), for detecting and reducing ambiguity using gamification. Gamify4LexAmb engages users and identifies lexical ambiguity in requirements, which occurs in polysemy words where a single word can have several different meanings. We have also validated Gamify4LexAmb by developing an initial prototype. The results show that Gamify4LexAmb successfully identifies lexical ambiguities in given requirements by engaging users in requirements elicitation. In the next part of our research, an industrial case study will be performed to understand the effects of gamification on real-time data for detecting and reducing NL ambiguity.
RESUMO
Requirements elicitation is one of the most significant activities of requirements engineering (RE) process. Poorly specified requirements can lead to a failed project. Various elicitation techniques are used to elicit requirements from the users and other stakeholders, each having its own pros and cons. Lack of user engagement, less user involvement, textual nature of the requirements, time taking process are some of the major problems that make it difficult to perform elicitation via traditional techniques. Moreover, these problems further create other challenges such as ambiguity, inconsistency, and incompleteness in requirements. Currently, researchers have focused on reducing ambiguity in requirements with the help of different techniques such as natural language processing techniques, requirement templates, and formal methods; however, these techniques work on reducing ambiguity during specification or from specified requirements. One of the "young' and exciting way of engaging users in requirements elicitation of a system is "Gamification', which helps in user engagement into the system. We intend to discover how gamification helps in reducing ambiguity by engaging stakeholders in an interactive manner. In this review study, we have reviewed traditional techniques used to detect and reduce requirements ambiguity. On the contrary, we have also presented the significance of gamification in requirements elicitation and the popular but effective game elements used in similar systems. Furthermore, this study highlights the significance of using gamification in requirements elicitation, which is beneficial to software development team as well as the users involved in the system.