Integration testing of heterotic systems

Computational theory and practice generally focus on single-paradigm systems, but relatively little is known about how best to combine components based on radically different approaches (e.g. silicon chips and wetware) into a single coherent system. In particular, while testing strategies for single-technology artefacts are generally well developed, it is unclear at present how to perform integration testing on heterotic systems: can we develop a test-set generation strategy for checking whether specified behaviours emerge (and unwanted behaviours do not) when components based on radically different technologies are combined within a single system? In this paper, we describe an approach to modelling multi-technology heterotic systems using a general-purpose formal specification strategy based on Eilenberg's X-machine model of computation. We show how this approach can be used to represent disparate technologies within a single framework, and propose a strategy for using these formal models for automatic heterotic test-set generation. We illustrate our approach by showing how to derive a test set for a heterotic system combining an X-machine-based device with a cell-based P system (membrane system).

[1]  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.

[2]  Marian Gheorghe,et al.  Test generation from P systems using model checking , 2010, J. Log. Algebraic Methods Program..

[3]  Gheorghe Paun,et al.  The Oxford Handbook of Membrane Computing , 2010 .

[4]  Marian Gheorghe,et al.  Mutation Based Testing of P Systems , 2009, Int. J. Comput. Commun. Control.

[5]  Olivier Bournez,et al.  On the Computational Power of Dynamical Systems and Hybrid Systems , 1996, Theor. Comput. Sci..

[6]  Edwin J. Beggs,et al.  The impact of models of a physical oracle on computational power , 2012, Math. Struct. Comput. Sci..

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

[8]  J. V. Tucker,et al.  Experimental computation of real numbers by Newtonian machines , 2007, Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences.

[9]  Ralf Lämmel,et al.  Grammar Testing , 2001, FASE.

[10]  Mike Stannett An abstract approach to VLSI test , 1991 .

[11]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[12]  Gilbert Thomas Laycock,et al.  The theory and practice of specification based software testing , 1993 .

[13]  Marian Gheorghe,et al.  Formal Verification and Testing Based on P Systems , 2009, Workshop on Membrane Computing.

[14]  S. Stepney,et al.  Heterotic computing: exploiting hybrid computational devices , 2015, Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences.

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

[16]  D. Browne,et al.  Computational power of correlations. , 2008, Physical review letters.

[17]  Pierluigi Frisco,et al.  Applications of Membrane Computing in Systems and Synthetic Biology , 2014 .

[18]  Robert M. Hierons,et al.  Testing timed systems modeled by Stream X-machines , 2011, Software & Systems Modeling.

[19]  Marian Gheorghe,et al.  On Testing P Systems , 2008, Workshop on Membrane Computing.

[20]  Florentin Ipate,et al.  Generating Test Sets from Non-Deterministic Stream X-Machines , 2000, Formal Aspects of Computing.

[21]  Samuel Eilenberg,et al.  Automata, languages, and machines. A , 1974, Pure and applied mathematics.

[22]  Florentin Ipate,et al.  Testing Conditions for Communicating Stream X-machine Systems , 2002, Formal Aspects of Computing.

[23]  Marie-Claude Gaudel Software Testing Based on Formal Specification , 2007, PSSE.

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

[25]  Marian Gheorghe,et al.  Testing Non-deterministic Stream X-machine Models and P systems , 2008, MeCBIC.

[26]  Susan Stepney,et al.  Heterotic Computing , 2011, UC.

[27]  Gheorghe Paun,et al.  Computing with Membranes , 2000, J. Comput. Syst. Sci..

[28]  Marian Gheorghe,et al.  An Integrated Approach to P Systems Formal Verification , 2010, Int. Conf. on Membrane Computing.

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

[30]  Mike Stannett Specification, testing and verification of unconventional computations using generalized X-machines , 2014, Int. J. Gen. Syst..

[31]  Susan Stepney,et al.  Heterotic Computing Examples with Optics, Bacteria, and Chemicals , 2012, UCNC.

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

[33]  Hava T. Siegelmann,et al.  Neural networks and analog computation - beyond the Turing limit , 1999, Progress in theoretical computer science.

[34]  A. Jefferson Offutt,et al.  Book review: Introduction to Software Testing written by Paul Amman & Jeff Offutt. and published by CUP, 2008, 978-0-521-88038 322 pp., 0-471-20282-7 , 2008, SOEN.

[35]  Robert M. Hierons Controllable Testing from Nondeterministic Finite State Machines with Multiple Ports , 2011, IEEE Transactions on Computers.

[36]  Florentin Ipate,et al.  Correct systems - building a business process solution , 1998, Applied computing.

[37]  Mauro Pezzè,et al.  Software testing and analysis - process, principles and techniques , 2007 .