Testing timed systems modeled by Stream X-machines

Stream X-machines have been used to specify real systems where complex data structures. They are a variety of extended finite state machine where a shared memory is used to represent communications between the components of systems. In this paper we introduce an extension of the Stream X-machines formalism in order to specify systems that present temporal requirements. We add time in two different ways. First, we consider that (output) actions take time to be performed. Second, our formalism allows to specify timeouts. Timeouts represent the time a system can wait for the environment to react without changing its internal state. Since timeous affect the set of available actions of the system, a relation focusing on the functional behavior of systems, that is, the actions that they can perform, must explicitly take into account the possible timeouts. In this paper we also propose a formal testing methodology allowing to systematically test a system with respect to a specification. Finally, we introduce a test derivation algorithm. Given a specification, the derived test suite is sound and complete, that is, a system under test successfully passes the test suite if and only if this system conforms to the specification.

[1]  Ed Brinksma,et al.  Testing Real-Time Multi Input-Output Systems , 2005, ICFEM.

[2]  Florentin Ipate,et al.  Testing methods for X-machines: a review , 2006, Formal Aspects of Computing.

[3]  G. Bochmann,et al.  Testing deterministic implementations from nondeterministic FSM specifications , 1996 .

[4]  Florentin Ipate Testing against a non-controllable stream X-machine using state counting , 2006, Theor. Comput. Sci..

[5]  Sébastien Salva,et al.  An User-Oriented Testing of Real Time Systems , 2001 .

[6]  Jim Davies,et al.  A Brief History of Timed CSP , 1995, Theor. Comput. Sci..

[7]  George Eleftherakis,et al.  Communicating X-machines: a practical approach for formal and modular specification of large systems , 2003, Inf. Softw. Technol..

[8]  David de Frutos-Escrig,et al.  TIC: A timed calculus , 1993, Formal Aspects of Computing.

[9]  A. W. Roscoe,et al.  A Timed Model for Communicating Sequential Processes , 1986, Theor. Comput. Sci..

[10]  Teruo Higashino,et al.  Generating Test Cases for a Timed I/O Automaton Model , 1999, IWTCS.

[11]  I. Lee,et al.  Automatic generation of tests for timing constraints from requirements , 1997, Proceedings Third International Workshop on Object-Oriented Real-Time Dependable Systems.

[12]  C. J. Harwood Correct Systems: Building a Business Process Solution , 2000 .

[13]  Florentin Ipate,et al.  Testing a deterministic implementation against a non-controllable non-deterministic stream X-machine , 2008, Formal Aspects of Computing.

[14]  Mercedes G. Merayo,et al.  Extending EFSMs to Specify and Test Timed Systems with Action Durations and Timeouts , 2006, FORTE.

[15]  Jan Tretmans,et al.  Model Based Testing with Labelled Transition Systems , 2008, Formal Methods and Testing.

[16]  Mercedes G. Merayo,et al.  Testing conformance on Stochastic Stream X-Machines , 2007, Fifth IEEE International Conference on Software Engineering and Formal Methods (SEFM 2007).

[17]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[18]  Rachel Cardell-Oliver,et al.  A Practical and Complete Algorithm for Testing Real-Time Systems , 1998, FTRTFT.

[19]  M. Ümit Uyar,et al.  Finite State Machine Based Formal Methods in Protocol Conformance Testing: From Theory to Implementation , 1991, Comput. Networks ISDN Syst..

[20]  Gregor von Bochmann,et al.  FSM-based incremental conformance testing methods , 2004, IEEE Transactions on Software Engineering.

[21]  Ana R. Cavalli,et al.  Specification of Timed EFSM Fault Models in SDL , 2007, FORTE.

[22]  Julien Schmaltz,et al.  On Conformance Testing for Timed Systems , 2008, FORMATS.

[23]  Jan Peleska,et al.  Test automation of safety-critical reactive systems , 1997 .

[24]  Rachel Cardell-Oliver Conformance Tests for Real-Time Systems with Timed Automata Specifications , 2000, Formal Aspects of Computing.

[25]  Rance Cleaveland,et al.  Using formal specifications to support testing , 2009, CSUR.

