Detection on ambiguous software requirements specification written in malay using machine learning - Zahrin, Mohd Firdaus (2017)
Software requirement specification (SRS) document is the most crucial document in software development process. SRS is normally produced during the initial part of software development process and all subsequent steps in software development are influenced by the requirements. This implies that the quality of SRS influences the quality of the software product. However, to produce a good quality SRS document is a challenging task as the requirements are normally specified in Natural Language. Issues in requirement, such as ambiguities or incomplete specification may lead to misinterpretation of requirements which consequently, higher the risk of time and cost overrun of the project. Detecting ambiguity requirements in the initial phase is crucial since the ambiguities in requirements that found late are more expensive to fix if it were found early. In Malaysia context, most of Malaysian government’s SRS are written in Malay language as of the requirement to comply with the Article 152, the Federal Constitution of Malaysia (through PP. Bil. 9, 2009 [1] and SPA Bil. 1, 2006 [2]). Most of the work in detecting ambiguity requirements is conducted specifically in English. Unfortunately, the structure of writing between Malay and English is totally different. Hence, we propose a framework to detect ambiguity on SRS using supervised machine learning technique. Four (4) SRS have been collected as our case study and text mining technique is used to classify the ambiguity and unambiguity requirements. Four (4) algorithms have been evaluated to find the suitable classification algorithm for this purpose. As the result, the Random Forest algorithm is the best algorithm which is measured based on measurement metric i.e. F Measure is 0.89, IR Precision is 0.90, IR Recall is 0.89 and Correct is 89.89%. Based on the result, we developed a prototype tool called detection on ambiguous SRS written in Malay using machine learning. This prototype tool has been evaluated by ten (10) experienced participants consist of Requirement Engineer and System Analyst. As the result, six (6) participants are satisfied and two (2) participants are strongly satisfied with the prototype tool on overall.