软件工程概要-北京大学课件.ppt

上传人(卖家):晟晟文业 文档编号:4384871 上传时间:2022-12-04 格式:PPT 页数:50 大小:608KB
下载 相关 举报
软件工程概要-北京大学课件.ppt_第1页
第1页 / 共50页
软件工程概要-北京大学课件.ppt_第2页
第2页 / 共50页
软件工程概要-北京大学课件.ppt_第3页
第3页 / 共50页
软件工程概要-北京大学课件.ppt_第4页
第4页 / 共50页
软件工程概要-北京大学课件.ppt_第5页
第5页 / 共50页
点击查看更多>>
资源描述

1、 Copyright Peking University 2008.All rights reserved.第二章、第二章、软件生存周期过程软件生存周期过程概念:概念:当开发产品或构建系统时,遵循一系列可预测的步骤(路线图)是非常重要的,它有助于及时交付高质量的产品。软件开发中所遵循的路线图就是“软件过程”。人员人员:软件工程师及其管理人员根据需要调整开发过程,并遵循该过程。除此以外,软件的需求方也需要参与过程的定义、建立和测试。重要性重要性:软件过程提高了软件工程活动的稳定性、可控性和有组织性,如果没有过程约束,软件活动将失控并变得混乱。但是,现代软件工程方法必须是“灵活”的,也就是要求软件

2、工程活动、控制以及文档的编制适合于项目团队和要开发的产品。Copyright Peking University 2008.All rights reserved.2.1 2.1 相关基本相关基本概念概念软件生存周期软件生存周期(Software life cycleSoftware life cycle):软件产品或软件系统从产生、投入使用到被淘汰的全过程。通常将软件生存周期分为5个阶段,即需求、设计、实现(编码)、测试和维护。张效祥主编.计算机科学技术百科全书(第2版),北京:清华大学出版社,2005年11月.软件生存周期软件生存周期模型(有时称为软件开发模型):模型(有时称为软件开发模型

3、):它是整个软件生存周期内的系统开发、运行和维护所实施的全部过程、活动和任务的框架。郑人杰.软件工程.北京:清华大学出版社,1999.Copyright Peking University 2008.All rights reserved.3软件开发模型软件开发模型是软件开发全部过程、活动和任务的结构框架。张效祥主编.计算机科学技术百科全书(第2版),北京:清华大学出版社,2005年11月.王立福,麻志毅、张世琨.软件工程(第2版).北京大学出版社,2002年3月.软件开发模型表达的是软件生存周期内各种活动软件开发模型表达的是软件生存周期内各种活动如何组织,以及各个阶段应该如何衔接。如何组织,

4、以及各个阶段应该如何衔接。2.2 2.2 软件过程软件过程 为了细化软件生存周期这一概念,国际标准化组织于1995年发布了一个国际标准,即ISO/IEC软件生存周期过程 12207-1995。这一标准是软件工程标准中一个基础性文件,系统化地给出了软件开发所需要的任务系统化地给出了软件开发所需要的任务。软件过程:软件过程:软件生存周期中的一系列相关过程。又称为软件生存周期过程。过程是活动的集合,活动是任务的集合,任务是将输入加工成输出的操作。Copyright Peking University 2008.All rights reserved.v 随着ISO/IEC软件生存周期过程 12207

5、-1995的不断应用,以及软件复用技术的发展,并结合CMM(能力成熟度模型)和ISO/IEC/TR15504的推进,国际标准化组织于2002年给出了ISO/IEC 12207-1995的补篇1,主要:增加了一些新的软件过程,例如测量过程、资产管理过程、复用程序管理过程以及领域软件工程过程等;增加了一些有关增进该标准应用效果的内容,例如给出了每一过程的目标以及成功实现过程的基本判定准则等。v 于2004年给出了ISO/IEC 12207-1995的补篇2,主要对补篇1的内容做了一些修改。v 该标准按照不同人员的工作内容来分,将软件生存周期过程分为三类:基本过程、支持过程和组织过程。v 在该标准的

6、附录中,给出了剪裁过程以及相关的指导,以便当把软件过程运用到相关组织,运用到具体应用领域或具体项目时,可以根据特定情况,对各种过程和活动进行剪裁,形成特定项目所需要的软件生存周期过程。Copyright Peking University 2008.All rights reserved.软件过程:系统化地给出了软件开发所需要的任务;软件过程:系统化地给出了软件开发所需要的任务;软件开发模型:如何根据软件项目特点、环境因素等软件开发模型:如何根据软件项目特点、环境因素等,选择并组织这些开发任务。,选择并组织这些开发任务。软件过程和软件开发模型的区别?软件过程和软件开发模型的区别?Copyrig

