1 / 29
文档名称:

8 软件测试与软件开发过程.ppt.ppt

格式:ppt   页数:29页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

8 软件测试与软件开发过程.ppt.ppt

上传人:xinsheng2008 2016/4/21 文件大小:0 KB

下载得到文件列表

8 软件测试与软件开发过程.ppt.ppt

相关文档

文档介绍

文档介绍:软件测试与软件开发过程 软件开发生命周期模型 2. 各种软件测试在软件开发生命周期中的位置内容提要定义: 软件测试是软件工程( Software Engineering )的一个重要分支,随着软件工程学科的发展,现在的软件测试与传统的软件测试相比有了很大的发展,它与软件开发过程和软件质量保证( Quality Assurance , QA )密切相关。软件开发过程是生产软件产品所用的工具、方法和实践过程的集合。在商业上软件开发通常是由一组协同工作的人来完成的,我们把这组人称为开发团队。开发团队里有各种角色,一个人可以充当不止一个角色,特别是在许多小公司,有时一个人身上集中了几个角色。生命周期一个软件产品是由上述多种角色的团队协同工作而完成的。从策划、定义、开发、使用与维护直到最后废,要经过一个漫长的时期,通常把这个时期称为软件的生命周期( Software Life Cycle ),很多人也把它称为软件开发生命周期( Software Development Life Cycle )。 软件开发过程概述各种角色及主要职责 l项目经理(程序经理): 负责管理产品的质量,以及项目的进度和预算。 l商业分析师(软件分析师): 分析客户的真正需求,用能被程序员或其他设计人员理解的术语来定义客户的需求。 l架构师(系统工程师): 是产品小组的专家,负责系统的总体内部设计(定义代码,数据结构,数据通信和开发策略等)。 l程序员(开发人员): 设计、编写程序并编写内部设计规格说明。 l测试员(质量保证员): 负责找出并报告软件产品的问题。 l产品经理(产品营销经理): 负责符合公司长期战略和形象的产品的交付, 并在产品发布后负责市场营销活动。对产品的盈利负责。 l技术支持代表: 负责处理客户投诉和服务的小组的成员。在产品开发期间他们会尽力对产品的设计和手册的内容施加影响,以减少客户的投诉。 l技术文档编写员: 制作用户手册和在线帮助。瀑布模型( Waterfall Model ) 几个特征: (1)阶段间的顺序性和依赖性(2)推迟实现的观点(3)质量保证的观点缺点: (1)不适应需求经常发生变更的环境。(2)瀑布模型也经常不能接受项目开始阶段自然存在的不确定性。(3)线性顺序模型种特征导致工作中发生“阻塞”状态。 软件开发生命周期模型模型种类有瀑布模型、原型模型、快速应用开发模型、增量模型、螺旋模型、 V 模型、形式方法模型、 RUP ( Rational Unified Process )模型、敏捷过程模型、构件组装模型、并发开发模型等。几种比较流行的模型 ( Waterfall Model ) ( Prototyping Model ) ( Spiral Model ) 原型模型( Prototyping Model ) 在项目开发的初始阶段,人们对软件的需求认识常常不够清晰,使得开发项目难以做到一次开发成功,出现返工再开发在所难免。因此,可以先做试验开发,其目标只是探索可行性,弄清软件需求;然后在此基础上获得较为满意的软件产品。通常把第一次得到的试验性产品称为“原型”。螺旋模型( Spiral Model ) 优点: 1. 瀑布模型与原型的迭代特征结合起来,加入两种模型均忽略了的风险分析。 2. 能够快速开发软件的增量版本。 3. 不要求每一个增量都是可以运行的程序。 ,活动也称为任务区域。包括制定计划→风险分析→实施工程→客户评估 软件测试与软件开发过程的关系狭义定义测试: 比如“程序设计”与“测试”之间的关系,传统上总以为程序设计在先,测试在后。这种专指测试程序代码,定义在编码之后的“测试”是一种狭义定义的测试。广义定义测试: 这种测试活动可以在软件开发生命周期的任何阶段进行。但是,随着开发不断地进行,越到后续阶段,找出错误并改正它的代价会越大全新的软件开发模式: 以测试驱动软件开发。软件测试贯穿了整个软件开发过程,软件开发生命周期的各个阶段中都少不了相应的测试,这种思想与软件质量保证的出发点是一致的。 各种软件测试在软件开发生命周期中的位置适用于所有的软件生命周期的三个阶段软件规划软件开发运行与维护在软件规划阶段中, 主要进行软件目标的策划、可行性研究和软件的需求分析工作。软件被定义之后, 进入开发阶段,主要对软件的体系架构、数据结构和主要算法进行设计; 将设计用程序语言编码实现,并进行测试。软件的运行与维护阶段在软件生命周期中占据的比例最大。针对不同的需求,维护工作一般可以分为纠错性维护、适应性维护、扩充性维护和预防性维护等不同类型。软件开发阶段