设计时、开发中间以及开发完成之后,都需要用户积极的参与到评审、测试工作当中来。这一点IBSS处理的相对比较好,前期设计当中多次到用户中进行实地调研,考察现有的业务管理应用状况。开发出来的原型系统让用户不断地、反复地进行业务使用测试,发现问题,解决问题。原型也就在一次又一次的迭代过程当中,逐渐的丰满起来;由当初给用户批得一无是处,进化到还可以使用,再发展到比较好用的阶段。
同时也要注意,任何一件事物,都不可能让所有的人都100%的满意的,我们要注意抓住重点。满足了大部分人80%的重大需求,一个软件也就算是可以成功了。对需求的管理,也是蛮令人头痛不已的事情。管得严,得罪不少用户;管得松,害死开发的弟兄们。这中间有一个平衡的度,很讲究处理的艺术与方法的。
IBSS软件系统的整体性能测试我没有参加,也不知道最终是用了什么指标参数来量化,不过。可能是对于软件的扩展性估计不足吧,在IBSS运行了不足一年时间后,广州局的性能比较的不足了。据说又开始评估了,不知道最终的结果会怎样。
压力测试倒是参与了几回,广州番禺、中山、湛江、肇庆,基本上是使用人海战术,组织一大堆人同时登录上系统进行相关的操作,验证系统的负荷情况。这种大规模人力的测试,其效果最终如何还有待于评价。主要是看测试时间点控制的好不好,测试用例准备的周不周全。尤其是后者没做好的话,如果用户只是登录上系统后挂机,什么也不做的话,对系统也不会增加多少压力的。据我所知,几次压力测试都没有详细的用例,很多时候用户登录了系统也不知道做些什么。基本上,几个点测试出来的结果都是几近于没有压力的,呵呵,挺好。
最终的用户测试是挺重要的,用新系统去模拟旧系统的业务功能实现,看能否满足日常使用的需求。这也是用户要把的最后一道关卡,作为验收系统的时候使用。这种测试,需要完全以业务人员的使用角度来组织,从使用的正确性、方便性、容错性来考量。用户需要的不是解释,而是真正可用的产品。
整个测试的过程,除了性能测试的时候邮科院使用了部分的自动化工具外,没有使用什么辅助性的工具来提高测试效率。虽然我们有Rational工具,但是实在是没有杰出的测试人才来组织;同时,更为重要的是,我们没有时间。一切都被逼着走,软件开发的进度管理,纯粹是演化成为了长官意志所要求的deadline往前的倒推;如果上一个deadline不行的话,就又有一个新的deadline搞出来了。这也是整个中国整个软件业的悲哀,暂且就放过不提了。(在这个过程当中,我们也练就了坚强的神经,清楚明白市场人员或者是管理人员承诺的事情是可以部分实现,或者是完全不实现的。呵呵,这个东西也就私下里一说罢了。)
最近有位朋友来找我,看是否有合适的软件测试人才可以推荐下。我想了想说,特定行业的测试人员只能由自己从项目当中培养出来的。来了空降兵的话,也只能在方法学和组织上面给项目带来一些帮助;实际的东西,还是必须要由熟悉本行业业务、熟悉计算机技术的人员去做的。包括最基本的测试用例设计、评审、执行、反馈,测试质量的把关、验收等等,非精深的业务人员没有可能做得到的。
所以,我们要注意培养自己需要的电信软件测试人才,累积自己的业务知识,提高自己的业务能力。