专栏首页EAWorld微应用模式在集团企业移动信息化中的实践

微应用模式在集团企业移动信息化中的实践

随着移动互联网的快速发展及智能手机的不断普及,越来越多的企业将“移动化”作为优先的IT需求。在移动建设早期企业大多采用独立的建设思路,然而越来越多的业务系统要上移动,不可能每个业务建立一个App。由此可见,统一门户App是企业移动化发展的必然趋势。然而,统一门户App不会是从零开始建设,在建设过程中将会面临诸多挑战。

目录:

一、集团企业移动信息化过程中面临的挑战

二、微应用模式在企业移动化过程中的价值

三、我们在集团企业中的实践

四、总结

一、集团企业移动信息化过程中面临的挑战

众所周知,随着智能手机的普及,移动互联网的发展,企业员工越来越多的采用移动设备进行工作展示、收发邮件、工作沟通、流程处理等工作,企业移动移动信息化是必然趋势。在企业移动App建设早期,一般是单个App独立建设,需要一个OA,就会做一个OA的App;需要ERP上移动,就做一个ERP的App。现在大多数员工办公使用的都BYOD设备,我们看一下一个员工一天中需要在移动端使用的办公场景。

挑战一:多团队开发难以整合,效率低下

一大早到公司的第一件事情是需要考勤打卡,然后处理一些代办审批事项。紧接着安排会议,通过手机App预订会议室,发起会议邀请,和其他人员消息沟通等事项处理。下午还有像宿舍维修、班车查询、日程安排等等功能,这时如果按照刚刚的建设思路,需要开发十多个App,员工在使用时,每个都要安装,会有极大的不方便,经常错过重要事项。

企业需要统一的App,这个App可以提供上述的功能,所有代办事项统一展现,可以及时处理。显而易见,统一门户App是企业移动化发展的必然趋势。现在大多数企业都有移动端的App,门户里的所有应用不会是从零开始建设,原有App可能是多个团队开发,采用的开发语言也不一样,如何有效整合现有App是企业移动化面临的第一大挑战。

如上图,OA、ERP、CRM等App需要整合到统一的工作平台中使用,在这里举个简单的示例,假设OA是使用H5开发,ERP是使用原生开发,CRM也是使用原生开发。这时,三个App要整合在一起,三个团队在一起花费了一个月,终于有一个可以使用的初步版本上线了。

这时,CRM的App出现了功能bug,CRM团队紧急修复完成,上线了一个新版本,问题是不是所有人员都需要CRM中的功能的,所有人在打开工作平台时,都会提示必须要更新App才可以使用。传统的App开发上线的方式是修改一个功能,整个App需要重新安装使用,这样的效率十分低下。

挑战二:业务复杂多变,需要灵活应对

我们来看一下另一个场景,某人原来是研发部门的经理,他是没有办法看到整个公司的经营管理报告。突然有一天,他升职了,这时他需要立即可以看到相关报表,相关功能要灵活应对需求的复杂多变,这是集团企业所面临的第二大挑战。

挑战三:各类需求快速移动化,互不干扰

上述讲到原有App的统一整合,在企业内,移动的需求越来越多,涉及到了ToC的业务,ToE的业务。ToC也会根据不同的人群,进行多种业务的划分,而ToE 业务里,也会根据权限和业务不同,所使用的功能也不尽相同。当然,这些移动业务在真正落地的时候,会有不同的团队,或者不同的开发商进行完成。这时作为甲方如何能够掌控这些功能的开发和集成甚至是运维,满足各类业务快速移动快速移动化,是第三大挑战。

二、微应用模式在企业移动化过程中的价值

回想一下我刚刚讲的三点,我们需要一个App能提供共生的运行环境,允许不同的团队和和个人,自行研发相同或不同的移动端的功能,而且相关功能可以运行在同一个App里,相互之间互不干扰,今天我给介绍一种解决上述痛点的模式—微应用模式。

首先,简单介绍一下什么是微应用模式?微应用模式,一般是由一个主的App,这个App提供了除自身简单功能外,更多的功能可以由第三方团队开发按照相同的规范和API开发完成,最后运行在主App中。大家在使用的手机微信的小程序,支付宝里的各色应用都是采用这种模式实现的。

微应用模式区别于传统的App开发模式,具备以下特征:

开发期项目独立

这是微应用模式的基础,开发的独立性,确保了多个团队能够并行开发且无需要相互依赖,其应用的功能又可以与门户App相互独立,确保其自身功能的自由性。当然开发期的独立性并不意味着没有相关的约束。为了能让门户App健康的发展,相同的约束是必须的。我们熟悉的微信,在开发公众号时,需要遵守微信的相关的API规范。总结来说,开发期项目的独立性,并不是随意性,而是从团队、时间、功能等角度的独立性。

