2、 软件测试现状与提高
目前国内做软件测试的机构,还没有发现完全商业化操作的机构 ,只是有某些政府部门下属的机构做一些软件产品验收工作;要么就是开发商临时承接的一些软件测试项目。应该说实施软件测试时遇到的最大障碍是: 一是客户的意识,二是派出的项目实施人员的素质问题。
实施软件评测项目时,客户要有接受管理软件开发流程的意识。
客户交给开发商一个项目,通过测试等质量掌控流程,可以将产品的质量保证在一个相对较高的水准,减少后续工作的成本。但是现在很多开发商和客户很短视,觉得只要现在没有出问题,就可以了,不愿意在软件开发过程中,让测试介入的程度不深,这导致测试不完全,埋下了隐患。
无论是对软件开发商还是对客户来说,忽视软件测试,必将导致上的软件开发项目越多,将来会被这些有问题的项目给拖死的概率越高。
而有独立的软件测试第三方的出现,好处就是严格地掌控软件质量,减少维护成本。这不光对客户有好处,对开发商也有好处。所以一个项目,在我们实施很长一段时间,大约是半年至两年后,客户才意识到这样做是有用的。这很正常,因为软件开发一定会有大大小小的问题,包括我们评测也有一些问题查不出来。
特别需要说明的是对派出的项目实施人员的标准很高,要求既有综合素质,又要有专业素质,目前国内这种复合型的人才太少了,除引进外可以自己培养。
但人才培训需要加大力度,因人才培养是要在资金和力量上投入最大的一块。其中专业素质的培训最难,因为需要实践 ,这如同医生需要临床实践一样。项目实施管理者也一样,既要有理论基础,更要有经验积累,而一个优秀的项目实施管理者重要的素质是,能在按流程做的基础上,发挥个人的主观能动性,这个要求就太高了,但这又是项目实施成功的关键。
国内软件业和国外相比,最大的差异就在:质量和质量控制应该是最重要的一项内容。但是,无论在消费类软件还是大型软件的测试领域,与国外相比,国内软件产品的质量掌控体系和标准都是模糊的。国内软件提供商的质量承诺,既没有相应机构的监督,质量水平也没有第三方来认证,承诺显得极其苍白而无力。
可喜的是,软件测试机构在我国正逐渐成长起来,并且,它们在软件市场上的影响力正逐步得到提升。因缺乏游戏规则导致整个软件行业的市场行为不规范,并且严重制约软件行业健康成长的局面,一定会有所改善。
3、 软件测试如何做
从事后测试,向质量控制上转型。
起初往往是受客户委托,测试已经开发完毕的软件,更多的是事后验收工作;以后逐步介入软件开发前的需求评审,以及开发时的文档评审、代码走查等等;最终发展方向就是做软件监理,但是不能不承认,目前我们与国际上通行的软件监理还有一定的距离。这样实现了从事后测试,向质量控制上转型。
而美国实际是在软件规模的扩大和结构的不断复杂的情况下,开始建立软件测试制度和规矩的。美国在软件开发的起步阶段,也不会自己主动去做,是在现实的压力下,才去实施这些流程规范的。国内一定要有这种意识,意识到软件开发过程中一定要引进这些规章制度。另外,意识到了还不行,一定要实践。
那软件测试如何做?
为此,应构建完整的软件测试平台。
该完整的解决方案,包括以下几方面:
*软件设计中的代码安全性检测;
*软件实施过程中的软件配量管理;
*软件质量的度量和评估、提供各种质量模型,提供软件验收依据;
*自动化单元测试;
*增式和非增式测试;
*汇编语言的静态分析和动态测试;
*基于消息的分布式系统的自动测试(支持通信协议TCP/IP、X.25、GSM、Socket OSI…)
*系统级的验收测试;
*嵌入式系统实时测试,支持各种和操作环境(OSE/Nucleus+/VxWorks)。
4、 结束语
软件评测只是用技术手段来监控软件产品的质量,并不能从根本上提高我国软件产品的水平。目前,国内最缺的是软件项目实施的高级管理人才和软件结构分析的专业人才。这种高级人才的培育制度才是最重要的,缺乏高级人才培养的后果,会影响国内软件的进程。与培养软件蓝领相比,虽然高级人才培育的时间周期长,资金投入大,但是我们一定不能急功近利,要有这种忧患意识,去做这项有长远影响的工作。这种工作不是非得要谁去做,但是我们一定要有这种意识去投入去做。
日本在软件开发中分得很细,国内接日本软件外包的业务很多,但大部分只是负责一个模块。软件是个创造性的工作,变成流水线工业化生产也许有问题。在我们的软件开发中,往往技术是不成问题的,但是管理是个大问题。我们的软件企业中,各个员工意识不一样,在不同的阶段理解不一样,管理人员的素质也不一样。软件管理和测试是一个需要反复实践的过程,要通过反复的实践才能解决问题。这些问题根本不是培训大量的软件蓝领就能解决的。