- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程课件第3章节软件设计
第 三 章; 软件设计是软件开发的关键步骤,直接影响软件质量。软件设计阶段要解决“如何做”的问题。
一、软件设计阶段的任务与目标
设计任务:将分析阶段获得的需求说明转换为计算机中可实现的系统。
设计阶段主要任务是:; 软件设计的目标就是构造一个高内聚低耦合的软件模型。; 软件设计的目标就是构造一个高内聚低耦合的软件模型。;3.1.1 软件体系结构设计;体系结构设计是软件设计的第一个阶段,该阶段侧重于系统宏观结构的设计,而不关心模块的内部算法。
分为集中式的仓库模型、分布式结构等 ;一、仓库模型(The repository model);仓库模型的主要优缺点:
优点:
1.共享大数据量的有效方法。
2.子系统不必关心其它的子系统如何使用它所产生的数据。
3.易于将新子系统集成,若新子系统也采用相同规范 。 ;二、 客户机/服务器模型(Client/Server Architectural Model) ;两层客户机/服务器模型
Two Tier Client/Server Architectural Model;电影图片库的系统的体系结构; 完整的应用包含三个相对独立的逻辑部分,而两层的C/S结构只有两个端应用。应用逻辑应该映射到哪一端上呢? 三种情况:; 2.三层/多层应用模型(Three/Multi Tier Model) ;客户端;三、分布式对象结构(Distributed Objects Architecture); “软件总线(Software Bus)”的中间件(Middleware)
即对象请求代理(Object Request Broker,简称ORB)
分布式对象结构具有很好的开放性和透明性,用户可以非常方便地在总线上添加、更新或删除组件对象。
流行的ORB技术标准有两种:
CORBA(Common Object Request Broker Architecture)
DCOM(Distributed Component Object Model);四、 抽象机模型;五、控制摸型
考虑子系统之间的控制流。控制方式分为:;软件设计分为总体设计和详细设计两个阶段。
其工作流程可用下图表示: ;1、软件结构的准则
2、模块化准则
3、软件独立性准则
; 软件结构表示软件的系统结构,它是软件模块间关系的表示,均表示为层次关系。;① 深度:表示软件结构中从顶层模块到最底层模块的层数;
② 宽度:表示控制的总分布;
③ 扇出数:指一个模块直接控制下属的模块个数;
④ 扇入数:指一个模块的直接上属模块个数。
一个好的软件结构的形态准则是:顶部宽度小,中部宽度最大,底部宽度次之;在结构顶部有较高的扇出数,
在底部有较高的扇入数。; 所谓模块化就是将系统划分成若干模块,每个模块完成一个子功能,把这些模块集中起来组成一个整体,以满足所要求的整个系统的功能。
我们利用模块化来降低软件复杂度。注意选择分解的最佳模块数。; 耦合性 用于描述模块之间联系的紧密程度。;3.3 结构化设计方法;2、SD 法的设计步骤;这类数据流图可看成是对输入数据进行转换而得到输出数据的处理。
DFD图可以明显分为 “输入—处理—输出 ”三部分。; 这类数据流图有一个数据处理中心,按加工的结果选择一个输出数据流继续执行的处理。
如下图所示:;实例:银行贷款文件管理 (MFUP);实例:银行贷款文件管理 (MFUP);实例:银行贷款文件管理 (MFUP);将DFD图转换为模块结构图; 按照“降低块间联系,提高块内联系”的设计总则进行修改,完善系统的模块图,写出模块的功能说明。;2)消除重复功能
若两模块含有重复的部分,应设法将重复的功能消去。;控制范围 — 结构方面的特点,包括模块及其所有下属模块。
作用范围 — 判断所涉及到的模块,是从功能特点考虑的。;4)模块的大小适当
模块大小指其篇幅,一般模块大小约50-100行为宜。
5)模块的扇入扇出数不宜太多
扇出数 一个模块调用其他模块的个数。
扇入数 一个模块被其他模块调用的个数。
除服务性模块外,模块的扇入扇出数不宜太多。否则块间联系增加。
; 一、任务
详细设计阶段的任务是开发一个可以直接转换为程序的软件表示,即对系统中每个模块的内部过程进行设计和描述。
二、常用的描述方法工具
1、流程图
2、结构化流程图(N-S图)
3、PAD图—问题分析图
4、PDL 语言;结构化
您可能关注的文档
最近下载
- 办公用品订购合同范本.docx VIP
- WORD版本刻度尺-A4纸打印可用.doc
- 90nm逻辑产品Peeling缺陷的解决方案.pdf
- 神经系统的分级调节.pptx VIP
- 中建施工总平面布置图设计(69页).pdf
- 2024年公共卫生与预防医学继续教育平台“大学习”活动线上培训栏目考试题库(1392题).docx
- 北师大版(2023)必修第一册 Unit 2 Sports and Fitness单元教学设计.pdf VIP
- 2016-2023年长沙民政职业技术学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析.docx
- 农业经济学-农业资金.ppt VIP
- 齐鲁医学神经系统疾病的辅助检查.ppt VIP
文档评论(0)