Engineering and theoretical underpinnings of retrenchment

  • Authors:
  • R. Banach;M. Poppleton;C. Jeske;S. Stepney

  • Affiliations:
  • School of Computer Science, University of Manchester, Manchester, M13 9PL, UK;School of Electronics and Computer Science, University of Southampton, Southampton, SO17 1BJ, UK;School of Computer Science, University of Manchester, Manchester, M13 9PL, UK;Department of Computer Science, University of York, Heslington, York, YO10 5DD, UK

  • Venue:
  • Science of Computer Programming
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Refinement is reviewed, highlighting in particular the distinction between its use as a specification constructor at a high level, and its use as an implementation mechanism at a low level. Some of its shortcomings as a specification constructor at high levels of abstraction are pointed out, and these are used to motivate the adoption of retrenchment for certain high level development steps. Basic properties of retrenchment are described, including a justification of the operation proof obligation, simple examples, its use in requirements engineering and model evolution, and simulation properties. The interaction of retrenchment with refinement notions of correctness is overviewed, as is a range of other technical issues. Two case study scenarios are presented. One is a simple digital redesign control theory problem, and the other is an overview of the application of retrenchment to the Mondex Purse development.