JUCS - Journal of Universal Computer Science 28(11): 1136-1168, doi: 10.3897/jucs.78776
Building an integrated requirements engineering process based on Intelligent Systems and Semantic Reasoning on the basis of a systematic analysis of existing proposals
expand article infoAlexandra Corral, Luis E. Sánchez§, Leandro Antonelli|
‡ University of the Armed Forces ESPE, Sangolquí, Ecuador§ GSyA Research Group, University of Castilla-La Mancha, Ciudad Real, Spain| Lifia – Facultad de Informatica, National, University of La Plata, La Plata, Argentina
Open Access
Abstract

Requirements Engineering is one of the fundamental activities in the software development process and is oriented toward what should be produced. One of the development team’s most common problems is a lack of communication regarding an understanding of the discourse domain and how to integrate and process excessive information originating from different sources. This may lead to errors of omission and the consequent production of incomplete and inconsistent artifacts, which will have a direct effect on the quality of the software. The use of machine learning techniques helps the development team produce successful software on the basis of the acquisition of knowledge and human experience with which to understand the domain of the application. This paper, therefore, presents a proposal for a new methodological process oriented toward the construction of a vocabulary concerning the application domain. The authors propose to do this by employing Natural Language Processing (NLP), ontologies and heuristics that will lead to the production of a Lexicon that is common to analysts and customers, both of whom will understand the universe of discourse, thus mitigating problems of completeness. This objective has been achieved by carrying out a Systematic Literature Review of the artificial intelligence techniques employed in the requirements engineering process, which led to the discovery that 41.37% use NLP, while 55.71% apply ontologies such as semantic reasoners which help solve the problem of language ambiguity, the structures in specifications or the identification of key concepts with which to establish traceability links. However, the review also showed that the problems regarding the comprehension and completeness of requirements problems have yet to be resolved.

Keywords
Software Engineering; Software Requirements; Intelligent Systems Artificial Intelligence Techniques; Natural Language Processing; Semantic Reasoning