“移”步到位:一站式移动应用研发体系

简介: 2017杭州云栖大会阿里移动云峰会专场上,阿里巴巴高级技术专家小木带来一站式应用研发体系方面的演讲。本文主要以互联网的应用背景开始谈起,进而阐述了已拥有APP的企业在APP的生命周期中会遇见哪些问题,以及缺乏移动端研发资源的企业应该怎样做,重点分享了EMAX For Native和EMAX For Weex,最后对EMAX进行了拓展说明。

2017杭州云栖大会阿里移动云峰会专场上,阿里巴巴高级技术专家小木带来一站式应用研发体系方面的演讲。本文主要以互联网的应用背景开始谈起,进而阐述了已拥有APP的企业在APP的生命周期中会遇见哪些问题,以及缺乏移动端研发资源的企业应该怎样做,重点分享了EMAX For Native和EMAX For Weex,最后对EMAX进行了拓展说明。

 

以下是精彩视频内容整理:

互联网应用背景

1978208aa3bbf3797d5c60628c951c26fc08ef4c

图为CNNIC今年7月份发布的包含中国网民各类互联网应用使用率的一份统计报告,即时通信、搜索引擎、网络新闻占据网民使用率的前三名,而网络购物、旅行预订、互联网理财、外卖、快车专车正在以较高的增长率快速进入到我们的生活。

80c57a90f02cc4c7439d77768fdff3225d816023

而同样来讲,CNNIC2014年12月份《中国企业互联网应用状况调查报告》显示,我国企业通过互联网向客户提供的服务比例的总体比例不足50%。

据调查数据表明,中国企业85%拥有PC网站,APP拥有率仅仅5%,在整个企业“互联网+”的进程当中,作为阿里云、移动云,作为阿里的移动中台一直在思考一个问题,那就是如何通过加速企业的移动化来赋能企业的“互联网+”。对于5%已经拥有APP的企业我们应该怎么做?对于剩下的想拥有APP的企业我们又应该怎么做?

 

已拥有APP的企业在APP的生命周期中通常会遇见哪些问题?

 

对于已经拥有APP的企业,在APP的生命周期中通常会遇到哪些问题?主要有以下几方面:

  • 开发阶段的问题是:研发同学通常在多个分支上进行并行开发,最后进行人工打包,这里存在的问题或是Morge非常容易出错,或是人工打包过程当中自动化程度非常低,而且容易出错。
  • 测试阶段的问题是:一是机型和用例不完善;二是非功能性异常上线会大面积爆发;三是每个版本都有相似经历。
  • 发布阶段的问题是:一是发布进度跟不上研发进度;二是祈祷式发布。
  • 运维阶段的问题是:一是无滚动、无滚代价大;二是发现问题在事后。

c7c286cb0e9dad14e8982c3d3c0ecf92961e546d

这些问题有解法吗?现在的解决方式通过单点规则、单点流程和割裂的云服务解决单点问题,我们称之为点状解决法。就是移动DevOps,DevOps追求的是效率和质量,追求的是持续集成和持续交付,点状的解决方法虽然可以从单点上解决某个具体问题,但是没有办法做到持续集成和持续交付。现在看来,点状的解决方法有点“头疼医头,脚痛医脚”的感觉。

EMAX For Native

1839ede891a8434c0909b16589e7f6e8d8db14bf

EMAX的服务其一是EMAX For Native,它是真正符合移动 DevOps 定义的移动应用研发支撑服务,将覆盖研发、测试、发布、运维、运营。

  • 研发阶段,客户端架构采用容器架构将业务模块进行拆分,在APP交付模式上我们会将传统的代码分支交付变成编译后二进制产物交付,我们会通过静态扫描插件把一些问题拦截在研发阶段,基础会支持版本管理、构件打包、证书管理。
  • 测试阶段,每个业务模块都会独立的经过一系列的卡口扫描,比如说包大小、代码警告,我们将大部分问题拦截在集成之前。比如我们一个业务方IOS APP莫名其妙出现问题,找到我们的架构组,两分钟问题定位到了,原来他们将IOS系统程序改写了,导致了问题,五个人查了两天没有查出来,系统扫描两分钟搞定。还有一个智能Monkey系统可以扫描和识别整个APP页面全景图,并且会根据线上实际用户的操作路径做权重优化,以最短的时间覆盖核心页面、核心控件、核心功能逻辑测试。
  • 发布阶段,实现了多维度灰度功能,可以根据用户的ID、IP、网络、机型、版本等多种策略进行灰度发布,并且有推和拉两种方式进行灰度发布。
  • 运维阶段,打造高可用体系,可以提供问题预警、问题定位和问题修复功能。
  • 运营阶段,通过全方位舆情监控及时发现潜在问题,通过用户画像定向推送一些信息。

18c2bb0577208afef5f2515b383a6f403e28d639

图为DevOps非常知名的网站Puppet.com刚刚发布的2017年全球研发团队DevOps现状调查报告,其中有一个对于高效能应用友谊系列标准,虽然这份报告面向的是服务机端,但是对于我们依然适用。

 

