Systematic Testing of Model-Based Code Generators

Unlike for conventional compilers for imperative programming languages such as C or ADA, no establishedmethods for safeguarding artifacts generated by model-based code generators exist despite progress in the field of formalverification. Several test approaches dominate the engineering practice. This paper describes a general and toolindependenttest architecture for code generators used in model-based development. We evaluate the effectiveness of ourtest approach by means of testing optimizations performed by the TargetLink code generator, a widely accepted andcomplex development tool used in automotive model-based development.

[1]  Grzegorz Rozenberg,et al.  Handbook of Graph Grammars and Computing by Graph Transformations, Volume 1: Foundations , 1997 .

[2]  Mordechai Ben-Menachem Review of "Testing Embedded Software by Bart Broekman and Edwin Notenboom"; Addison Wesley.; 2003 , 2005, SOEN.

[3]  Ingo Stürmer,et al.  Overview of existing safeguarding techniques for automatically generated code , 2005, ACM SIGSOFT Softw. Eng. Notes.

[4]  Gerhard Goos,et al.  Verifying Compilers and ASMs , 2000, Abstract State Machines.

[5]  Jehad Al Dallal,et al.  Testing Syntax and Semantic Coverage of Java Language Compilers , 1999, Inf. Softw. Technol..

[6]  Richard Schooler,et al.  Independent testing of compiler phases using a test case generator , 1989, Softw. Pract. Exp..

[7]  Emin Gün Sirer,et al.  Using production grammars in software testing , 1999, DSL '99.

[8]  R V Lee,et al.  Mixed signals , 1999, Journal of the Royal Society of Medicine.

[9]  Abdulazeez S. Boujarwah,et al.  Compiler test case generation methods: a survey and assessment , 1997, Inf. Softw. Technol..

[10]  Boris Beizer,et al.  Software testing techniques (2. ed.) , 1990 .

[11]  Ingo Stürmer,et al.  Overview of existing safeguarding techniques for automatically generated code , 2005, ACM SIGSOFT Softw. Eng. Notes.

[12]  Martin Meyer,et al.  Automatic Generation of Production Quality Code for ECUs , 1999 .

[13]  Tatehito Ueda,et al.  Trends of Future Powertrain Development and the Evolution of Powertrain Control Systems , 2004 .

[14]  Cem Kaner,et al.  Lessons Learned in Software Testing , 2001 .

[15]  Thomas Thomsen,et al.  Integration of international standards for production code generation , 2003 .

[16]  Edward A. Lee,et al.  DSP Processor Fundamentals , 1997 .

[17]  Ingo Stürmer,et al.  Test suite design for code generation tools , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[18]  Klaus Lamberg,et al.  Model-based Testing of Embedded Automotive Software Using Mtest , 2004 .

[19]  W. Aldrich,et al.  Using Model Coverage Analysis to Improve the Controls Development Process , 2002 .

[20]  Stefan P. Jaskiel,et al.  Systematic Software Testing , 2002 .

[21]  Sigrid Eldh Software Testing Techniques , 2007 .

[22]  P D Edwards THE USE OF AUTOMATIC CODE GENERATION TOOLS IN THE DEVELOPMENT OF SAFETY-RELATED EMBEDDED SYSTEMS. , 1999 .

[23]  Amir Pnueli,et al.  VOC: A Methodology for the Translation Validation of OptimizingCompilers , 2003, J. Univers. Comput. Sci..

[24]  Ingo Stürmer,et al.  Generating Test Cases for Code Generators by Unfolding Graph Transformation Systems , 2004, ICGT.

[25]  Mirko Conrad,et al.  Automatic Evaluation of ECU Software Tests , 2005 .

[26]  Sabine Glesner,et al.  Using Program Checking to Ensure the Correctness of Compiler Implementations , 2003, J. Univers. Comput. Sci..

[27]  Alexander K. Petrenko,et al.  Test Generation for Compilers and Other Formal Text Processors , 2004, Programming and Computer Software.

[28]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .

[29]  Paul Walton Purdom,et al.  A sentence generator for testing parsers , 1972 .

[30]  Kim Marriott,et al.  On the Classification of Visual Languages by Grammar Hierarchies , 1997, J. Vis. Lang. Comput..

[31]  Steven S. Muchnick,et al.  Advanced Compiler Design and Implementation , 1997 .

[32]  Jonathan A. Bauer,et al.  Test Plan Generation Using Formal Grammars , 1979, ICSE.

[33]  Dana S. Scott,et al.  Outline of a Mathematical Theory of Computation , 1970 .

[34]  Ingo Stürmer Systematic testing of code generation tools: a test suite oriented approach for safeguarding model based code generation , 2006 .

[35]  Maulik A. Dave,et al.  Compiler verification: a bibliography , 2003, SOEN.

[36]  Michael Tonndorf Ada conformity assessments: a model for other programming languages? , 1999, SIGAda '99.

[37]  Rainer Otterbach,et al.  Development of Safety-Critical Software Using Automatic Code Generation , 2004 .

[38]  S. Toeppe,et al.  Practical validation of model based code generation for automotive applications , 1999, Gateway to the New Millennium. 18th Digital Avionics Systems Conference. Proceedings (Cat. No.99CH37033).

[39]  R. Bell,et al.  IEC 61508: functional safety of electrical/electronic/ programme electronic safety-related systems: overview , 1999 .

[40]  Joachim Wegener,et al.  Evolutionary test environment for automatic structural testing , 2001, Inf. Softw. Technol..

[41]  George C. Necula,et al.  Translation validation for an optimizing compiler , 2000, PLDI '00.

[42]  Gabor Karsai,et al.  On the Use of Graph Transformation in the Formal Specification of Model Interpreters , 2003, J. Univers. Comput. Sci..

[43]  Ippolito Spadafora,et al.  An Automatic Generator for Compiler Testing , 1982, IEEE Transactions on Software Engineering.

[44]  K. V. Hanford,et al.  Automatic Generation of Test Cases , 1970, IBM Syst. J..

[45]  Carlo Ghezzi,et al.  Compiler testing using a sentence generator , 1980, Softw. Pract. Exp..

[46]  V. Santhanam The anatomy of an FAA-qualifiable Ada subset compiler , 2002, SIGAda.

[47]  Matthias Grochtmann,et al.  Classification trees for partition testing , 1993, Softw. Test. Verification Reliab..

[48]  John M. Rushby,et al.  An operational semantics for Stateflow , 2004, International Journal on Software Tools for Technology Transfer.

[49]  J. Wegener,et al.  Test Case Design by Means of the CTE XL , 2000 .