软件测试与软件开发过程

软件测试与软件开发过程

ID:37555026

大小:1.43 MB

页数:29页

时间:2019-05-12

软件测试与软件开发过程_第1页
软件测试与软件开发过程_第2页
软件测试与软件开发过程_第3页
软件测试与软件开发过程_第4页
软件测试与软件开发过程_第5页
资源描述:

《软件测试与软件开发过程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件测试与软件开发过程第8章8.1.1软件开发生命周期模型1.软件开发过程概述2.各种软件测试在软件开发生命周期中的位置内容提要定义:软件测试是软件工程(SoftwareEngineering)的一个重要分支,随着软件工程学科的发展,现在的软件测试与传统的软件测试相比有了很大的发展,它与软件开发过程和软件质量保证(QualityAssurance,QA)密切相关。软件开发过程是生产软件产品所用的工具、方法和实践过程的集合。在商业上软件开发通常是由一组协同工作的人来完成的,我们把这组人称为开发团队。开发团队里有各种角色,一个人可以充当不止一个角色,特别是在许多小公

2、司,有时一个人身上集中了几个角色。生命周期一个软件产品是由上述多种角色的团队协同工作而完成的。从策划、定义、开发、使用与维护直到最后废,要经过一个漫长的时期,通常把这个时期称为软件的生命周期(SoftwareLifeCycle),很多人也把它称为软件开发生命周期(SoftwareDevelopmentLifeCycle)。8.1软件开发过程概述各种角色及主要职责项目经理(程序经理):负责管理产品的质量,以及项目的进度和预算。商业分析师(软件分析师):分析客户的真正需求,用能被程序员或其他设计人员理解的术语来定义客户的需求。架构师(系统工程师):是产品小组的专家,

3、负责系统的总体内部设计(定义代码,数据结构,数据通信和开发策略等)。程序员(开发人员):设计、编写程序并编写内部设计规格说明。测试员(质量保证员):负责找出并报告软件产品的问题。产品经理(产品营销经理):负责符合公司长期战略和形象的产品的交付,并在产品发布后负责市场营销活动。对产品的盈利负责。技术支持代表:负责处理客户投诉和服务的小组的成员。在产品开发期间他们会尽力对产品的设计和手册的内容施加影响,以减少客户的投诉。技术文档编写员:制作用户手册和在线帮助。瀑布模型(WaterfallModel)几个特征:(1)阶段间的顺序性和依赖性(2)推迟实现的观点(3)质量

4、保证的观点缺点:(1)不适应需求经常发生变更的环境。(2)瀑布模型也经常不能接受项目开始阶段自然存在的不确定性。(3)线性顺序模型种特征导致工作中发生“阻塞”状态。8.1.1软件开发生命周期模型模型种类有瀑布模型、原型模型、快速应用开发模型、增量模型、螺旋模型、V模型、形式方法模型、RUP(RationalUnifiedProcess)模型、敏捷过程模型、构件组装模型、并发开发模型等。几种比较流行的模型1.传统的瀑布模型(WaterfallModel)2.原型模型(PrototypingModel)3.螺旋模型(SpiralModel)原型模型(Prototyp

5、ingModel)在项目开发的初始阶段,人们对软件的需求认识常常不够清晰,使得开发项目难以做到一次开发成功,出现返工再开发在所难免。因此,可以先做试验开发,其目标只是探索可行性,弄清软件需求;然后在此基础上获得较为满意的软件产品。通常把第一次得到的试验性产品称为“原型”。螺旋模型(SpiralModel)优点:1.瀑布模型与原型的迭代特征结合起来,加入两种模型均忽略了的风险分析。2.能够快速开发软件的增量版本。3.不要求每一个增量都是可以运行的程序。4.划分为若干个框架活动,活动也称为任务区域。包括制定计划→风险分析→实施工程→客户评估8.1.2软件测试与软件开

6、发过程的关系狭义定义测试:比如“程序设计”与“测试”之间的关系,传统上总以为程序设计在先,测试在后。这种专指测试程序代码,定义在编码之后的“测试”是一种狭义定义的测试。广义定义测试:这种测试活动可以在软件开发生命周期的任何阶段进行。但是,随着开发不断地进行,越到后续阶段,找出错误并改正它的代价会越大全新的软件开发模式:以测试驱动软件开发。软件测试贯穿了整个软件开发过程,软件开发生命周期的各个阶段中都少不了相应的测试,这种思想与软件质量保证的出发点是一致的。8.2各种软件测试在软件开发生命周期中的位置适用于所有的软件生命周期的三个阶段软件规划软件开发运行与维护在软

7、件规划阶段中,主要进行软件目标的策划、可行性研究和软件的需求分析工作。软件被定义之后,进入开发阶段,主要对软件的体系架构、数据结构和主要算法进行设计;将设计用程序语言编码实现,并进行测试。软件的运行与维护阶段在软件生命周期中占据的比例最大。针对不同的需求,维护工作一般可以分为纠错性维护、适应性维护、扩充性维护和预防性维护等不同类型。软件开发阶段还可细分为软件设计、编码和测试阶段8.2.1软件规划阶段的测试产品策划由项目经理确定进度计划、项目范围和开发产品所需的资源规划阶段需求分析由产品市场开发团队根据客户提出的要求来描述产品的需求需求规格说明文档评审这是否是真正

8、的需求:描述的产品是否就

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。