Abstract
Refinement techniques serve as a key role for modelling a complex system in an incremental way. This chapter also presents a required technique namely refinement chart for handling the complexity of a system. Refinement chart is a graphical representation of a complex system using layering approach, where functional blocks are divided into multiple simpler blocks in a new refinement level, without changing the original behaviour of the system. The main objective of this refinement chart is to model the whole system using graphical notations and to obtain a concrete specification. The refinement chart offers a clear view of assistance in “system” integration. This approach also gives a clear view about the system assembling based on operating modes and different kinds of features. To show the effectiveness of this approach, we have used this graphical modelling technique to simplifying the complexity of a system in the development of our selected case study: cardiac pacemaker.
Sections of this chapter are adapted from the original publication: Méry, D., & Singh, N. K. (2013). Formal specification of medical systems by proof-based refinement. ACM Transactions on Embedded Computing Systems, 12(1), 15:1–15:25.
ACM COPYRIGHT NOTICE. Copyright © 2013 by the Association for Computing Machinery, Inc. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Publications Dept., ACM, Inc., fax +1 (212) 869-0481, or permissions@acm.org.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Abrial, J.-R. (1996). The B-book: Assigning programs to meanings. New York: Cambridge University Press.
Abrial, J.-R. (2010). Modeling in Event-B: System and software engineering (1st ed.). New York: Cambridge University Press.
Abrial, J.-R., Börger, E., & Langmaack, H. (Eds.) (1996). Lecture notes in computer science: Vol. 1165. Formal methods for industrial applications, specifying and programming the steam boiler control. Berlin: Springer.
Back, R. J. R. (1981). On correct refinement of programs. Journal of Computer and System Sciences, 23(1), 49–68.
Butler, R. W. (1996). An introduction to requirements capture using PVS: Specification of a simple autopilot (NASA Technical Memorandum 110255). Hampton: NASA Langley Research Center.
Dotti, F., Iliasov, A., Ribeiro, L., & Romanovsky, A. (2009). Modal systems: Specification, refinement and realisation. In K. Breitman & A. Cavalcanti (Eds.), Lecture notes in computer science: Vol. 5885. Formal methods and software engineering (pp. 601–619). Berlin: Springer.
Fohler, G. (1993). Realizing changes of operational modes with a pre run-time scheduled hard real-time system. In H. Kopetz & Y. Kakuda (Eds.), Dependable computing and fault-tolerant systems: Vol. 7. Responsive computer systems (pp. 287–300). Vienna: Springer.
Harel, D. (1987). Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8(3), 231–274.
Jahanian, F., & Mok, A. K. (1994). Modechart: A specification language for real-time systems. IEEE Transactions on Software Engineering, 20(12), 933–947.
Méry, D., & Singh, N. K. (2010). Trustable formal specification for software certification. In T. Margaria & B. Steffen (Eds.), Lecture notes in computer science: Vol. 6416. Leveraging applications of formal methods, verification, and validation (pp. 312–326). Berlin: Springer.
Méry, D., & Singh, N. K. (2013). Formal specification of medical systems by proof-based refinement. ACM Transactions on Embedded Computing Systems, 12(1), 15:1–15:25.
Miller, S. P. (1998). Specifying the mode logic of a flight guidance system in Core and SCR. In FMSP’98: Proceedings of the second workshop on formal methods in software practice (pp. 44–53). New York: ACM.
Real, J., & Crespo, A. (2004). Mode change protocols for real-time systems: A survey and a new proposal. Real-Time Systems, 26(2), 161–197.
Smith, D. (2008). Generating programs plus proofs by refinement. In B. Meyer & J. Woodcock (Eds.), Lecture notes in computer science: Vol. 4171. Verified software: Theories, tools, experiments (pp. 182–188). Berlin: Springer.
Walters, H. (1990). Hybrid implementations of algebraic specifications. In H. Kirchner & W. Wechler (Eds.), Lecture notes in computer science: Vol. 463. Algebraic and logic programming (pp. 40–54). Berlin: Springer.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag London
About this chapter
Cite this chapter
Singh, N.K. (2013). Refinement Chart. In: Using Event-B for Critical Device Software Systems. Springer, London. https://doi.org/10.1007/978-1-4471-5260-6_6
Download citation
DOI: https://doi.org/10.1007/978-1-4471-5260-6_6
Publisher Name: Springer, London
Print ISBN: 978-1-4471-5259-0
Online ISBN: 978-1-4471-5260-6
eBook Packages: Computer ScienceComputer Science (R0)