- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.4 软件设计 ?软件设计的基本目的 软件设计的基本目的就是回答“系统应该怎样做”的问题。软件设计的任务,就是把分析阶段得到的软件需求规格说明转换为计算机可以实现的软件系统的描述,形成用适当手段表示的软件设计文档。 3.4.1 软件设计概述 每个阶段完成的文档,都必须经过复审,确保设计的准确和优化。 模块的内聚性类型 低 偶然内聚 0分 逻辑内聚 1分 内 时间内聚 3分 聚 过程内聚 5分 性 通信内聚 7分 信息内聚 9分 高 功能内聚10分 模块间耦合的类型 低 非直接耦合 耦 数据耦合 合 特征耦合 性 控制耦合 外部耦合 公共耦合 高 内容耦合 (1)改进软件结构,提高模块独立性 通过模块的分解或合并,力求降低耦合、提高内聚,简化模块接口,以及少用全局性数据和控制信息等。 (2)模块规模应该适中 一个模块的规模不应过大。过大的模块会增加阅读理解的难度。过大的模块应该进行分解,但分解后不应降低模块的独立性。过小的模块开销大于有效操作,而且模块数量过多会导致系统的接口变得复杂,可以在保持模块独立性的原则下进行适当的合并。 (4)模块的作用域应该在控制域内 一个模块的控制域,是模块本身以及所有直接或间接从属于它(即所有可供它调用的下级模块)的模块的集合。一个模块的作用域,是受该模块内一个判定影响的所有模块的集合。只要模块中含有一些依赖于这个判定的操作,这个模块就在这个判定的作用范围之内。 本规则的含义是:一个模块的作用域应该在其控制域之内,即所有受判定影响的模块都应该从属于做出判定的那个模块,最好局限于做出判定的那个模块本身以及它的直属下级模块。而且,条件判定所在的模块应与受其影响的模块在层次上越靠近越好。 2. 变换分析和事务分析 ?变换分析 变换分析是一系列设计步骤的总称,经过这些步骤把变换型的数据流图按预先确定的模式映射成软件结构。 ?在数据流具有明显的事务特点时,采用事务分析方法进行设计 ? 具体的映射软件结构的步骤: (1)复查基本系统模型。 (2)复查并精化数据流图。 ?详细设计阶段是设计出程序的详细规格说明。?详细设计的目的 详细设计的目的,是为软件结构中的每一个模块确定采用的算法和块内数据结构,用选定的工具给出清晰的描述。?结构化程序设计方法 结构化程序设计方法是详细设计阶段的关键技术之一,它指导人们采用良好的思维方法设计出清晰易懂的处理过程。?详细设计主要有两个方面的作用: ? 一是易于编码的实现, ?二是易于软件的测试和维护。 2. 结构化程序设计 结构化程序设计技术是软件工程发展过程中的重要成就之一。 ?GOTO语句的讨论 ?结构化程序设计的思想 是要创立一种新的程序设计思想、方法和风格,这必须从改善模块的控制结构入手。这就是结构化程序设计的思想,也是详细设计阶段指导模块逻辑设计应遵循的原则。 只用“顺序”、“选择”和“循环”3种基本控制结构,程序应该只有一个入口和一个出口。 ?结构化程序设计的经典定义: “如果一个程序的代码仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序为结构化的。 ?结构化程序设计的定义 “结构化程序设计是尽可能少用GOTO语句的程序设计方法。最好仅在检测出错误时才使用GOTO语句,而且应该总是使用向前的GOTO语句。” ?结构化程序设计的基本内容(1)程序的控制结构一般采用顺序、选择、循环3种结构来构成,确保结构简单。(2)使用单入口单出口的控制结构。(3)程序设计中应尽量少用GOTO语句,以确保程序结构的独立性。(4)采用自顶向下逐步求精方法完成程序设计。 讲课内容、方法、步骤 ?需要指出的是,详细设计阶段不是具体地编写程序,而是设计出程序的详细规格说明,其作用类似于其他工程领域中的蓝图,以后程序员可以根据这个蓝图编写出实际的程序代码。 ?详细设计的目的 详细设计的目的,是为软件结构中的每一个模块确定采用的算法和块内数据结构,用选定的工具给出清晰的描述。 表达工具可以由开发单位或设计人员自由选择,但它必须具有描述过程细节的能力,进而可在
您可能关注的文档
- 软件工程基础与实例分析 教学课件 作者 王阿川 第09章 面向对象的分析设计与实现.ppt
- 软件工程基础与实例分析 教学课件 作者 王阿川 第10章 UML开发方法.ppt
- 软件工程基础与实例分析 教学课件 作者 王阿川 第11章 描绘UML未来.ppt
- 软件工程与实践电子教案刘竹林 软件工程与实践15.ppt
- 软件工程基础与实例分析 教学课件 作者 王阿川 第13章 传统软件工程实例—.ppt
- 软件工程技术 教学课件 作者 付雯.ppt
- 软件工程理论及应用 教学课件 作者 周屹 第1章.ppt
- 软件工程理论及应用 教学课件 作者 周屹 第2章.ppt
- 软件工程理论及应用 教学课件 作者 周屹 第3章.ppt
- 软件工程理论及应用 教学课件 作者 周屹 第4章.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)3-4.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)3-5.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)3-6.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)4-1.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)4-2.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)4-3.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)4-4.ppt
- 软件技术基础 教学课件 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)4-5&6.ppt
- 软件技术基础 教学课件 作者 周大为 封面及目录.ppt
- 软件技术基础 习题答案 作者 张选芳 傅茂洺 王欣 第二章 操作系统参考答案.doc
文档评论(0)