DevOps 高效研发,支撑百万级车辆的软件交付
直达原文:【汽车制造】DevOps高效研发,支撑百万级车辆的软件交付
目标与挑战
某汽车制造公司是中外合资经营的大型乘用车生产企业,随着新能源、智能互联以及自动驾驶等新技术领域的快速产业化需求,该汽车制造商全力投入新能源车的研发与生产,积极发展移动出行新业务,以应对市场环境的变化;但新型技术领域的快速产业化在撬动了巨额商机的同时,也对该公司的 IT 体系发起了巨量挑战。
一是随着汽车产业的技术变革,急需加速布局软件研发的产业版图
过往在“主机厂-Tier1-Tier2”的线状供应链体系下,由各供应商组合打包“软件+零部件”卖给主机厂,导致一款智能汽车往往需要通过上百个 ECU(电子控制单元)来执行上亿行代码。这样的做法对主机厂而言,无疑带来了一系列诸如议价难度大、软硬件耦合深、底层代码共享难、测试调试困难和应用升级慢等整车生产制造难题。
随着汽车智能化、电子化程度的不断深化,原有的线状供应链格局加速瓦解,该公司急需打造自身软件研发的硬实力,在整体产业上布局软硬融合、技术架构上推进软硬解耦、整车生产上实现去黑盒化,才能在行业变革洪流中保持行业领导者地位。
二是新型技术的产业应用,带来了软件研发业务的需求暴涨
从汽油到电力,从人类驾驶到自动驾驶,再从单纯的代步工具到集安全性、舒适性和娱乐性于一身的移动智能终端,汽车摇身一变成了带轮子的超级计算机,车载软件的研发效能和交付质量决定着汽车的商业价值。
近年来通过深入应用 OTA、自动驾驶和智能座舱等技术,过往所谓的豪华车选项(如自适应巡航控制、自动紧急制动等),现如今也已经逐渐成了车辆的标准配置。过去只有高端车才可能拥有一亿行代码,发展至今时今日,即便是低端车的代码量也能轻易超过一亿行。
在软件研发业务需求暴涨的同时,该公司的 IT 体系也逐步暴露了诸如车云一体、新技术带来的能力瓶颈、过程管理粗放等软件研发优化难题。这背后其实是原有 IT 体系下的组织分工、流程规范以及底层工具,都难以继续支撑该公司未来的产业发展需求。
基于上述的战略目标与业务挑战,该公司决心推行 DevOps 转型,携手嘉为蓝鲸全方位打造 DevOps 体系,覆盖组织优化、流程改革、人员提升以及工艺革新,全面提升软件的研发效能与交付质量,实力保障业务上线的高效性与稳定性,以 IT 体系转型引领业务数字化转型。
改革与升级
鉴于业务发展的紧迫性,在对 IT 长期发展规划与 DevOps 阶段性建设成果进行工作定调后,该公司将 DevOps 改革重心落在了提升软件研发的质效和保障应用发布的稳定性上,具体体现在引进敏捷实践、优化持续集成和规范持续部署等 DevOps 改革手段。
自 DevOps 体系建设以来,该公司的 DevOps 转型之路可以划分为三大阶段——
在 DevOps 建设初期,除了建立起专职的 DevOps 团队,负责全面推进 DevOps 建设和逐步设立 DevOps 管理规范以外,还通过引入嘉为蓝鲸 DevOps 解决方案,实现工艺、资产和权限的统一管理和持续建设,提升软件研发的整体效能。
在 DevOps 建设中期,该公司选择将重心放至推动流程规范和 DevOps 工艺进行相互深度结合,将持续集成和持续发布相关的管理规范及实施细则落实至嘉为蓝鲸的流水线及质量门禁上,依托嘉为蓝鲸 DevOps 平台,实现流程和工程的深度融合,保障软件研发的交付质量。
进入 DevOps 建设的下一阶段,延续了标准化和规范化阶段的 DevOps 建设成果,持续构建从需求提出至版本发布的一站式、可追溯、可度量的 DevOps 平台。该公司计划未来将结合嘉为蓝鲸 DevOps 平台,把 DevOps 能力建设范围从持续集成和持续发布的局部能力,进一步扩展至覆盖敏捷研发、持续集成、持续发布、持续部署到持续运营的全局能力,打造完整的迭代改进闭环,保障业务上线的高效性和稳定性。
成果与展望
回望过去,该公司转型之路一步一个脚印,踏实脚步、不断前行,不仅顺利完成了每个阶段的建设目标和分解任务,还收获了不菲的成绩。通过 DevOps 体系的持续建设,该公司极大地加快了软件研发业务的需求响应速度,也进一步地保障了应用交付的稳定性、可控性以及安全性。
标准化建设,提升软件研发效能
在 DevOps 标准化建设阶段中,由于该公司 DevOps 体系刚建设起步,所以本期建设重点在于为日后的大规模推广做好基础建设,包括统一管理规范、统一工艺建设、统一资产管理和统一权限管理。
统一管理规范
通过管理标准和相关指标的确立,正式发布用户侧和管理侧的 DevOps 平台使用准则,加强 IT 组织的软件研发流程约束,通过流程改革实现组织分工优化,整治“无组织”、“无纪律”的乱象。
统一工艺建设
通过嘉为蓝鲸 DevOps 平台,统一企业内的 DevOps 技术栈,将原有零散的 DevOps 工具链统一更换为嘉为蓝鲸 DevOps 平台。以持续集成作业为改革重心,通过聚合相关工作流和数据流,构建包含代码拉取、编译构建、质量检测、制品管理和部署发布的标准流水线,统一软件生产作业流程,提升企业整体的软件研发效能。
统一资产管理
通过嘉为蓝鲸 CMDB 配置管理能力,实现 IT 资产统一纳管,并根据业务需求进行合理调配,提升资产使用的高效性与合理性,为后续的持续发布和持续部署打牢基础。
统一权限管理
通过嘉为蓝鲸用户管理能力,以账号管理、权限分配和双因子认证等多种手段,精细化管理该公司核心知识产权,保障源代码资产安全。
规范化建设,保障应用交付质量
在 DevOps 规范化建设阶段中,通过对标准化的规范、工艺、资产和权限进行有机结合,保障 DevOps 研发过程的安全性和可控性,大幅提升应用交付的稳定性、可控性以及安全性。
流程规范+工艺承接
将 DevOps 相关管理规范融入至嘉为蓝鲸流水线中,快速打通持续集成和持续部署的工作流,在保障 DevOps 作业的安全合规。通过自动化工程大幅减少人工误操作的同时,也能让研发人员的精力能更好地集中到业务价值高的工作上,为 IT 团队赋能。
安全准入+质量门禁
通过嘉为蓝鲸代码检查和质量门禁的工艺层面约束,对“代码入库-代码合入-开发/测试环境部署发布-生产环境部署发布”四大关键节点进行代码准入准出控制,保障持续集成和持续发布的安全可控。
代码入库阶段:提交合规性检查。
代码合入阶段:待发布代码合入生产分支时,自动化触发 SonarQube 质量扫描,结合 Code Review 结果,拦截有缺陷问题的代码,确保生产分支代码质量。
开发/测试环境部署发布:自动化触发 SonarQube 质量检查,应用静态安全检查。
生产环境部署发布:自动化触发代码质量检查,扫描不通过,则拦截发布;对接信息安全管理平台,获取应用源代码安全扫描结果,安全处置不通过,则拦截发布。
能力可视+考核指标
依托嘉为蓝鲸 DevOps 平台,对软件研发全过程的生产数据进行聚合管理和度量分析,结合该公司的考核指标体系,为研发组织提供量化依据和改进指导。
体系化建设,实现软件业务价值
通过 DevOps 标准化和规范化的建设,让该公司的持续集成和持续部署越发高效,但该公司 DevOps 建设之路并不止步于此。当前,该公司正通过体系化建设,进一步将 DevOps 范围扩大至最开端的需求提出到最末端的版本发布,努力建成一站式、可追溯、可度量的 DevOps 平台,同时在持续不断的 DevOps 推广过程中积累实战经验,建设覆盖软件研发全场景的最佳实践。
从需求提出至版本发布的一站式、可追溯、可度量 DevOps 平台
通过嘉为蓝鲸 DevOps 工艺,将 DevOps 作业相关的工具链以及工作流置于一体化平台之上,并通过不断地工艺延伸和流程打磨,打通从需求提出、敏捷研发、持续集成、测试管理、制品管理、持续部署到持续发布的数据流和价值流,实现车云一体下软件业务价值的全生命周期管理。
覆盖软件研发全场景的最佳实践
下一步,该公司将进一步推动建设覆盖需求域、开发域、测试域到部署域的软件研发最佳实践,提供多场景的最佳实践成果,全方位提升 DevOps 能力。
未来,该公司将坚持 DevOps 转型,打造出支撑公司全价值链可持续发展的 IT 体系能力,以 IT 数字化转型引领公司全面发展,助力在新产业时代继续维持车企领头羊的地位。
评论