TY - JOUR
T1 - Model-based requirements verification method
T2 - Conclusions from two controlled experiments
AU - Aceituna, Daniel
AU - Walia, Gursimran
AU - Do, Hyunsook
AU - Lee, Seok Won
N1 - Funding Information:
This work was supported, in part, by NSF Awards CNS-0855106 and CCF-1050343 as well as NSF CAREER Award CCF-1149389 to North Dakota State University. This work was supported by Next-Generation Information Computing Development Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Science, ICT & Future Planning (2013M3C4A7056233) to Ajou University.
PY - 2014/3
Y1 - 2014/3
N2 - Context Requirements engineering is one of the most important and critical phases in the software development life cycle, and should be carefully performed to build high quality and reliable software. However, requirements are typically gathered through various sources and are represented in natural language (NL), making requirements engineering a difficult, fault prone, and a challenging task. Objective To ensure high-quality software, we need effective requirements verification methods that can clearly handle and address inherently ambiguous nature of NL specifications. The objective of this paper is to propose a method that can address the challenges with NL requirements verification and to evaluate our proposed method through controlled experiments. Method We propose a model-based requirements verification method, called NLtoSTD, which transforms NL requirements into a State Transition Diagram (STD) that can help to detect and to eliminate ambiguities and incompleteness. The paper describes the NLtoSTD method to detect requirement faults, thereby improving the quality of the requirements. To evaluate the NLtoSTD method, we conducted two controlled experiments at North Dakota State University in which the participants employed the NLtoSTD method and a traditional fault checklist during the inspection of requirement documents to identify the ambiguities and incompleteness of the requirements. Results Two experiment results show that the NLtoSTD method can be more effective in exposing the missing functionality and, in some cases, more ambiguous information than the fault-checklist method. Our experiments also revealed areas of improvement that benefit the method's applicability in the future. Conclusion We presented a new approach, NLtoSTD, to verify requirements documents and two controlled experiments assessing our approach. The results are promising and have motivated the refinement of the NLtoSTD method and future empirical evaluation.
AB - Context Requirements engineering is one of the most important and critical phases in the software development life cycle, and should be carefully performed to build high quality and reliable software. However, requirements are typically gathered through various sources and are represented in natural language (NL), making requirements engineering a difficult, fault prone, and a challenging task. Objective To ensure high-quality software, we need effective requirements verification methods that can clearly handle and address inherently ambiguous nature of NL specifications. The objective of this paper is to propose a method that can address the challenges with NL requirements verification and to evaluate our proposed method through controlled experiments. Method We propose a model-based requirements verification method, called NLtoSTD, which transforms NL requirements into a State Transition Diagram (STD) that can help to detect and to eliminate ambiguities and incompleteness. The paper describes the NLtoSTD method to detect requirement faults, thereby improving the quality of the requirements. To evaluate the NLtoSTD method, we conducted two controlled experiments at North Dakota State University in which the participants employed the NLtoSTD method and a traditional fault checklist during the inspection of requirement documents to identify the ambiguities and incompleteness of the requirements. Results Two experiment results show that the NLtoSTD method can be more effective in exposing the missing functionality and, in some cases, more ambiguous information than the fault-checklist method. Our experiments also revealed areas of improvement that benefit the method's applicability in the future. Conclusion We presented a new approach, NLtoSTD, to verify requirements documents and two controlled experiments assessing our approach. The results are promising and have motivated the refinement of the NLtoSTD method and future empirical evaluation.
KW - Controlled experiments
KW - Fault checklist
KW - Model-based verification
KW - NLtoSTD
KW - Requirements verification
UR - http://www.scopus.com/inward/record.url?scp=84892589237&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84892589237&partnerID=8YFLogxK
U2 - 10.1016/j.infsof.2013.11.004
DO - 10.1016/j.infsof.2013.11.004
M3 - Article
AN - SCOPUS:84892589237
SN - 0950-5849
VL - 56
SP - 321
EP - 334
JO - Information and Software Technology
JF - Information and Software Technology
IS - 3
ER -