金融业软件测试现状与发展趋势

2018-06-15   出处:大商所行业测试中心  作/译者: 大连飞创  


一、金融业软件测试现状

金融业作为国民经济发展的重中之重,直接关系到国家产业经济发展的稳定性。金融业软件测试作为整个金融产品生产周期中重要的一个环节,起着重要作用,尤其是对金融产品创新和风险控制等方面有着不可或缺的作用。近年来,随着金融科技(Fintech)的快速发展,”互联网+”行动和“中国制造2025“等战略规划的实施,金融业与互联网,信息化与工业化进一步融合,对整个金融业的发展,尤其是金融技术的发展提出新的、更高的要求;软件测试在其中起到重要作用,例如信息安全测试、金融创新产品测试等。面对快速发展的金融市场,很多知名金融企业都越来越重视软件测试工作,纷纷建立独立的测试中心或正在筹建测试中心,积极对标国际测试标准,不断优化测试工作。经过十余年的快速发展, 金融业软件测试已经取得长足进步,成果显著。

二、金融业软件测试主要特点

金融业软件系统具有集中度高、规模庞大、耦合性强、业务复杂、需求变化快等特点,这就要求金融业软件测试要比一般行业成熟度更高。金融业软件测试的主要特点如下:

1.重视产品质量,有较完善的测试体系和测试工具。

金融业普遍对质量要求较高,以证券行业来说,产品质量就非常重要,由于用户基数庞大,涉及到的账务金额很高,一旦发生问题就有可能带来巨大损失,所以很重视产品质量,也有相对较完善的测试体系和测试工具来管控质量。

2.测试组织规模相对较大,外包人员在总体人员中占比较高。

金融业测试组织规模一般都比较大,以银行业来说,大型商业银行的测试团队规模都在几百人左右,有些甚至超过千人,外包人员在其中所占比例较高。

3.测试团队既要懂复杂的金融业务,又要懂专业的测试技术。

测试团队要想做好测试工作,就要对被测产品的业务流程比较清楚,同时对测试技术也比较熟悉,这样才能通过较少的工作量产生较大的测试价值输出。

4.愿意探索新的测试方法,不断优化测试工作和测试流程。

金融业面临互联网的激烈竞争,很多优秀的金融企业都在不断创新,探索新测试方法,不断优化测试工作和测试流程,希望可以让产品更有竞争力,带给用户更好的体验,从而给业务带来更大的价值。

三、金融业软件测试主要成绩

随着金融业和互联网的快速发展,用户对于金融产品质量的要求越来越高,金融业软件测试作为质量保证的一个重要手段越来越受重视,在过去几年中,金融业软件测试取得很多成绩,主要体现在以下几个方面:

1.领先的金融企业已建立规范的测试体系。

测试规范体系对于一个测试组织来说非常重要,它是有效保证产品质量、提高生产效率、控制风险的重要手段。金融业对产品质量要求很高,因为一旦有生产事件发生就会造成巨大损失,有些损失甚至无法估量,尤其是在当前量化产品广泛应用的前提下,一旦发生问题,就有可能产生连锁反应,大幅扩大危害所带来的影响。近几年来,很多领先的金融企业都开始逐渐学习和借鉴国际先进的测试标准体系并结合自身特点建立一系列测试制度和规范体系,用以指导软件测试的工作,这些体系在金融软件测试规模快速扩张的过程中起到不可替代的作用。

2.很多金融企业都开始应用成熟的测试管理平台。

测试规范体系对组织很重要,但规范体系要想真正落地,很大程度需要依赖先进的、成熟的测试管理平台;测试规范体系的内容落实在测试项目计划、测试设计和执行、缺陷追踪等方面就需要有与之相适应的测试管理平台;同样地,先进的测试管理平台也需要标准的测试规范体系进行指导,否则很难起到有效进行测试管理的作用。

3.测试技术应用比较广泛并不断创新。

业界常用的测试技术在金融业软件测试广泛应用。自动化测试,性能测试,安全测试等在金融业软件测试中很常见,有些知名金融企业在自动生产案例方面进行了大量工作,并取得很好的效果。

