Skip to main content

Mathematical Foundations for Program Transformations

  • Conference paper
  • First Online:
  • 195 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1559))

Abstract

Traditional programming paradigms revolve around mapping a single requirements specification into a program. As less and less software is developed from scratch, and more and more is developed from existing software artifacts, this traditional paradigm is growing less and less predominant. Paradigms that are gaining ground include:

  • 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.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. N. Boudriga, F. Elloumi, and A. Mili. The lattice of specifications: Applications to a specification methodology. Formal Aspects of Computing, 4:544–571, 1992.

    Article  MATH  Google Scholar 

  2. C.A.R. Hoare et al. Laws of programming. Communications of the ACM, 30(8):672–686, 1987.

    Article  MATH  MathSciNet  Google Scholar 

  3. M. Frappier, J. Desharnais, and A. Mili. A calculus of program construction by parts. Science of Computer Programming, 6:237–254, 1996.

    Article  MathSciNet  Google Scholar 

  4. E.C.R. Hehner. A Practical Theory of Programming. Springer-Verlag, 1993.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ayed, R.B., Desharnais, J., Frappier, M., Mili, A. (1999). Mathematical Foundations for Program Transformations. In: Flener, P. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 1998. Lecture Notes in Computer Science, vol 1559. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48958-4_21

Download citation

  • DOI: https://doi.org/10.1007/3-540-48958-4_21

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65765-1

  • Online ISBN: 978-3-540-48958-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics