A tool for detecting ambiguity in software requirement specification

This thesis is about detecting ambiguities in software requirements' specification (SRS). Specifically, most of the software requirement documents are written in Natural languages (NLs). NLs are basically ambiguous. Ambiguity is a statement of requirements, which have more than one interpretati...

Full description

Saved in:
Bibliographic Details
Main Author: Isse, Abdirashid Ali
Format: Thesis
Language:English
Published: 2019
Subjects:
Online Access:http://psasir.upm.edu.my/id/eprint/83813/1/FSKTM%202019%2012%20-%20IR.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:This thesis is about detecting ambiguities in software requirements' specification (SRS). Specifically, most of the software requirement documents are written in Natural languages (NLs). NLs are basically ambiguous. Ambiguity is a statement of requirements, which have more than one interpretation. However, Ambiguity can be considered as an issue of software requirement documents because it can lead the software developers to develop software, which is different what the customers’ need. The aim of this research is to propose a tool which detects lexical, syntactic and syntax ambiguities in SRS. In this thesis, ambiguity words from the ambiguity handbook have been used to detect lexical ambiguity. In parallel, Parts of speech (POS) tagging technique has been applied to detect syntactic and syntax ambiguous. The proposed tool was evaluated in order to check its performance by comparing human detection capacity and the proposed tool. The aim of this evaluation also was to see if the humans face complexities in detecting ambiguity in SRS, and the result shows that the humans have difficulties detecting ambiguities in SRS compared to the proposed tool, particularly, lexical ambiguity and requirements that contains lexical, syntactic and syntax ambiguities in one sentence. The proposed tool can facilitate both software analysts and developers to detect the ambiguities in software requirements' specification easily.