第3章 软 件 工 程.pptVIP

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 3 章 软 件 工 程 3.1 软件工程的基本概念  3.2 结构化分析方法  3.3 软件设计  3.4 软件测试 3.5 程序的调试  3.1 软件工程的基本概念 软件的定义:软件是与计算机操作相关的计算机程序、规程、规则,以及可能有的文件、文档及数据。 软件三要素:程序、数据和文档 软件的特点:抽象性、无制作生产、无损耗、系统依赖性、复杂性高、社会性。 软件分类:应用软件、系统软件、支撑软件。 软件危机:泛指在软件开发与维护过程中所遇到的一系列严重的问题。(成本、质量、生产率等问题)拿通讯软件来说,QQ的人工成本很高,服务质量在不断提高,QQ版本也在不断升级。 软件工程:应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。 软件工程三要素:方法、工具和过程。 方法:结构化?面向对象? 工具:.net?java?C#?Access? 过程:分模块?分阶段?团队?个人? 软件工程过程:把输入转化为输出的一组相关的资源和活动。 包括4个基本活动:软件规格说明(Plan)、软件开发(Do)、软件确认(Check)和软件演进(Action)。如:QQ在确认后一直在演进 软件生命周期包括以下阶段: 定义阶段: 开发阶段: 维护阶段: 软件工程的目标:低成本,高功能。及时交付。开发技术和工程管理 软件工程的原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。 软件开发工具: 软件开发环境 3.2 结构化分析方法 3.2.1 结构化分析方法概述 结构化分析的目的是弄清用户对软件的需求; 需求分析:需求获取,需求分析、需求规格说明书,需求评审。方法主要包括结构化分析方法和面向对象分析(静态和动态)。 结构化分析:需求分析阶段分析用户需求。 工具包括:数据流图、数据字典、判定树、判定表。 数据流图(DFD): 表3-1   数据流图的基本符号 数据流图的一般步骤(子图代表父图的细节,父图是子图的接口) 1、由外向里; 2、自顶向下; 3、逐层分解。 数据字典(DD)的作用是对DFD中出现的被命名的图形元素的确切说明。 表3-3   数据字典中的基本符号及其含义 成绩管理系统需求分析: 总成绩=笔试成绩+机试成绩 学号:“100800001”.. “100899999” 性别:(“男”,“女”) 班级:(“电会1042”,“会计1032”) 建立数据字典的原则 ① 所有定义必须严密精确,不能存在二义性。 ② 书写格式应简洁且严格。 ③ 应可方便地实现对所需条目的按名查阅。 ④ 应便于修改和更新。 判定树:从描述性材料中找出判定条件之间的从属关系、并列关系、选择关系来构造判定树。 示例:明天去青秀山玩,如果出太阳就要带水和干粮,温度高于30度要带伞,如果阴天要带水干粮,下雨就取消。 判定表:与判定树相似,由四部分组成。 3.2.4 软件需求规格说明书 软件需求规格说明书(SRS)是需求分析阶段的最后成果。 作用: 便于用户、开发人员理解和交流; 反映用户问题的结构; 作为确认测试和验收的依据。 内容:概述、数据描述、功能描述、性能描述、参考文献目录、附录。 特点:正确性、无歧义性、完整性、可验证性、一致性、可理解性、可修改性、可追踪性。 3.3 软 件 设 计 软件设计可以采用多种方法,如结构化设计方法、面向数据结构的设计方法、面向对象的设计方法等,结构化软件设计可以分为概要设计和详细设计两个阶段。 软件设计的一般过程: 是迭代的过程; 先高层的结构设计;后低层次的过程设计; 穿插进行数据设计和接口设计。 与一般建筑工程、艺术工程、生产工艺的异同。 软件设计的基本原理: 抽象; 模块化; 信息隐蔽; 模块独立:内聚性、耦合性。两者是此消彼长的关系。 高内聚;低耦合是优秀软件设计的特点 3.3.1 概要设计 1.总体设计阶段的主要任务及其内容 总体设计阶段的主要任务是把系统的功能需求分配给软件结构。 2.总体设计的表示形式及其内容(层次图、HIPO图、结构图) 3.总体设计的方法(面向需求分析的数据流) (1)变换型数据流图  (2)事物型数据流图 事务型数据流图 3.3.2 详细设计 详细设计以总体设计阶段的工作为基础,但又不同于总体设计阶段,主要表现为以下两个方面。 (1)在总体设计阶段,数据项和数据结构以比较抽象的方式描述。 (2)详细的设计模块包含实现对应的总体设计模块所需要的处理逻辑,主要有:详细的算法,数据表示和数据结构,实施的功能和使用的数据之间的关系。 2.盒图(N-S图) 3.PAD图 4.PAL 有结构化的关键词

文档评论(0)

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

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

1亿VIP精品文档

相关文档