Knowledge-based ambiguity detection approach to eliminate vagueness in user requirements

Requirements are the foundation of a software system. It is expected to be clear, precise, and non-ambiguous. Ambiguous requirements are the results of requirements that are gathered in natural language. Natural language is normally used while gathering requirements in verbal or non-verbal because i...

全面介绍

Saved in:
书目详细资料
主要作者: Sinpang, Jacline Sudah
格式: Thesis
语言:English
出版: 2021
主题:
在线阅读:http://eprints.utm.my/103056/1/JaclineSudahMSC2021.pdf.pdf
标签: 添加标签
没有标签, 成为第一个标记此记录!
实物特征
总结:Requirements are the foundation of a software system. It is expected to be clear, precise, and non-ambiguous. Ambiguous requirements are the results of requirements that are gathered in natural language. Natural language is normally used while gathering requirements in verbal or non-verbal because it is easier for software engineers and stakeholders to understand each other. Vague requirements often stem from vague words in the requirements. A requirement that consists of a vague word depends on the individual interpretation and this will cause the requirements to be ambiguous. Vagueness is part of the ambiguity. This could lead to a wrong interpretation of what the system should be and should do. As requirements engineering is a crucial phase in software development, it is important to tackle the issue of vagueness to avoid the requirements to be ambiguous. This research proposes an approach known as Knowledge-based Requirements Analysis for Ambiguity Detection (KbReAD) that provides automatic detection of vague words in requirements using the rule-based reasoning technique which is a specific type of knowledge base. The knowledge base allows analysis of a large amount of data to be done in a small amount of time. It also does not depend on previous experience like how machine learning works. The knowledge base is also high in reliability. The initial expert knowledge for vagueness is captured using the rule-based technique into the KbReAD prototype tool that allows new knowledge to be added dynamically. From this knowledge, vagueness can be divided into six categories; vague subjects, vague adjectives, vague prepositions, vague verbs, vague phrases, and vague adverbs. Sets of raw requirements that are yet to be documented in Software Requirement Specification (SRS) are analyzed to evaluate the rule-based reasoning. The result from the analysis shows the proposed work is capable of predicting the actual number of vague requirements. The evaluation shows that the proposed approach is able to predict and detect vague words in the requirements accurately.