发版周期缩短1半,自动化率提升60%,上汽通用DevOps转型实践

本文涉及的产品
云效 DevOps 流水线,基础版人数 不受限
云效 DevOps 制品仓库,基础版人数 不受限
云效 DevOps 代码管理,基础版人数 不受限
简介: 传统汽车制造行业如何成功实现DevOps转型,让我们一起来看看上汽通用是如何做到的。

在2018杭州云栖大会研发效能最佳实践专场上,上汽通用研发服务经理沈骏带来了上汽通用在企业数字化转型及研发效能提升方面的实践分享。

在业务需求不断更替、系统运维成本不断增高、研发效能缺乏有效度量以及复杂多样的技术架构等多重挑战下,上汽通用通过与阿里云效平台合作,引入云效研发流程,成功将发版周期缩短了一半,自动化率提升了60%。

沈骏指出,“通过过去1年左右与云效平台的合作,上汽SGM项目成功落地,并具有了一定的成效。目前SGM项目在云效上的代码模块有94个,新建/开发/集成中的项目有57个,完成发布生产环境的项目有34个。目前云效管理的测试环境资源池有191台测试用机,自动化测试执行机有6台,活跃用户有82位。

上汽研发团队面临的挑战


上汽通用汽车信息系统部有着4个独立且完整的应用交付团队,在过往的项目交付中,团队面临着多方面的挑战:

  • 首先是业务创新带来的业务系统的不断更替,其需求有一定的时效性,而且有些新业务具有不稳定性,整个应用在研发过程中也会发生变化;
  • 其次,已经上线的业务系统,其运维成本也在不断增高。主要成本来源于新成员和新代码的带入,同时回归测试也会在后期变更中成为人力消耗的大户;
  • 再次,多研发团队本身的不一致性,带来的技术架构的多样性和环境管理的不一致性,也为后期项目管理带来难度;
  • 最后,从管理角度来看,无法对研发过程的效率进行有效度量,急切需要将效率的提升可量化并且显性化。


研发提效转型之路

通过与阿里云效平台合作,上汽通用重点在6大方面进行了尝试和改进:

1. 提升了持续交付的能力,带来了价值的持续交付

2. 将项目过程中的质量控制内建到自动构建过程中

3. 持续交付价值和度量的显性化

4. 研发流程的标准化和平台化管理

5. 研发模式的规范化,引入阿里的标准模式

6. 分层自动化测试提升回归测试的效率,同时也提升测试数据准备的效率

上汽SGM的原有研发流程是按照CMMI 3的成熟度要求来定义的,其规范程度很高,活动内容定义清晰,产出交付件定义完整。但其瀑布模式的交付过程,很难适应现有快速的交付要求。同时,它没有统一的过程管理平台。


此外,原有的研发工具方面还会出现版本不一致、功能重复等问题,缺乏有效集成,自动化测试能力弱。


云效实施经验

之所以引入阿里云效平台,主要是因为云效具有明确的研发流程,包括职责定义和管理活动内容。同时其管理活动均可在平台上落地,也覆盖了整个项目交付生命周期。

上汽源码的版本控制也引入了阿里的管理模式,分支开发和单元测试,集成分支自动化测试和发布生产环境,发布后合并主分支,可支持同一应用多项目多版本的开发模式支持。

通过过去1年左右与云效平台的合作,上汽SGM项目成功落地,并具有了一定的成效。目前SGM项目在云效上的代码模块有94个,新建/开发/集成中的项目有57个,完成发布生产环境的项目有34个。目前云效管理的测试环境资源池有191台测试用机,自动化测试执行机有6台,活跃用户有82位。

在自动化AUI测试方面,配合数据银行,上汽将长业务流程的测试用例进行了模块化,只将同一系统内局部的业务流程进行自动化。通过数据银行构造端到端的业务数据,从而支持该局部业务流程的测试完整性。带来的好处是可以减少上下游的变更带来的影响,加快测试开发的速度,也可以在用例执行阶段更快地定位和分析问题。

目前已经实施云效分层测试自动化的典型项目中,数据配置单的执行成功率能保持在90%,

而AUI自动化的成功率一般在50%-60%之间。究其原因,主要是UI的变化、流程的变化带来的冲击。后期项目中,会将进一步优化AUI测试用例的选择方法,同时提升测试开发人员的开发效率和能力,进一步提高自动化测试的效费比。

云效的引入为交付效率的加速做出了技术方面的可能,可以将原有的交付管理从2周的频率压缩到1周,同时也将自动化率从原有的20%提高到80%。

除此之外,云效项目的实施也给管理改进带来了新的视角,包括研发工具和过程的标准化、浏览器标准、中间件标准、公测环境的标准化、人和团队观念的转型、手工测试人员转测试开发的要求、测试数据的准备和复用等。


未来展望

未来,我们希望与云效工具平台继续合作,进一步推进价值的快速交付,让研发过程流水线化,带动代码的顺畅流动,让质量控制过程前置,让质量内建到整个项目构建过程中,也让研发过程产生的过程数据能够被IT利用起来,从而反过来驱动研发过程的进一步进阶。

