Domain-Specific Scenarios for Refinement-Based Methods

被引:2
作者
Snook, Colin [1 ]
Thai Son Hoang [1 ]
Dghaym, Dana [1 ]
Butler, Michael [1 ]
机构
[1] Univ Southampton, ECS, Southampton, Hants, England
来源
NEW TRENDS IN MODEL AND DATA ENGINEERING | 2019年 / 1085卷
关键词
Event-B; Cucumber; Validation; Domain specific language;
D O I
10.1007/978-3-030-32213-7_2
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Formal methods use abstraction and rigorously verified refinement to manage the design of complex systems, ensuring that they satisfy important invariant properties. However, formal verification is not sufficient: models must also be tested to ensure that they behave according to the informal requirements and validated by domain experts who may not be expert in formal modelling. This can be satisfied by scenarios that complement the requirements specification. The model can be animated to check that the scenario is feasible in the model and that the model reaches states expected in the scenario. However, there are two problems with this approach. (1) The provided scenarios are at the most concrete level corresponding to the full requirements and cannot be used until all the refinements have been completed in the model. (2) The natural language used to describe the scenarios is often verbose, ambiguous and therefore difficult to understand; especially if the modeller is not a domain expert. In this paper we propose a method of abstracting scenarios from concrete ones so that they can be used to test early refinements of the model. We also show by example how a precise and concise domain specific language can be used for writing these abstract scenarios in a style that can be easily understood by the domain expert (for validation purposes) as well as the modeller (for behavioural verification). We base our approach on the Cucumber framework for scenarios and the Event-B modelling language and tool set. We illustrate the proposed methods on the ERTMS/ETCS Hybrid Level 3 specification for railway controls (The example model and scenario scripts supporting this paper are openly available at https://doi.org/10.5258/SOTON/D1026).
引用
收藏
页码:18 / 31
页数:14
相关论文
共 10 条
  • [1] Rodin: An open toolset for modelling and reasoning in Event-B
    Abrial J.-R.
    Butler M.
    Hallerstede S.
    Hoang T.S.
    Mehta F.
    Voisin L.
    [J]. International Journal on Software Tools for Technology Transfer, 2010, 12 (06) : 447 - 466
  • [2] Abrial J.R., 2010, Modeling in Event-B: System and Software Engineering
  • [3] Cybulski J.L., 1996, 967 U MELB DEP INF S
  • [4] Dghaym Dana, 2018, Abstract State Machines, Alloy, B, TLA, VDM, and Z. 6th International Conference, ABZ 2018. Proceedings: LNCS 10817, P338, DOI 10.1007/978-3-319-91271-4_23
  • [5] EEIG ERTMS Users Group, 2017, 16E042 EEIG ERTMS US
  • [6] Fischer T., 2018, CUCUMBER EVENT B IUM
  • [7] Formal Model Validation Through Acceptance Tests
    Fischer, Tomas
    Dghyam, Dana
    [J]. RELIABILITY, SAFETY, AND SECURITY OF RAILWAY SYSTEMS: MODELLING, ANALYSIS, VERIFICATION, AND CERTIFICATION, 2019, 11495 : 159 - 169
  • [8] Hoang T.S., 2013, Industrial Deployment of System Engineering Methods, P211
  • [9] Behaviour-Driven Formal Model Development
    Snook, Colin
    Hoang, Thai Son
    Dghyam, Dana
    Butler, Michael
    Fischer, Tomas
    Schlick, Rupert
    Wang, Keming
    [J]. FORMAL METHODS AND SOFTWARE ENGINEERING, ICFEM 2018, 2018, 11232 : 21 - 36
  • [10] Wynne M., 2012, PRAGMATIC PROGRAMMER