EPSRC Reference: |
EP/C541138/1 |
Title: |
Synthesis and Elaboration of Partial Behaviour Models |
Principal Investigator: |
Uchitel, Dr S |
Other Investigators: |
|
Researcher Co-Investigators: |
|
Project Partners: |
|
Department: |
Computing |
Organisation: |
Imperial College London |
Scheme: |
First Grant Scheme Pre-FEC |
Starts: |
01 March 2006 |
Ends: |
31 August 2008 |
Value (£): |
124,192
|
EPSRC Research Topic Classifications: |
|
EPSRC Industrial Sector Classifications: |
|
Related Grants: |
|
Panel History: |
|
Summary on Grant Application Form |
Software systems are complex and hard to build. That is why it is important that software engineers have methods and tools that will not only help them in constructing software systems but also give them confidence that the systems once built will have the properties that they were expected to have. Software systems can be analysed by constructing models that describe their intended behaviour. This is similar to what other engineers do. For instance, a civil engineer will build a structural model to study whether a building will collapse. The advantage of using models to describe systems is that they are cheaper to develop than the actual system. Consequently, they can be analysed and mechanically checked for properties in order to detect design errors early in the development process, allow cheaper fixes, and reduce the number of faults the final system is delivered with.There has been a lot of work by researchers in developing techniques, methods and tools for modelling and analysing system behaviour. However, software engineers do not normally use them when they develop software systems. There are two important reasons for this. Firstly, constructing behaviour models is still a difficult task and requires considerable expertise. Secondly, although building behaviour models is not as difficult as building the actual system, it is hard to convince software engineers of the benefits of making the effort of building behaviour models because the benefits they get by doing so arrive only at the very end of this costly task.This motivates a series of research questions that we aim to address: How can we simplify the construction of behaviour models? Can we provide automated procedures to assist engineers in building initial approximations of system behaviour? Can we provide feedback early in the model construction effort, even in the presence of partial behaviour descriptions? We believe these questions can be answered positively and that scenarios and partial behaviour models can play an important role in answering them.Scenarios, such as message sequence charts, are popular notations for describing system behaviour. Scenarios provide story-like examples of how system components and users interact. A current limitation of approaches to rigorous analysis of scenario specifications is that the models used are assumed to be complete descriptions. However, scenarios are partial specifications that only give some examples of behaviour. This mismatch between the models used to analyse scenarios and the scenarios themselves turns out to be unsatisfactory: Either the users are finally forced to try to give enough scenarios to make their description complete or the analysis is made on a model that does not reflect accurately what the scenarios say. The underlying problem is that traditional behaviour models cannot model partial behaviour. A more appropriate type of model is one in which currently unknown aspects of behaviour can be explicitly modelled. Behaviour models that allow such distinction are referred to as partial behavioural models (one example of such is Modal Transition Systems (MTSs)).In the research we propose, we will develop techniques that will automatically build partial behaviour models from popular scenario notations. These algorithms are usually called synthesis algorithms. We will build tools that will allow software engineers to write scenarios, synthesise partial models, and then analyse and animate them. We will also study theoretical aspects of MTSs. In particular, we will study how to merge modal transition systems. Merging means composing two models describing the same system into one model that contains the behavioural information of both. Merging will provide the theoretical underpinning needed to develop improved synthesis algorithms and, more generally, will provide the foundations to support software engineers in building and elaborating models
|
Key Findings |
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
|
Potential use in non-academic contexts |
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
|
Impacts |
Description |
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk |
Summary |
|
Date Materialised |
|
|
Sectors submitted by the Researcher |
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
|
Project URL: |
|
Further Information: |
|
Organisation Website: |
http://www.imperial.ac.uk |