软件结构化设计的图形工具

标签:
软件设计hipo结构图状态状态表 |
分类: 软件过程改进 |
1. HIPO图
HIPO(Hierarchy
plus Input, Process,
Output)图是由IBM公司发明的“层次加输入处理输出”图的英文缩写。
层次图是软件概要设计阶段常用的表示形式之一,用来描述软件的层次结构。图中每个矩形框代表一个模块,框内注明模块的名称,方框之间的连线表示上层模块对下层模块的调用关系。为使HIHO图具有可追踪性,除顶层之外的每个框都标有编号,各层之间的编号关系如下图所示。
为了避免混淆,一个模块在层次中只能出现一次。为避免不同上层模块调用同一下层模块,形成交叉线,可采用模块3.2调用模块2.2.1的表示方法,或模块3.4调用模块2.1.1的表示方法。
2.结构图
3. 状态转移表
STT的各列为STD中引起状态转换的各项输入事件/条件,各行为STD的各项状态。STT的各列与各行对应的单元格填写STD的转移关系。每个单元格内有一条横线,横线上部填写该状态接收到该条件后的执行动作(转换时生成的输出事件:触发T、激活启动E、禁止D),横线下部填写转移的去向状态。如果单元格空白,表示对应的状态对输入事件无动作响应,并保持原状态不变。
在编制STD时,我们的思维是正向的;给定一个状态,在此状态下接收哪一个条件,而容易忽略在给定的状态,如果发生了我们没有期待发生的条件(可能是一个错误条件),应该如何处理。STT具有全部的状态和条件组合,因此能够提醒我们是否可以忽略这个条件,或者需要反馈一个信息,或者需要对系统进行诊断,或者需要进行保证系统不致瘫痪的处理。
STT的另一个优点是容易增加状态和转移条件。当在STD中考虑增加一些出错条件,进行恢复处理时,例如“电源故障”,从新绘制STD的工作很麻烦。而对状态转移表只是在表中增加一列而已。
--------------END-----------------
前一篇:软件的可靠性设计与安全性设计
后一篇:面向数据流的设计方法