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.
['Andrew Edmunds', 'Colin Snook', 'Marina A. Waldén']
On Component-Based Reuse for Event-B