• DocumentCode
    2617337
  • Title

    The application of correctness preserving transformations to software maintenance

  • Author

    Gibson, J. Paul ; Dowling, Thomas F. ; Malloy, Brian A.

  • Author_Institution
    Dept. of Comput. Sci., Nat. Univ. of Ireland, Maynooth, Ireland
  • fYear
    2000
  • fDate
    2000
  • Firstpage
    108
  • Lastpage
    117
  • Abstract
    The size and complexity of hardware and software systems continues to grow, making the introduction of subtle errors a more likely possibility. A major goal of software engineering is to enable developers to construct systems that operate reliably despite increased size and complexity. One approach to achieving this goal is through formal methods: mathematically based languages, techniques and tools for specifying and verifying complex software systems. The authors apply a theoretical tool (that is supported by many formal methods), the correctness preserving transformation (CPT), to a real software engineering problem: the need for optimization during the maintenance of code. We present four program transformations and a model that forms a framework for proof of correctness. We prove the transformations correct and then apply them to a cryptography application implemented in C++. Our experience shows that CPTs can facilitate generation of more efficient code while guaranteeing the preservation of original behavior
  • Keywords
    formal specification; optimising compilers; program verification; public key cryptography; reverse engineering; software maintenance; software reliability; C++; code maintenance; code optimization; complex software systems; correctness preserving transformation; correctness preserving transformations; cryptography application; formal methods; mathematically based languages; program transformations; proof of correctness; real software engineering problem; software engineering; software maintenance; software systems; subtle errors; theoretical tool; Software maintenance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance, 2000. Proceedings. International Conference on
  • Conference_Location
    San Jose, CA
  • ISSN
    1063-6773
  • Print_ISBN
    0-7695-0753-0
  • Type

    conf

  • DOI
    10.1109/ICSM.2000.883025
  • Filename
    883025