抖音技术能力大揭密!钜惠大礼、深度体验,尽在火山引擎增长沙龙,就等你来! 立即报名>> 了解详情
写点什么

敏捷移动应用开发

2014 年 10 月 11 日

对于移动应用开发,各个团队正在寻求引进轻量级的开发流程,比如敏捷软件开发,它为短周期内的构建应用提供了巨大的机遇和价值。

构建移动应用的开发组织和团队面临着他们自己独有的复杂性的挑战。不像传统的客户端—服务器架构的软件开发,也不像基于网页的软件开发,移动开发工程师们面临着非常严格的限制,例如内存,屏幕大小,输入设备等等……还有应用程序短暂的生命周期和苛刻的可用性需求。这就是为什么移动应用开发的工程师们需要快速地处理开发和部署周期中的所有不确定因素。

高德纳公司的分析师 Van Baker 在他最近的一篇博客中说,那些传统的实践对于移动应用开发来说已经不再适用,取而代之的是公司必须采用敏捷开发。

企业应用的开发团队按照传统的实践去定义和开发桌面应用,但是对于移动开发来说,大多数情况下并不适用,这是因为设备的多样性,网络连接和其它移动方面特殊的考虑。取而代之的是,应用程序开发经理们应该使用功能、性能、负载和用户体验测试,以及敏捷开发实践。

移动应用开发面临的一些限制如下:

  • 移动设备对于应用的大小有限制。
  • 移动应用应该可以快速下载。
  • 快速顺利地更新应用。
  • 应用要无错和快速。
  • 根据需要,与后端服务器的无缝交互。

为了达到这种状态,需要不断改变和调整。因为敏捷适合于频繁的变更,所以它可以用于移动应用开发。Baker 说道:

移动应用程序不一样。它们需要频繁修改,以满足终端用户的期望。而敏捷开发流程尤其需要运营工作走在基础设施和系统的前面,以支持移动应用程序的频繁部署和推送更新。

Baker 提到,开发团队第一步需要为移动应用开发专心设计最佳的界面,并且开发人员需要把界面设计工作和用户真正的工作流程结合起来。

让用户预先体验一下这个应用程序将会做成什么样子,用适当的工具,根据用户的感受实时调整屏幕布局,这样做可以确保应用程序一旦试运行或正式部署,从第一个版本开始就拥有用户熟悉的外观,并且接近于满足用户的需求。仅凭这一点就会为公司成功的发展提供更大的机会。

Antony Savvas 说道,移动应用程序的测试也很复杂,因为移动应用在不同的操作系统和网速下的表现都不同。

移动应用的测试具有一些独特性,包括联网方式、便捷性、支持的设备、触摸屏、新的编程语言,资源约束和上下文感知。 Eliane Collins, INdT 产品验证部门的技术经理在他最近的一篇博客中描述了一些克服这些挑战的敏捷测试实践。

  • 团队在一起办公:加入团队的测试人员、设计师和开发人员都安排在同一个房间,并鼓励他们之间的合作。
  • 结对编程:开发与测试人员结对坐在一起实现单元测试,从而提高测试的覆盖率。
  • 结对测试:测试人员一起实现并执行探索测试和非功能测试(性能和安全)。
  • 回归测试优先级:回归测试按照发布功能的重要性顺序执行(覆盖认证测试)。
  • 设计师参与界面测试,找出屏幕的流程和设计方面不一致的地方。

Eddie Kenny, Betfair 的敏捷软件开发经理,对移动应用开发采纳敏捷分享了他的观点。

所有做移动应用开发的公司都应该寻求采纳敏捷实践。这给不愿意冒险的公司敲响了警钟,它们会被那些已经采纳敏捷的竞争对手超越。如果你一开始只发布一个简化版本的应用,然后在此基础上不停地迭代,你的产品就会比你的竞争对手更快上市。

查看原文链接: Agile for Mobile Application Development


感谢曹知渊对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014 年 10 月 11 日 02:141197
用户头像

发布了 55 篇内容, 共 11.2 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

话说 wait、notify 、 notifyAll

木子的昼夜

Java 通信 Wait notify notifyAll

简述Electron的发展和应用

anyRTC开发者

WebRTC 跨平台 Electron RTC sdk

LeetCode题解:190. 颠倒二进制位,使用遮罩,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

基于pandas

rainbow

Mybatis系列全解(八):Mybatis的9大动态SQL标签你知道几个?提前致女神!

潘潘和他的朋友们

Java 后端 mybatis 后台 mybatis源码

大话 Python:python 操作 excel 系列 -- pandas 读取、分析、保存

老王说编程

Python Excel pandas

Redis最佳实践:7个维度+43条使用规范,带你彻底玩转Redis | 附最佳实践清单

Kaito

数据库 redis 后端

架构学习2021年03月03日(002)

张小胖

职场中吃力不讨好?从根因上去破解

一笑

28天写作

大话 Python:python 操作 excel 系列 -- excel 数据分析

老王说编程

Python 数据分析 Excel

B站专栏内页数据如何抓取,Web Scraper 学习在进一步,无编码学爬虫之五

梦想橡皮擦

Python 28天写作 3月日更

有图有真相:带你实现现流行的权限验证

华为云开发者社区

安全 session 权限 JWT 认证

上过云么?一行代码秒上云体验过么?

华为云开发者社区

华为云 云服务器 devcloud 代码托管

元素XPATH定位点击为什么老失败?

小小娃爱吃甜食

Python 自动化 测试 selenium

不用代码趣讲 ZooKeeper 集群

HelloGitHub

Java zookeeper ZooKeeper原理

git 教程 --git reset命令

生之欢愉,时间同行

git git reset

大话 Python:python 操作 excel 系列 -- 数据清洗

老王说编程

Python Excel 数据清洗

大话 Python:python 操作 excel 系列 -- 数据处理

老王说编程

数据处理 python excel

智汇华云 | 深入理解Istio中的证书管理

华云数据

呀,又是一个谣言「Day 12」

道伟

28天写作

徐烨:这20年,我与应用系统的“云化”之路

华为云开发者社区

架构 服务器 华为云 企业上云 应用系统

【管理笔记18】行销管理的6个步骤

俊毅

浪潮肖雪:用工业互联网解决企业痛点问题

浪潮云

工业互联网

通过AWS EMR降低集群计算成本

行者AI

AWS 计算

死磕归并排序算法

Silently9527

算法 排序算法 快速排序

大话 Python:python 操作 excel 系列 -- 怎样读取 excel 文件?

老王说编程

Python Excel 数据读取

DevOps敏捷60问,一定有你想了解的问题

华为云开发者社区

DevOps 运维 敏捷 工具链 华为云

大话 Python:python 操作 excel 系列 -- 数据的提取与筛选

老王说编程

Python Excel 数据提取与筛选

大话 Python:python 操作 excel 系列 -- 数据汇总与统计

老王说编程

Python Excel 数据统计

据说很多女性看不懂地图——视觉表象

Justin

心理学 28天写作 游戏设计

linux使用udev配置U盘自动挂载

happlyfox

Linux 28天写作 udev 自动挂载

Study Go: From Zero to Hero

Study Go: From Zero to Hero

敏捷移动应用开发-InfoQ