7、ht Peking University 2008.All rights reserved.2.3 2.3 基本过程基本过程 基本过程是指那些与基本过程是指那些与软件生产软件生产直接相关的过程。直接相关的过程。包括包括5 5个过程个过程:获取过程、供应过程、开发过程、:获取过程、供应过程、开发过程、运行过程、维护过程运行过程、维护过程 2.3.1 2.3.1 获取过程获取过程 获取过程是获取过程是获取者获取者所从事的活动和任务。所从事的活动和任务。目的:获得满足客户所表达的那些要求的产品和目的:获得满足客户所表达的那些要求的产品和/或服或服务。该过程以定义客户要求开始,以接受客户所要求的产品务

8、。该过程以定义客户要求开始,以接受客户所要求的产品和和/或服务结束。或服务结束。该过程包括该过程包括5 5个基本活动:个基本活动:a)a)启动;启动;b)b)招标招标 标书标书 准备;准备;c)c)合同编制和更新;合同编制和更新;d)d)对供方的监督;对供方的监督;e)e)验收和完成。验收和完成。其中每一基本活动又包含一组特定的任务。其中每一基本活动又包含一组特定的任务。Copyright Peking University 2008.All rights reserved.其中的活动:其中的活动:启动启动主要任务主要任务:1 1)描述获取、开发或增强一个系统、软件产品或软件服务)描述获取、开

9、发或增强一个系统、软件产品或软件服务的概念或要求,以此开始这一活动。的概念或要求,以此开始这一活动。2 2)定义并分析该系统需求。系统需求一般应包括业务、组)定义并分析该系统需求。系统需求一般应包括业务、组织和用户的需求,还应包括与设计、测试有关的安全性、保密织和用户的需求,还应包括与设计、测试有关的安全性、保密性和其他关键性需求以及应遵循的标准和规程。性和其他关键性需求以及应遵循的标准和规程。3 3)需方可以自己定义并分析软件需求,也可委托供方进行)需方可以自己定义并分析软件需求,也可委托供方进行这项任务。这项任务。4 4)如果需方委托供方进行系统需求分析,那么需方就要审)如果需方委托供方进

10、行系统需求分析,那么需方就要审核并批准所分析的需求。核并批准所分析的需求。5 5)为了执行任务)为了执行任务2 2)和)和4 4),应使用开发过程(见),应使用开发过程(见2.3.32.3.3)。)。Copyright Peking University 2008.All rights reserved.6 6)依据对有关风险、费用和效益等方面的适当分析,选择)依据对有关风险、费用和效益等方面的适当分析,选择获取方案。方案包括:获取方案。方案包括:a)a)是否购买满足需求的现货软件产品;是否购买满足需求的现货软件产品;b)b)是否在自己组织内部进行软件产品的开发或获得软件服是否在自己组织内部进

11、行软件产品的开发或获得软件服务;务;c)c)是否通过合同来开发软件产品或获得软件服务;是否通过合同来开发软件产品或获得软件服务;d)d)是否采用上述是否采用上述a a、b b、c c的一个组合;的一个组合;e)e)是否增强现有的软件产品或服务。是否增强现有的软件产品或服务。7 7)当要去获得一个现成软件产品时,应确保满足以下条件:)当要去获得一个现成软件产品时,应确保满足以下条件:a)a)满足该软件产品的需求;满足该软件产品的需求;b)b)文档是可用的;文档是可用的;c)c)满足专利权、使用权、拥有权、担保权和许可权;满足专利权、使用权、拥有权、担保权和许可权;d)d)规划对该软件产品的未来支

12、持。规划对该软件产品的未来支持。Copyright Peking University 2008.All rights reserved.8 8)制定一个获取计划并执行之,该计划应包括下述内容:)制定一个获取计划并执行之,该计划应包括下述内容:a)a)对该系统的需求;对该系统的需求;b)b)为该系统所规划的使用;为该系统所规划的使用;c)c)准备使用的合同类型;准备使用的合同类型;d)d)有关组织的职责;有关组织的职责;e)e)准备使用的支持(例如验证、质量保证等);准备使用的支持(例如验证、质量保证等);f)f)风险以及管理这些风险的方法。风险以及管理这些风险的方法。9 9)定义验收策略和条

