验证软件需求:一致性;完整性;现实性;有效性。
一个有穷状态机可以表示为一个 5 元组(J,K,T,S,F)+1(P)其中:J 是一个有穷的
非空状态集;K 是一个有穷的非空输入集;T 是一个从(J-F)×K 到 J 的转换函数;S J
∈
,
是一个初始状态;FJ,是终态集;
谓词集 P.
当前状态〔菜单〕+事件〔所选择的项〕+谓词
下个状态
Petri 网包含 4 种元素:一组位置 P、一组转换 T、输入函数 I,输出函数 O。映射
Z 语言:给定的集合、数据类型及常数。状态定义。初始状态。操作。
模块化就是将程序划分成若干个独立的模块,每个模块完成一个特定子功能,每个模块
既是相对独立的,又是相互联系的,它们共同完成系统指定的各项功能。
模块化的目的是为了降低软件的复杂性
逐步求精是一种先总体、后局部的思维原则,也就是一种逐层分解、分而治之的方法
。
模块独立:模块本身的内聚和模块之间的耦合
耦合强弱取决于模块间接口的复杂程度;最强的一类耦合称为内容耦合
设计原则:尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,
完全不用内容耦合。
内聚标志一个模块内各个元素彼此结合的紧密程度
内聚和耦合是密切相关的,模块内的高内聚往往意味着模块间的松耦合。
功能内聚
10
分 时间内聚 3
分 顺序内聚 9 分
逻辑内聚
1 分
通信内聚
7 分
偶然内聚
0
分 过程内聚 5 分
信息流两种类型:变换流;事务流
结构程序设计 3 种基本控制结构:顺序,选择,循环。
一张判定表由 4 部分组成,左上部列出所有条件,左下部是所有可能做的动作,右上
部是表示各种条件组合的一个矩阵,右下部是和每种条件组合相对应的动作。
⊆
⇒