结构化设计的几个工具
作者:王小双
来源:微信公众号:软件工程之思
出处:;mid=2652198646 --tt-darkmode-bgcolor: #131313;">传统的软件设计使用结构化设计技术 , 结构化设计是以结构化分析的数据模型、功能模型和行为模型为基础 , 完成数据设计、体系结构设计、接口设计和过程设计 。 这些设计活动分别采用不同的工具进行 。
- 数据设计
数据结构可以使用Jackson图来表示 。
Jackson图和描绘软件结构的层次图形式相近 , 但是含义却有很大相同:
- 层次图中的一个方框通常代表一个模块;Jackson图中的一个方框并不代表一个模块 , 通常只代表几个语句;
- 层次图表现的是模块的调用关系;Jackson图表现的是组成关系 。
文章插图
- 体系结构设计
体系结构可以使用HIPO图和Yourdon提出的结构图来表示 。
- HIPO图
层次图使用矩形框表示一个模块 , 用框间的连线表示模块的调用关系 。 如下图所示:
文章插图
HIPO图在层次图里把除了顶层的方框之外的每个方框都加了编号 , 然后再使用一张IPO图描述这个方框代表的模块的处理过程 。
IPO 图的基本形式是在左边的框中列出输入数据 , 在中间的框中列出数据处理 , 在右边的框中列出输出数据 。 如下图所示:
文章插图
【结构化设计的几个工具】或者使用IPO表来表示 , 如下图:
文章插图
- 结构图
结构图示例如下:
文章插图
- 接口设计
接口用于传递数据 , 因此 , 数据流图提供了接口设计所需要的信息 。
- 过程设计
过程设计的目标不仅仅是逻辑上正确地实现每个模块的功能 , 更重要的是设计出的处理过程应该尽可能简明易懂 。 过程设计工具有很多种 , 包括图形、表格和语言3类 。
- 程序流程图
但是 , 由于程序流程图有很多缺点 , 诸如“诱使程序员过早地考虑程序的控制流程 , 而不去考虑程序的全局结构”、“不易表示数据结构”等 , 所以很多专家都建议停止使用它 。
- 盒图(N-S图)
使用盒图可以很容易实现以下目标:
- 程序员在进行设计时必须符合结构设计原则 , 而不能随意转移控制 。
- 可以很容易地确定局部和全程数据的作用域 。
- 可以很容易地表现嵌套关系 。
文章插图
- 判定表和判定树
一张判定表由4部分组成 , 左上部列出所有条件 , 左下部是所有可能做的动作 , 右上部是表示各种条件组合的一个矩阵 , 右下部是和每种条件组合相对应的动作 。 如下图所示:
文章插图
- 智能手机市场|华为再拿第一!27%的份额领跑全行业,苹果8%排在第四名!
- 会员|美容院使用会员管理软件给顾客更好的消费体验!
- 行业|现在行业内客服托管费用是怎么算的
- 人民币|天猫国际新增“服务大类”,知舟集团提醒入驻这些类目的要注意
- 国外|坐拥77件专利,打破国外的垄断,造出中国最先进的家电芯片
- 技术|做“视频”绿厂是专业的,这项技术获人民日报评论点赞
- 面临|“熟悉的陌生人”不该被边缘化
- 中国|浅谈5G移动通信技术的前世和今生
- 页面|如何简单、快速制作流程图?上班族的画图技巧get
- 桌面|日常使用的软件及网站分享 篇一:几个动态壁纸软件和静态壁纸网站:助你美化你的桌面