13、件(准则),并形成文档。)定义验收策略和条件(准则),并形成文档。在补篇在补篇1 1中,对获取过程增加了以下活动:中,对获取过程增加了以下活动:a)a)合同终结处理;合同终结处理;b)b)获取方针;获取方针;c)c)供应方关系管理;供应方关系管理;d)d)用户关系管理;用户关系管理;e)e)财财政管理。关于该过程的其它活动,可参见有关的标准。政管理。关于该过程的其它活动,可参见有关的标准。Copyright Peking University 2008.All rights reserved.成功实现获取过程的结果是:成功实现获取过程的结果是:1 1)定义了获取要求、目标、产品)定义了获取要求

14、、目标、产品/或服务验收准则以及获取或服务验收准则以及获取策略;策略;2 2)制定了能明确表达顾客和供方的期望、职责和义务的协)制定了能明确表达顾客和供方的期望、职责和义务的协定;定;3 3)获得了满足顾客要求的产品和)获得了满足顾客要求的产品和/或服务;或服务;4 4)按规定的约束,例如要满足的成本、进度和质量等,对)按规定的约束,例如要满足的成本、进度和质量等,对该获取过程进行了监督;该获取过程进行了监督;5 5)验收了供方的可交付产品。)验收了供方的可交付产品。6 6)对每一接受的交付项,均有一个由客户和供方达成的满)对每一接受的交付项,均有一个由客户和供方达成的满意性结论。意性结论。C

15、opyright Peking University 2008.All rights reserved.2.3.2 2.3.2 供应过程供应过程 供应过程是供应过程是供方供方为了向客户提供满足需求的软件产品或服为了向客户提供满足需求的软件产品或服务所从事的一系列活动和任务。务所从事的一系列活动和任务。该过程的启动,或通过为应答需方的招标书而开始编制投标书的决定,或通过与需方签订一项提供系统、软件产品或软件服务的合同。继之,确定为管理和保证项目所需的规程和资源,包括编制项目计划,执行计划,一直到将系统、软件产品或软件服务交付给需方为止。目的:是向客户提供一个满足已达成需求的产品或服务。目的:是向

16、客户提供一个满足已达成需求的产品或服务。该过程包括的基本活动为:该过程包括的基本活动为:a)a)启动;启动;b)b)准备投标;准备投标;c)c)签订合同;签订合同;d)d)规划;规划;e)e)执行和控制;执行和控制;f)f)复审和评估;复审和评估;g)g)交付和完成。交付和完成。Copyright Peking University 2008.All rights reserved.成功实现供应过程的结果是成功实现供应过程的结果是:a)a)对顾客请求产生了一个响应;对顾客请求产生了一个响应;b)b)在顾客与供方之间建立了一个关于开发、维护、运行、在顾客与供方之间建立了一个关于开发、维护、运行、

17、包装、交付和安装产品和包装、交付和安装产品和/或服务的协定;或服务的协定;c)c)供方开发了一个符合协定需求的产品和供方开发了一个符合协定需求的产品和/或服务;或服务;d)d)根据协定的需求,向顾客交付了该产品和根据协定的需求,向顾客交付了该产品和/或服务;或服务;e)e)根据协定的需求,安装了该产品。根据协定的需求,安装了该产品。Copyright Peking University 2008.All rights reserved.2.3.3 2.3.3 开发过程开发过程 开发过程是开发过程是软件开发者软件开发者所从事的一系列活动。所从事的一系列活动。目的:将一组需求转换为一个软件产品或系

18、统。目的:将一组需求转换为一个软件产品或系统。包括包括1313个活动:个活动:过程实现过程实现 系统需求分析系统需求分析 系统结构设计系统结构设计 软件需求分析软件需求分析 软件体系结构设计软件体系结构设计 软件详细设计软件详细设计 软件编码和测试软件编码和测试 软件集成软件集成 软件合格测试软件合格测试 系统集成系统集成 系统合格测试系统合格测试 软件安装软件安装 软件验收支持软件验收支持 Copyright Peking University 2008.All rights reserved.其中的活动:其中的活动:过程实现过程实现主要任务主要任务:(1 1)如果合同中没有规定采用什么软件

