许多科技公司明年都把移动战略放在第一位了。移动设备,包括平板电脑,正在超越传统PC,而成为更受欢迎的上网方式。
预计接下来的三年,移动项目的增长将以4:1的比例超越PC项目的增长。在2016年,全球移动设备数量有望超过人口数量。
对于开发团队的挑战是:如何调整“移动第一”或“移动先行”的心态。这要求开发者将用户体验放在第一位,并提供强大的内容和个性化体验。这也意味着需要积累跨多个平台和设备的经验,了解其复杂性,掌握执行移动项目所需的特殊技能以及搭建强大后台基础的专业知识。
现在的应用都需要将用户多个平台的信息融合起来。 你不可避免的将要面对多个客户端操作系统平台上的产品迭代更新,管理开发周期也越来越富有挑战性。公司也会在移动策略上给予技术领导人更大的压力。在接下来的这一年,如何以移动第一为口号,让开发团队和运营团队更好的团结在一起,也变得比以往更加重要和具有挑战性。
接下来是开发者在2013年需要考虑的,十分紧迫的4件事:
将“移动第一”的观念带给你的核心开发团队
由于对跨平台技术的需求越来越大,将移动开发业务外包正成为一种趋势。然而随着开放的网络标准(如JavaScript 以及HTML5)的日益流行,将促使内部移动开发变得更加容易。 这是非常幸运的,因为未来移动开发的周期将会越来越短,迭代更新越来越频繁。如果没有内部移动开发人员,将会让开发过程变得非常麻烦,还要将外部资源做好协调并整合进来。
你需要慎重考虑将移动开发业务托付于谁,比如很多网页设计师是从PC端转型过来,他们并没有任何为移动用户设计产品的经验。产品形态的变化、触摸感以及内容交互上的确需要不同的设计体验。
为移动应用或网络调整服务器架构
目前的复合应用对后台架构的影响越来越大。大多数应用都基于一系列API,能够使应用的用户界面和后台运行进行更好的交互,并实现跨平台转移。需要注意的是,这些后台应用(复合应用)不只是用来表现原有后台架构的,他们需要支持更个性化、更具互动性的移动应用功能。因此,原有的纯粹传递技术之用,没有经过改造的架构不足以称为真正的“移动先行”。
不过可喜的是现在越来越多的移动公司采用了云架构。
2013年选择哪种后台作为运行架构的确很重要。比如,你将如何应对由需求增长引起的海量移动设备访问你的应用?这需要一个比以往更有弹性的后台支撑系统。此外,你又将如何制定合理、灵敏的开发周期,以适应客户端和服务器端两个层面的变化?你又将如何保证应用后台的容错性和冗余度?
关键是要保证你已经选择了一个弹性的、有足够容错性的云架构平台,以支撑你的移动网络应用所产生的这一系列需求。
统一开发及运营
移动先行战略给开发和运营团队协作方面带来了新的要求。
尽管“devops”(development+operation)这个词在前几年是作为一个热点词汇冒出来的,不过随着关于“开发和运营团队完美协作”的理念的流行,它现在不再是一个可有可无的关注领域,而是需要开发团队给予足够重视。
实际上,在移动应用失败因素中,运营相关失误是最重要的因素之一。来自Carnegie Mellon 大学的调研显示,引起移动应用失败的因素包括:软件升级失败、未能满足潜在需求、资源匮乏、配置错误等。这说明在应用程序发布之前运维人员对应用安全性、可靠性的部署与开发人员对核心代码的调试是一样重要的。
举例来说,在应用迭代开发环境中,需要对应用的客户端和服务器端频繁更新,你如何确保在应用的开发到发布过程中不出现配置错误?一般的做法是开发人员在这个过程中写出详细的编码细则,让运维人员在应用发布过程中有所指导,这些细则包括应用版本、安装准则,以及具体执行什么样的命令。
在开发与运维人员工作转换时保证不出差错的关键是将其自动化。开发人员需要把已经测试过的可自动执行的文件包交给运维人员。
当软件版本升级出现问题时,由新版本给已经发布的软件带来潜在可能性错误时,你将如何处理?这需要更好的实时故障诊断工具,避免开发人员重复错误。另外,如果能让软件轻而易举的回到初始版本,也是一个不错的主意。
所以,应用程序的部署必须同时保障高效(支持频繁迭代更新),以及高质量产品。
让“移动第一”战略具有可实施性
尽管实施“移动第一”战略听起来很难,但如果你在重新思考应用的开发、部署和管理方式过程中,同时把团队进行合理整合,事情会变得更容易些。
应用的开发和运维所需的技能和工具是全然不同的:无论是在设计用户界面,搭建API云架构,建立弹性后台基础设施,还是避免“devops”协作不善出现的应用程序错误时。事实上,解决问题的方法不止是改进整个流程、提高自动化程度,还包括一个良好的老式的团队协作。
(注:本文作者Andi Gutmans是Zend Technologies的联合创始人兼CEO)
|