本为为译文
3、 一个移动的研究议程软件工程
尽管有300,000 +移动应用已经开发,围绕工程过程仍然没有太多的正式研究。现有机构的知识是非常务实的,有许多指导方针和许多示例代码作为例子。在这节中,我们找出一些在软件工程技术研究中有关的移动应用开发最有前途的领域。
3.1用户体验
使用移动设备与桌面工作或笔记本电脑不同。尽管手势,传感器和位置数据可能在游戏机和传统的计算机使用,他们在许多移动应用中起主导作用。较小的显示屏以及不同的交互风格对互动移动应用程序的设计也有重大影响,同时对应用程序开发也强大的影响力。移动用户界面范式以部件,触摸,身体运动和键盘(物理和虚拟的)为基础,而不是以熟悉的苹果的iOS的WIMP(窗口,图标,菜单,指针)界面风格或Microsoft Windows为基础。其他内容在用户体验上也可能发挥作用,包括物理位置等方面,接近其他移动设备和各种设备功能的激活。
移动平台包含有自己的UI库和准则,以便使设备的本地应用程序都有一个共同的“外观和感觉”。这是坚持以应用程序开发人员的兴趣作为平台的标准,尤其是在触摸屏设备上,用户期望使用平台的一套标准的手势,这些手势因平台而不同。
随着尽可能使用有限的屏幕空间所带来的挑战,现在比以往任何时候更加重视用户界面设计。移动用户往往寻求快速完成简单的任务,不能采取由一个传统的Web应用程序提供的全方位的优势。
移动Web应用程序的用户界面可能借鉴传统的Web应用程序,但必须经常重新设计,以突出最常用的功能而且更有效地利用屏幕和移动的用户界面范式,包括用户输入和相关的议案和位置信息。
这些意见提出了一些包括研究问题,包括:
1)如何确定哪些职能应该在目前在传统的应用程序的移动版本体现?是否有技术,、可以保证最大限度地重用不同版本之间的代码?
2)有没有与建立本地移动应用类似的建立网络移动应用的方法(或其中一套为不同的平台)?用户需求满足是否有很大的区别?
3)是否有为移动应用程序开发的流程和工具准备特定情境的需要?移动用户界面是否需要一个不同的上下文设计过程以支持不同的用例?
4)如何整合各种软件设计师在应用程序设计的输入和传感器数据的形式?
用户体验也收到其他与设备相关工业设计的影响,例如,重量和体积的设计问题,但这些项目主要是外域的软件发展,不在这里做进一步讨论。
3.2非功能性需求
任何应用程序的成功,移动或以其他方式,取决于一长串非功能性的特质。在那些与移动应有最相关的需求中(有效利用设备资源,响应,可扩展性),可靠性(健壮性,连接,稳定),质量(可用性,可安装),和安全性。其中许多关于Web应用程序的问题已经解决,这些知识提供了一个学习移动应用需求的很好的起点。
在移动环境下,其对不同类型的网络的依赖,以及与传统的环境的不同,就提出了一些