形式化方法在软件开发中的应用与创新
在软件开发领域,形式化方法正发挥着日益重要的作用。它能够提升软件的质量和可靠性,尤其在关键系统的开发中至关重要。本文将介绍几种形式化方法在不同场景下的应用,包括提高需求模型与规范之间的可追溯性、代码合成、需求模型验证、Web 服务验证、证明规则扩展、模型抽象以及面向特性的建模等方面。
提高 KAOS 需求模型与 B 规范之间的可追溯性
在陆地运输系统中,定位软件组件是关键部分。开发该组件时面临两大难题:一是找到合并定位数据的正确算法,二是考虑所有相关属性。为解决这些问题,引入了半形式化的 KAOS 方法,它是一种基于目标的需求工程方法。
- 对应规则建立 :为了建立 KAOS 目标模型与 B 规范之间的联系,提出为目标模型的每个概念与 B 元素指定对应规则。目前仅考虑“实现”类型的功能目标,每个目标关联一个 B 机器,机器包含实现该目标的操作。
- 目标细化表示 :目标的细化通过 B 细化机器来表示,抽象操作由具体操作细化。具体操作通过组合对应于更抽象目标子目标的机器操作构建,组合方式取决于目标细化模式(里程碑、与、或)。
- 方法贡献 :该方法的主要贡献在于搭建了非形式化与形式化世界之间的桥梁,并且通过处理 B 细化过程产生的证明义务,可以证明目标模型的一致性属性。
定时自动机的代码合成比较
有两种从定时自动机模型自动生成实现代码的方法:
- TIMES 方法 :与 TIMES 工具结合实现。
- B
超级会员免费看
订阅专栏 解锁全文
1285

被折叠的 条评论
为什么被折叠?



