arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1606.02016cs.SE
收藏

扩展状态机的形式化精化

Formal refinement of extended state machines

Thomas Fayolle, Marc Frappier, Régine Laleau, Frédéric Gervais

摘要:

在传统的正式开发过程中,例如使用B方法,非正式的用户需求(手动)转换为一个全球性的抽象正式规范。这种翻译尤其难以实现。Event-B方法的开发是为了使用逐步细化来逐步和正式地构建这样的规范。每个增量都考虑到新的属性和系统方面。在本文中,我们建议耦合一个图形符号称为代数状态转换图(ASTD)与事件B规范,以便更好地理解软件的行为。动态行为由ASTD捕获,ASTD基于自动机和进程代数运算符,而数据模型则通过Event-B规范描述。我们提出了一种方法来逐步完善这种规范耦合,考虑到新的细化关系和控制规范和数据规范之间的一致性条件。我们比较使用每种方法获得的规范的可读性和证明的复杂性。传统的方法和我们的方法的优点和缺点进行了讨论。整个过程通过铁路CBTC类案例研究来说明。我们的方法得到了将ASTD翻译成B和将Event-B翻译成B的工具的支持。

英文摘要:

In a traditional formal development process, e.g. using the B method, the informal user requirements are (manually) translated into a global abstract formal specification. This translation is especially difficult to achieve. The Event-B method was developed to incrementally and formally construct such a specification using stepwise refinement. Each increment takes into account new properties and system aspects. In this paper, we propose to couple a graphical notation called Algebraic State-Transition Diagrams (ASTD) with an Event-B specification in order to provide a better understanding of the software behaviour. The dynamic behaviour is captured by the ASTD, which is based on automata and process algebra operators, while the data model is described by means of an Event-B specification. We propose a methodology to incrementally refine such specification couplings, taking into account new refinement relations and consistency conditions between the control specification and the data specification. We compare the specifications obtained using each approach for readability and proof complexity. The advantages and drawbacks of the traditional approach and of our methodology are discussed. The whole process is illustrated by a railway CBTC-like case study. Our approach is supported by tools for translating ASTD's into B and Event-B into B.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