版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章概要设计本章介绍概要设计阶段的步骤、方法和图形工具。
概要设计步骤软件结构设计的基本原理软件结构设计的图形工具HIPO图结构图概要设计方法概要设计文档与复审本章重点:软件结构设计软件工程--概要设计全文共60页,当前为第1页。软件设计的目标和目的
软件需求:解决“做什么”软件设计:解决“怎么做”软件工程--概要设计全文共60页,当前为第2页。软件设计的任务问题结构(软件需求)软件结构从软件需求规格说明书出发,形成软件的具体设计方案。映射软件工程--概要设计全文共60页,当前为第3页。数据字典数据流图E-R图状态变迁图加工规约控制规约数据对描述象数据设计体系结构设计接口设计过程设计分析模型设计模型软件工程--概要设计全文共60页,当前为第4页。软件设计分为两个阶段:(1)概要设计(总体设计)确定软件的结构以及各组成成分(子系统或模块)之间的相互关系。(2)详细设计
确定模块内部的算法和数据结构,产生描述各模块程序过程的详细文档。软件工程--概要设计全文共60页,当前为第5页。4.1概要设计步骤
概要设计的基本任务1.
审查可行性研究报告和需求分析规格说明书。2.
确定模块结构、数据文件结构、系统接口设计和测试方案策略。3.
编写概要设计说明书、用户手册和测试计划。4.
复审。概要设计的基本步骤:软件结构设计数据结构设计及数据库设计系统接口设计测试方案设计复审软件工程--概要设计全文共60页,当前为第6页。4.1.1软件结构设计1.设计供选择的方案2.推荐最佳实现方案3.设计软件结构4.1.2数据结构设计及数据库设计数据结构设计数据库设计4.1.3系统接口设计系统接口包括内部接口、外部接口和用户接口。数据流图和控制情况是接口设计的基础。4.1.4设计测试方案在概要设计阶段,测试方案主要根据系统功能来设计,称为黑盒法测试。软件工程--概要设计全文共60页,当前为第7页。4.2软件结构设计的基本原理
4.2.1模块与模块化1、模块模块(module)是能够单独命名,能独立地完成一定功能,由边界元素限定的程序元素的序列。模块的基本属性:名称、接口、功能、逻辑、状态。2、信息隐蔽指在设计和确定模块时,使一个模块内包含的信息,对于不需要这些信息的其他模块来说,是不能访问的。3、模块化(Modularization)是把系统分割成能完成独立功能的模块,这些模块集成起来构成一个整体,可以完成指定功能,满足用户需求。软件工程--概要设计全文共60页,当前为第8页。模块化可产生的效果减少复杂性提高软件的可靠性提高可维护性有助于软件开发工程的组织管理有助于信息隐蔽软件工程--概要设计全文共60页,当前为第9页。4.2.1模块与模块化4、模块分割方法(1)抽象与详细化(2)根据功能来划分模块
①横向分割
②纵向分割③先确定中心控制模块,由控制模块指示从属模块,逐次进行分解。软件工程--概要设计全文共60页,当前为第10页。4.2.2模块的耦合和内聚
1.模块的耦合软件结构中模块之间互相依赖的程度用耦合来度量。耦合类型数据耦合控制耦合公共环境耦合内容耦合软件工程--概要设计全文共60页,当前为第11页。模块的耦合数据耦合模块间彼此交换的信息仅仅是数据,低耦合控制耦合模块间传递的信息不但有数据,还包括控制信息,这种块间联系方式称为控制耦合中等程度的耦合软件工程--概要设计全文共60页,当前为第12页。模块的耦合公共环境耦合两个或多个模块共享信息,这几个模块的耦合称为公共环境耦合缺点复杂程度随耦合的模块个数多少而不同不易于修改可靠性差如果两个模块共享的数据很多,通过参数传递不方便时可以利用公共环境耦合软件工程--概要设计全文共60页,当前为第13页。模块的耦合内容耦合耦合程度最高的是内容耦合某个模块直接访问另一模块的内部数据两个模块有相同的程序段某个模块直接进入另一个模块的内部软件工程--概要设计全文共60页,当前为第14页。模块的耦合设计原则在传递信息时,尽量使用数据耦合,少用控制耦合。不采用内容耦合,尽量控制公共环境耦合。模块之间相互调用时,传递的参数最好只有一个,最多不超过4个。在设计模块时,尽量做到把模块之间的连接减少到最少程度。软件工程--概要设计全文共60页,当前为第15页。2.模块的内聚
一个模块内各个元素彼此结合的紧密程度用内聚来度量。(1)偶然内聚(2)逻辑内聚(3)时间内聚
(4)通信内聚
(5)顺序内聚
(6)功能内聚内聚按紧密程度从低到高排列:偶然内聚、逻辑内聚、时间内聚、通信内聚、功能内聚。软件工程--概要设计全文共60页,当前为第16页。模块的内聚偶然内聚模块完成一组任务,这些任务之间关系松散,实际上没有什么联系,称为偶然内聚如:A、B、C、D中含有某些相同的语句块,将A、B、C、D中放到一个模块,共同使用相同的语句块。软件工程--概要设计全文共60页,当前为第17页。模块的内聚逻辑内聚几个逻辑上相关的功能放到同一个模块中,称为逻辑内聚如:对数据库中的数据可以按各种条件进行查询,不同条件的查询放到一个“查询”模块中。软件工程--概要设计全文共60页,当前为第18页。模块的内聚时间内聚将需要同时执行的功能放在同一模块中,称为时间内聚如:系统初始化财务软件中,年终结算软件工程--概要设计全文共60页,当前为第19页。模块的内聚通信内聚模块中的各成分引用共同的数据,称为通信内聚如:模块中几个部分使用同一数据文件模块中几个部分共同产生一个输出数据软件工程--概要设计全文共60页,当前为第20页。模块的内聚顺序内聚模块内某些成分的输出是另一成分的输入,两个功能必须一次执行,称为顺序内聚。软件工程--概要设计全文共60页,当前为第21页。模块的内聚功能内聚一个模块内所有元素都是完成某一功能所必需的处理,这些元素组成一个整体,从而完成一个特定的功能,称为功能内聚。软件工程--概要设计全文共60页,当前为第22页。4.2.3软件结构设计优化准则1.提高模块独立性提高内聚、降低耦合每一个模块的设计目标:应能简明地理解该模块功能、方便地掌握功能范围。2.模块接口的准则接口要简单、清晰、含义明确,便于理解,易于实现、测试和维护。软件工程--概要设计全文共60页,当前为第23页。4.2.3软件结构设计优化准则例:计算一元二次方程的根Root(TBL,X);
数组TBL为方程系数,数组X为求得的根缺点:不利于对模块的理解; 开发、维护时容易发生错误Root(A,B,C,root1,root2);A、B、C为方程系数,root1、root2为两个根软件工程--概要设计全文共60页,当前为第24页。4.2.3软件结构设计优化准则3.模块的作用范围应在控制范围内模块的作用范围:指受该模块内一个判定影响的所有模块的集合。模块的控制范围:指模块本身以及所有直接或间接从属于它的模块的集合。软件工程--概要设计全文共60页,当前为第25页。4.2.3软件结构设计优化准则4.模块的深度、宽度、扇出和扇入应适当。深度指软件结构中模块的层数宽带指软件结构内同一层次的模块数扇出指一个模块所调用的模块数扇入指有多少个上级模块直接调用它软件工程--概要设计全文共60页,当前为第26页。4.2.3软件结构设计优化准则5.模块的大小应适中模块过大:过于复杂,使设计、调试、维护困难模块过小:功能意义消失,系统接口复杂 过小不值得单独存在,可合并 到上级模块大小标准:考虑模块的功能意义和复杂程度 易于理解,便于控制软件工程--概要设计全文共60页,当前为第27页。4.3软件结构设计的图形工具描绘系统模块的层次结构层次图结构图4.3.1层次图适合于描绘软件的层次结构,特别适合于在自顶向下设计时使用。软件工程--概要设计全文共60页,当前为第28页。4.3软件结构设计的图形工具
4.3.1层次图(或HIPO图)软件工程--概要设计全文共60页,当前为第29页。4.3.2结构图
1.结构图的符号
(1)方框代表模块,框内注明模块的名字和主要功能。(2)方框之间的大箭头或直线表示模块的调用关系。(3)带注释的小箭头表示模块调用时传递的信息及其传递方向。尾部加空心圆的小箭头表示传递数据信息。尾部加实心圆的小箭头表示传递控制信息。(4)选择结构(5)循环结构,模块H循环调用模块A,B,C,见图4.5(b)。软件工程--概要设计全文共60页,当前为第30页。4.3.2结构图软件工程--概要设计全文共60页,当前为第31页。2.结构图的绘制
【例4-6】学生成绩管理系统的结构图软件工程--概要设计全文共60页,当前为第32页。4.4概要设计方法概要设计方法的目的使概要设计过程规范化,使开发有计划、按步骤地进行概要设计的方法结构化方法(面向数据流设计方法)面向数据结构设计方法面向对象设计方法软件工程--概要设计全文共60页,当前为第33页。4.4.1结构化方法结构化方法(面向数据流设计方法)面向数据流的设计方法是把数据流映射成软件结构,那么数据流的类型决定了映射的方法。变换流事务流软件工程--概要设计全文共60页,当前为第34页。4.4.1结构化方法变换流数据沿输入通路进入系统,同时由外部形式变换成内部形式,通过变换中心,经加工处理后再沿输出通路变换为外部形式离开系统事物流数据沿输入通路到达某一处理,该处理根据输入数据的类型在若干个处理序列中选择某一个来执行软件工程--概要设计全文共60页,当前为第35页。事务流图例软件工程--概要设计全文共60页,当前为第36页。4.4.1结构化方法根据数据流的不同,有两种设计方法变换分析事物分析变换分析是一系列设计步骤的总称,经过这些步骤把具有变换流特点的数据流图按预先确定的模式映射成软件结构。软件工程--概要设计全文共60页,当前为第37页。变换分析例:汽车数字仪表板的设计。假定汽车仪表板将完成下述功能。通过模-数转换,实现传感器和微处理机间的接口在发光二极管面板上显示数据指示每小时英里数(mile/h),行驶的里程,每加仑油行驶的英里数(mile/Gal)等指示加/减速超速警告软件工程--概要设计全文共60页,当前为第38页。软件工程--概要设计全文共60页,当前为第39页。变换分析设计的具体步骤1、复查并精华数据流图2、确定数据流图具有变换特性还是事物特性一般来说,一个系统中的所有信息流都可以认为是数据流。但是,当遇到有明显的事物特征的信息流时,建议采用事物分析方法进行设计。软件工程--概要设计全文共60页,当前为第40页。变换分析3、确定输入流和输出流的边界,从而孤立出变换中心。软件工程--概要设计全文共60页,当前为第41页。软件工程--概要设计全文共60页,当前为第42页。变换分析4、完成“第一级分解”位于软件结构最顶层的控制模块Cm协调下属从属的控制模块。输入信息处理控制模块,协调对所有输入数据的接收变换中心控制模块,管理对内部形式的数据的所有操作输出信息处理控制模块,协调输出信息的产生过程软件工程--概要设计全文共60页,当前为第43页。软件工程--概要设计全文共60页,当前为第44页。数字仪表板的第一级分解软件工程--概要设计全文共60页,当前为第45页。变换分析5、完成“第二级分解”把数据流图中的每个处理映射成软件结构中的一个适当模块方法从变换中心的边界开始沿着输入通路向外移动,把输入通路每个处理映射成直接或间接受输入控制下的一个低层模块从变换中心的边界开始沿着输出通路向外移动,把输出通路每个处理映射成直接或间接受输出控制下的一个低层模块把变化中心内的每个处理映射成控制中心的一个模块软件工程--概要设计全文共60页,当前为第46页。未经精化的输入结构软件工程--概要设计全文共60页,当前为第47页。未经精化的变换结构软件工程--概要设计全文共60页,当前为第48页。未经精化的输出结构软件工程--概要设计全文共60页,当前为第49页。6、对软件结构进行精化软件工程--概要设计全文共60页,当前为第50页。事物分析由事务流映射成的软件结构包括:一个接收分支一个发送分支软件工程--概要设计全文共60页,当前为第51页。软件工程--概要设计全文共60页,当前为第52页。4.4.2面向数据结构设计方法
面向数据结构的设计方法,是按输入、输出以及计算机内部存储信息的数据结构进行设计,把对数据结构的描述变换为对软件结构的描述。面向数据结构的设计方法有两种Jackson方法Warnier方法软件工程--概要设计全文共60页,当前为第53页。4.4.2面向数据结构设计方法
Jackson把数据结构(或程序结构)分为三种基本类型:(a)顺序(b)选择(c)循环软件工程--概要设计全文共60页,当前为第54页。Jacksan图特点:
l
能对结构进行自顶向下分解,可以清晰地表示层次结构
l
结构易读、形象、直观
l
既可表示数据结构也可表示程序结构
Jackson设计方法的四个步骤:1、分析并确定输入数据和输出数据的逻辑结构;2、找出输入数据结构和输出数据结构
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024至2030年端面铂电阻项目投资价值分析报告
- 2024年中国顶置型车辆空调市场调查研究报告
- 2024年中国金属包柱市场调查研究报告
- 学写读后感-课件
- 《建立业务关系》课件
- 《婚俗与传统文化》课件
- 《电子公文处理》课件
- 《守规矩成方圆》课件
- 2024 年度住宅维修保障协议条款版B版
- 2024年代工生产及合作共赢合同一
- 统编版(2024版)七年级上册历史期末复习课件
- 《文明交通携手共创》主题班会教案2篇
- 烟气净化环保设备发生故障应急预案
- 《个人所得税的计算》课件
- 高校教师职称答辩演讲稿
- 国开2024年秋《机械制图》形考作业1-4答案
- 劳动教育智慧树知到期末考试答案章节答案2024年温州医科大学
- 思想道德与法治智慧树知到期末考试答案章节答案2024年上海杉达学院
- 分子筛脱蜡工艺技术新进展(化工专业)
- 中国传统文化Chinese Traditional Culture-英文-SARE(课堂PPT)
- 全站仪闭合导线坐标计算表(样表)
评论
0/150
提交评论