A Mutation Model for the SystemC TLM 2.0 Communication Interfaces

Mutation analysis is a widely-adopted strategy in software testing with two main purposes: measuring the quality of test suites, and identifying redundant code in programs. Similar approaches are applied in hardware verification and testing too, especially at RTL or gate level, where mutants are generally referred as faults, and mutation analysis is performed by means of fault modeling and fault simulation. However, in modern embedded systems there is a close integration between HW and SW parts, and verification strategies should be applied early in the design flow. This requires the definition of new mutation analysis-based strategies that work at system level, where HW and SW functionalities are not partitioned yet. In this context, the paper proposes a mutation model for perturbing transaction level modeling (TLM) SystemC descriptions. In particular, the main constructs provided by the SystemC TLM 2.0 library have been analyzed, and a set of mutants is proposed to perturb the primitives related to the TLM communication interfaces.

[1]  Jin-hua Li,et al.  Mutation Analysis for Testing Finite State Machines , 2009, 2009 Second International Symposium on Electronic Commerce and Security.

[2]  Abdelaziz Guerrouat,et al.  A component-based specification approach for embedded systems using FDTs , 2005, SAVCBS '05.

[3]  Gregg Rothermel,et al.  On the Use of Mutation Faults in Empirical Assessments of Test Case Prioritization Techniques , 2006, IEEE Transactions on Software Engineering.

[4]  David Lee,et al.  Online minimization of transition systems (extended abstract) , 1992, STOC '92.

[5]  Michael R. Lyu,et al.  An empirical study on testing and fault tolerance for software reliability engineering , 2003, 14th International Symposium on Software Reliability Engineering, 2003. ISSRE 2003..

[6]  Christof J. Budnik,et al.  Basic Operations for Generating Behavioral Mutants , 2006, Second Workshop on Mutation Analysis (Mutation 2006 - ISSRE Workshops 2006).

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

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

[9]  Per Runeson,et al.  System level mutation analysis applied to a state-based language , 2001, Proceedings. Eighth Annual IEEE International Conference and Workshop On the Engineering of Computer-Based Systems-ECBS 2001.

[10]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[11]  J. Dingel,et al.  Mutation Operators for Concurrent Java (J2SE 5.0) , 2006, Second Workshop on Mutation Analysis (Mutation 2006 - ISSRE Workshops 2006).

[12]  Richard J. Lipton,et al.  Hints on Test Data Selection: Help for the Practicing Programmer , 1978, Computer.

[13]  Márcio Eduardo Delamaro,et al.  Mutation analysis testing for finite state machines , 1994, Proceedings of 1994 IEEE International Symposium on Software Reliability Engineering.

[14]  J. Dingel,et al.  ExMAn: A Generic and Customizable Framework for Experimental Mutation Analysis , 2006, Second Workshop on Mutation Analysis (Mutation 2006 - ISSRE Workshops 2006).

[15]  A. Sangiovanni-Vincentelli,et al.  A formal approach to reactive system design: unmanned aerial vehicle flight management system design example , 1999, Proceedings of the 1999 IEEE International Symposium on Computer Aided Control System Design (Cat. No.99TH8404).

[16]  Frank Ghenassia,et al.  Transaction Level Modeling with SystemC , 2005 .

[17]  Teruo Higashino,et al.  Hardware implementation of communication protocols modeled by concurrent EFSMs with multi-way synchronization , 2000, Proceedings 37th Design Automation Conference.

[18]  Vadim Okun,et al.  Mutation operators for specifications , 2000, Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering.

[19]  James M. Bieman,et al.  Mutation of Java objects , 2002, 13th International Symposium on Software Reliability Engineering, 2002. Proceedings..

[20]  Kwang-Ting Cheng,et al.  A single-state-transition fault model for sequential machines , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[21]  Rached Tourki,et al.  Communication Architecture Synthesis for Multi-bus SoC , 2006 .

[22]  Melvin A. Breuer,et al.  Digital systems testing and testable design , 1990 .

[23]  A. Jefferson Offutt,et al.  Constraint-Based Automatic Test Data Generation , 1991, IEEE Trans. Software Eng..

[24]  Eugene H. Spafford,et al.  The Mothra tool set (software testing) , 1989, [1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track.