- 1、本文档共52页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11章软件工程概述课件
* 软件开发过程 开发一个最终能满足需求且达到目标的软件产品所需要的步骤 研究与分析问题 解决问题的方法与设计目标系统 实施解决问题方案,即编程实现 测试 运行与维护 软件开发过程是为了获得软件产品或是为了完成软件过程项目需要完成的有关软件开发活动,每一项活动又可分解成一些软件任务。 * 软件开发方法 软件开发方法是对软件开发步骤和各阶段的文档格式提出规范化的要求和标准,使软件生产实现“工程化”。 软件开发方法的演变 本书讲述的线索:结构化设计方法 个性化软件开发方法 结构化软件开发方法 面向对象软件开发方法 基于构件软件开发方法 新软件开发方法 * 软件开发工具 软件工具为软件工程方法提供了自动的或半自动的软件支撑环境 软件工程环境 方法与工具相结合、加上配套的软、硬件支持 * 软件工程管理 按照进度和预算完成软件开发计划 成本估计、进度安排、人员组织、质量保证 * 软件的生命周期 在软件工程的概念中必须意识到:“软件”编程,它有自己的生命周期 (life cycle)。大型软件系统的开发与其它工程项目如建造桥梁、制造飞机、轮船等的开发是同理的。 软件生存周期--指从软件项目提出,包括研制、运行和维护直到退役的整个过程。 软件生存周期划分为3个时期:计划时期、开发时期和运行时期,每一时期又区分为若干更小的阶段。 瀑布模型 快速原型模型 * 生命周期的几个观点 将整个生命周期划分为较小的阶段是实现软件生产工程化的重要步骤; 每个阶段赋予明确而有限的任务,可以降低因为软件规模大大增长而增加了的软件复杂度; 阶段之间的顺序性和依赖性; 前一个阶段任务的完成是开始后一个阶段工作的前提和基础; 后一个阶段的任务是前一阶段结果的具体化。 每个阶段结束前必须进行技术审查和管理复查; * 生命周期的几个观点 每个阶段结束之后都要交付完整、清楚、准确的文档; 根据不同阶段的任务特点,应采用不同的技术和方法; 软件的生命周期有效地降低了软件开发的难度,保证了软件的质量,提高了可维护性。 * 瀑布式开发模型 瀑布模型:将软件的生命周期划分为定义、开发、维护三个时期,每个时期又区分为若干个阶段,各个阶段的工作顺序展开,犹如奔流不息的瀑布。 特点 单源头 缺乏灵活性,无法解决软件需求不明确或不准确的问题 * 瀑布式开发模型 * 瀑布式开发模型的阶段性任务 划分阶段的原则: 各个阶段的任务彼此之间尽可能相对独立 同一个阶段各项任务的性质尽可能相同 瀑布式模型生命周期的时期划分: 软件定义时期 软件开发时期 软件维护时期 * 软件定义时期 软件定义时期是软件的计划、分析阶段。完成下列问题: 该软件是什么 开发该软件的是否可行 该软件的功能/性能怎样 开发该软件的软/硬件资源是什么 完成计划的进度表是什么 软件定义时期的三个阶段: 问题定义:问题是什么 可行性研究:是否能解决/值得解决 * 软件开发时期 具体分析、设计和实现软件定义时期定义的软件 软件开发时期的四个阶段 需求分析:弄清楚系统做什么 弄清系统全部需求,给出需求规格说明书 软件设计 总体设计:建立软件总体结构,确定系统由那些模块组成 详细设计:确定软件的内部过程及算法,给出程序的详细规格说明 编码和单元测试:编写源程序,测试每个模块 软件测试:找出软件中的错误并改正 集成测试:按软件结构,进行组装测试 验收测试:按照软件需求规格说明,对目标系统的验收 * 软件维护时期 软件的维护包括纠正错误和扩充、完善功能。 软件维护的种类: 改正性维护:纠正错误 适应性维护:适应环境变化 完善性维护:扩充或完善功能 预防性维护:为以后的维护活动做准备 * 瀑布式开发模型的几个观点 1、阶段的顺序性和依赖性 只有前一阶段任务的完成之后,后一阶段的工作才能开始; 前一阶段的输出文档就是后一阶段的输入文档。 2、推迟实现的观点 3、质量保证的观点 每一阶段都要完成规定的文档; 每一阶段都要对自己完成的文档进行复审。 4、不同阶段中所需人员、资源不同 * 瀑布式开发模型的几个观点 测试策略与用例 软件计划 用户要求 系统测试 需求分析 需求规格说明书 确认测试 概要设计 概要设计说明书 集成测试 详细设计 详细详细说明书 编码 程序代码 单元测试 运行 维护文档与测试 测试 测试准备 图11.4 各阶段评审错误追溯 * 瀑布式开发模型特征 前一阶段的输出应该作为本阶段的输入(即:工作对象)。 利用该阶段的输入实施该项活动应完成的内容。 得到该阶段的工作成果,作为输出传给下一个阶段。 对本阶段实施的工作进行评审。确认之后才能进入下一个阶段。 * 原型模型(快速成型模型) 建造/修改 原型 用户测试 运行原型 听取用 户意见 * 原型模型 原型化模型: 在开发初期,要想得到一个完整准确的规格说明
文档评论(0)