认知测试架构

   起初,听到测试架构设计时,如同听到软件架构设计一样,觉得很神圣,也很神秘。神圣,是因为这两个职位分别是软件测试,以及软件开发在技术线路上发展的顶尖职位,一般都是专家级职位。神秘,是因为不清楚它们具体是做什么的,不说专业外的人,即便同是软件界的人士,也不一定都能说得清楚。下面就让我们一起来解读。

首先,弄明白什么是架构。架构(Architecture在汉语词典中有以下3种解释:

①建造;构筑。

②框架;支架。

③比喻事物的组织、结构、格局。

   在架构的解释中,首先提到的是建筑方面的架构,这也是最初的来源。后来人们对其他行业有着类似特性的工程设计也称为架构设计,如软件架构设计,测试架构设计等。架构设计凝集了设计师们的智慧,是一种高屋建瓴的高层设计。成功的设计,它是有灵魂的,是艺术与科学技术的完美结合体。根据设计的结果,架构设计又有层次之分,包括合格的架构设计、优秀的架构设计、卓越的架构设计,再有就是世上罕见的卓绝的架构设计。如图4-1所示,架构设计本身亦有它的梯度进阶发展规律。


4-1架构设计进阶图

   建筑行业中的合格与优秀的架构设计,在我们的生活周围并不罕见,然而堪称卓越,特别是卓绝的产品并不多见,比如深圳的地王与北京的鸟巢。地王,它是深圳的标志性建筑,高383.95米,集建筑与人文景观于一身,堪称是一个卓越的创新型建筑设计;而2008年北京奥运会的巨型体育场——“鸟巢”,则是一个卓绝的架构设计,它不仅以美妙绝伦的外观给世人留下了深刻的印象,更重要的是它所蕴涵的意义和折射出来的思想,深邃而又遥远。“巢”象征着孕育生命,“鸟巢”就像一个摇篮,寄托着人类对未来的希望。

   建筑行业的架构设计可以做到如此美妙绝伦,相比之于软件的架构设计、测试架构设计情况又如何呢?建筑行业已有几千年的历史,而软件工程体系则是在近几十年随着信息产业的高速发展而逐步形成的。对于测试架构在业界的提及,更是近几年随着软件测试这个新兴行业的出现而出现的事。任何一个事物的发展,都有它的变化发展规律。在国外,软件测试行业的发展已有二三十年的历史了,测试已得到行业的普遍认识,对测试架构工作的认知度也较高。而在国内,它确实太新了,据智联招聘(www.zhaopin.com2007年关于软测行业认知度的调查,广大职场人员对软测行业的认知度并不算高。选择非常了解的只有8.8%,不到一成,选择“知道一些”的不足四成,其余超过半数的职场人都选择不了解甚至没听说过,如图4-2所示。这些数据也说明国内的软测行业还处于发展初期,但是国内的软件产业已处于高速发展期,一些大公司及对质量要求较高的公司已把软件测试的重要性提到了企业发展的战略日程上,对招聘测试架构师这个高端职位的需求也越来越多。

4-2软测行业认知度调查

   尽管一些规模很小的公司没有专门的测试架构岗位,但并不说明没有这个角色。实际上,测试架构自从有了测试岗位以来,这个角色就已存在。只是这个角色可能落在某个测试经理、测试主管,或者某个测试工程师,甚至还可能落在某个开发负责人的头上。所谓“麻雀虽小,五脏俱全”,只是对这个“五脏”的体现与发展程度会千差万别。测试架构的设计同其他方向的架构设计一样,需要纵横全局思考,不仅考虑测试技术的应用、研究,还需考虑测试人员的管理、测试流程的设计等。

   测试相对于设计行业而言,如软件设计和建筑设计,是一种技术**行业,当然它也可以有自己的产品,即服务产品,如一批优秀的专业测试团队,一套合适的测试流程、方法等。如图4-3所示,以软件为圆心,所有测试服务产品,包括测试人力资源,都围绕圆心而转动,推动软件的不断优化,最终输出优质软件产品。测试架构要考虑的事不止包括所有为软件服务的产品,同时还要考虑这些产品与接口部门的关系,甚至整个项目链各环节与软测之间的关系,是一个测试总体设计的工作。

4-3测试架构设计范围示意图

本文节选自《软件测试之魂:核心测试设计精解(第2版)》一书

肖利琼

电子工业出版社出版