业务上隔离性

是门户App能够正常运转的基础,这里需要考虑两个因素,业务的相关资源需要单独规划,避免业务之间相互干扰;同时需要避免新增代码导致整个门户App的不稳定性。

运行态动态部署

开发完成的App既可以运行在门户App中,也可以打包成单独的App在手机上运行。开发人员不用关心开发完成的App是以微应用模式运行,还是独立的App。运维人员可以动态调整。接下来我们一起来看下微应用的三大价值点。

价值一:跨地域多团队研发,提升研发效率

这种模式下,通过集中管控的打包服务器、发布服务器,支持多团队(可以不同的乙方)进行研发的同时,也可以有效避免证书遗失、安全的问题隐患(比如XcodeGhost),还可以保障良好的用户体验。为了能让移动门户健康持续的发展,多个团队开发的App要遵循一定的开发规范,这时,统一的开发平台就显得尤为重要。

采用统一的开发平台可以屏蔽技术的差异性,快速开发微应用,还有保障良好的用户体验。开发完成微应用由统一的打包服务器打包,可以屏蔽其他因素引入的安全性问题。建议企业内部发布的应用,使用统一的打包服务器打包,不推荐开发人员直接本地导出一个部署包或apk/ipa。打包完成后,通过统一的企业应用发布服务器发布应用,不用上第三方的应用市场。

价值二:结合权限,提升运营精细化

To E的应用和传统的To C的应用不一样,我们大家所使用的微信,支付宝的功能都是一样的。但在企业内部不一样,企业应用是有权限控制的。对于我们开发好的微应用,在发布进可以结合组织机构权限。这里就要讲到微应用模式的第二个价值点。

结合组织机构权限 ,可以提高业务的响应速度,提升运营的精细化。用户可自定义使用功能,在提升运营管控性的同时又保障了良好的用户体验。为此,需要有一套规范的管理体制,我们将商店使用用户划分为三类角色。

对内:超级管理员,管理商店的所有应用管理员,对应用的发布上线流程全程监控。

对外:分为应用管理员和普通用户,微应用开发测试完成后由应用管理员发起上线发布流程。 普通用户通过商店体制灵活安装自己可使用的应用。

在结合权限发布时,可针对不同地岗位、职位进行应用的授权,方便而又灵活的微应用管理。对于新业务,采用微应用的模式,可以方便快速的发布应用,各业务可单独上线,互不干扰。

价值三:各业务快速上线,互不干扰

有ABC三个团队,分别负责商旅、合同、公文的开发。每个团队可以单独的发布应用,用户再也不用安装多个App了,也不会因为某个不太使用的功能而需要每次更新整个App。为了保障发布应用的稳定性,我们需要有一套完善的应用发布流程去控制各微应用的发布。

对于应用管理员对微应用发布过程所做的每一步操作,都需要系统管理员审核,保障业务上线的稳定性。说到这里,我们的应用是发布了,最终用户如果不下载安装,我业务也不能正常的使用。传统的应用更新机制,每次更新都需要下载整个安装包安装,对于WIFI网络还好,若是经常在外的人员,网络不是特别稳定,想要处理一个简单的审批,还需要重新安装一个几十M的App。这对于用户来说,体验是相当的不好。采用微应用模式后,所有的应用可以单独发布更新。另外我们提供了多种更新机制。

支持多级的智能更新机制。支持强制更新、可选更新等多种更新选项,可以做到用户无感知更新。

三、我们在集团企业中的实践

这是某集团面向内部员工的工作门户,可以随时随地处理代办事项,是外出办公的绝佳助手。该移动工作门户采用的就是微应用的模式。

打造出移动信息化的生态圈。改变了原有App独自建设的封闭性,提供了应用的统一入口,支持多种类型的应用的集成,实现敏捷的业务响应。

支持多种第三方应用的集成,通过安装、卸载方式,随时随地增减日常所需要的功能。很多企业内部本身已经有一些应用了,对于这部分应用采用微应用思想集成到门户工作平台中,对于一些新的业务,主要采用我们的移动平台开发。对于原有App如果想接入到统一的工作平台中,肯定是需要做一定的工作的:

第一:最简单的来说各应用都需要登录吧(不能在门户工作台中打开一个应用还要用户输入用户名密码再次登录吧),这里就需要在集成的微应用中添加单点登录支撑。

