25 - 29 de Noviembre de 2002

Montevideo, Uruguay

Radisson Victoria Plaza Hotel

 
CL56
 
IDeL: A Language for Program Instrumentation

Adenilso S. Simão
Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo
adenilso@icmc.sc.usp.br
Auri M.R Vincenzi
Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo
auri@icmc.sc.usp.br
José C. Maldonado
Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo
jcmaldon@icmc.sc.usp.br
Antônio C.L. Santana
UniLins - Centro Universitário de Lins. Fundação Paulista de Tecnologia e Educação
santana@fpte.br
 
Abstract

Instrumentation is a technique frequently used in software engineering for several different purposes, e.g. Program and/or specification execution trace, testing criteria coverage analysis, and reverse engineering. From an abstract viewpoint, instrumenting a software product can be divided into two main tasks: (i) deriving the software product structure and (ii) including statements for checking runtime/simulation information. Most instrumentation approaches are domain and/or language specific, which makes it diffcult to reuse and evolve the related products. In this paper we propose an instrumentation oriented meta-language, named IDeL, designed for supporting the description of both tasks of instrumentation process: (i) the product structure derivation and (ii) the inclusion of the instrumentation statements. IDeL is to be instantiated by providing a context-free grammar for a specific language. To promote IDeL's practical use, we also developed a supporting tool, named IDeLgen, that can be thought of as a transformational paradigm based application generator, tailored to the instrumenting process. We illustrate the main ideas in this paper with examples describing the instrumentation required in data flow based testing criteria for C language.

Keywords: Software Engineering, Programming Languages



Volver

infoUYclei 2002