在业务需求不断更替、系统运维成本不断增高、研发效能缺乏有效度量以及复杂多样的技术架构等多重挑战下,上汽通用通过与阿里云效平台合作,引入云效研发流程,成功将发版周期缩短了一半,自动化率提升了60%。
挑战
上汽通用汽车信息系统部有4个独立完整的应用交付团队,在过往项目交付中,面临着多方面的挑战:
业务创新带来的业务系统不断更替,需求有一定的时效性,且有些新业务具有不稳定性,整个应用在研发过程中也会发生变化;
已经上线的业务系统,其运维成本也在不断增高。主要成本来源于新成员和新代码的带入,同时回归测试也会在后期变更中成为人力消耗的大户;
多研发团队本身的不一致性,带来的技术架构的多样性和环境管理的不一致性,也为后期项目管理带来难度;
从管理角度来看,无法对研发过程的效率进行有效度量,急切需要将效率的提升可量化并且显性化。
改进
通过与阿里云云效平台合作,上汽通用重点在6大方面进行了尝试和改进:
提升了持续交付的能力,带来了价值的持续交付
将项目过程中的质量控制内建到自动构建过程中
持续交付价值和度量的显性化
研发流程的标准化和平台化管理
研发模式的规范化,引入阿里的标准模式
分层自动化测试提升回归测试的效率,同时也提升测试数据准备的效率
上汽SGM的原有研发流程是按照CMMI 3的成熟度要求来定义的,其规范程度很高,活动内容定义清晰,产出交付件定义完整。但其瀑布模式的交付过程,很难适应现有快速的交付要求。同时,它没有统一的过程管理平台。此外,原有的研发工具方面还会出现版本不一致、功能重复等问题,缺乏有效集成,自动化测试能力弱。
之所以引入阿里云效平台,主要是因为云效具有明确的研发流程,包括职责定义和管理活动内容。同时其管理活动均可在平台上落地,也覆盖了整个项目交付生命周期。
上汽源码的版本控制也引入了阿里的管理模式,分支开发和单元测试,集成分支自动化测试和发布生产环境,发布后合并主分支,可支持同一应用多项目多版本的开发模式支持。
效果
通过过去1年与云效平台的合作,上汽SGM项目成功落地,并具有了一定的成效。目前SGM项目在云效上的代码模块有94个,新建/开发/集成中的项目有57个,完成发布生产环境的项目有34个。目前云效管理的测试环境资源池有191台测试用机,自动化测试执行机有6台,活跃用户有82位。
在自动化AUI测试方面,配合数据银行,上汽将长业务流程的测试用例进行了模块化,只将同一系统内局部的业务流程进行自动化。通过数据银行构造端到端的业务数据,从而支持该局部业务流程的测试完整性。带来的好处是可以减少上下游的变更带来的影响,加快测试开发的速度,也可以在用例执行阶段更快地定位和分析问题。
目前已经实施云效分层测试自动化的典型项目中,数据配置单的执行成功率能保持在90%,而AUI自动化的成功率一般在50%-60%之间。究其原因,主要是UI的变化、流程的变化带来的冲击。后期项目中,会将进一步优化AUI测试用例的选择方法,同时提升测试开发人员的开发效率和能力,进一步提高自动化测试的效费比。
云效的引入为交付效率的加速做出了技术方面的可能,可以将原有的交付管理从2周的频率压缩到1周,同时也将自动化率从原有的20%提高到80%。
除此之外,云效项目的实施也给管理改进带来了新的视角,包括研发工具和过程的标准化、浏览器标准、中间件标准、公测环境的标准化、人和团队观念的转型、手工测试人员转测试开发的要求、测试数据的准备和复用等。
免费体验阿里云云效:企业级一站式研发协同平台,通过BizDevOps、DevOps、敏捷开发等不同研发解决方案,助力企业实现研发敏捷和组织敏捷。
如果您的团队有专有云部署需求,欢迎填写咨询表单,我们会有工作人员与您电话交流。
本文作者:沈骏,上汽通用研发服务经理。
本文内容非阿里云官方提供,如您发现本文档存在侵权内容或其他问题,请提供相应证明材料并在本页面内提交反馈信息,阿里云会协调或通知相关作者进行处理。