19、生存周期模如果合同中没有规定采用什么软件生存周期模型,那么开发者就应规定或选择适合于项目范围、规模和型,那么开发者就应规定或选择适合于项目范围、规模和复杂度的软件生存周期模型。并应选择该开发过程中的活复杂度的软件生存周期模型。并应选择该开发过程中的活动和任务,将其映射到生存周期模型。其中,依据采用的动和任务,将其映射到生存周期模型。其中,依据采用的软件生存周期模型,所选择的活动和任务可以是重叠的或软件生存周期模型,所选择的活动和任务可以是重叠的或相互作用的,并可以是重复的或循环的。相互作用的,并可以是重复的或循环的。(2 2)开发者应:)开发者应:a)a)按照文档编制过程,对任务(按照文档编制

20、过程,对任务(1 1)的输出建立相应)的输出建立相应的文档;的文档;b)b)将这一输出置于配置管理过程之下,并按照配置将这一输出置于配置管理过程之下,并按照配置管理的要求进行变更控制;管理的要求进行变更控制;c)c)按照问题解决过程,对在软件产品和任务中所发按照问题解决过程,对在软件产品和任务中所发现的问题之解决建立相应的文档;现的问题之解决建立相应的文档;d)d)实施合同中规定的支实施合同中规定的支持过程。持过程。Copyright Peking University 2008.All rights reserved.(3 3)开发者应适当地选择、剪裁、使用那些由组织为实开发者应适当地选择、

21、剪裁、使用那些由组织为实施开发过程和支持过程所建立的标准、方法、工具和计算机编施开发过程和支持过程所建立的标准、方法、工具和计算机编程语言(如果合同没有规定),并建立相应的文档。程语言(如果合同没有规定),并建立相应的文档。(4 4)开发者应为实施开发过程的活动制定一些计划。这开发者应为实施开发过程的活动制定一些计划。这些计划应包括与所有需求(包括安全保密性)的开发和限定条些计划应包括与所有需求(包括安全保密性)的开发和限定条件相关联的特定标准、方法、工具、措施和职责。如果必要的件相关联的特定标准、方法、工具、措施和职责。如果必要的话,这些计划可以分别制订之。这些计划均应形成文档并执行话,这些

22、计划可以分别制订之。这些计划均应形成文档并执行之。之。(5 5)在软件产品的开发或维护中,可以使用一些非交付在软件产品的开发或维护中,可以使用一些非交付的软件项。但应确保对那些已交付获取方的软件产品的操作和的软件项。但应确保对那些已交付获取方的软件产品的操作和维护,要独立于这些非交付项,否则它们就应被认为是可交付维护,要独立于这些非交付项,否则它们就应被认为是可交付的。的。Copyright Peking University 2008.All rights reserved.其中的活动:其中的活动:软件需求分析软件需求分析 目的目的:确定软件需求及质量特性需求。:确定软件需求及质量特性需求。

23、主要任务主要任务:编制软件需求规格说明书编制软件需求规格说明书 检查软件需求:检查软件需求:是否能够跟踪系统需求、结构;是否能够跟踪系统需求、结构;从外部上,是否与系统需求保持一致;从外部上,是否与系统需求保持一致;需求内部的一致性;需求内部的一致性;是否具有可测性;是否具有可测性;测试覆盖是否可达到要求;测试覆盖是否可达到要求;操作(设计和实现),维护的可行性等操作(设计和实现),维护的可行性等其内容包含其内容包含:功能和性能需求;功能和性能需求;外界与软件的接外界与软件的接口口合格需求;合格需求;安全需求;安全需求;保密需求;保密需求;人机界面需求;人机界面需求;数据定义和数据库需求;数据

24、定义和数据库需求;用户文档用户文档;用户操作和运行需求;用户操作和运行需求;用户维护需用户维护需求求 Copyright Peking University 2008.All rights reserved.成功实现开发过程的结果是成功实现开发过程的结果是:a)收集了软件开发需求并达成协定;收集了软件开发需求并达成协定;b)开发了软件产品或基于软件的系统;开发了软件产品或基于软件的系统;c)开发了证明最终产品是基于需求的中间工作产品;开发了证明最终产品是基于需求的中间工作产品;d)在开发过程的产品之间,建立了一致性;在开发过程的产品之间,建立了一致性;e)根据系统需求,优化了系统质量因素,例如

25、,速度、开发成根据系统需求,优化了系统质量因素,例如,速度、开发成本、易用性等;本、易用性等;f)提供了证明最终产品满足需求的证据(例如,测试证据);提供了证明最终产品满足需求的证据(例如,测试证据);g)根据协定的需求,安装了最终产品。根据协定的需求,安装了最终产品。Copyright Peking University 2008.All rights reserved.2.3.4 2.3.4 运行过程运行过程 运行过程是运行过程是系统操作者系统操作者所从事的一系列活动和任务。其目标所从事的一系列活动和任务。其目标是在软件产品预期的环境中运行该产品,并为该软件产品的维护是在软件产品预期的环境

