Edmunds, Andrew and Butler, Michael
Tasking Event-B: An Extension to Event-B for Generating Concurrent Code
At PLACES 2011, Germany.
The Event-B method is a formal approach for modelling systems in safety-, and business-critical, domains. Initially, system specification takes place at a high level of abstraction; detail is added in refinement steps as the development proceeds toward implementation. Our aim has been to develop a novel approach for generating code, for concurrent programs, from Event-B. We formulated the approach so that it integrates well with the existing Event-B methodology and tools. In this paper we introduce a tasking extension for Event-B, with Tasking and Shared Machines. We make use of refinement, decomposition, and the extension, to structure projects for code generation for multitasking implementations. During the modelling phase decomposition is performed; decomposition reduces modelling complexity and makes proof more tractable. The decomposed models are then extended with sufficient information to enable generation of code. A task body describes a task’s behaviour, mainly using imperative, programming-like constructs. Task priority and life-cycle (periodic, triggered, etc.) are also specified, but timing aspects are not modelled formally. We provide tool support in order to validate the practical aspects of the approach.
Conference or Workshop Item
||Event Dates: 2nd April 2011
|Venue - Dates:
||PLACES 2011, Germany, 2011-04-02
||Event-B, Code Generation, Tooling, Concurrency
||Electronic & Software Systems
|9 February 2011||Accepted/In Press|
||10 Feb 2011 16:18
||23 Feb 2017 08:51
|Further Information:||Google Scholar|
Actions (login required)