Stepwise refinement of control software — A case study using RAISE

  • François Erasmy
  • Emil Sekerinski
Part of the Lecture Notes in Computer Science book series (LNCS, volume 873)


We develop a control program for a realistic automation problem by stepwise refinement. We focus on exemplifying appropriate levels of abstraction for the refinement steps. By using phases as a means for abstraction, safety requirements are specified on a high level of abstraction and can be verified using process algebra. The case study is carried out using the RAISE specification language, and we report on some experiences using the RAISE tool set.


Control Program Production Cell Safety Requirement Control Software Process Algebra 
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.
    R. J. R. Back: Refinement Calculus Part II: Parallel and Reactive Programs. In J. W. deBakker, W. P. deRoever (eds.): Stepwise Refinement of Distributed Systems. Lecture Notes in Computer Science 430, Springer 1990.Google Scholar
  2. 2.
    G. Berry, G. Gonthier: The Esterel synchronous programming language: Design, semantics, implementation. Science of Computer Programming 19 (1992).Google Scholar
  3. 3.
    K. M. Chandy, J. Misra: Parallel Program Design — A Foundation. Addison-Wesley 1988.Google Scholar
  4. 4.
    D. Harel: StateCharts: A Visual Formalism for Complex Systems. Science of Computer Programming 8 (1987).Google Scholar
  5. 5.
    A. Haxthausen, C. George: A Concurrency Case Study Using RAISE. In J. C. P. Woodcock, P. G. Larsen (eds.): Proceedings of FME'93: Industrial Strength Formal Methods, Odense, Denmark, Lecture Notes in Computer Science 670, Springer 1993.Google Scholar
  6. 6.
    C. A. R. Hoare: Communicating Sequential Processes. Prentice-Hall International 1985.Google Scholar
  7. 7.
    INMOS Limited: occam Programming Manual. Prentice-Hall International 1984.Google Scholar
  8. 8.
    C. Lewerentz, Th. Lindner (eds.): Case Study “Production Cell”: A Comparative Study in Formal Software Development, in preparation.Google Scholar
  9. 9.
    Z. Manna, A. Pnueli: A Temporal Proof Methodology for Reactive Systems. In M. Broy (ed.) Program Design Calculi. NATO ASI Series, Springer 1993.Google Scholar
  10. 10.
    R. Milner: Communication and Concurrency. Prentice-Hall International 1989.Google Scholar
  11. 11.
    J. L. Petersen: A computer controlled forging machine. Department of Computer Science, DTH Lyngby, in preparation.Google Scholar
  12. 12.
    The RAISE Language Group: The RAISE Specification Language. BGS Practitioner Series, Prentice-Hall International 1992.Google Scholar
  13. 13.
    N. Wirth: Program Development by Stepwise Refinement. Communications of the ACM 14 (1971).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • François Erasmy
    • 1
  • Emil Sekerinski
    • 1
  1. 1.Forschungszentrum Informatik KarlsruheKarlsruheGermany

Personalised recommendations