Analysis of Scenarios with Petri-Net Models

Requirements analysis plays a key role in the software development process. Scenario-based representation is often used for software requirements specification (SRS). Scenarios written in natural language may be ambiguous, and, sometimes, inaccurate. This problem is partially due to the fact that interactions 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 flaws or problems due to wrong or missing information. This work proposes a Petri-Net based approach as an effective way to analyze the acquired scenarios. 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 correctness, consistency and completeness. The identified problems can be traced back to the scenarios, allowing their revision. We also discuss how correctness, consistency and completeness of scenario-based SRSs can be decomposed in related properties using the NFR approach. Proposal's workability is demonstrated through two running examples.

[1]  Margus Veanes,et al.  Validating use-cases with the AsmL test tool , 2003, Third International Conference on Quality Software, 2003. Proceedings..

[2]  Woo Jin Lee,et al.  Integration and Analysis of Use Cases Using Modular Petri Nets in Requirements Engineering , 1998, IEEE Trans. Software Eng..

[3]  David Chenho Kung,et al.  Formal approach to scenario analysis , 1994, IEEE Software.

[4]  Lawrence Chung,et al.  Software architecture adaptability: an NFR approach , 2001, IWPSE '01.

[5]  Jong-Yih Kuo,et al.  Verifying scenarios with time Petri-nets , 2001, Inf. Softw. Technol..

[6]  Didar Zowghi,et al.  On the interplay between consistency, completeness, and correctness in requirements evolution , 2003, Inf. Softw. Technol..

[7]  Barry W. Boehm,et al.  Verifying and Validating Software Requirements and Design Specifications , 1989, IEEE Software.

[8]  Zhenhua Duan,et al.  Verification of Use Case with Petri Nets in Requirement Analysis , 2009, ICCSA.

[9]  Martin Glinz,et al.  Improving the Quality of Requirements with Scenarios , 2000 .

[10]  Allen B. Downey,et al.  The Little Book of Semaphores , 2009 .

[11]  Ferhat Khendek,et al.  LTS semantics for use case models , 2009, SAC '09.

[12]  Julio Cesar Sampaio do Prado Leite,et al.  Mapping Textual Scenarios to Analyzable Petri-Net Models , 2015, ICEIS.

[13]  T. Y. Cheung,et al.  A petri-net-based synthesis methodology for use-case-driven system design , 2006, J. Syst. Softw..

[14]  Alistair Cockburn,et al.  Writing Effective Use Cases , 2000 .