软件工程导论课件第5章.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程导论课件第5章

第5章 总体设计; 软件设计基本概念 软件设计 为编程制定一个周密的计划,称为设计(Design) 内容 软件系统的结构,包括数据结构和程序结构 ;目的: 建立一个符合用户要求的软件系统 任务: 设计软件结构 输入和输出: 软件设计的输入是《用户需求报告》/《需求规格说明书》,输出是《概要设计说明书》和《详细设计说明书》。 ; 总体设计 将软件需求转化为数据结构和软件的系统结构 基本任务 (1)将软件系统划分成模块 (2)决定每个模块的功能 (3)决定模块的调用关系 (4)决定模块的界面,即模块间传递的数据 ; 主要工作 完成模块分解,确定系统的模块层次结构 文档 数据结构的描述部分 模块说明部分,包括模块结构以及每个模块的功能说明 ;总体设计的过程 总体设计通常由系统设计和结构设计两???阶段组成。系统设计阶段确定系统的具体实现方案,结构设计阶段确定软件的结构。 实施总体设计的过程如下: 1.设想供选择的方案 2.选取合理的方案 3.推荐最佳方案 4.功能分解 5.设计软件结构 6.数据库设计 7.制定测试计划 8.书写文档 9.审查和复审 ;1.设想供选择的方案 即由逻辑模型——〉物理模型。 需求分析阶段得出的数据流图是总体设计的根本出发点。画自动化边界,形成不同的实现系统方案。 2.选取合理的方案 通常,选取的这些方案中至少应包括低成本、中成本和高成本的三种方案类型。 对每个合理方案要提供以下几方面资料: (1)系统流程图; (2)组成系统的物理元素清单 ; (3)成本/效益分析; (4)实现这个系统的进度计划。 ;3.推荐最佳方案 分析员从合理方案中选择一个最佳方案向用户推荐,并为推荐的方案制定详细的实现计划。 对于分析员推荐的最佳方案,用户和有关专家应该认真审查。如果确认该方案确实符合用户的需要,并且在现有条件下完全能够实现,则应该提请使用部门负责人进一步审批。在使用部门负责人也接受了分析员所推荐的方案之后,方可进入总体设计过程的下一步工作,即结构设计阶段。 ;4.功能分解 对于大型系统的设计一般分为两步: (1)结构设计 —— 总体设计阶段的任务 确定由哪些模块组成以及模块之间的关系 (2)过程设计 —— 详细设计阶段的任务 确定每个模块的处理过程 主要是按照用户的要求把复杂的功能从实现的角度进行分解,以方便后面软件结构的确定 5.设计软件结构 软件结构可以用层次图或者结构图来描述; 6. 设计数据库 ;数据库设计的步骤: 逻辑设计(E-R图,关系,规范化理论) 物理设计(估算数据存储,设计索引,备份) 安全性设计 性能优化 ;7.制定测试计划 在软件开发的早期阶段提前考虑软件的测试计划是很有必要的。这样能促使软件设计人员在设计时注意到软件的测试问题,从而有利于提高软件的可测试性。 8.书写文档 (1)总体设计说明书(包括系统实现方案和软件模块结构); (2)测试计划(包括测试策略、测试方案、预测的测试结果、测试进度计划等); (3)用户手册(根据总体设计阶段的结果,编写的初步的用户操作手册); (4)详细的实现计划; (5)数据库设计结果。 ;9. 审查和复审 最后应该对总体设计的结果进行严格的技术审查,在技术审查通过之后再由使用部门的负责人从管理角度进行复审。; 设计原理 模块 模块是数据说明、可执行语句等程序对象的集合,它是单独命名的,可通过名字来进行访问。 例如:汇编语言中的子程序,Pascal语言中的过程,C语言中的函数等。 简要地说,用一个名字可以调用的一段程序语句 ;特点: 一个模块具有输入和输出、功能、内部数据和程序代码等四个特性。 输入输出和功能构成一个模块的外貌,即模块的外部特性。 内部数据和程序代码是模块的内部特性。 【注】先确定模块的外部特性,再确定模块的内部特性。; 模块化 模块化就是把程序划分成若干个模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能,满足用户的需求 特点:先分解,然后再集成 软件模块化设计的指导思想是分解、抽象、逐步求精、信息隐蔽和模块独立性; ; 每个

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档