行业测试体系建设实施方案

2019-04-22   出处:大商所行业测试中心  作/译者:测试中心 林梓  

前言  

近年来,随着金融创新、科技创新的步伐不断加快,同时行业公司也紧跟信息技术科技变革这一历史机遇,对其信息系统质量控制意识、风险管理的要求都上升到了一个全新的高度。在这时代背景下,基金行业核心系统统一测试项目的推进,承载着促进行业整体测试水平提升的重任。本文基于统一测试项目组与多家基金公司的技术部门的深入交流与合作,全面调研了行业信息系统特性及测试工作现状,编写出适应基金行业特性的测试体系建设实施方案,以期指导行业公司测试工作组织实施,提高行业软件测试过程的可管理性和规范化。


背景  

市场业务更迭加速,外购核心交易系统每一次版本更迭所带来的生产风险不断加剧,业务系统的通用产品也渐渐满足不了行业公司爆发式增长的个性业务需求。越来越多的行业公司走上了自主/合作研发的道路,建立、扩大技术团队,以寻求核心技术的掌握、更加稳定可控的系统质量、更快速的响应、更贴近业务场景的系统实现。

并且,行业各公司Devops集成一体化的发展需要,对测试工作也提出了更加专业且技术化的要求。从前开发、运维兼职测试的状态已无法满足需求,建立专门专业的测试团队,匹配符合行业特性的测试体系规范指导测试工作,是势在必行的。

测试体系范围

著名的管理大师埃德加沙因曾提出,任何的组织活动都可以按“内容”、“过程”、“结构”三个维度进行解析。将这三个维度映射到测试团队的体系建设中,其实际要解决的核心问题:

  • “什么样的团队规模、人员能力,可以与相应的测试活动进行匹配?”;

  • “使用怎样的流程、方法,可以使团队有序组织工作?”;

  • “规则、管理制度需要包含哪些方面,以确保团队的运转高效可控?”;

围绕上述核心问题,可将测试体系范围概括为测试团队的组织建设、流程规范、管理制度三个方面(见图一)。测试体系建设方案将从这三方面入手,讨论各项工作的建设思路。



图一、测试体系范围 

一、测试组织建设

对行业测试现状进行调研的过程中,同行对测试组织建设的困惑主要集中在 “团队究竟需要什么样的规模,才能适应项目周期的波峰波谷,确保人员工作不会超负荷,保证工作质量?”、“依据什么指标向老板要人?在编制受限的情况下,自有人员与外包人员需要满足怎么样的比例,才能确保项目良性运转?”。

要解决这些困惑,首先,需要明确测试需求,即组建团队需要达成的测试目标;其次,按被测系统的测试需求特点划分小组,按人员能力方向完成团队的横向匹配;再次,定义角色职责,按人员能力等级完成团队的纵向匹配;最终,结合各方面要素及人员配比基线,完成组织建设规模的估计。


第一步:明确目标

明确团队规模,需在确认部门测试需求的基础上,设定期望达成的远期目标及阶段目标。测试团队目标设定,至少包含三方面要素:阶段内同时启动测试项目的大小、数量,及涉及的测试类型。阶段目标可以依据技术部门的当前年度计划任务进行预估,按时间线梳理可能并行的项目,并按项目类型及优先级对测试需求进行控制。

例如,设定阶段目标:同时满足4个核心系统、4个非核心系统的项目级测试任务,其中2个核心及2个非核心系统均为自研/合作开发项目,是持续性大型测试项目,其测试需求优先级为高,现阶段均以功能测试为主。由此,测试团队规模可以在保证高优先级的测试刚需的基础上,分析需要机动的测试人员数量。


第二步:划分小组

对被测系统进行的充分调研,分析其所属业务域及特点,为测试团队划分小组提供依据,从而实现人员能力与被测系统特点的横向匹配。


  1.按业务域对被测系统进行划分

经过调研了解,基金公司信息系统主要包括投研风控、产品管理、客户管理、销售服务及运营等类型,按系统相关业务域进行整合,可划分为三个细分方向(见图二):投研风控、运营及销售服务、支持保障。每个方向上包含的系统或业务相似、或业务逻辑关系密切。测试团队按方向进行小组划分,可确保团队成员术业有专攻的同时,增加了小组内人员复用性及人员使用的灵活性。



2.按“交易”“实时”属性对被测系统进行划分

在业务域划分的基础上,进一步对被测系统的特点进行分析。基于基金行业信息系统特性,按“交易”“实时”两个属性划分形成四个象限(见图三),基于该划分可初步定义系统的核心程度。如,“交易+实时”的系统核心程度最高,“非交易+非实时”的系统核心程度相对较低。



图三、按属性划分被测系统

  3.按属性及开发模式对被测系统进行二维划分

经过调研了解到,行业各公司的信息系统开发模式主要有自研、合作开发、外购三类。针对不同类型开发模式的系统,测试类型、测试级别、介入测试的阶段、测试投入的必要性及有效性都不尽相同,需要结合系统的核心程度,进一步讨论,定义系统类别(见图四)。图例仅作为思路建议提出,最终行业公司还需要按各公司实际情况做出调整。



图四、系统类别定义

结合系统的业务域、属性、特点的分析(见图五),可按分组方向,初步推导团队人员的能力方向。如:

投研风控方向,涉及核心交易业务且A类系统较多,对测试人员的业务知识积累、个人素质、测试能力均有较高要求;

运营及销售服务方向,涉及业务面较广,系统类型较多,对测试人员的全面性要求较高;

支持保障方向,C类系统较多,但因涉及数据支持类系统,对测试人员的专项技术能力要求相对较高。



图五、业务域划分与系统类别映射

第三步:角色与梯队

在明确测试团队横向上的人员能力方向的同时,还需从纵向上考虑对人员能力等级的需求。首先,需要从测试工作角度,明确人员的角色职责。第二,分析角色职责对应的工作类型及工作量,基于优秀实践经验的数据积累,按科学比例配置相应能力等级的团队成员,从而形成人才梯队(见图六)。

经过对角色职责的定义,可以明确,执行及脚本开发类工作对人员的经验、能力要求相对较低,且相应的项目工作量占比较高,因此这部分工作可以更多的交给外包人员完成。这样,通过细化管理/设计与执行工作的人员分工,由于编制受限引入外包人员所带来的测试质量风险,在一定程度上也可以得到控制。



图六、角色及人才梯队

第四步:人员配比

基于行业调研及测试中心优秀实践的数据积累,人员配比数据可以考虑按被测系统类型,在项目周期可控的前提下,预配置团队人数,如A类系统5人团队、B类系统4人团队、C类系统2.5人团队;并且,按系统类型进一步配比中高级人员与初级执行人员数量,如A类系统配比2:3、B类系统配比1:3、C类系统0.5:2。

以上,基于团队发展目标以及对被测系统属性的深入分析,即可推算出团队在不同能力方向、不同能力等级所需要的人员数量。设定适用于实际情况的人员配比数据,按需考虑将初级测试人员规划到外包指标,从而得到测试组织建设的预估数据,并最终作为组建团队或调整团队人员结构的基础依据。



欢迎给测试窝投稿或参与内容翻译工作,请邮件至editors@testwo.com。也欢迎大家通过新浪微博(@测试窝)或微信公众号(测试窝)关注我们,并与我们的编辑和其他窝友交流。
143°|1436 人阅读|0 条评论

登录 后发表评论