We use cookies to improve your experience with our site.

基于契约的软件结构的可视化规范与分析

Visual Specification and Analysis of Contract-Based Software Architectures

  • 摘要: XCD是一种基于契约设计的结构描述语言,该语言以组件和连接器(即,交互协议)的形式支持模块化的规约。XCD由一个翻译器支持,该翻译器能生成用SPIN的ProMeLa形式验证语言描述的形式化模型,该模型能使用SPIN的模型检查器进行形式化的验证。VXCD是XCD基于一个可视化标记集合的扩展。VXCD扩展了UML的组件图,并使之与XCD的结构、合同行为和交互协议规范相适应。可视化VXCD规范可以转换为可用于形式化分析的文本XCD规范。为说明VXCD,本文使用了众所周知的Gas Station系统。首先,使用VXCD可视化符号集描述了该系统;接着,使用SPIN的模型检查器,形式化地验证了大量属性,例如:死锁和竞争条件。

     

    Abstract: XCD is a design-by-contract based architecture description language that supports modular specifications in terms of components and connectors (i.e.,interaction protocols).XCD is supported by a translator that produces formal models in SPIN's ProMeLa formal verification language,which can then be formally analysed using SPIN's model checker. XCD is extended with a visual notation set called VXCD.VXCD extends UML's component diagram and adapts it to XCD's structure,contractual behaviour,and interaction protocol specifications.Visual VXCD specifications can be translated into textual XCD specifications for formal analysis.To illustrate VXCD,the well-known gas station system is used.The gas system is specified contractually using VXCD's visual notation set and then formally analysed using SPIN's model checker for a number of properties including deadlock and race-condition.

     

/

返回文章
返回