Issue No. 05 - May (1993 vol. 19)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.232011
<p>The authors explore the use of software transformations for software evolution. Meaning-preserving program transformations have been widely used for program development from a fixed initial specification. They consider a wider class of transformations to support development in which the specification evolves, rather than being fixed in advance. A new and general classification of transformations based on their effect on system interfaces, externally observable behavior, and abstraction level of a system description is presented. This classification is used to rearrange chronological derivation sequences containing meaning-changing transformations into lattices containing only meaning-preserving transformations. A process model for software evolution that utilizes prototyping techniques is described. Ways in which this class of transformations can be used to support such a process are considered. A set of examples are presented to illustrate the ideas. Software tool support and directions for future research are discussed.</p>
software tool support; specification-based prototyping; software transformations; software evolution; system interfaces; externally observable behavior; abstraction level; system description; chronological derivation sequences; process model; formal specification; software prototyping
A. Yehudai, V. Berzins and Luqi, "Using Transformations in Specification-Based Prototyping," in IEEE Transactions on Software Engineering, vol. 19, no. , pp. 436-452, 1993.