银行软件研发和传统生产制造业的质量改进方法存在很大差别,主要因为影响质量的因素发生了很大变化。银行软件研发组织中的质量保证人员,必须先识别和了解影响项目质量的因素,才能有的放矢地为项目制定改进目标。通过实践,SWOT模型可以帮助我们更全面地分析项目质量因素。银行软件研发质量分析面临新的挑战。
成熟的软件研发组织认为,好的过程才会有好的产品,因此强调过程的质量保证和持续改进。而找到影响质量的因素和改进方法,是质量保证工作开展的前提,也是影响改进效果的关键。和传统生产制造业不同,影响软件研发质量的因素更为复杂多样,不再局限于人、料、物、法、环。所以,银行的软件研发组织在开展过程改进的同时,会注重沉淀和收集过程数据,并以此为基础衍生出繁多的度量指标,试图从中找到改进机会。然而,作为项目的管理者,面对大量的过程数据和度量指标时,究竟哪些是影响质量的关键因素,是我们必须回答的问题。另外,软件研发的质量保证目标和生产制造业也有很大区别。在传统生产制造业中,“差异”等同于“不良”,因此质量保证目标就是要消除差异;而软件研发自始至终都充满着差异和变化,质量保证的目标是更加全面的认识质量影响因素及其中的差异,分析差异的来源与走向,从而对差异做好控制,规避差异带来的问题和风险。
应用SWOT模型开展银行软件研发质量分析作为银行金融科技组织的质量保证人员,通过不断探索和实践,我们以SWOT模型为基础,找到适用于软件研发项目开展过程改进的分析方法。SWOT模型是运用结构化和系统化的方法,通过分析优势(Strengths)、劣势(Weaknesses)、机会(Opportunities)和威胁(Threats),帮助组织更全面的了解自己及外部环境,趋利避害,制定措施,从而获得最大收益。

运用SWOT模型,首先聚焦改进视角,然后找准对象,最后,按照模型框架,充分识别影响质量的因素。另外,为了更加客观、形象的表达因素之间的差异,可以选用各因素的度量指标,并采用图文方式补充描述。
一是改进的视角根据组织当前改进的重点来进行选择。如选择“质量”视角,一般会邀请质量专家、各管理和技术领域的专家,聚焦于“质量”问题,开展头脑风暴,充分识别影响质量的因素。
二是明确改进的对象,区分内、外部,便于我们改变自己能改变的,同时影响自己不能改变的。如选择“银行软件研发项目”为改进对象,则内部主要包括项目经理,及其直接管理的人员及活动;外部则是跟项目有密切交互的干系人(如业务需求方、责任专家、外包供应商、独立的测试人员、系统的运维人员等)及活动。
三是按照SWOT模型识别出的影响因素是比较全面和丰富的,初期的做法是可以进一步筛选已有数据积累的因素。
四是在实践中,质量因素的度量单位往往不同,如“缺陷密度”和“编码时长”。我们采用归一化来统一量纲,以便所有数据都能绘到同一雷达图中,更加形象的表现各项目在各因素间的“差异”。
质量分析模型在质量改进中发挥重要作用基于SWOT的质量分析模型在中国光大银行软件研发项目中逐步应用。质量保证人员每季度根据分析结果为项目提供质量报告,与项目经理共同讨论改进措施。
质量分析模型在项目质量改进中起到了拨云见日、凝心聚力的作用。质量保证人员对质量目标和改进方向更加聚焦,每个项目的改进效果清晰可见。同时,管理者直观地看到项目当前的差距和面临的挑战,从而决策改进方向。
在软件行业,唯一不变的是变化本身。质量分析模型会在应用中不断扩充和优化其中的影响因素,使之适用于更多银行软件研发项目类型和更复杂的研发过程;同时,质量改进的方向和方法也会随之不断调整。始终不变的,还有我们持续改进的信念——改进之路,路在脚下。
(此文刊发于《金融电子化》2024年3月上半月刊)