软件开发的形式化方法
分類: 图书,计算机/网络,软件工程/开发项目管理,
作者: 古天龙编
出 版 社: 高等教育出版社
出版时间: 2005-1-1字数:版次: 1页数: 265印刷时间:开本: 16开印次: 1纸张:I S B N : 9787040160796包装: 平装内容简介
形式化方法是建立在严格数学基础上、具有精确数学语义的开发方法。从广义角度,形式化方法是软件开发过程中分析、设计及实现的系统工程方法。狭义地,形式化方法是软件规格和验证的方法。本书对软件开发中的形式化方法进行了介绍和讨论,内容涵盖了SE2004中关于“软件的形式化方法”的知识点,主要包括:有限状态机、Statecharts、Petri网、通信顺序进程、通信系统演算、一阶逻辑、程序正确性证明、时态逻辑、模型检验、Z、VDM、Larch等。
本书可作为计算机、软件工程等专业高年级本科声或研究生的教学用书,也可供相关领域的研究人员和工程技术人员参考。
目录
第1章软件及其开发概述
1.1软件开发的历史
1.2软件危机
1.3软件工程
1.4形式化方法
习题
第2章有限状态机及其扩展
2.1有限状态机
2.2Statecharts
习题
第3章Petri网
3.1位置/迁移Petri网
3.2高级Petri网
习题
第4章进程代数
4.1通信顺序进程
4.2通信系统演算
习题
第5章一阶逻辑
5.1命题逻辑
5.2谓词逻辑
5.3程序正确性证明
习题
第6章时态逻辑
6.1模态逻辑
6.2线性时态逻辑
6.3计算树逻辑
6.4模型检验
习题
第7章Z
7.1概述
7.2表示抽象
7.3操作抽象
7.4Z规格的例
习题
第8章VDM
8.1概述
8.2表示抽象
8.3操作抽象
8.4VDM规格的例
习题
第9章Larch
参考文献
书摘插图
第1章软件及其开发概述
软件或者程序是计算机及其应用系统的一个重要组成部分。伴随着计算机的诞生和发展,软件及其开发经历了半个多世纪的历程。本章简要回顾了软件及其开发的历史;阐述了软件发展过程中的软件危机、软件工程、软件开发的形式化方法等。
1.1 软件开发的历史
第一台通用电子数字计算机ENIAC于1946年2月15日诞生,与之相伴,出现了计算机软件(早期称为程序)。软件是计算机系统中与硬件相互依存的另一部分,它与硬件合为一体完成系统功能。在计算机发展的早期阶段(1946年到20世纪60年代中期),计算机系统还是以硬件为主,软件费用只占总费用的20%左右;到了计算机发展的第二个阶段(20世纪60年代中期到20世纪80年代初期),在硬件费用成倍下降的同时,软件费用却迅速上升,达到了总费用的60%以上;之后软件费用一直持续上升,其在计算机系统总费用中的比例一直上升到今天的80%以上。
所谓软件开发,实际上就是把现实世界的需求反映成软件的模型化并予以实现的过程。在计算机发展的不同时期,人们对软件的认识不同,相应地,所进行的软件开发也具有不同的特点。软件及其开发大体经历了如下三个阶段:
(1)程序设计阶段(1946年-1956年)
自1946年2月15日第一台通用电子数字计算机ENIAC宣告研制成功,到1956年高级语言的诞生,是软件发展的第一个阶段。
……