- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章 总体设计 软件设计过程总框架 需求分析阶段获得的需求规格说明书包括对欲实现系统的信息、功能和行为方面的描述, 这是软件设计的基础。 软件开发阶段由设计、编码和测试三个基本活动组成,其中“设计活动”是获取高质量、低耗费、易维护软件最重要的一个环节。 对此采用任一种软件设计方法都将产生系统的总体结构设计(architectural design)、系统的数据设计(data design)和系统的过程设计(procedural design) 软件设计过程的重要性 设计阶段做的决策直接影响软件质量,没有良好的设计就没有稳定的系统,也不会有易维护的软件。 软件设计过程是对程序结构、数据结构和过程细节逐步求精、复审并编制文档的过程。 经过软件工程师们多年的努力形成了一些软件设计技术、质量评估标准和设计表示法并用于软件工程实践。 软件设计任务分解 不同的软件设计方法会产生不同的设计形式。从技术上将软件设计过程分为数据设计、系统结构设计、过程设计三个方面。 1、数据设计把信息描述转换为实现软件所要求的数据结构。 2、系统结构设计指在确定程序各主要部件之间的关系。 3、过程设计要完成每一部件的过程化描述。 根据设计结果编制代码。 统计表明:设计、编码和测试这三个活动一般占用整个软件开发费用(不包括维护阶段)的75%以上。 总体设计内容提纲 总体设计过程 总体设计的步骤 1 设想供选择的方案 2 选取合理方案 3 推荐最佳方案 4 功能分解 5 设计软件结构 6 设计数据库 7 制定测试计划 8 书写文档 9 复审 总体设计内容提纲 软件设计原理 耦合度也分为七级: (1)非直接耦合(Nodirect Coupling) 两模块中任一个都不依赖对方能独立工作, 这类耦合度最低。 软件设计原理 (2)数据耦合(Data Coupling) 如果两个模块间的通讯信息是若干参数,其中每一个参数都是一个数据元素,称这种耦合为数据耦合。 软件设计原理 (3)控制耦合(Control Coupling) 传递的信息含有控制信息。控制耦合通常会增加系统的复杂性,适当分解模块可望消除控制耦合。 软件设计原理 (4)特征耦合(Stamp Coupling)。 介于数据耦合与控制耦合之间 软件设计原理 (5)外部耦合(External Coupling) 当若干模块均与同一个外部环境关联,如,I/O处理使所有I/O模块与特定的设备、格式和通信协议相关联。 外部耦合尽管需要,但应限制在少数几个模块上。 (6)公共耦合(Common Coupling) 若干模块通过全局的数据环境相互作用, 全局数据环境中可能含有全局变量、公用区、内存公共复盖区、任何存储介质上的文件、物理设备等。 软件设计原理 (7)内容耦合(Content Coupling) 一个模块使用另 一模块内部的数据或控制信息;一个模块直接转移到另一模块内部等等。 例如: 模块A TRC:...... 模块B GOTO TRC 软件设计原理 总体设计内容提纲 总体设计内容提纲 总体设计内容提纲 描绘软件结构的图形工具 总体设计阶段常用的几种图形工具 层次图 HIPO图 结构图(SC图) 描绘软件结构的图形工具 层次图 层次图:每个方框代表一个模块,方框间的连线表示调用关系 例如 正文加工系统 正文加工系统 输入 输出 编辑 加标题 存储 检索 列表 编目录 格式化 合并 修改 添加 删除 插入 描绘软件结构的图形工具 HIPO图 HIPO图:HIPO图是美国IBM公司发明的“层次加输入/处理/输出”图的英文缩写 正文加工系统 输入1.0 输出2.0 编辑3.0 加标题4.0 存储5.0 检索6.0 列表3.6 编目录7.0 格式化8.0 合并3.5 修改3.4 添加3.1 删除3.2 插入3.3 … … … … … … … … … … … … … 描绘软件结构的图形工具 HIPO图 和H图中每个方框相对应,应该有一张IPO图描绘这个方框代表的模块的处理过程 系统: 模块: 编号: 作者: 日期: IPO图 被调用: 输 入: 调 用: 输 出: 处 理: 局部数据元素: 注 释: 描绘软件结构的图形工具 结构图-SC图 Yourdon提出的结构图是进行软件结构设计的一个有力工具 结构图反映程序中模块之间的层次调用关系和联系 它以特定的符号表示模块、模块间的调用关系和模块间信息的传递 常用符号:模块用矩形框表示,并用模块的名字标记它 描绘软件结构的图形工具 结构图-SC图 模块的调用关系和接口:模块之间用单向箭头联
文档评论(0)