Mathematical Foundations for Program Transformations
Program adaptation, whereby a program is modified to satisfy a specification that it does not originally satisfy; this occurs in adaptive software maintenance and in white box software reuse.
Software Incrementation, whereby a program is modified to have an additional functional feature, while preserving its current functional properties.
Software Merging, whereby two (typically) similar software products are merged into a single product that cumulates the functional features of each; this arises typically when the two products are obtained by software incrementation from a common base version.
Software Composition, whereby various existing reusable assets are composed together (by means of application-specific code) to produce a prespecified software application; this arises in component-based software development.
KeywordsMathematical Foundation Lattice Operator Program Transformation Program Construction Speci Cation
Unable to display preview. Download preview PDF.
- 4.E.C.R. Hehner. A Practical Theory of Programming. Springer-Verlag, 1993.Google Scholar