26、中运行该产品,并为该软件产品的维护提供支持。提供支持。运行过程包括下述活动:运行过程包括下述活动:a)a)过程实现;过程实现;b)b)运行测试;运行测试;c)c)系统运行;系统运行;d)d)用户支持。用户支持。成功实施运行过程的结果是:成功实施运行过程的结果是:a)a)对该软件在其预定的环境中正常运行的条件,进行了标对该软件在其预定的环境中正常运行的条件,进行了标识和评估;识和评估;b)b)在其预定的环境中,运行了该软件;在其预定的环境中,运行了该软件;c)c)按照协定,为软件产品的顾客提供了帮助和咨询。按照协定,为软件产品的顾客提供了帮助和咨询。Copyright Peking Univer

27、sity 2008.All rights reserved.2.3.5 2.3.5 维护过程维护过程 维护过程是维护过程是维护者维护者所从事的一系列的活动和任务。所从事的一系列的活动和任务。目的:对交付后的系统或软件产品,或为了纠正其错误,改进目的:对交付后的系统或软件产品,或为了纠正其错误,改进其性能或其它属性,而对其进行修改;或因环境变更,而对其进行其性能或其它属性,而对其进行修改;或因环境变更,而对其进行调整。当软件产品由于某一问题或由于改进、更新的需要而对编码调整。当软件产品由于某一问题或由于改进、更新的需要而对编码和相关文档进行修改时,就要启动这一过程。该过程随着软件产品和相关文档进

28、行修改时,就要启动这一过程。该过程随着软件产品的退役而结束。的退役而结束。维护过程包括下述活动:维护过程包括下述活动:a)a)过程实现;过程实现;b)b)问题和修改分析;问题和修改分析;c)c)修改实现;修改实现;d)d)维护评审维护评审/验收;验收;e)e)迁移;迁移;f)f)软件退役。软件退役。Copyright Peking University 2008.All rights reserved.2.4 2.4 支持过程支持过程 支持过程是有关各方按他们的支持目标所从事的一系列相关支持过程是有关各方按他们的支持目标所从事的一系列相关活动集。支持过程有助于提高系统或软件产品的质量。活动集。

29、支持过程有助于提高系统或软件产品的质量。支持过程支持过程可由使用它们的组织来实施;或作为一种服务,由一个独立的组可由使用它们的组织来实施;或作为一种服务,由一个独立的组织来实施;也可作为项目的一项规定内容,由客户来实施。织来实施;也可作为项目的一项规定内容,由客户来实施。包括包括8 8个过程个过程:文档过程、配置管理过程、质量保证、文档过程、配置管理过程、质量保证、验证过程、确认过程、联合评审、审计过程、问题解决等。验证过程、确认过程、联合评审、审计过程、问题解决等。2 2.4.1.4.1 文档过程文档过程 文档过程是一个记录由某一过程或活动所产生信息的过程。文档过程是一个记录由某一过程或活动

30、所产生信息的过程。包括包括4 4个活动个活动:a)a)过程实现;过程实现;b)b)设计和开发;设计和开发;c)c)制作;制作;d)d)维护。维护。Copyright Peking University 2008.All rights reserved.成功实施文档过程的结果是:成功实施文档过程的结果是:a)a)制定了标识软件产品或服务的生存周期中所要产生的文制定了标识软件产品或服务的生存周期中所要产生的文档之策略;档之策略;b)b)标识了编制软件文档的标准;标识了编制软件文档的标准;c)c)标识了由过程或项目产生的文档;标识了由过程或项目产生的文档;d)d)对全部文档的内容和目的进行了规定、评

31、审和批准;对全部文档的内容和目的进行了规定、评审和批准;e)e)根据已标识的标准,制作了可用的文档;根据已标识的标准,制作了可用的文档;f)f)按定义的准则维护了文档。按定义的准则维护了文档。Copyright Peking University 2008.All rights reserved.2.4.2 2.4.2 配置管理过程配置管理过程 配置管理过程是应用管理上的和技术上的规程来支持配置管理过程是应用管理上的和技术上的规程来支持整个软件生存周期的过程,主要涉及:标识、定义系统中整个软件生存周期的过程,主要涉及:标识、定义系统中的软件项;控制软件项的修改和发布;记录和报告软件项的软件项;

