朱少民-软件测试和质量专栏

实践和理论之完美结合: 质量文化、SQA、测试艺术、测试方法/技术、自动化测试、过程管理、CMM/CMMI、RUP/XP、Web2.0 (声明:在此发表的所有文章仅代表个人倾向)

用户操作
[即时聊天] [发私信] [加为好友]
朱少民
朱少民的公告
....产品的质量依赖于过程的质量,而过程的质量依赖于企业文化和管理
Locations of visitors to this page
最近评论
mayingbao:21世纪是中国的世纪,呵呵,环境污染很严重,我们以后要好好尝还了,过度开发资源!
Microsoft_China_Vip:


www.soAsp.net 编程学习网 技术+ 实例应用 讲解不错。 推荐大家!

有很多 技术资料也很好!



thesameway:
51旧书网 同城易书
www.51jiushu.com
www.51jiushu.net
二手书、旧书同城交易平台
分类齐全、快速发布、准确搜索
leiki_liu:21世纪是不是中国人的世纪?难道外国人都死了。闭眼睛想,都知道这是假的。
TONETER:朱老师好!从小就不看好中国应试教育!就知道产业化!

--何时是个头啊!
文章分类
收藏
相册
发现的诱惑
同学之情
测试
CSDN软件测试圈
卖烧烤的鱼博客
天行健,君子当自强不息
开源测试工具
探索中国软件测试之道
测试专业论坛
测试最佳实践
祖洪自动化维客系统
自动化测试资源(英文)
软件测试之家
软件开发和管理
CSDN-质量圈(RSS)
寸锐斋-
有效工作和管理
计算机电子书
同学友人
江湖一萍- 古徽州婺源人
聂造的客厅
文化名人的Blog
余秋雨
易中天
综合
家乡美-中国第一状元县
MIT Open Courses
家乡美-徽州文化-荫余堂
徽州文化-建筑、版画、雕刻...
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
订阅到BlogLines
订阅到Yahoo
订阅到GouGou
订阅到飞鸽
订阅到Rojo
订阅到newsgator
订阅到netvibes

原创 第1回 V模型,我的完整诠释收藏

新一篇:  惠普公司以45亿美元买下软件测试工具厂商——Mercury | 旧一篇: 软件测试工程师的“薪情”如何

 

事开头难,第一回起头自然比较难,我选择了“V模型,我的完整诠释”作为开始。因为,软件测试的思想方法是建立在软件开发过程模型(思想)基础之上,例如测试驱动开发来源于敏捷开发思想。在这里,也是假定V模型是大家更好理解软件测试思想和方法的基础。

现在谈V模型,是否落后于时代?不一定,实际许多软件过程思想是相通的,例如迭代模型、增量模型和螺旋模型都可以归为“分阶段开发”思想这一类。极限编程(XP)对于现在Internet服务模式的软件开发很有效,也只适合软件开发的小团队。V模型适合企业级的软件开发,它更清楚地揭示了软件开发过程的特性及其本质。

V模型是在快速应用开发 (RADRap Application Development)模型基础上演变而来,由于将整个开发过程构造成一个V字形而得名。V模型强调软件开发的协作和速度,将软件实现和验证有机地结合起来,在保证较高的软件质量情况下缩短开发周期。

下面通过对这种模型的水平和垂直的关联和比较分析,理解软件开发和测试的关系,理解V模型具有面向客户、效率高、质量预防意识等特点,能帮助我们建立一套更有效的、更具有可操作性的软件开发过程。

 

1. 从水平对应关系看

左边是设计和分析,是软件设计实现的过程,同时伴随着质量保证活动——审核的过程,也就是静态的测试过程;右边是对左边结果的验证,是动态测试的过程,即对设计和分析的结果进行测试,以确认是否满足用户的需求。如:

l         需求分析和功能设计对应验收测试,说明在做需求分析、产品功能设计的同时,测试人员就可以阅读、审查需求分析的结果,从而了解产品的设计特性、用户的真正需求,确定测试目标,可以准备用例(Use Case)并策划测试活动。

l         当系统设计人员在做系统设计时,测试人员可以了解系统是如何实现的,基于什么样的平台,这样可以设计系统的测试方案和测试计划,并事先准备系统的测试环境,包括硬件和第三方软件的采购。因为这些准备工作,实际上是要花去很多时间。

l         当设计人员在做在做详细设计时,测试人员可以参与设计,对设计进行评审,找出设计的缺陷,同时设计功能、新特性等各方面的测试用例,完善测试计划,并基于这些测试用例以开发测试脚本。

l         在编程的同时,进行单元测试,是一种很有效的办法,可以尽快找出程序中的错误,充分的单元测试可以大幅度提高程序质量、减少成本。

从中可以看出,V模型使我们能清楚地看到质量保证活动和项目同时展开, 项目一启动,软件测试的工作也就启动了,避免了瀑布模型所带来的误区——软件测试是在代码完成之后进行

 

2. 从垂直方向看

水平虚线上部表明,其需求分析、定义和验收测试等主要工作是面向用户,要和用户进行充分的沟通和交流,或者是和用户一起完成。水平虚线下部的大部分工作,相对来说,都是技术工作,在开发组织内部进行,主要是由工程师、技术人员完成。

从垂直方向看,越在下面,白盒测试方法使用越多,到了集成、系统测试,更多是将白盒测试方法和黑盒测试方法结合起来使用,形成灰盒测试方法。而在验收测试过程中,由于用户一般要参与,使用黑盒测试方法。

预知后事如何,请读下回分解:
第2回 究竟什么是软件测试?

系列讨论的目录,详见:
 软件测试演义——中高级系列(序)

发表于 @ 2006年07月23日 21:04:00|评论(loading...)|编辑

新一篇:  惠普公司以45亿美元买下软件测试工具厂商——Mercury | 旧一篇: 软件测试工程师的“薪情”如何

评论

#Robin 发表于2006-07-25 09:31:00  IP: 219.239.240.*
支持。在测试的管理方面现在可以说是仁者见仁,智者见智。 但在很多具体的问题上我们还是没有可以量化的标准和指导, 现在我做的项目,前期测试的不充分,到现在很多一个customer case会牵带出其他未经发现的很多问题,也许这些可以靠管理来补救,比如修或不修。但是在前期测试没有一个刚性的标准来衡量测试的质量,比如要求所有功能点全部覆盖,但是一个功能往往可以有许多种环境组合, 特别是软件产品变得很庞大的时候,测试的工作会成指数增长,在这方面我觉得才是真正测试管理起作用的时侯,同时也是软件测试作为一种专门的技术来体现的时候。

一点感受,借朱兄的宝地,希望能和大家多交流
#Kyle 发表于2006-07-29 16:24:00  IP: 124.177.165.*
给仁兄一个小小的建议,我感觉如果能在你的那幅v model图片上加上类似下面链接所给出图片的红色线条就更能清晰体现出v model的精神了:)
http://www.sefan.net/download/vmodel.jpg
#Kyle 发表于2006-07-29 16:21:00  IP: 124.177.165.*
给仁兄一个小小的建议,我感觉如果能在你的那幅v model图片上加上类似下面链接所给出图片的红色线条就更能清晰体现出v model的精神了:)
http://www.sefan.net/download/vmodel.jpg
#Kerry 发表于2006-07-29 23:11:00  IP: 61.132.198.*
Kyle, 谢谢您的建议!是的,这样更完善了。
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © 朱少民