ANALYSIS OF NATURAL LANGUAGE SCENARIOS
Edgar Sarmiento-Calisaya · 2016
Requirements analysis plays a key role in the software development process.Natural language-based scenario representations are often used for writing software requirements specifications (SRS).Scenarios written using natural language may be ambiguous, and, sometimes, inaccurate.This problem is partially due to the fact that relationships among scenarios are rarely represented explicitly.As scenarios are used as input to subsequent activities of the software development process (SD), it is very important to enable their analysis; especially to detect defects due to wrong information or missing information.This work proposes a Petri-Net and Natural Language Processing (NLP) based approach as an effective way to analyze the acquired scenarios, which takes textual description of scenarios (conform to a metamodel defined in this work) as input and generates an analysis report as output.To enable the automated analysis, scenarios are translated into equivalent Place/Transition Petri-Nets.Scenarios and their resulting Petri-Nets can be automatically analyzed to evaluate some properties related to unambiguity, completeness, consistency and correctness.The identified defects can be traced back to the scenarios, allowing their revision.We also discuss how unambiguity, completeness, consistency and correctness of scenariobased SRSs can be decomposed in related properties, and define heuristics for searching defect indicators that hurt these properties.We evaluate our work by applying our analysis approach to four case studies.The evaluation compares the results achieved by our tool-supported approach, with an inspection based approach and with related work.