Proceedings. 19th International Conference on Automated Software Engineering, 2004. (2004)
Sept. 20, 2004 to Sept. 24, 2004
Julian Richardson , RIACS/USRA
Jeff Green , QSS Inc
Program synthesis automatically derives programs from specifications of their behavior. At a lower level, compilation automatically derives machine code from source code (i.e. from a specification of its behavior). An advantage of program synthesis/compilation, as opposed to manual coding, is that there is a direct link between the specification and the derived program. This link is, however, not very fine-grained: it can be best characterized as Program is-derived-from Specification. When the generated program needs to be understood or modified, more fine-grained linking is useful.<div></div> In this paper, we present a novel technique for automatically deriving traceability relations between parts of a specification and parts of the synthesized program. The technique is very lightweight and we expect it to work - with varying degrees of success - for any process in which one artifact is automatically derived from another.<div></div> We illustrate the generality of the technique by applying it to two kinds of automatic generation: synthesis of Kalman Filter programs from specifications using the AUTOFILTER program synthesis system, and generation of assembly language programs from C source code using the GCC C compiler. We evaluate the effectiveness of the technique in the latter application.
J. Green and J. Richardson, "Automating Traceability for Generated Software Artifacts," Proceedings. 19th International Conference on Automated Software Engineering, 2004.(ASE), Linz, Austria, 2004, pp. 24-33.