Formalization of Textual Use Cases Based on Petri Nets

A use case is a specification of interactions involving a system and external actors of that system. The intuitive, user centered nature of textual use cases is one of the reasons for the success of the use case approach. A certain level of formalization is however needed to automate use case based system development, including tasks such as design synthesis, verification and validation. In this paper, a mapping from textual use cases to a formal model (Petri nets) is proposed. Use cases are described in a restricted-form of natural language. The abstract syntax of the language is formally defined using a tuple structure. The mapping from use cases to Petri nets considers use cases sequencing constraints defined at the syntactic-level, and provides a definition of execution semantics to use cases.

[1]  Shane Sendall,et al.  From Use Cases to System Operation Specifications , 2000, UML.

[2]  Jiacun Wang,et al.  Timed Petri Nets: Theory and Application , 1998 .

[3]  Mohammad Reza Mousavi,et al.  Synthesizing software architecture descriptions from Message Sequence Chart specifications , 1998, Proceedings 13th IEEE International Conference on Automated Software Engineering (Cat. No.98EX239).

[4]  Ljerka Beus-Dukic,et al.  Use and abuse cases , 2008 .

[5]  Vladimir Mencl DERIVING BEHAVIOR SPECIFICATIONS FROM TEXTUAL USE CASES , 2004 .

[6]  Jon Whittle,et al.  Generating Hierarchical State Machines from Use Case Charts , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[7]  Russell R. Hurlbut A Survey of Approaches For Describing and Formalizing Use Cases , 1998 .

[8]  H Rik Eshuis,et al.  Statecharting Petri nets , 2005 .

[9]  Claus Bossen,et al.  Executable Use Cases for Pervasive Healthcare , 2002 .

[10]  Rik Eshuis,et al.  Reactive Petri Nets for Workflow Modeling , 2003, ICATPN.

[11]  Mohsen Guizani,et al.  Execution of A Requirement Model in Software Development , 2004, IASSE.

[12]  Jürgen Dingel,et al.  A comparative survey of scenario-based to state-based model synthesis approaches , 2006, SCESM '06.

[13]  Jean G. Vaucher,et al.  From scenarios to timed automata: building specifications from users requirements , 1995, Proceedings 1995 Asia Pacific Software Engineering Conference.

[14]  David Harel,et al.  LSCs: Breathing Life into Message Sequence Charts , 1999, Formal Methods Syst. Des..

[15]  Sebastián Uchitel,et al.  Synthesis of Behavioral Models from Scenarios , 2003, IEEE Trans. Software Eng..

[16]  Ivar Jacobson,et al.  Object-oriented software engineering - a use case driven approach , 1993, TOOLS.

[17]  Shaoying Liu,et al.  Formalization, Testing and Execution of a Use Case Diagram , 2003, ICFEM.

[18]  Charles Lakos,et al.  From Coloured Petri Nets to Object Petri Nets , 1995, Application and Theory of Petri Nets.

[19]  Jean-Marc Jézéquel,et al.  Revisiting statechart synthesis with an algebraic approach , 2004, Proceedings. 26th International Conference on Software Engineering.

[20]  Johann Schumann,et al.  Generating statechart designs from scenarios , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[21]  Ismaïl Khriss,et al.  Automating the Synthesis of UML StateChart Diagrams from Multiple Collaboration Diagrams , 1998, UML.

[22]  Gunnar Övergaard,et al.  A Formal Approach to Use Cases and Their Relationships , 1998, UML.

[23]  C. A. Petri Communication with automata , 1966 .

[24]  S.S. Some Specifying Use Case Sequencing Constraints Using Description Elements , 2007, Sixth International Workshop on Scenarios and State Machines (SCESM'07: ICSE Workshops 2007).

[25]  Amit M. Paradkar,et al.  Toward Engineered, Useful Use Cases , 2005, J. Object Technol..

[26]  Perdita Stevens On Use Cases and Their Relationships in the Unified Modelling Language , 2001, FASE.

[27]  Anthony J. H. Simons,et al.  Control-flow semantics of use cases in UML , 1999, Inf. Softw. Technol..

[28]  Martin Glinz,et al.  An Integrated Formal Model of Scenarios Based on Statecharts , 1995, ESEC.

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

[30]  Wil M. P. van der Aalst,et al.  Workflow Patterns , 2004, Distributed and Parallel Databases.

[31]  Wolfgang Reisig,et al.  Application and Theory of Petri Nets , 1982, Informatik-Fachberichte.

[32]  Jifeng He,et al.  Formal and use-case driven requirement analysis in UML , 2001, 25th Annual International Computer Software and Applications Conference. COMPSAC 2001.

[33]  Stéphane S. Somé Supporting use case based requirements engineering , 2006, Inf. Softw. Technol..

[34]  Dong Liu,et al.  Natural language requirements analysis and class model generation using UCDA , 2004 .

[35]  Stéphane S. Somé,et al.  Generating a Domain Model from a Use Case Model , 2005, IASSE.