本人做过几年软件测试和质量管理方面的工作,一直都想好好写点东西,来表达自己对软件测试职业的心得及看法。

上世纪末,国内软件企业大多数还处在规模小、缺乏规范、客户不成熟的状态,软件行业处于一个飞速发展的阶段,各种软件公司如雨后春笋般的出现,到2004年底,据有关部门统计国内大大小小软件公司共计达8000多家,而其中大部分都在50人规模以下的小企业。同质化竞争、乃至恶性竞争严重损害了行业的整体利益,再加上国际寡头的步步进逼,这些小企业的生存状态越来越难。一些具有深厚的客户关系的企业,生存状况还可以。然而,更多的小企业不得不面对这么一个残酷的现实,即随着客户越来越成熟,客户对产品的质量和售后服务的要求越加苛刻。另外,一些企业将市场瞄准到日本及欧美的海外市场,质量管理的需求也日益强烈。面对着激烈的市场竞争,企业要么创新以开拓新的市场,要么在现有资源内缩减成本。更多的国内企业选择了第二种手段。于是,软件测试人才和质量保证人才的需求开始多了起来。

软件测试工程师,这个工种是近五到十年逐渐开始出现的,现在逐渐成为热门职业。在这之前,除了少数行业,如航天有专职测试工程师以外,国内大多数软件企业并没有软件测试工程师这个岗位,软件系统在编码完成后由程序员交叉测试,或者干脆在客户验收阶段由客户试用,并派人长期驻守于客户方,以随时进行修改。可见,那时候软件测试未能得到软件开放商的重视,软件系统的所有问题都在项目的后期才发现。很多大型项目因此而宣告失败。

可喜的是现在很多企业的管理决策层已经意识到,软件测试是软件开发过程中不可缺少一道环节。据统计,软件测试占整个软件开发过程进度的50%-60%。软件测试质量的好坏,直接关系到软件产品的质量。软件测试是软件质量保证的重要手段。然而,具有质量意识并不能立刻给企业带来受益,软件测试的价值是很难评估的,它与软件开发??这种创造性的工作特性形成了鲜明的反差。我认为,软件测试价值评估需要建立在完善的软件开发过程之中,诸如CMM质量模型的意义便是在于量化管理的不断深入,通过对过程数据进行复杂的统计才能得出科学的结论。可是,CMM适和小企业吗?经验告诉我们CMM在大企业中推广较多,效果较好。因此,我们可以说,目前的行业状况是,大家已经认识到软件测试是重要的,但是并不知道软件测试有多么重要!软件测试工作到底该如何开展?每个从业人员都需要去摸索。然而在摸索之前,有几个观念需要正本清源,那便是对软件测试价值的认识。

我认为软件测试存在的根本价值有两点:

1)为间接客户-开发组织,提高质量、缩短交货时间,从而降低成本。

2)为直接客户-终用户,提供满足需求的软件系统。