4.测试人员业务能力较强,有一定的资产积累。

不少金融企业测试组织的测试人员最初来自业务部门,对金融业务很熟悉,最初工作主要实施用户验收测试,这些人不少都成为当前金融企业测试中心的核心管理人员或骨干员工,他们既懂金融业务,又对测试工作有比较深的理解,可以较好地代表用户进行验收测试;同时,由于他们的测试很多时候是基于用户场景的测试,一些领先的测试组织逐步积累业务测试资产,基于这些资产,建立覆盖全公司核心业务的业务全景图,这不仅对测试组织非常有帮助,对业务组织、开发组织等都有非常重要的价值,让业务组织、开发组织等更关注用户体验,更好地复用测试资产,也更容易基于产品风险来协调各组之间及组织内的工作。

5.不断探索新的测试方法。

金融业大型组织较多,随着人员数量的不断增加和测试产品复杂度越来越大,而用户的需求变化越来越快,要求越来越高,金融业测试不断探索新的测试方法。探索性测试、用户体验测试、众测等在金融业应用越来越多。比如众测,因为其具有更合理的成本控制、更全面的产品质量、更快捷的推向市场、更满意的用户体验等优点,很多金融企业都进行了有益的探索。

6.测试组织已经具备一定成熟度并不断提高。

金融业的企业一般都比较重视测试工作,因此能够不断优化测试工作,进而推动包括测试流程体系、测试工具、测试人员及测试培训等测试相关的成熟度不断提高,进而可以更好的控制风险,提升用户体验和企业形象,为公司带来更大的价值。

四、金融业软件测试面临的主要挑战

金融业快速发展的同时,也面临很多问题和挑战,尤其是随着互联网金融的快速发展,对金融业提出更高要求。金融业软件测试面临的主要问题和挑战体现在以下几个方面:

1.金融业软件测试如何有效平衡质量和效率。

产品质量对很多金融产品来说非常重要,但什么样的产品质量可接受?测试到什么程度可以终止?这些问题一直以来都不容易回答。测试人员无法全部模拟最终用户的所有操作,换句话说我们不能穷尽所有的测试,这就导致测试只能证明产品是有缺陷的,而无法发现所有缺陷。质量很重要,效率同样非常重要,随着金融业测试组织规模的不断扩大、测试范围和产品复杂性不断增加、测试成本逐年上升,如何优化平衡质量和效率关系是一个很大的挑战。

2.金融业软件测试如何更好进行项目管理。

金融业软件测试由于测试组织规模庞大、被测系统耦合性高等原因,项目管理难度远大于一般行业。如何进行更有效的项目管理,将风险控制在可接受的范围内,这是一个长期的挑战,也是金融业软件测试保持先进性必须要考虑的问题。

3.金融业如何更好管理测试人员。

金融业软件测试拥有大量的外包人员,这些外包人员一般来自于不同的外包服务公司,如何更有效的管理这些外包测试人员?如何协调测试组织自有员工和外包人员?如何让这些测试人员有更好的职业发展?这些对于金融业软件测试长期发展非常重要,也是当前金融业软件测试面临的一个巨大挑战。

4.金融业软件测试如何更好管控风险。

金融业对于风险十分重视,如何能更有效的管理风险?之前项目中出现的问题如何能在当前项目中有效避免?风险如何更好的复用?这些都是金融业软件测试急需解决的问题。

5.金融业软件测试如何更好地复用测试资产。

测试资产非常重要,是测试组织宝贵的财富。测试过程中产生的数据、交付物等测试资产如何有效复用,让测试效率更高、质量更好、成本更低、风险更少,是金融业软件测试需要积极探索的的方向。

五、金融业软件测试的建议

针对当前金融业软件测试现状和面临的主要挑战,建议金融企业可以从以下几个方面来优化测试工作:

1.测试规范体系的进一步优化。

目前测试规范体系框架和基本内容已经建立,但在如何更好地帮助项目组提高效率、降低成本等方面还有进一步的优化空间。同时,在不少组织中还存在测试规范体系落地不到位的情况,例如测试入口准则和测试出口准则未严格执行,测试案例没有按照测试规范进行设计和编写。