相关实践学习
流水线运行出错排查难?AI帮您智能排查
本实验将带您体验云效流水线Flow的智能排查能力,只需短短1-2分钟,即可体验AI智能排查建议。
ALPD云架构师系列 - 云原生DevOps36计
如何把握和运用云原生技术,撬动新技术红利,实现持续、安全、高效和高质量的应用交付,并提升业务的连续性和稳定性,这是云原生时代持续交付共同面对的机会和挑战。本课程由阿里云开发者学堂和阿里云云效共同出品,是ALPD方法学云架构师系列的核心课程之一,适合架构师、企业工程效能负责人、对DevOps感兴趣的研发、测试、运维。 课程目标 前沿技术:了解云原生下DevOps的正确姿势,享受云原生带来的技术红利 系统知识:全局视角看软件研发生命周期,系统学习DevOps实践技能 课程大纲: 云原生开发和交付:云研发时代软件交付的挑战与云原生工程实践 云原生开发、运行基础设施:无差别的开发、运行环境 自动部署:构建可靠高效的应用发布体系 持续交付:建立团队协同交付的流程和流水线 质量守护:构建和维护测试和质量守护体系 安全保障:打造可信交付的安全保障体系 建立持续反馈和持续改进闭环
相关文章
|
1月前
|
人工智能 自然语言处理 测试技术
从人工到AI驱动:天猫测试全流程自动化变革实践
天猫技术质量团队探索AI在测试全流程的落地应用,覆盖需求解析、用例生成、数据构造、执行验证等核心环节。通过AI+自然语言驱动,实现测试自动化、可溯化与可管理化,在用例生成、数据构造和执行校验中显著提效,推动测试体系从人工迈向AI全流程自动化,提升效率40%以上,用例覆盖超70%,并构建行业级知识资产沉淀平台。
从人工到AI驱动:天猫测试全流程自动化变革实践
|
2月前
|
弹性计算 Devops Shell
用阿里云 DevOps Flow 实现 ECS 部署自动化:从准备到落地的完整指南
阿里云 DevOps Flow 是一款助力开发者实现自动化部署的高效工具,支持代码流水线构建、测试与部署至ECS实例,显著提升交付效率与稳定性。本文详解如何通过 Flow 自动部署 Bash 脚本至 ECS,涵盖环境准备、流水线搭建、源码接入、部署流程设计及结果验证,助你快速上手云上自动化运维。
235 0
|
1月前
|
存储 数据采集 监控
Python定时爬取新闻网站头条:从零到一的自动化实践
在信息爆炸时代,本文教你用Python定时爬取腾讯新闻头条,实现自动化监控。涵盖请求、解析、存储、去重、代理及异常通知,助你构建高效新闻采集系统,适用于金融、电商、媒体等场景。(238字)
310 2
|
5月前
|
传感器 人工智能 监控
通义灵码智能体模式在企业级开发中的应用:以云效DevOps自动化流程为例
通义灵码智能体模式具备语义理解、任务闭环与环境感知能力,结合云效DevOps实现CI/CD异常修复、测试覆盖与配置合规检查,大幅提升研发效率与质量。
259 0
|
2月前
|
Java 测试技术 API
自动化测试工具集成及实践
自动化测试用例的覆盖度及关键点最佳实践、自动化测试工具、集成方法、自动化脚本编写等(兼容多语言(Java、Python、Go、C++、C#等)、多框架(Spring、React、Vue等))
146 6
|
2月前
|
人工智能 安全 Devops
AI 驱动的 DevOps:通过智能命令执行实现基础设施自动化
本文探讨了如何利用能够根据自然语言提示执行命令、管理基础设施和自动部署的 AI 技术,来革新 DevOps 流程。通过模型上下文协议(MCP),AI 助手不仅能回答问题,还能直接操作终端、编辑文件并管理开发环境,从而简化复杂的 DevOps 任务,提高效率并降低错误率。
316 3
|
10月前
|
弹性计算 运维 安全
云上DevOps自动化的最佳实践
本文介绍了云上DevOps自动化最佳实践,重点探讨了企业在上云过程中面临的成本管理、运维效率和弹性等问题。通过阿里云的产品和服务,企业可以实现自动化的资源管理、成本优化和高效运维。文章详细阐述了如何利用标签进行成本分析、选择合适的付费类型和实例规格、以及通过弹性伸缩降低成本。此外,还介绍了新功能发布,如统一的实例运维通道界面、AI辅助的运维工具等,帮助企业提升云上业务的管理和运营效率。
|
4月前
|
存储 SQL 关系型数据库
MySQL 动态分区管理:自动化与优化实践
本文介绍了如何利用 MySQL 的存储过程与事件调度器实现动态分区管理,自动化应对数据增长,提升查询性能与数据管理效率,并详细解析了分区创建、冲突避免及实际应用中的关键注意事项。
196 0
|
4月前
|
运维 监控 安全
从实践到自动化:现代运维管理的转型与挑战
本文探讨了现代运维管理从传统人工模式向自动化转型的必要性与路径,分析了传统运维的痛点,如效率低、响应慢、依赖经验等问题,并介绍了自动化运维在提升效率、降低成本、增强系统稳定性与安全性方面的优势。结合技术工具与实践案例,文章展示了企业如何通过自动化实现运维升级,推动数字化转型,提升业务竞争力。
|
10月前
|
Kubernetes Java 持续交付
小团队 CI/CD 实践:无需运维,Java Web应用的自动化部署
本文介绍如何使用GitHub Actions和阿里云Kubernetes(ACK)实现Java Web应用的自动化部署。通过CI/CD流程,开发人员无需手动处理复杂的运维任务,从而提高效率并减少错误。文中详细讲解了Docker与Kubernetes的概念,并演示了从创建Kubernetes集群、配置容器镜像服务到设置GitHub仓库Secrets及编写GitHub Actions工作流的具体步骤。最终实现了代码提交后自动构建、推送镜像并部署到Kubernetes集群的功能。整个过程不仅简化了部署流程,还确保了应用在不同环境中的稳定运行。
585 9

相关产品