博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
软件工程——理论、方法与实践 之 软件工程中的形式化方法
阅读量:5348 次
发布时间:2019-06-15

本文共 864 字,大约阅读时间需要 2 分钟。

软件工程——理论、方法与实践 之 软件工程中的形式化方法

从广义上讲,形式化方法是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动。狭义的讲,形式化方法是运用形式化语言,进行形式化的规格描述、模型推理和验证的方法。形式化方法运用于软件工程实践当中主要目的是保证软件的正确性。软件开发实际上就是把现实世界的需求映射成软件额模型化过程。该过程包括:形式规约、形式证明我与检验、程序求精三方面的活动。

形式化规格说明是对软件系统对象,对象的操作方法,以及对象行为的描述。当规格说明用非形式化方法描述时,可称为“规格说明”,当规格说明用形式化方法描述时,可称为“形式规约”。形式检测与证明技术主要包括模型检测与定理证明。模型检测是一种基于有限状态模型并检测该模型的性质的技术。定理证明采用逻辑公式来表示系统规约及其性质,其中的逻辑由一个具有公理和推理的形式化系统给出,进行定理证明的过程就是应用这些公理或推测规则来证明系统具有某些性质。程序求精是将自动推理和形式化方法相结合,从抽象形式规约推演出具体的面相计算机的程序代码的全过程。目前应用比较广泛的3种形式化方法包括:基于时态逻辑的方法、Z语言及其分析方法、Petri网方法。

模态逻辑是经典命题逻辑和一阶谓词的扩展形式。模态逻辑通过引入“可能”和“必然”两个模态词,从而对可能世界中的命题进行描述和演算。Z语言为系统建立基于状态的模型。模型的三个主要组成部分是输入、输出和状态,它们均有相应的数学概念来描述。Z语言形式规约由数学语言描述和自然语言注释两部分组成。其中数学语言描述部分是核心,它是精确、简练地描述系统性质和自动推理的保证。自然注释部分则用于解释说明数学部分的内容。Petri网一词既指这种模型,又指以这种模型为基础发展起来的理论。有时又把Petri网称作网论。Petri网分为位置/迁移Petri网和高级Petri网两类。

转载于:https://www.cnblogs.com/bdqczhl/p/4297732.html

你可能感兴趣的文章
Flask实战-留言板-使用Faker生成虚拟数据 --
查看>>
解决VC++6.0 无法打开、无法添加工程文件
查看>>
ORA-01858: a non-numeric character was found where a numeric was expected
查看>>
Structure From Motion(二维运动图像中的三维重建)
查看>>
25复杂链表的复制
查看>>
2 Orchard汉化资源包的使用
查看>>
python3 property
查看>>
自定义控件注意点
查看>>
SSRS 报表 如何匿名查看
查看>>
JVM内存管理机制
查看>>
centos 安装Mysql
查看>>
简单通用Ajax函数
查看>>
【Android】ListView监听上下滑动(判断是否显示返回顶部按钮
查看>>
HBASE的MAPREDUCE任务运行异常解决办法,无需CYGWIN,纯WINDOWS环境
查看>>
禅道在docker上部署与迁移
查看>>
关于继承、封装、多态、抽象和接口
查看>>
c27---typedef
查看>>
android WebViewClient和WebChromeClient
查看>>
div+css清除浮动代码
查看>>
017Python路--解释器
查看>>