32、控制软件项的修改和发布;记录和报告软件项的状态和修改请求;保证软件项的完备性、一致性和正确的状态和修改请求;保证软件项的完备性、一致性和正确性;以及控制软件项的贮存、处理和交付。可见该过程的性;以及控制软件项的贮存、处理和交付。可见该过程的目的是建立并维护一个过程或一个项目的所有工作产品的目的是建立并维护一个过程或一个项目的所有工作产品的完整性,使它们对相关团体而言均是可用的。完整性,使它们对相关团体而言均是可用的。注:当该过程用于其他软件产品或实体时,应对所提及的注:当该过程用于其他软件产品或实体时,应对所提及的“软件项软件项”要作相应的解释。要作相应的解释。该过程包括以下活动:该过程包括以

33、下活动:a)a)过程实现;过程实现;b)b)配置标识;配置标识;c)c)配置控制;配置控制;d)d)配置状态统计;配置状态统计;e)e)配置评价;配置评价;f)f)发布管理和交付。发布管理和交付。Copyright Peking University 2008.All rights reserved.成功实施该过程的结果是:成功实施该过程的结果是:a)a)制定了配置管理策略;制定了配置管理策略;b)b)标识并定义了由过程或项目所产生的全部工作产品标识并定义了由过程或项目所产生的全部工作产品/项,并形成基线;项,并形成基线;c)c)对工作产品对工作产品/项的修改和发布,进行了控制;项的修改和发布

34、,进行了控制;d)d)为对各相关方均是可用的,做了必要的修改和发布;为对各相关方均是可用的,做了必要的修改和发布;e)e)记录并报告了工作产品记录并报告了工作产品/项的状况和修改请求;项的状况和修改请求;f)f)确保了每一软件项的完备性和一致性;确保了每一软件项的完备性和一致性;g)g)对每一软件项的存储、处置和交付进行了控制。对每一软件项的存储、处置和交付进行了控制。Copyright Peking University 2008.All rights reserved.2.4.3 2.4.3 质量保证过程质量保证过程 质量保证过程是为项目生存周期内的软件过程和软件产质量保证过程是为项目生存

35、周期内的软件过程和软件产品提供适当保障的过程,目的是使它们符合所规定的需求,品提供适当保障的过程,目的是使它们符合所规定的需求,并遵循已建立计划。并遵循已建立计划。为了避免产生偏见,实施质量保证的人为了避免产生偏见,实施质量保证的人员不能是直接负责软件产品开发的人员,并应在组织上给予员不能是直接负责软件产品开发的人员,并应在组织上给予独立的权限。独立的权限。质量保证可以使用其他支持过程(如验证、确质量保证可以使用其他支持过程(如验证、确认、联合评审、审核和问题解决等过程)的结果。认、联合评审、审核和问题解决等过程)的结果。质量保证过程包括以下活动:质量保证过程包括以下活动:a)a)过程实现;过

36、程实现;b)b)产品保证;产品保证;c)c)过程保证;过程保证;d)d)质量体系保证。质量体系保证。Copyright Peking University 2008.All rights reserved.v引子引子 扁鹊论医扁鹊论医病情越早被发现,治疗就越容易,病人受到的损害也就小。魏文王问名医扁鹊说:“你们家兄弟三人,都精于医术,到底哪一位最好呢?”扁鹊答说:“长兄最好,中兄次之,我最差。”文王再问:“那么为什么你最出名呢?”扁鹊答说:“我长兄治病,是治病于病情发治病于病情发作之前作之前。由于一般人不知道他事先能铲除病因,所以他的名气无法传出去,只有我们家的人才知道。我中兄治病,是治病于病

37、情初治病于病情初起之时起之时。一般人以为他只能治轻微的小病,所以他的名气只及于本乡里。而我扁鹊治病,是治病于病情严重之时治病于病情严重之时。一般人都看到我在经脉上穿针管来放血、在皮肤上敷药等大手术,所以以为我的医术高明,名气因此响遍全国。”文王说:“你说得好极了。”Copyright Peking University 2008.All rights reserved.v从TQM(全面质量管理)开始,过程成为提高产品质量的另一重要手段 技术并非提高质量的唯一出路 TQM的思想好的过程导致好的产品缺陷越早发现、越早修改,就越经济制定并实施 好的过程,预防缺陷的产生,尽早的排除缺陷一九五零年美国统

38、计学家爱德华兹.戴1111111111明出席东京的一个晚宴,并发表了关于如何解决日本战后的经济问题的演讲。他指出,质量管理并不是从生产流程末端的产品瑕疵质量管理并不是从生产流程末端的产品瑕疵检查才开始的,而是贯穿于整个生产过程的各个环节,检查才开始的,而是贯穿于整个生产过程的各个环节,需要从供应商到最普通的车间工人等所有人的积极合需要从供应商到最普通的车间工人等所有人的积极合作。作。并且郑重承诺,如果日本公司采用他的建议,那么他们的产品在五年内达到世界级水准。Copyright Peking University 2008.All rights reserved.成功实施该过程的结果是:成功实

