Validation and automatic test generation on UML models: the AGATHA approach

UML-based methodologies take more and more space in the software development domain. In addition, the need to validate applications as early as possible in the development cycle is now mandatory to satisfy cost and time-to-market constraints. In this context, this paper describes, first, how to bridge the gap between semiformal UML models and a formal technology ensuring test case generation. Second, the formal tool used to automatically generate test sequences, named AGATHA, is described in minute detail. Finally, this approach is illustrated throughout by a toy example of an elevator system.

[1]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[2]  Pierre Wolper,et al.  Partial-Order Methods for Temporal Verification , 1993, CONCUR.

[3]  Jan Willem Klop,et al.  Term Graph Rewriting , 1995, HOA.

[4]  J. C. Huang,et al.  An Approach to Program Testing , 1975, CSUR.

[5]  Jean-Pierre Jouannaud,et al.  Rewrite Systems , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[6]  Sergio Yovine,et al.  KRONOS: a verification tool for real-time systems , 1997, International Journal on Software Tools for Technology Transfer.

[7]  G. Kamp,et al.  CTL : a description logic with expressive concrete domains , 1996 .

[8]  J.-P. Gallois,et al.  Le test structurel pour la vérification de spécifications de systèmes industriels , 1997 .

[9]  Alessandro Orso,et al.  Automated Testing of Classes , 2000, ISSTA '00.

[10]  Patrick Tessier,et al.  A component-based methodology for embedded system prototyping , 2003, 14th IEEE International Workshop on Rapid Systems Prototyping, 2003. Proceedings..

[11]  Thierry Jéron,et al.  Using On-The-Fly Verification Techniques for the Generation of test Suites , 1996, CAV.

[12]  Matthew Hennessy,et al.  Symbolic Bisimulations , 1995, Theor. Comput. Sci..

[13]  Sébastien Gérard,et al.  Efficient System Modeling for Complex Real-Time Industrial Networks using the ACCORD/UML Methodology , 2000, DIPES.

[14]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[15]  Thomas A. Henzinger,et al.  Symbolic Model Checking for Real-Time Systems , 1994, Inf. Comput..

[16]  Arnault Lapitre Procédures de réduction pour les systèmes à base d'automates communicants : formalisation et mise en oeuvre , 2002 .

[17]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[18]  Jean Hartmann,et al.  UML-Based integration testing , 2000, ISSTA '00.

[19]  James C. King,et al.  Symbolic execution and program testing , 1976, CACM.

[20]  Enno Ohlebusch,et al.  Term Rewriting Systems , 2002 .

[21]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[22]  David Lugato,et al.  Validation and automatic test generation on UML models: the AGATHA approach , 2002, Electron. Notes Theor. Comput. Sci..

[23]  William Pugh,et al.  Constraint-based array dependence analysis , 1998, TOPL.

[24]  Lori A. Clarke,et al.  A System to Generate Test Data and Symbolically Execute Programs , 1976, IEEE Transactions on Software Engineering.