产品和过程 软件工程.ppt

  1. 1、本文档共134页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
产品和过程 软件工程

第一部分 产品和过程 第 2 章 过程 软件工程与软件过程的关系 软件过程是为开发高质量软件所需要完成的任务的框架. 软件工程是有创造力,有知识的人在定义好的,成熟的软件过程框架中进行的.该过程适合于他们建造的产品和他们的市场需要。 一个软件过程定义了软件开发中采用的方法,而软件工程还包含该过程中应用的技术----技术方法和自动工具。 2.1 软件工程:一种层次化技术 Software engineering layers 2.1.1 过程、方法和工具 软件工程是一种层次化的技术(前图)。 支持软件工程的根基就在于对质量的关注。 软件工程的基础是过程层。 软件工程过程是将技术层结合在一起的凝聚力,使得计算机软件能够合理和及时地开发。 过程定义了一组关键过程区域的框架。 2.1.2 软件的一般视图 工程是对技术(或社会)实体的分析、设计、建造、验证和管理。 抛开要工程化的实体,下列问题是必须首先回答的: 要解决的问题是什么? 要用于解决该问题的实体具有什么特点? 如何实现该实体(解决方案)? 如何建造该实体? 采用什么方法去发现该实体设计和建造过程中产生的错误? 当该实体的用户要求修改、适应和增强时,如何支持这些活动? 2.1.2 软件的一般视图 与软件工程相关的工作可分为三个一般的阶段: (1)定义阶段:集中于“做什么”; 三个主要任务:系统工程、项目计划、 需求分析 (2)开发阶段:集中于“如何做”; 三个特定任务:设计、编码、测试 (3)支持阶段:关注于“变化” 四类可能遇到的变化:纠错、适应、增强、预防 2.2 软件过程 一个软件过程可以表示为: 一个公共过程框架:通过定义若干框架活动来建立的,这些活动可应用于所有软件项目,不考虑其规模和复杂性。 若干任务集合:每个集合都由软件工程工作任务、项目里程碑、软件工程产品和质量保证点组成。 最后是庇护性活动:软件质量 保证、软件配置管理和测度。 软件过程可分为三大类 基本过程类: 是构成软件生存周期主要部分的那些过程, 包括获取, 供应, 开发, 操作, 维护等过程. 支持过程类: 可穿插到基本过程中提供支持的一系列过程, 包括文档开发, 配置管理, 质量保证, 验证, 确认, 联合评审, 审计, 问题解决等过程. 组织过程类: 一个组织用来建立, 实施一种基础结构, 并不断改进该基础结构的过程, 包括管理, 基础, 改进, 培训等过程. 软件工程过程 软件工程过程通常包含四种基本的过程活动 P(Plan)软件规格说明: 规定软件的功能及其运行的 限制; D(Do)软件开发: 产生满足规格说明的软件 C(Check)软件确认: 确认软件能够完成客户提出的要求 A(Action)软件演进: 为满足客户的变更要求,软件必须在使用的过程中演进 2.3 软件过程模型 所有软件开发都可被刻画为一个问题解决环(图2-3),其中包括四个不同的阶段:状态描述、问题定义、技术开发和解决集成。 软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的生存期。 软件生存期的六个步骤,即制定计划、需求分析、设计、程序编码、测试及运行维护。 软件生存周期模型 软件生存期模型(也称软件开发模型、软件过程模型、软件工程范型)是跨越整个生存期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框架。 简单地说,是软件产品或软件系统从设计、投入使用到被淘汰的全过程。 所谓模型就是一种开发策略,这种策略针对软件工程的各个阶段提供了一套范型,使工程的进展达到预期的目的。 编码修复模型 编码修复模型是所有模型中最古老也是最简单的模型。 编码修复模型的特点 它几乎不执行任何预先的计划,该模型的使用者很快就进入了所开发产品的编码阶段。 典型的情况是,完成大量的编码,然后测试产品并且纠正所发现的错误。 编码和测试工作一直持续到产品开发工作全部完成并将产品交付给客户。 缺点: 缺乏预先的计划和不正规的开发; 软件产品的质量低于用其他模型实现的产 品质量; 产品的设计没有认真计划及文档化,代码很难维护。 优点: 简单快捷,适合于很小且很简单的项目。 2.4 线性顺序模型 缺点: 1、实际的项目大部分情况难以按照该模型给出的顺序进行,而且这种模型的迭代是间接的,这很容易由微小的变化而造成大的混乱。 2、经常情况下客户难以表达真正的需求,而这种模型却要求如此,这种模型是不欢迎具有二义性问题存在的。 3、客户要等到开发周期的晚期才能看到程序运行的测试版本,而在这时发现

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档