[26]  Florentin Ipate,et al.  An integration testing method that is proved to find all faults , 1997, Int. J. Comput. Math..

[27]  Ferhat Khendek,et al.  Timed Wp-Method: Testing Real-Time Systems , 2002, IEEE Trans. Software Eng..

[28]  Mark Harman,et al.  Testing conformance of a deterministic implementation against a non-deterministic stream X-machine , 2004, Theor. Comput. Sci..

[29]  Jos C. M. Baeten,et al.  Process Algebra with Timing , 2002, Monographs in Theoretical Computer Science. An EATCS Series.

[30]  George Eleftherakis,et al.  Using X-machines to model and test discrete event simulation programs , 2000 .

[31]  Mercedes G. Merayo,et al.  Extending EFSMs to Specify and Test Timed Systems with Action Durations and Time-Outs , 2008, IEEE Transactions on Computers.

[32]  Frits W. Vaandrager,et al.  Testing timed automata , 1997, Theor. Comput. Sci..

[33]  Mercedes G. Merayo,et al.  Formal testing from timed finite state machines , 2008, Comput. Networks.

[34]  Nina Yevtushenko,et al.  Nondeterministic State Machines in Protocol Conformance Testing , 1993, Protocol Test Systems.

[35]  Robert M. Hierons,et al.  Testing from a stochastic timed system with a fault model , 2009, J. Log. Algebraic Methods Program..

[36]  Joseph Sifakis,et al.  Use of Petri nets for performance evaluation , 1977, Acta Cybern..

[37]  Jan Tretmans,et al.  Testing Transition Systems: An Annotated Bibliography , 2000, MOVEP.

[38]  Matthew Hennessy,et al.  A Process Algebra for Timed Systems , 1995, Inf. Comput..

[39]  Kim G. Larsen,et al.  Testing Real-Time Systems Using UPPAAL , 2008, Formal Methods and Testing.

[40]  Joseph Sifakis,et al.  An Overview and Synthesis on Timed Process Algebras , 1991, REX Workshop.

[41]  Sandro Morasca,et al.  Generating test cases for real-time systems from logic specifications , 1995, TOCS.

[42]  Marius Mikucionis,et al.  Formal Methods and Testing , 2008 .

[43]  David Lee,et al.  Principles and methods of testing finite state machines-a survey , 1996, Proc. IEEE.

[44]  Stavros Tripakis,et al.  An Expressive and Implementable Formal Framework for Testing Real-Time Systems , 2005, TestCom.

[45]  Florentin Ipate,et al.  Testing data processing-oriented systems from stream X-machine models , 2008, Theor. Comput. Sci..

[46]  Judith Barnard,et al.  COMX: a design methodology using communicating X-machines , 1998, Inf. Softw. Technol..

[47]  Paul D. Amer,et al.  Testing protocols modeled as FSMs with timing parameters , 1999, Comput. Networks.

[48]  Mercedes G. Merayo,et al.  HOTL: Hypotheses and observations testing logic , 2007, J. Log. Algebraic Methods Program..

[49]  Samrat S. Batth,et al.  Algorithms for Modeling a Class of Single Timing Faults in Communication Protocols , 2008, IEEE Transactions on Computers.

[50]  Robert M. Hierons,et al.  Extending Stream X-Machines to Specify and Test Systems with Timeouts , 2008, 2008 Sixth IEEE International Conference on Software Engineering and Formal Methods.

[51]  B. Brogliato,et al.  Dissipative Systems Analysis and Control , 2000 .

[52]  Wang Yi,et al.  CCS + Time = An Interleaving Model for Real Time Systems , 1991, ICALP.

[53]  Alexandre Petrenko,et al.  Fault Model-Driven Test Derivation from Finite State Models: Annotated Bibliography , 2000, MOVEP.

[54]  Rance Cleaveland,et al.  Using formal methods to support testing , 2008 .

[55]  Mike Stannett Computation over arbitrary models of time A unified model of discrete, analog, quantum and hybrid computation , 2001 .

[56]  Tsun S. Chow,et al.  Testing Software Design Modeled by Finite-State Machines , 1978, IEEE Transactions on Software Engineering.