2.测试管理平台过多,需要进一步整合。

建立测试管理平台的主要目的是让不同角色可以更好地协同工作,提高工作效率,降低风险。测试组织从最初的小规模组织到大中型测试组织的成长过程中,测试管理平台需要逐步完善;团队较小时,需要的测试管理功能较少,平台较为简单,随着规模不断增加,管理平台功能需求越来越多,需要整合原来不同团队、不同角色使用的不同工具,平台需要进一步整合,打通各平台之间的联系,最终形成一体化管理的平台,更好的进行产品全生命周期管理。

3.进一步对标国际测试标准体系。

金融业测试组织做到既要低头拉车更要抬头看路,尤其是在互联网快速发展的今天更要时刻关注国际测试标准体系。对标国际测试标准体系既是金融业软件测试和国际先进水平接轨的要求,也是金融业应对快速变化市场的要求。业界广泛参考的测试体系主要有基于CMMI的测试体系,基于ISO的测试体系;也有专注软件测试、基于TMMi的测试标准体系。TMMi作为一个在国际上最具权威性的测试组织能力成熟度评价模型,它的来源非常广泛:TMM、CMM、CMMI、Gelperin&Hetzel过程演进模型、IEEE829、ISO9126、ISTQB等都是其来源。来源广泛就有效保证TMMi和各种模型的融合和协作,比如TMMi就是CMMI的一个互补模型,可以和CMMI配合使用,有效解决CMMI对于测试关注度不够的问题;已经实施CMMI的金融业测试组织再实施TMMi将会事半功倍,不仅对测试工作有非常大的帮助,也会进一步促进开发工作的优化及开发、测试、运维一体化的协同;没有实施CMMI的金融业测试组织也可以实施TMMi,因为TMMi是可以单独实施的测试过程改进模型,同时它也满足CMMI模型对测试的要求,也可以一定程度上促进开发工作的优化。

4.进一步扩展测试技术应用并与业务高效融合。

测试技术和业务的高效融合将更快地提高测试效率和效果。金融企业可以基于自己的金融业务建立覆盖全业务体系的业务全景图,梳理整个业务的框架和流程图,在复用业务全景图的基础上进行测试分析和设计,更准确、更快速地实施测试工作。这方面已经有不少金融企业进行大量尝试,包括梳理建立业务全景图、复用产品风险、自动生成测试案例、自动执行案例、缺陷跟踪等工作。

5.实施精细化和专业化管理测试需要进行精细化和专业化的管理,进一步提高效率。

随着测试团队规模不断扩大、金融企业测试成本逐年上升,这就需要对团队实施精细化和专业化管理,进一步提高效率。这方面领先的金融企业都有不少成功经验可以借鉴。

6.加强用户体验测试。

随着手机等移动设备功能不断增强,用户对于IT产品要求越来越高,如何更好地提高用户体验将成为金融企业在激烈的市场竞争中非常重要的法宝,这其中用户体验测试是一个非常重要的方法。


六、金融业软件测试未来发展趋势和建议

金融业软件测试未来发展的总体趋势是既有融合,又有专注。融合主要是指集成测试、系统测试等测试工作和软件开发进一步融合,打通开发、测试和运维之间的部门墙,持续推进敏捷和DevOps,不断提高效率;专注是指UAT代表用户进行验收,需要更加专注用户体验、不断提高用户体验测试水平,进而贡献更多价值。测试更多时候是输出价值,这就需要有先进的、标准的测试度量体系,能够在价值、质量和效能三者之间进行更有效的平衡。更多借鉴国际先进的测试标准体系和先进技术,持续提高测试水平;进而结合国内金融业实际情况,不断创新测试方法和实践。

随着互联网的快速发展,我国金融业面临前所未有的机遇和挑战,金融业软件测试应该抓住这个重要时机,不断创新,加强交流,建立适合金融业的测试标准体系,进而带动整个金融业测试水平全面提升。


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

登录 后发表评论
最新文章