3.0 软件工程概述.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文档。上传文档
查看更多
3.0 软件工程概述.ppt

* 软件分析实例: 某图书借阅系统由以下功能组成: (1)借书:读者填写借书单,查询库存,若有书,办理借阅手续,超过15本不予借阅。 (2)还书:输入书上条形码,办理还书手续,若借阅时间超过三个月则罚款。 请对以上问题,画出分层的数据流图,并建立相应的数据字典。 解:根据前面介绍的原则,分层画出DFD和DD。 先画出数据流图DFD如下: * * * 数据流名称:借书 别名:借书单 简述:读者借书时填写的单据 来源:读者 去向:审核借书 数据流量:250份/天 组成: 借书证编号+借阅日期+书名+借阅方式+密码+借阅人 再建立如下的数据字典(DD): * 数据流名称:还书 别名: 无 简述:读者还书时附带的数据 来源:读者 去向:审核还书 数据流量:250份/天 组成: 借书证编号+借阅日期+书名+借阅方式 ……(略) 数据字典(续) * 数据存储名称:借书文件 别名:无 简述:存放读者借书信息 组成:借书证编号+借阅日期+书名+借阅方式+密码+借阅人+操作员 组织方式:数据文件,以借书证编号为关键字进行索引 查询要求:要求能立即查询并修改 数据字典(续) 数据存储名称:库存记录 别名:无 简述:存放图书出/入库信息 组成:书名+出版社+作者+出版日期+入库时间+总数量+(内容简介)+当前库存量 组织方式:数据文件,以书名为关键字进行索引 查询要求:要求能立即查询并修改 * 加工名:审核借书证 编号:1.1 激发条件:接受到借书证 输入: 借书证 输出:认定合格的借书证 ?加工逻辑:根据借书文件及读者借书证 if 借书证编号在借书文件中存在 .AND. 未过期.AND. 密码正确 then 借书证有效 else 借书证无效 ……(略) 数据字典(续) * 3 软件设计 3.1 若干概念 1. 软件设计的目的 是将用户要求转换为一个具体的设计方案,即决定系统“怎样做” 根据需求说明建立软件系统的“结构”,包括数据结构和模块结构。 而前面的软件分析阶段是解决系统必须“做什么” 分为概要(总体)设计和详细设计两步。 * 2. 软件设计的任务 l??概要设计的任务——将复杂系统按功能分成模块、确定每个模块的功能和模块之间的调用关系、块间传递的信息、评价模块结构的质量。 概要设计文档主要有:概要设计说明书(或设计规格说明书)、数据库设计说明书 l??详细设计的任务——为每个模块进行详细的算法设计,用某种图形、表格、语言等工具将每个模块处理过程的详细算法描述出来;为模块内的数据结构进行设计;对数据库进行物理设计(确定数据库的物理结构);确定其他设计。 详细设计文档主要有:详细设计说明书 * ★总体设计和详细设计有什么不同? 总体设计——设计软件的结构、明确该结构由哪些模块组成; 详细设计——把功能描述转变为精确的、结构化的过程描述; 总体设计阶段——解决“怎么做”,产生概要设计说明书 详细设计阶段——解决“过程设计”,产生详细设计说明书。 ★为什么软件设计要分两步完成?   因为分析员应当首先寻找实现目标系统的各种不同方案,从中选出一个较好的方案向用户和使用部门负责人推荐。 如果对方接受了推荐的方案,再进一步为这个最佳方案设计软件结构。这样可以确保建立良好的结构,而良好的结构往往决定着软件系统的质量及其他一些特性。 * 3. 软件设计的基本理论 要求做到: ① 模块化 ②抽象化 ③ 信息隐藏 ④模块独立性 模块化含义——模块指可组合、分解和更换的单元,如函数、过程、子程序等等。 模块化指自顶向下逐层把软件系统分成若干模块的过程。 要求每个模块完成一定特定的子功能,且大小适中(一般在50-150条语句左右)。 其中最重要的是②和③ * 3. 软件设计的基本理论 要求做到: ① 模块化 ②抽象化 ③ 信息隐藏 ④模块独立性 其中最重要的是②和③ 抽象化含义——只抽出事物本质特征,而不考虑细节。 其实,软件工程中的每一步都可以看作是对软件解决方法的抽象层次的一次细化。 * 3. 软件设计的基本理论 要求做到: ① 模块化 ②抽象化 ③ 信息隐藏 ④模块独立性 其中最重要的是②和③ 信息隐藏含义——指设计模块时,一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不允许访问的,即对模块的过程细节和局部数据结构要有存取限制。 * 3. 软件设计的基本理论 要求做到: ① 模块化 ②抽象化 ③ 信息隐藏 ④模块独立性 其中最重要的是②和③ 模块独立性含义——只要求完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。 * ★模块化的优点是什么?从块内联系和块间联系的角度出发,应

文档评论(0)

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

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

1亿VIP精品文档

相关文档