Abstract.
Well understood methods exist for developing programs from given specifications. A formal method identifies proof obligations at each development step: if all such proof obligations are discharged, a precisely defined class of errors can be excluded from the final program. For a class of "closed" systems such methods offer a gold standard against which less formal approaches can be measured.
For "open" systems -those which interact with the physical world- the task of obtaining the program specification can be as challenging as the task of deriving the program. And, when a system of this class must tolerate certain kinds of unreliability in the physical world, it is still more challenging to reach confidence that the specification obtained is adequate. We argue that widening the notion of software development to include specifying the behaviour of the relevant parts of the physical world gives a way to derive the specification of a control system and also to record precisely the assumptions being made about the world outside the computer.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Abrial, J.-R.: The B-Book: Assigning programs to meanings. Cambridge University Press, Cambridge (1996)
Broy, M., Stølen, K.: Specification and Development of Interactive Systems. Springer, Heidelberg (2001)
Chaochen, Z., Hoare, C.A.R., Ravn, A.P.: A calculus of durations. Information Processing Letters 40, 269–271 (1991)
Jackson, M.A.: Problem analysis and structure. In: Hoare, T., Broy, M., Steinbruggen, R. (eds.) Engineering Theories of Software Construction Proceedings of the NATO Summer School, Marktoberdorf. IOS Press, Amsterdam (August 2000)
Jackson, M.A.: Problem Frames: Analyzing and structuring software development problems. Addison-Wesley, Reading (2001)
Jackson, M.: Software Requirements & Specifications: a lexicon of practice, principles and prejudices. Addison-Wesley, Reading (1995)
Jones, C.B.: Development Methods for Computer Programs including a Notion of Interference. PhD thesis, Oxford University, Printed as: Programming Research Group, Technical Monograph 25 (June 1981)
Jones, C.B.: Specification and design of (parallel) programs. In: Proceedings of IFIP 1983, pp. 321–332. North-Holland, Amsterdam (1983)
Jones, C.B.: Systematic Software Development using VDM, 2nd edn. Prentice Hall International, Englewood Cliffs (1990) ISBN 0-13-880733-7
Jones, C.B.: Accommodating interference in the formal design of concurrent object-based programs. Formal Methods in System Design 8(2), 105–122 (1996)
Jones, C.B.: Compositionality, interference and concurrency. In: Davies, J., Roscoe, B., Woodcock, J. (eds.) Milennial Perspectives in Computer Science, pp. 175–186. Macmillian Press (2000)
Mahony, B.P., Hayes, I.J.: A case study in timed refinement: A central heater. In: Proc. BCS/FACS Fourth Refinement Workshop, Workshops in Computing, January 1991, pp. 138–149. Springer, Heidelberg (1991)
Mahony, B.P., Hayes, I.J.: Using continuous real functions to model timed histories. In: Bailes, P.A. (ed.) Proc. 6th Australian Software Engineering Conf (ASWEC 1991), pp. 257–270. Australian Comp. Soc. (1991)
Mahony, B.P., Hayes, I.J.: A case-study in timed refinement: A mine pump. IEEE Trans. on Software Engineering 18(9), 817–826 (1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hayes, I.J., Jackson, M.A., Jones, C.B. (2003). Determining the Specification of a Control System from That of Its Environment. In: Araki, K., Gnesi, S., Mandrioli, D. (eds) FME 2003: Formal Methods. FME 2003. Lecture Notes in Computer Science, vol 2805. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-45236-2_10
Download citation
DOI: https://doi.org/10.1007/978-3-540-45236-2_10
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-40828-4
Online ISBN: 978-3-540-45236-2
eBook Packages: Springer Book Archive