39、施该过程的结果是:a)a)制定了实施质量保证的策略;制定了实施质量保证的策略;b)b)产生并维护了质量保证的证据;产生并维护了质量保证的证据;c)c)标识并记录了问题和标识并记录了问题和/或与协定需求不符合的内容;或与协定需求不符合的内容;d)d)验证了产品、过程和活动与适用的标准、规程和需求的验证了产品、过程和活动与适用的标准、规程和需求的依从性。依从性。Copyright Peking University 2008.All rights reserved.2.4.4 2.4.4 验证过程验证过程 验证过程是一个确定某项活动的软件产品是否满足在以前的验证过程是一个确定某项活动的软件产品是否

40、满足在以前的活动中施加于它们的需求和条件的过程。活动中施加于它们的需求和条件的过程。该过程的目的是:证实一个过程和该过程的目的是:证实一个过程和/或项目的每一软件工作或项目的每一软件工作产品和产品和/或服务恰当地反映了已规定的需求。验证过程可应用于或服务恰当地反映了已规定的需求。验证过程可应用于供应、开发、运行或维护等过程。该过程可以由来自同一组织一供应、开发、运行或维护等过程。该过程可以由来自同一组织一个人或多个人来实施,也可以由来自另一组织的人员来实施。在个人或多个人来实施,也可以由来自另一组织的人员来实施。在由一个独立于供方、开发者、操作者或维护者的组织来执行该过由一个独立于供方、开发者

41、、操作者或维护者的组织来执行该过程的情况下,该验证过程就称为独立的验证过程。程的情况下,该验证过程就称为独立的验证过程。该过程包括以下活动:该过程包括以下活动:a)a)过程实现;过程实现;b)b)验证。验证。Copyright Peking University 2008.All rights reserved.其中活动:其中活动:验证验证 包括以下任务:包括以下任务:(1 1)合同验证)合同验证。其中应考虑下面列出的准则:。其中应考虑下面列出的准则:供方具有满足需求的能力;供方具有满足需求的能力;需求一致并覆盖了用户的需要;需求一致并覆盖了用户的需要;规定了可处理需求变更和处理问题蔓延的规程

42、;规定了可处理需求变更和处理问题蔓延的规程;规定了各方之间进行接口和合作的规程及其范围,包括所有规定了各方之间进行接口和合作的规程及其范围,包括所有权、许可权、版权和保密性;权、许可权、版权和保密性;规定了符合需求的验收准则和规程。规定了符合需求的验收准则和规程。注:该活动可用于合同评审。注:该活动可用于合同评审。(2 2)过程验证)过程验证。其中应考虑下面列出的准则:。其中应考虑下面列出的准则:项目规划的需求是足够的、及时的;项目规划的需求是足够的、及时的;为项目所选择的过程是可行的、已实现的,是按计划执行的,为项目所选择的过程是可行的、已实现的,是按计划执行的,并是符合合同的;并是符合合同

43、的;用于项目过程的标准、规程和环境是满意的;用于项目过程的标准、规程和环境是满意的;根据合同要求,为项目配备了经过培训的人员。根据合同要求,为项目配备了经过培训的人员。Copyright Peking University 2008.All rights reserved.(3 3)需求验证)需求验证。其中应考虑下面列出的准则:。其中应考虑下面列出的准则:系统需求是一致的、可行的且是可测试的;系统需求是一致的、可行的且是可测试的;根据设计准则,系统需求被适当地分配给了硬件项、软件项和手工根据设计准则,系统需求被适当地分配给了硬件项、软件项和手工操作;操作;软件需求是一致的、可行的且是可测试的,

44、并准确地体现了系统需软件需求是一致的、可行的且是可测试的,并准确地体现了系统需求;求;通过适当严格的方法表明,有关安全保密性和关键性的软件需求是通过适当严格的方法表明,有关安全保密性和关键性的软件需求是正确的。正确的。(4)(4)设计验证设计验证。其中应考虑下面列出的准则:。其中应考虑下面列出的准则:设计是正确的、与需求一致并可追踪到需求;设计是正确的、与需求一致并可追踪到需求;设计实现了适当的事件序列、输入、输出、接口、逻辑流,实现了设计实现了适当的事件序列、输入、输出、接口、逻辑流,实现了按时和规模预算的分配以及错误定义、问题隔离及恢复;按时和规模预算的分配以及错误定义、问题隔离及恢复;可

