Determining the Specification of a Control System: An Illustrative Example

  • Joey W. Coleman
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4157)


Creating the specification of a system by focusing primarily on the detailed properties of the digital controller can lead to complex descriptions that are nearly incoherent. An argument given by Hayes, Jackson, and Jones provides reasons to focus first on the wider environment in which the system will reside. In their approach are two major ideas: pushing out the specification boundaries, and carefully distinguishing between the requirements of the system and the assumptions about the environment. Pushing out the boundaries of the system specification to include the pragmatic intent of the system being specified allows the specification to be understood relative to the environmental context, rather than remaining a mysterious black box in isolation. Clarifying the distinction between assumptions about the environment and requirements that the specification must meet increases the clarity of the specification, and has the potential to seriously reduce the complexity of the final specification. The example of a gas burner is explored in depth to illustrate this approach to system specification.


External Variable Digital Controller Duration Calculus Oxyacetylene Welding Australian Computer Society 
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.
    Hayes, I.J., Jackson, M.A., Jones, C.B.: Determining the specification of a control system from that of its environment. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 154–169. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  2. 2.
    Jones, C.B.: Development Methods for Computer Programs including a Notion of Interference. Ph.D. thesis, Oxford University, Printed as: Programming Research Group, Technical Monograph 25 (1981)Google Scholar
  3. 3.
    Jones, C.B.: Specification and design of (parallel) programs. In: Proceedings of IFIP 1983, pp. 321–332. North-Holland, Amsterdam (1983)Google Scholar
  4. 4.
    Jones, C.B.: Accommodating interference in the formal design of concurrent object-based programs. Formal Methods in System Design 8, 105–122 (1996)CrossRefGoogle Scholar
  5. 5.
    Mahony, B., Hayes, I.J.: Using continuous real functions to model timed histories. In: Bailes, P. (ed.) Engineering Safe Software, Australian Computer Society, pp. 257–270 (1991)Google Scholar
  6. 6.
    Jackson, M.A.: Problem Frames: Analyzing and structuring software development problems. Addison-Wesley, Reading (2000)Google Scholar
  7. 7.
    Hansen, K.M., Ravn, A.P., Rischel, H.: Specifying and verifying requirements of real-time systems. In: SIGSOFT 1991: Proceedings of the conference on Software for Critical Systems, pp. 44–54. ACM Press, New York (1991)CrossRefGoogle Scholar
  8. 8.
    Ravn, A.P.: Private communication (2006)Google Scholar
  9. 9.
    Zhou, C., Hansen, M.R.: Duration Calculus. Springer, Heidelberg (2004)MATHGoogle Scholar
  10. 10.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)Google Scholar
  11. 11.
    Stølen, K.: An attempt to reason about shared-state concurrency in the style of VDM. In: Prehn, S., Toetenel, H. (eds.) VDM 1991. LNCS, vol. 551, pp. 324–342. Springer, Heidelberg (1991)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Joey W. Coleman
    • 1
  1. 1.School of Computing ScienceUniversity of Newcastle upon TyneUK

Personalised recommendations