软件工程课件 第4章 总体设计(XXXX0416).pptx
《软件工程课件 第4章 总体设计(XXXX0416).pptx》由会员分享,可在线阅读,更多相关《软件工程课件 第4章 总体设计(XXXX0416).pptx(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本LOADINGLOADINGDGIL第4章 总体设计案例分析一设计原理结构程序设计启发规则面向数据流的设计方法教学单位教师介绍南京信息工程大学NANJING UNIVERSITY OF INFORMATION SCIENCE &TECHNOLOGYInstructor: Bi Shuoben (毕硕本毕硕本)Email: Tel: 025-58699833(H)4.44.14.24.34.5第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.1 案例分析一 招聘考试成绩管理系统数据库结数
2、据库结构设计构设计系统结构系统结构设计设计设计测试设计测试方案方案第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.1 案例分析一 招聘考试成绩管理系统5.1.1 数据库结构设计数据库结构设计管理员管理员数据表数据表帐号密码考场号地点最多人数准考证号、姓名、性别、地区、出生年月、地址、专业、政治、英语、专业课、总分、名次、是否录用、录用单位。准考证号、姓名、性别、专业、录用单位、总分考场数考场数据表据表考生数考生数据表据表录用录用考生考生第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.1 案例分析一 招聘考试成绩管理系统5.1.
3、2 系统结构设计系统结构设计一一二二三三确定出确定出各个模各个模块及其块及其关系。关系。数据流数据流图需进图需进一步细一步细化。化。用层次用层次图或结图或结构图来构图来表示。表示。第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本招聘考试成绩管理系统HIPO图第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.1 案例分析一 招聘考试成绩管理系统5.1.3 设计测试方案设计测试方案录用模块录用模块主要测试考生准考证号的生成是否正确。进行各种测试条件的测试。分考生成绩输入、成绩查询、打印成绩单三个模块。主要测试考生成绩输入界面设计是否合理
4、、输入后成绩总分的计算及排序是否正确。Text考前处理模块考前处理模块成绩信息模块成绩信息模块测试输入界面是否正确、合理;录用结果的输出与输入是否一致。第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.2 案例分析二 从完整的工资管理系统数据流图出发事务数据和人事数据沿两条输入通路进入系统输出数据沿着一条输出通路离开系统,数据流图中没有明显的事务中心。第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.2 案例分析二 1、分析确定输入流和输出流的边界,以孤立出、分析确定输入流和输出流的边界,以孤立出变换中心。变换中心。第第4 4章章
5、 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.2 案例分析二 2、完成、完成“第一级分解第一级分解”。就是确定系统的总体。就是确定系统的总体控制结构。通常变换分析得到的系统高层结构是控制结构。通常变换分析得到的系统高层结构是一个一个“三叉三叉”的控制结构。的控制结构。工资管理系统的第一层分解工资管理系统的第一层分解第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.2 案例分析二 3、完成、完成“第二级分解第二级分解”。就是把数据流图中的。就是把数据流图中的每个处理映射成软件结构中的一个适当模块。每个处理映射成软件结构中的一个适当模块。从变换
6、中心的边界开始沿着输入通路向外移动,把输入通路中每个处理映射成软件结构中“输入信息处理控制模块”控制下的一个低层模块。然后沿输出通路向外移动,把输出通路中每个处理映射成直接或间接接受“输出信息处理控制模块”控制的一个低层模块。最后把变换中心内的每个处理映射成受“变换中心控制模块”控制的一个低层模块。变换分析的映射原则变换分析的映射原则第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.2 案例分析二 第二级分解第二级分解第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.2 案例分析二 4、对工资管理系统的初步设计结果进行优化。、对工
7、资管理系统的初步设计结果进行优化。优化后的工资管理系统软件结构分解优化后的工资管理系统软件结构分解第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理模块化模块化就是把程序划分成独立命名且可就是把程序划分成独立命名且可独立访独立访问问的模块,每个模块完成一个子功能,把这些模的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能块集成起来构成一个整体,可以完成指定的功能满足用户的需求。满足用户的需求。5.3.1 模块化模块化第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理模块化和软
8、件成本模块化和软件成本第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理抽象抽象就是抽出事物的就是抽出事物的本质特性本质特性而暂时不考虑它而暂时不考虑它们的细节。们的细节。软件工程过程的每一步都是对软件解法的软件工程过程的每一步都是对软件解法的抽象抽象层次的一次精化层次的一次精化。5.3.2 抽象抽象第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理达到了抽象的最低层可行性可行性研究研究需求分析需求分析总体设计总体设计到详细设到详细设计计写出源程序写出源程序软件解法是使用在问题环境内熟悉的方式描述的抽象的程
9、度也就随之减少了软件作为系统的一个完整部件第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理模块化的概念,与抽象是紧密相关的。模块化的概念,与抽象是紧密相关的。随着软件开发工程的进展,在软件结构随着软件开发工程的进展,在软件结构每一层每一层中的模块中的模块,表示了对软件,表示了对软件抽象层次的一次精化抽象层次的一次精化。软件结构顶层的模块,控制了系统的主要功能软件结构顶层的模块,控制了系统的主要功能并且影响全局;在软件结构底层的模块,完成对并且影响全局;在软件结构底层的模块,完成对数据的一个具体处理。数据的一个具体处理。第第4 4章章 总体设计总体设
10、计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理l把抽象是:把抽象是:“为了能集中精力解决主要问题而为了能集中精力解决主要问题而尽量推迟对问题细节的考虑。尽量推迟对问题细节的考虑。”抽象与求精是一对互补的概念抽象与求精是一对互补的概念。5.3.3 逐步求精逐步求精抽象使得设计者能够说明过程和数据,同时却忽略低层细节。求精则帮助设计者在设计过程中逐步揭示出低层细节。第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理5.3.4 信息隐藏和局部化信息隐藏和局部化局部化的概念和信息隐藏概念是密切相关的。所谓局部化是指把一些关系密切的软件元素物
11、理地放得彼此靠近。信息隐藏原理指出:应该这样设计和确定模块,使得一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说,是不能访问的。第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理模块独立的概念是模块独立的概念是模块化模块化、抽象抽象、信息隐藏信息隐藏和和局部化局部化概念的直接结果。概念的直接结果。开发具有独立功能而且和其他模块之间没有过开发具有独立功能而且和其他模块之间没有过多的相互作用的模块,就可以做到模块独立。多的相互作用的模块,就可以做到模块独立。l耦合衡量不同模块彼此间互相依赖(连接)的紧密程度;l内聚衡量一个模块内部各个元素彼
12、此结合的紧密程度。5.3.5 模块独立模块独立第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理内聚:内聚:模块各元素执行相同的任务模块各元素执行相同的任务内聚级别:内聚级别: 偶然内聚偶然内聚 逻辑内聚逻辑内聚 时间内聚时间内聚 过程内聚过程内聚 通信内聚通信内聚 顺序内聚顺序内聚 功能内聚功能内聚最差最差最好最好1.内聚第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理偶然偶然内聚:内聚:为方便把不相干的元素组合在一起为方便把不相干的元素组合在一起严重的缺点:严重的缺点:产品的可维护性退化;产品的可维护
13、性退化; 模块是不可复用的,增加软件成本。模块是不可复用的,增加软件成本。解决途径:解决途径:将模块分成更小的模块,将模块分成更小的模块, 每个小模块执行一个操作。每个小模块执行一个操作。低内聚第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理逻辑内聚:把逻辑上相似的功能结合到一个模块中。逻辑内聚:把逻辑上相似的功能结合到一个模块中。缺点:缺点:会增加开关量、不易修改、不易理解、会增加开关量、不易修改、不易理解、效率低等问题。效率低等问题。解决途径:解决途径:尽量避免这种逻辑性内聚。尽量避免这种逻辑性内聚。低内聚第第4 4章章 总体设计总体设计计算机
14、与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理 时间时间内聚:内聚:某段时间执行的若干功能任务某段时间执行的若干功能任务 放在同一模块中放在同一模块中 例如:例如:系统的初始化系统的初始化 问题问题: 不同的功能混在一个模块中,有时共用部分不同的功能混在一个模块中,有时共用部分编码,使局部功能的修改牵动全局。编码,使局部功能的修改牵动全局。低内聚第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理过程过程内聚:内聚:模块中的各功能元素相关,模块中的各功能元素相关, 并且按特定次序执行并且按特定次序执行例如:例如:读写并更新数据记录读写并更新数
15、据记录中内聚enter datacheck datamanipulate data第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理 通信通信内聚:模块中的成分需用同样数据内聚:模块中的成分需用同样数据 例如:例如:1. 某模块的各成分都利用一符号表进行操作;某模块的各成分都利用一符号表进行操作;2. 从同一磁带上读取不相干的数据。从同一磁带上读取不相干的数据。 问题:问题:可能破坏独立性。可能破坏独立性。中内聚第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理顺序顺序内聚:内聚:模块的输出是下一模块的输入
16、。模块的输出是下一模块的输入。 模块的各成分利用相同的输入或产模块的各成分利用相同的输入或产生相同的输出生相同的输出。功能功能内聚:为完成一个任务把所需的全部功能内聚:为完成一个任务把所需的全部功能 组合在一起。组合在一起。原则原则:力争高内聚和识别低内聚,可以使得设:力争高内聚和识别低内聚,可以使得设计的软件具有计的软件具有较高的功能独立性较高的功能独立性。高内聚第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理计算多个地点的计算多个地点的每日平均温度每日平均温度功能内聚功能内聚初始化,初始化,“求和求和”并打开文件并打开文件偶然内聚偶然内聚关闭文
17、件并打印关闭文件并打印平均温度平均温度偶然内聚偶然内聚创建新的创建新的温度记录温度记录功能内聚功能内聚存储温度记录存储温度记录功能内聚功能内聚读取地点、时间读取地点、时间和温度和温度功能内聚功能内聚编辑地点、时间编辑地点、时间和温度字段和温度字段逻辑内聚逻辑内聚存储特定地点的存储特定地点的温度温度功能内聚功能内聚内聚示例内聚示例第第4 4章章 总体设计总体设计计算机与软件学院计算机与软件学院 毕硕本毕硕本4.3 设计原理l耦合耦合是度量系统中模块之间的交互程度。是度量系统中模块之间的交互程度。l耦合从低到高依次为:耦合从低到高依次为:非直接耦合非直接耦合(最好),(最好),数据耦合,标记耦合,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程课件第4章总体设计(XXXX0416)
限制150内