45、以依据需求导出所选择的设计;可以依据需求导出所选择的设计;通过适当严格的方法表明,设计正确地实现了安全保密性以及其他通过适当严格的方法表明,设计正确地实现了安全保密性以及其他关键性的需求。关键性的需求。Copyright Peking University 2008.All rights reserved.(5 5)编码验证)编码验证。其中应根据下面列出的准则:。其中应根据下面列出的准则:编码可追踪到设计和需求,是可测试的和正确的,并且符合编码可追踪到设计和需求,是可测试的和正确的,并且符合需求和编码标准;需求和编码标准;编码实现了适当的事件顺序、一致的接口、正确的数据和控编码实现了适当的事件

46、顺序、一致的接口、正确的数据和控制流、完备性、恰当的按间和规模预算的分配、错误定义、制流、完备性、恰当的按间和规模预算的分配、错误定义、问题隔离和恢复;问题隔离和恢复;可以由设计或需求导出所选择的编码;可以由设计或需求导出所选择的编码;通过适当严格的方法表明,编码正确地实现了安全保密和其通过适当严格的方法表明,编码正确地实现了安全保密和其他关键性的需求。他关键性的需求。(6 6)集成验证)集成验证。其中应考虑下面列出的准则:。其中应考虑下面列出的准则:每个软件项的软件构件和软件单元已被完整的且正确的集每个软件项的软件构件和软件单元已被完整的且正确的集成到该软件项中;成到该软件项中;系统的硬件项

47、、软件项和手工操作已被完整的且正确的集系统的硬件项、软件项和手工操作已被完整的且正确的集成到该系统中;成到该系统中;已根据集成计划执行了相应的集成任务。已根据集成计划执行了相应的集成任务。Copyright Peking University 2008.All rights reserved.(7 7)文档验证)文档验证。其中应考虑下面列出的准则:。其中应考虑下面列出的准则:a)a)文档是充分的、完备的和一致的;文档是充分的、完备的和一致的;b)b)文档制订是及时的;文档制订是及时的;c)c)文档的配置管理遵循了规定的规程。文档的配置管理遵循了规定的规程。成功实施验证过程的结果是成功实施验证过

48、程的结果是:v 制定并实现了验证策略;制定并实现了验证策略;v 标识了验证所有要求的软件工作产品的准则;标识了验证所有要求的软件工作产品的准则;v 执行了所要求的验证活动;执行了所要求的验证活动;v 标识并记录了缺陷;标识并记录了缺陷;v 给出了对顾客和其他相关方可用的验证活动的结果。给出了对顾客和其他相关方可用的验证活动的结果。Copyright Peking University 2008.All rights reserved.2.4.5 2.4.5 确认过程确认过程 确认过程是一个确定需求和最终的、已建成的系统或软件产确认过程是一个确定需求和最终的、已建成的系统或软件产品是否满足特定预

49、期用途的过程。品是否满足特定预期用途的过程。该过程的目的是:证实对软件工作产品特定预期使用的需求该过程的目的是:证实对软件工作产品特定预期使用的需求已予实现。已予实现。该过程可以作为开发过程中软件验收支持活动的一个该过程可以作为开发过程中软件验收支持活动的一个部分来执行。部分来执行。该过程可以由来自同一组织一个人或多个人来实施,该过程可以由来自同一组织一个人或多个人来实施,也可以由来自另一组织的人员来实施。也可以由来自另一组织的人员来实施。在由一个独立于供方、开在由一个独立于供方、开发者、操作者或维护者的组织来执行该过程的情况下,该确认过发者、操作者或维护者的组织来执行该过程的情况下,该确认过

50、程就称为独立的确认过程。程就称为独立的确认过程。该过程包括以下活动:该过程包括以下活动:a)a)过程实施;过程实施;b)b)确认。确认。Copyright Peking University 2008.All rights reserved.其中活动:其中活动:确认确认 包括以下任务:包括以下任务:(1 1)为了对测试结果进行分析,准备所选择的测试需求、)为了对测试结果进行分析,准备所选择的测试需求、测试用例和测试规格说明。测试用例和测试规格说明。(2 2)确保这些测试需求、测试用例和测试规格说明体现了)确保这些测试需求、测试用例和测试规格说明体现了特定预期用途的特殊需求。特定预期用途的特殊需

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(软件工程概要-北京大学课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|