质量保证
回到专栏主页
质量保证(QA)在整个开发过程中的重要性
作为PTW蒙特利尔的QA经理,Deanne Curtis协助将许多游戏带向世界。在她的职业生涯中,她了解到许多合作伙伴的工作流程,其中有一个共同点很突出:QA通常被视为流程中的最后一步,而非整个流程中的基本要素。以下内容采取自Deanne于2022年10月19日在加拿大蒙特利尔举行的MEGAMIGS演讲。
QA通常被视为认证道路上的必要之恶,在生产准备的规划中经常被有意避开。经理们虽然明白QA不可缺少,但总会将其作为发布前的最后一步进行。然而,Deanne认为,通过在计划阶段的早期积极让QA加入,可以促成更有效的开发周期,发行出更高质量的游戏。
在研究过程中,Deanne发现,这一现象源于QA人员普遍不被视为专家,而是综合性人员,因为他们涉及到项目的所有方面。它被视为一份任何人都可以做的工作,因此由入门级员工担任,他们没有持续足够长的时间来发展真正的专业知识。更有甚者,在很多情况下人们都对QA不屑一顾,认为它不具创造性,觉得它的存在只是对开发工作的挑剔。
正是这种消极的认知,导致QA从一开始就被排除在生产计划之外。其实如果可以妥当安排,QA作为持续的指导能够尽早暴露出错误,从而进行修复。 从长远来看,这样可以节省时间,也可以避免在预定发布前错过交付日期。
对于大多数游戏开发商和发行商来说,认证是目标,因为没有认证就就不能发行游戏。认证是符合目标平台的最佳实践,想要获得认证有必须完成的要求清单。然而,如果没有适当的规划,在开发的最后阶段来核实每项内容可能会非常仓促草率。这会导致程序马虎,团队压力大,也会有损游戏的最终质量。
后期才考虑认证的问题会增加不必要的风险和不稳定因素,导致QA团队的利用率低下(意味着浪费时间和提高成本),各部门之间的知识共享偏低,了解整个游戏深度与广度的QA团队也会因此错失组成LiveOps团队的机会。这本可以有利于加强玩家客服运营。
Deanne坚持认为,早期和积极的QA参与是有利于认证的。要怎么做呢?真正的QA包含的价值是多方面的:
那么,实施QA参与的最佳方式是什么?首先,从规划之初就将QA纳为核心团队的一部分。QA应该在整个过程中具有可见性,因为它有助于在小问题演变为大问题之前发现它们,并预见潜在的瓶颈。
了解QA团队结构是很重要的。在项目开始的时候,Deanne会与客户会面,一起制定策略。她会根据客户的需求给出最佳QA团队模式的建议,并选择个人专长最适合的测试人员。
通常使用的是两种基本团队结构。单一团队使用许多测试人员,他们不一定是特定领域的专家。在这些情况下,项目通常采用“瀑布”法(贯穿整个项目的线性进展,QA是最后一步)。这种团队结构偏重于测试人员的数量而不是质量,这种情况并非总是理想的。
另外,可以根据个别项目需要,部署数量较少的专业测试人员。例如,一些测试人员可能专门从事软件QA,另一些则从事开发QA。这些项目采用“灵活开发”方法运行,这使得测试人员能够完全融入客户的团队,确保取得最佳结果,并充分利用每个掌握技术的团队成员。这个框架使PTW和客户能够在整体上进行更有效的合作和沟通。
通常,我们的专业测试人员最终会完全融入客户的开发团队,直接与客户的生产团队、开发人员和内部QA团队及领导一起工作。这些测试人员从初级到中级不等,如果他们熟悉不同的编码语言,有些人本身就可以作为开发人员工作。
我们在PTW蒙特利尔的团队现在有四个完全融入式的QA团队。起初是一个客户采用了这种融入式团队结构,由于他们对结果很满意,所以加入了更多的团队,这种模式现在也在向其他客户推广。
一旦确定了团队结构,就应该为未来的项目维护团队。持续的制度知识和潜在的辅导总能让团队从中获益。从以前的开发活动中学习是非常有价值的,可以为所有相关人员带来更有效的流程。
有时,雇用一个外部支持供应商是最好的解决方案。这些合作伙伴可以提供大量的灵活性、专业知识和可靠性。让第三方处理开发元素可以为其他团队腾出时间,让他们专注于自己擅长的事情。决定一个合作伙伴需要提出正确的问题:
一旦确定了这些属性,在寻找最佳服务供应商时就一定要进行尽职调查,因为并非所有服务供应商都有同样的能力。一旦雇用,考虑如何将外部团队纳入你的流程这一点很重要。联系点必须明确,以便通过适当的渠道进行沟通。必须提供充分的指导文件,并从一开始就确定项目的范围。项目经理可以在出现波动时随时调整工作方向。
最后,对于整个项目来说,QA与团队的其他成员保持一致是很重要的。团队领导如何确保文化契合?他们谈论QA时要证明他们并非局外人,而是整个流程中相当有价值的一部分。项目本身的结构应该是开放欢迎的。
对一些人来说,这似乎是对久经考验的流程的彻底改变,但一旦正确实施,在早期加入QA的价值将在最终产品的质量中得到证明。更好的情况是,QA参与整个开发准备可以暴露出效率低下的问题,并促进精简,从而形成一个一致的、规范的流程,并允许在必要时进行临时更改。