欢迎来到天天文库
浏览记录
ID:50348600
大小:190.00 KB
页数:27页
时间:2020-03-08
《软件工程基础 教学课件 作者 陆惠恩 第4章.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第4章概要设计1《软件工程基础》陆惠恩主编本章介绍概要设计阶段的步骤、方法和图形工具。主要内容为:概要设计步骤软件结构设计基本原理软件结构设计的图形工具:HIPO图和结构图概要设计方法代码设计的原则、方法数据输入、输出设计数据库设计文档数据安全设计概要设计说明书与复审本章重点:模块和模块化软件结构设计2《软件工程基础》陆惠恩主编4.1概要设计步骤概要设计的基本任务1.审查可行性研究报告和需求分析规格说明书。2.确定模块结构、数据文件结构、系统接口设计和测试方案策略。3.编写概要设计说明书、用户手册和测试计划。4.复审。概要设计的基本步骤:进行软件结构设计、
2、数据文件设计、系统接口设计、测试方案设计、复审。3《软件工程基础》陆惠恩主编4.1.1软件结构设计1.设计供选择的方案2.推荐最佳实现方案3.设计软件结构4.1.2数据结构及数据库设计数据结构设计数据库设计4.1.3系统接口设计系统接口包括内部接口、外部接口和用户接口。数据流图和控制情况是接口设计的基础。4.1.4设计测试方案在概要设计阶段,测试方案主要根据系统功能来设计,称为黑盒法测试。4《软件工程基础》陆惠恩主编4.2软件设计的基本原理4.2.1模块与信息隐蔽(1)模块模块(module)是能够单独命名,能独立地完成一定功能,由边界元素限定的程序元素的
3、序列。模块的基本属性:名称、接口、功能、逻辑、状态。(2)信息隐蔽指在设计和确定模块时,使一个模块内包含的信息,对于不需要这些信息的其他模块来说,是不能访问的。5《软件工程基础》陆惠恩主编4.2.2模块化模块化(Modularization)是把系统分割成能完成独立功能的模块。1.模块化可产生的效果2.模块分割方法(1)抽象与详细化(2)根据功能来划分模块①横向分割②纵向分割③先确定中心控制模块,由控制模块指示从属模块,逐次进行分解。6《软件工程基础》陆惠恩主编4.2.3模块的耦合和内聚1.模块的耦合软件结构中模块之间互相依赖的程度用耦合来度量。数据耦合
4、控制耦合公共环境耦合内容耦合总之,应:在尽量使用数据耦合,少用控制耦合。用参数传递信息,不采用内容耦合,尽量控制公共环境耦合。7《软件工程基础》陆惠恩主编2.模块的内聚一个模块内各个元素彼此结合的紧密程度用内聚来度量。(1)偶然内聚(2)逻辑内聚(3)时间内聚(4)通信内聚(5)顺序内聚(6)功能内聚内聚按紧密程度从低到高排列:偶然内聚、逻辑内聚、时间内聚、通信内聚、功能内聚。8《软件工程基础》陆惠恩主编4.2.4软件结构设计优化准则1.提高模块独立性2.模块接口的准则模块的接口要简单、清晰,含义明确,便于理解,易于实现、测试与维护。3.模块的作用范围应在
5、控制范围之内4.模块的深度、宽度、扇出和扇入应适当5.模块的大小应适中9《软件工程基础》陆惠恩主编4.3软件结构设计的图形工具4.3.1层次图(或HIPO图)10《软件工程基础》陆惠恩主编4.3.2结构图1.结构图的符号(1)方框代表模块,框内注明模块的名字和主要功能。(2)方框之间的大箭头或直线表示模块的调用关系。(3)带注释的小箭头表示模块调用时传递的信息及其传递方向。尾部加空心圆的小箭头表示传递数据信息。尾部加实心圆的小箭头表示传递控制信息。(4)选择结构(5)循环结构,模块H循环调用模块A,B,C,见图4.5(b)。11《软件工程基础》陆惠恩主编2
6、.结构图的绘制【例4-6】学生成绩管理系统的结构图12《软件工程基础》陆惠恩主编4.4概要设计方法4.4.1结构化方法结构化方法又称面向数据流设计方法(StructuredDesign,SD)。设计步骤是先根据系统数据流图建立系统逻辑模型,再进行结构设计。1.建立系统逻辑模型(1)变换型数据流(2)事务型数据流【例4.7】学生成绩管理系统系统属于变换型数据流。【例4.8】工资管理系统属于事务型数据流。【例4.9】医疗费管理系统中事务型、变换型两种数据流同时存在2.完成软件结构设计13《软件工程基础》陆惠恩主编4.4.2面向数据结构设计方法Jackson把数
7、据结构(或程序结构)分为以下三种基本类型:(a)顺序(b)选择(c)循环14《软件工程基础》陆惠恩主编Jacksan图特点:l能对结构进行自顶向下分解,可以清晰地表示层次结构l结构易读、形象、直观l既可表示数据结构也可表示程序结构Jackson设计方法的四个步骤:1、分析并确定输入数据和输出数据的逻辑结构;2、找出输入数据结构和输出数据结构中有对应关系的数据单元;3、从描述数据结构的Jackson图导出描述程序结构的Jackson图;4、列出所有的操作和条件,并把它们分配到程序结构图中去。15《软件工程基础》陆惠恩主编【例4.11】用Jacksan方法对学
8、生成绩管理系统进行结构设计。例3.2学生成绩管理系统在学生入学时输
此文档下载收益归作者所有