谷歌限制华为安卓合作,余承东透露华为欲布局自研操作系统(17)

工欲善其事必先利其器,软件工程能力是软件研发的 “器”。强大的软件工程能力是软件研发的重要组成部分,也是软件研发的硬核技术。

三年多以前的 EMUI,基于海思 Kirin、高通、MTK 芯片的主干各不相同。主干只是物理上的代码仓库,质量基本没有保证。各产品版本都是从主干拉出的分支,相关特性都是靠产品经理和开发代表手工挑出来,效率极为低下,质量无从保证。从单产品看似乎很 “高效”,但各产品功能特性的一致性,质量的可继承性几乎很难做到,没有一款存量机型能够全网升级新版本。这致使整个软件团队工作量很大,但重复低效且没有继承性,令团队人困马乏,根本无法应对即将到来的海量交付。

从 EMUI5.0 版本立项开始,交付采用了全解决方案运作模式,将用户交互、OS(操作系统)、海思、通信协议、安卓原生多个模块纳入统一规划,同源设计、同源开发、同源测试。解决方案依赖关系识别好、管理好,计划对齐。同时定下海思 Kirin、高通共主干目标(MTK 平台 2018 并入主干,至此,华为 EMUI 一条主干兼容三大硬件平台),代码合入主干严格受控、质量优先,保证了主干的代码质量。各产品不再需要拉分支,到发布的点直接按对应的产品出版本即可。主干版本每周可实现一轮全量的自动化测试,质量越来越好,交付也越来越高效,并且这个能力可持续传承。共主干的实现,虽然让产品线和软件研发团队都受到了不少 “折磨”,但今天的收益让所有的痛苦都变得很值得。

推荐阅读