第二:多个集成的微应用都有代办事项,需要将各应用的代办事项集成显示在门户的代办列表里,我们期望是点击一个代办事项,直接跳转到事项处理界面。若是点击一下打开一个微应用跳转到应用的首页,还需要用户再次点击才能处理业务,这显然不是我们想要的。当然要做到这样效果不是一两句话就能完成的,需要制定一系列的规范。只要按照门户工作台的规范去改造现有App,那么就可以做到良好的用户体验。对于集团型企业,出于安全性等的要求,需要对移动端建设进行管控。

对于统一的门户来说,各子公司需求建设自己的特色业务,这时只要子公司有自己的开发团队,按照门户规范要求开发的应用好的应用提交总公司审核,通过后,各省的特色业务就可以正常运行在集团门户中了。

四、总结

上文我主要阐述了采用微应用模式解决集团企业在移动信息化过程中面临的三大挑战:多团队开发App难以整合效率低下;各业务复杂多变、需要灵活应对;对于新业务需要快速实现移动化且互不干扰。接着介绍了采用微应用模式解决集团移动信息化过程中的痛点,微应用模式的三大特性(开发独立性,业务隔离性,部署动态性),完美支持跨地域、多团队及多开发商应用开发,通过结合权限管理和类App,提升运营的精细化,确保了各业务快速开发上线,互不干扰。最后介绍了微应用模式在集团企业实践,希望能带给读者一定帮助。

关于作者:

刘磊

普元移动产品资深研发工程师,精通移动平台产品。诺亚财富,张家港银行、韵达快递、中信重工、联通集团等众多移动平台项目实施研发经验,精通移动平台架构及管控体系设计。

本文分享自微信公众号 - EAWorld(eaworld)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-08-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • WordPress发布文章主动推送到百度,加快收录保护原创

    工作实在太忙,也没时间打理网站。最近公司额外交待了一些网站 SEO 方面的优化任务让我关注(这就是啥都要会、啥都要做的苦逼运维的真实写照了...)。 于是抽空看...

    张戈
  • 说说云计算时代,运维人员会踩到哪些坑?

    近期在ChinaUnix论坛有一场讨论,标题是——云计算时代:运维人员会踩到哪些坑? 整个讨论过程非常活跃,大概有50个答复,运维派这就给大家整理了一些讨论的优...

    静一
  • JuiceSSH:超好用的安卓移动端Linux系统运维终端工具

    去年年底,我考虑到回老家之后可能会有工作上的紧急运维事务需要处理,家里没电脑网络,又不想背笔记本,所以考虑入手一个平板。安卓、IOS、Win8 板子,考虑良久之...

    张戈
  • Nginx发布1.9.0版本,新增支持TCP代理和负载均衡的stream模块

    昨天在公司微信群,CTO 分享了这个消息,对运维来说以后基于 TCP 协议的后端业务的高可用又多了一个新的选择,实在是棒极了! 一直以来,Nginx 并不支持 ...

    张戈
  • 修复WordPress升级4.2外观菜单中显示选项无法点击问题

    WordPress 升级 4.2 之后,目前发现存在如下 3 个问题: 有部分主题的前台会产生大量的 404 错误请求(站外资源); 评论表情名称变更导致表情无...

    张戈
  • CVE-2015-0235:Linux glibc高危漏洞的检测及修复方法

    这几天复习运维知识,也没怎么关注业界新闻,可等我一关注,又“捅娄子”了,Linux 继上次CVE-2014-6271漏洞爆发以来,再次爆发一个严重漏洞:CVE-...

    张戈
  • zabbix监控在lnmp环境下编译安装小记

    最近在复习运维常见的监控告警软件的时候,想起了 zabbix,于是先用军哥的 lnmp 一键安装包快速搭建了 lnmp 环境,然后成功编译安装了 zabbix,...

    张戈
  • Python远程控制模块paramiko遇到的问题及解决记录

    最近一直在开发自动化运维发布平台,底层命令行、文件通道主要基于 paramiko 模块,使用过程中遇到各种各样的问题,本文主要用于收集问题及解决记录,以备后续使...

    张戈
  • Docker新手入门实战教程

    摘 要 本文从新手视角记录了一个实际的Dokcer应用场景从创建、上传直到部署的详细过程,并简单的介绍了腾讯云容器服务的使用方法。通过Docker快速拉起一个...

    张戈
  • 如何使 DevOps 摆脱闭门造车的窘境?

    在企业的IT部门与独立的业务经营部门之间,往往存在着各式各样的互不理解的问题。IT部门往往就像一个虚拟的神职人员一样,只按照自己部门的既定计划和规则进行相应的I...

    静一

扫码关注云+社区

领取腾讯云代金券