Efficient reuse is a goal of many software engineering strategies and is useful in the safety-critical domain where formal development is required. Event-B can be used to develop safety-critical systems, but could be improved by a component-based reuse strategy. In this paper, we outline a component-based reuse methodology for Event-B. It provides a means for bottom-up scalability, and can also be used with the existing top-down approach. We describe the process of creating library components, their composition, and specification of new properties (involving the composed elements). We introduce Event-B component interfaces and propose to use a diagrammatic representation of component instances (based on iUML-B) which can be used to describe the relationships between the composed elements. We also discuss the specification of communication flow across component boundaries and describe the additional proof obligations that are required.
If you cannot see the document below, the PDF document is most likely not freely accessible. In this case, please try to access the document via this link.
% BibTex
@inproceedings{EdmundsSW16,
author = {Andrew Edmunds and
Colin F. Snook and
Marina Wald{\'{e}}n},
editor = {Michael J. Butler and
Klaus{-}Dieter Schewe and
Atif Mashkoor and
Mikl{\'{o}}s Bir{\'{o}}},
title = {On Component-Based Reuse for Event-B},
booktitle = {Abstract State Machines, Alloy, B, TLA, VDM, and {Z} - 5th International
Conference, {ABZ} 2016, Linz, Austria, May 23-27, 2016, Proceedings},
series = {Lecture Notes in Computer Science},
volume = {9675},
pages = {151--166},
publisher = {Springer},
year = {2016},
url = {https://doi.org/10.1007/978-3-319-33600-8\_9},
doi = {10.1007/978-3-319-33600-8\_9},
timestamp = {Mon, 03 Jan 2022 22:35:01 +0100},
biburl = {https://dblp.org/rec/conf/asm/EdmundsSW16.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}