对于业务想快速移动化,但是又缺乏移动端研发资源的企业来说应该怎样做?

目前的解决方法是:

第一,外包。寻找外包商方式快速建立APP,外包的质量是不稳定的,外包源码无法持续和迭代。

第二,采用H5或者HYBRID方式,通过加壳 WebView 的方式显示相关内容,开发很快,但是体验很差。

第三,采用其他各类平台框架和工具,并且接入一些服务,存在的问题是配套不完善,需要技术人员具有较强的问题排查能力,对于本身移动端资源就非常缺乏的企业来说无疑是雪上加霜。

EMAX For Weex

214089116fb913dccebe051d23d3ebcf1a4bd70b

EMAX For Weex是基于Cloud Native APP的研发平台。我们会将内部的数据同步、消息推送、网络加速和移动网关以组件的方式放在这个平台上让大家快速集成。EMAX Weex中研发、测试、发布、运维、运营依然有一整套方案做支撑,我们希望EMAX For Weex帮助企业在极少数研发人员的情况下一次性构建非常复杂、高质量、高效率的移动APP,我们也希望开元社区能够将更多的高质量的组件、模版、服务源源不断送向我们的企业。

 

EMAX MDev产品架构图

468187d57fbd7e24062565e8c573aff7ab570990

回顾以上两大场景:

第一,EMAX for Native面对企业在DevOps研发过程中的质量和效率问题;第二 , EMAX For Weex面对企业有极少数研发人员的情况下。底层有一整套研发、运维平台覆盖研发、测试、发布、运维、运营,并且支持Native和Weex两种开发方式,同时基于此的运用构建、运用容器、持续集成、移动高可用、移动测试和Hotpatch的解决方案。

企业级移动应用研发服务的服务方式是通过专有云的方式联合ISV以招投标或者线下合同方式独立服务各个企业。

b171e168e12759bef373554bd4d6c311d8dca594

这是优酷案例,之前客户端迭代和交付存在很多的困境和问题,比如发布过程是不透明的,故障处理时间比较长,没有发布的标准,没有灰度发布和自动化测试,经过EMAX for Native,交付效率大幅度提升,故障发现效率大幅度提升。

还有上海某集团的真实案例,他们没有一个客户端研发,甚至没有前端研发,在EMAX for Weex的帮助下,18个页面标准APP一个月开放完成,现在是等待发布的状态。

 

One more thing

d268bb53c62578709e2db0d4cb1b001030ee9d44

一体化的研发体系其实只是EMAX的冰山一角,PaaS、移动网络服务、移动质量即服务,还有SaaS直接贴合业务的消息推送、智能客服、视频会议、网络直播、OCER,这些服务将携带阿里巴巴规范体系和数据体系。

企业级移动应用研发服务EMAX是阿里近10年移动技术积累完整呈现,我们希望企业真正少走弯路,真正帮助大家在团队研发效率和研发能力上得到大幅度提升。

 

 

 

 

 

 

 

 

 

 

相关文章
|
3月前
|
监控 安全 测试技术
从开发到测试再到发布,全方位解析项目上线的完美路程!
从开发到测试再到发布,全方位解析项目上线的完美路程!
123 0
|
6月前
|
运维 监控 Java
研发规范第十三讲:阿里 - 如何进行项目稳定性建设
研发规范第十三讲:阿里 - 如何进行项目稳定性建设
401 0
|
JSON 数据可视化 IDE
测试平台的痛点
先了解痛点
214 0
|
监控 开发者
低代码如何实现生产制造行业的高效管理(三)|学习笔记
快速学习低代码如何实现生产制造行业的高效管理(三)
437 0
低代码如何实现生产制造行业的高效管理(三)|学习笔记
|
数据采集 运维 供应链
低代码如何实现生产制造行业的高效管理(一)|学习笔记
快速学习低代码如何实现生产制造行业的高效管理(一)
513 0
低代码如何实现生产制造行业的高效管理(一)|学习笔记
|
存储 运维 监控
容器云PaaS平台建设中应关注的重点和难点
对于企业级容器云PaaS平台,在多集群管理的模式下,每一个功能都会变得非常复杂。对于建设中的重点和难点,从以下多个方面进行了详细的方案分析和设计实现。
|
安全 数据可视化 数据管理
e签宝:借助钉钉宜搭变革传统项目管理模式,交付效率显著提升
通过钉钉宜搭,e签宝在半个月内搭建了项目交付管理平台,提升了项目管理的效率和质量,推进了团队核心业务的信息化建设。e签宝在有效梳理了各环节的工作进度、质量、成本、职权后,通过宜搭平台保障了内外通畅,实现了项目矩阵式管理。
603 0
e签宝:借助钉钉宜搭变革传统项目管理模式,交付效率显著提升
|
设计模式 前端开发 JavaScript
测试效能平台最佳实践 | 解决用户痛点,比堆叠功能更重要!
本文为霍格沃兹测试学院优秀学员关于测试测试效能平台开发(国际化商城智能物料平台)的最佳实践经验分享。