模块化就是把程序划分成独立命令且可独立访问的模块,每个模块完成一个字功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。
2、模块独立性度量(描述)的两个指标:内聚、耦合;什么是内聚,什么是耦合(P97);在面向数据流的方法中,内聚、耦合各分为哪几级,每级的具体含义分别是什么?强度从弱到强如何排列?
耦合:它是对一个软件结构内不同模块之间互连程度的度量;
内聚:它标志着一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。
耦合分为
(1)数据耦合
(2)控制耦合
(3)特征耦合
(4)公共耦合
(5)内容耦合;
原则:尽量使用数据耦合,小用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合
内聚分为:
低内聚:
(1)偶然内聚
(2)逻辑内聚
(3)时间内聚;
中级内聚
(1)过程内聚
(2)通信内聚;
高内聚
(1)顺序内聚
(2)功能内聚;
原则设计时力求高内聚,并且能够辨认出低内聚的模块,有能力通过修改设计提高模块的内聚程度并且降低模块间的耦合程度,从而获得较高的模块独立;内聚和耦合都是进行模块化设计的有力工具,但是实现表明内聚更重要。
3、软件总体结构描述工具的概念和使用:软件层次图、软件结构(SC)图、HIPO图:什么是,基本符号和表示的结构,画法。
软件层次图(H图):
用来描绘软件的层次结构
组成元素:
一个矩形框代表一个模块
方框间的连线表示调用关系而不像层次方框图那样表示组成关系。
结构图(SC):
描述了软件的模块结构,表示了一个系统的层次分解关系;反映了模块间的联系以及块内联系;反映了模块间的信息传递。
(1) 组成元素:
方框,内有名称,表示模块;
直线,表示上层模块对下层模块的调用;
尾部带空心圆的箭头,表示按方向传递的数据信息;
尾部带实心圆的箭头,表示按方向传递的控制信息;
(2) 注意:层次图和结构图并不严格表示模块的调用次序,层次图和结构图只表明一个模块调用那些模块,至于模块内还有没有其他成分则完全没有表示。
(3) 作用:描述模块间参数交换情况、评价模块间耦合情况、确定模块间的接口。结构图一般不列入设计文档,只用于设计阶段检查模块设计的正确性和模块独立性。
HIPO图:
即层次图 + 输入/处理/输出图 的英文缩写,由一张H图和一组IPO图组成。
H图,是给每个模块加上编号的层次图。
IPO图,要为H图中的每个模块画一张IPO图。
通常将HIPO图作为软件结构的描绘,列入设计文档。
4、结构化设计(SD)方法(面向数据流的设计方法)中,如何将分析的结果(数据流图)逐层分解、转换成设计的初步结果(软件层次图)?
第1步:复查基本系统模型
第2步:复查并精化数据流图
第3步:确定数据流图具有变换特性还是事务特性
第4步:确定输入流和输出流的边界,从而孤立出变换中心
第5步:完成“第一级分解”
第6步:完成“第二级分解”
第7步:使用设计度量和启发式规则对第一次分割得到的软件结构进一步精化
题目1、数据流的划分。
1、变换流:信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统;
2、事务流:这种数据流是“以事务为中心的”,数据沿输入通路到达一个处理T,这个处理输入数据的类型在若干个动作序列中选出一个来执行。
题目2、 结构化分析、结构化设计的实质是什么?
结构化分析就是一种建立模型的活动,通常建立数据模型、功能模型和行为模型等三种模型。使用数据流程图、数据字典、结构化语言、判定表和判定树等工具,来建立一种新的、称为结构化说明书的目标文档-需求规格说明书。结构化体现在将软件系统抽象为一系列的逻辑加工单元,各单元之间以数据流发生关联。
题目3、什么是软件结构?
软件结构是指一种层次表况,由软件组成成分构造软件的过程、方法和表示。软件结构主要包括程序结构和文档结构。
题目4、数据流图怎么转换成软件结构图?
面向数据流的设计方法定义了一些不同的“映射”,利用这些映射可以把数据流图变换成软件结构。面向数据流的设计方法把信息流映射成软件结构,信息流的类型决定了映射的方法。
题目5、为每种类型的模块耦合举一个具体的例子。
(1) 非直接耦合—例如,两个模块没有直接关系(模块1和模块2),模块独立性最强。
(2) 数据耦合—例如,如下图
(3) 特征耦合—例如,如下图
“住户情况”是一个数据结构,图中模块都与此数据结构有关。“计算水费”和“计算电费”本无关,由于引用了此数据结构产生依赖关系,它们之间也是标记偶合。
(4) 控制耦合--模块A通过传送开关、标志、名字等控制信息,明显地控制选择模块B的功能,例如下图
(5) 外部耦合—例如,如下图,模块A、B均需使用共享打印机
(6) 公共环境耦合—例如,如下图,模块A、B、C共享全局变量数组
(7) 内容耦合—例如,一个过程非正常地进入另一个过程
Sub AA(...)
...
...
goto L
End sub
Sub BB(...)
...
...
L: ...
...
End sub
题目6、用面向数据流的方法设计下列系统的软件结构:
(3)患者监护系统(需求见习题2-4)
功能级数据流图:
软件结构图:
本文链接:http://www.itzhai.com/overall-design-modular-hierarchy-chart.html
相关推荐
模块化设计系列培训资料-(一)模块化设计到模块化时代-42p.ppt 模块化设计系列培训资料-(二)面向系统总体-52p.ppt 模块化设计系列培训资料-(三)传统模块化方法-73p...模块化设计系列培训资料-(七)模块设计的创新-31p.ppt
章总体设计-西安电子科技大学-软件工程教学课件(与“模块”有关文档共122张).pptx
机械专业设计-GD6371轻型客车设计-总体设计CAD图++毕设说明书文档.zip
基于asp班级网站的设计与实现--总体设计与模块实现-工学学士毕业论文.doc
4.1.2“图书借还”模块设计 - 12 - 4.1.3“读者管理”模块设计 - 12 - 4.1.4“图书管理”模块设计 - 13 - 4.1.5“系统查询”模块设计 - 13 - 4.1.6“系统设置”模块设计 - 14 - 4.1.7“更改口令”模块设计 - 14 - ...
基于a.s.p班级网站的设计与实现--总体设计与模块实现-工学学士毕业论文.doc
文档介绍 0.1 文档目的 本文档首先给出了整个系统的整体网络结构和功能结构的概貌,试图从总体架构上给 出整个系统的轮廓,然后又对功能需求、性能需求和其它非功能性需求进行了详细的描 述。其中对功能需求的描述...
针对清洗机的工作机理、结构特点和类型,参考有关的技术规范,确定并选用了清洗机的技术原理、动态特性、减速电机、链轮系统等设计,并进行了整体的优化。本机整体工作平稳,可用于体积及重量小的橙子、桃、苹果、...
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据。 1 数据库设计的基本步骤: 2 概念结构设计 2.1 E-R模型基本符号 2.2 初步E-R图设计 2.3 ...
企业信息化建设项目-业务总体设计方案.pptx
机电及自动化工程--小型清雪车的总体设计及三维建模设计--大学毕业设计论文.doc
XX市-人民医院-信息化建设方案-总体设计方案.doc
3.2 系统实现层次图: - 13 - 3.3各模块详细功能 - 13 - 3.3.1服务器端结构 - 13 - 3.3.2 客户端结构 - 14 - 4 详细设计 - 15 - 4.1 系统流程图 - 15 - 4.1.1 系统总体流程图 - 15 - 4.1.2 系统客户端流程图 - 16 - ...
智能化系统总体规划设计-ASUS.pdf
系统设计技术路线 - 37 - 3.1 平台化的设计思路 - 37 - 3.2 面向对象的分析设计方法 - 37 - 3.3 三层次体系架构 - 37 - 3.4 纯B/S结构实现 - 38 - 3.5 中间件技术 - 38 - 4. 系统总体应用模型 - 38 - 5. 系统总体...
在线考试系统设计与开发 1前言 - 1 - 1.1背景: - 1 - 1.2动态网页技术 - 2 - 1.3 数据库技术 - 2 - 1.4网络考试系统优点 - 3 - 1.5 可行性分析 - 4 - 2 软件需求说明书 - 6 - 2.1 编写目的 - 6 - 2.2任务概述 - 6 ...
系统结构图 - 8 - 2.5功能需求与系统模块的关系 - 9 - 2.6 人工处理过程 - 9 - 3.系统数据结构设计 - 9 - 3.1逻辑结构设计要点 - 9 - 3.2物理结构设计要点 - 11 - 3.3数据结构与程序的关系 - 11 - 3.4 设计表格及...
人工智能-机器学习-专题地图总体设计智能化理论与方法研究.pdf
转筒干燥器的总体与结构设计--机械设计制造及其自动化毕业设计.doc