Using Formal Transformations to Construct a Component Repository

  • Martin Ward
Part of the Workshops in Computing book series (WORKSHOPS COMP.)


Production of software is costly and error prone and the most important means of production (good programmers) are scarce. Therefore, there exists a need to circumvent this costly manual production process. Analogies from classical engineering suggest that by building up a catalogue of standard components and construction techniques whose characteristics are well documented, can greatly reduce the cost of new construction projects. The bridge builder knows under what conditions a “suspension bridge” is the right approach and has a collection of standard girders, cables, nuts, bolts etc. which she can use in the design. This has lead to the notion of a component repository which will reduce the effort involved in constructing new software.


Sorting Algorithm Suspension Bridge Software Maintenance Formal Link Atomic Specification 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Back RJR. Correctness Preserving Program Refinements. Mathematisch Centrum, Mathematical Centre Tracts 131, 1980Google Scholar
  2. [2]
    Dijkstra EW. A Discipline of Programming. Prentice-Hall, Englewood Cliffs, NJ, 1976MATHGoogle Scholar
  3. [3]
    Kernighan BW. The UNIX System and Software Reusability. IEEE Transactions on Software Engineering 1984 10; 5: 513–528MATHCrossRefGoogle Scholar
  4. [4]
    Morgan CC. The Specification Statement. ACM TOPLAS 1988 10;:403–419Google Scholar
  5. [5]
    Stallman RM. Using and Porting GNU CC. Free Software Foundation, Inc., 1989Google Scholar
  6. [6]
    Ward M. Transforming a Program into a Specification. Durham University, Technical Report 88 /1, 1988Google Scholar
  7. [7]
    Ward M. Proving Program Refinements and Transformations. PhD Thesis, University of Oxford, 1989Google Scholar
  8. [8]
    Ward M. A Model for Partial Programs. Submitted to Journal of the ACM, 1989;Google Scholar
  9. [9]
    Ward M, Calliss FW, Munro M. The Maintainer’s Assistant. Conference on Software Maintenance 1989, Miami Florida, 1989Google Scholar
  10. [10]
    Ward M. Derivations of Sorting Algorithms. Forthcoming, 1990Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Martin Ward

There are no affiliations available

Personalised recommendations