Next-Generation Applications on Cellular Networks: Trends, Challenges, and Solutions
This paper discusses models and innovations for applications in mobile multimedia services, including application usage models and agile design work-flows.
By Nimish Radia, Ying Zhang, Mallik Tatipamula, Senior Member IEEE, and Vijay K. Madisetti, Fellow IEEE
ABSTRACT | Applications over cellular networks now range from operator–consumer applications (e.g., mobile television, voice-over-ip, video conferencing), peer-to-peer applications (e.g., instant messaging), machine-to-machine applications (e.g., data telemetry and automotive applications), mobile web services (e.g., music and video streaming), and social networking applications. The current approach for developing mobile applications appears to focus on utilizing template-based application-development kits provided by platform developers (e.g., Googlersquo;s Android, Applersquo;s iOS, or Nokiarsquo;s Symbian) to capture application designs and install them on the run-time platforms through use of code generators tied to particular versions of the platform. It is still unclear as to how an application developer (or network operator) conceptualizes the features of a mobile application in a platform-independent way, identifies its utility and explores its impact on the user, or further refines the choice of technology, platform, and mobility/interactivity requirements. This paper attempts to offer some guidelines, based on recent research in the industry and academia in these areas, toward the design and development of successful mobile applications that can utilize the capabilities of the next generation of cellular networks. We provide an overview of the growing trends of the rich multimedia and real-time mobile applications, including the diversity of application types, their impact on the enterprise and consumer, their traffic volumes, and their load and communication patterns. In addition to the overall trend analysis, we also study the design choices that are to be made, and how they are realized, and also describe how the platforms (client and server) may be implemented. Additionally, we focus on mobile video applications according to their communication characteristics and their distinct demands on the cellular network. We also present an analysis of device and network application programming interfaces (API) that form the basic building blocks for efficient and secure mobile application development of the future.
KEYWORDS | Android; mobile applications; mobile usage models; mobile web; wireless networks
- BACKGROUND AND INTRODUCTION Applications developed for mobile platforms, e.g., for iPhonersquo;s iOS, Googlersquo;s Android, or RIMrsquo;s Blackberry, have been the focus of intense business, market, and technical interest in the past few years. Mobile applications, targeted for both the consumer and the enterprise space, have been primarily focused on migrating popular applications already utilized by users in the wired network world to the wireless world (i.e., smart-phone or automobile). While a few applications, e.g., location-based applications and services, did not have an existing counterpart in the wired world, this set of uniquely mobile applications has constituted a smaller fraction of the universe of applications developed for the mobile market. The focus of the platform-based manufacturers has been on developing efficient code generators for applications targeted to their platform (e.g., Androidrsquo;s App Inventor). In other words, each platform developer has offered a model or “design pattern”for developing applications that can be ported to their platform. They have also released code generators that capture specifications of the mobile application provided by the application developer within design pattern/template model and generate code, which can be installed on their platform run-time environment over-the-air (OTA) or through a wired interface (i.e., USB).
A. MVC or PAC? The model-view-controller (MVC) model or design pattern (see Fig. 1) has been used widely in the mobile application software development community, wherein, the model encapsulates the functional data and the underlying logic (application code), while the controller captures the input from the user and updates the model, which then updates the view to present the results to the user. Since the view and the controller are coupled closely, together representing an interface to the user on one side, and to the functional application (model) on the other side, the application developer often finds it difficult to capture his or her specification effectively within the MVC model in a manner that can support multiple platforms in a platform-independent manner. In mobile applications, multimodal inputs (in addition to user inputs, such as keyboard and touch events) include various sensors (i.e., global positioning system (GPS) or accelerometer), further adding to the complexity of writing code for the controller and the view [1].
The presentation–abstraction–controller transformer/ gateway (PAC-TG) model (see Fig. 1) provides an alternative to the MVC for the development of more platform independent representations of a mobile application. The controller provides a link between the abstraction (model) and the presentation components. Various transformers and transcoders support customization of the interface to certain target platforms, while protocol gateways allow easy integration of various types of communication interfaces to inputs, outputs, and sensors. The entire mobile application is composed as a collection of components, each of which is modeled as a PAC-TG template [2], [3]. Consequently, current application development environments, or “Mobile App Builders,” consist of an application composer that the application developer uses to assemble building blocks (i.e., buttons, sliders), and the developer also defines how
全文共55310字,剩余内容已隐藏,支付完成后下载完整资料
下一代蜂窝网络应用:趋势、挑战和解决方案
----本文讨论了移动多媒体服务中应用程序的模型和创新,包括应用程序使用模型和敏捷设计工作流
摘要:蜂窝网络上的应用程序现在包括操作用户应用程序(例如移动电视、ip电话、视频会议)、对等应用程序(例如即时消息传递)、机器对机器应用程序(例如数据遥测和汽车应用程序)、移动web服务(例如音乐和视频流)和社交网络应用程序。目前开发移动应用程序的方法似乎侧重于利用平台开发人员(例如,谷歌的Android、苹果的iOS或诺基亚的Symbian)提供的基于模板的应用程序开发工具包,通过绑定到特定平台版本的代码生成器捕获应用程序设计并将其安装到运行时平台上。目前还不清楚应用程序开发人员(或网络运营商)如何以独立于平台的方式概念化移动应用程序的特性、识别其效用并探索其对用户的影响,或者进一步细化技术、平台和移动性/交互性需求的选择。本文试图基于这些领域的业界和学术界的最新研究,为设计和开发能够利用下一代蜂窝网络功能的成功移动应用程序提供一些指导方针。我们概述了富多媒体和实时移动应用程序的发展趋势,包括应用程序类型的多样性、它们对企业和消费者的影响、它们的通信量以及它们的负载和通信模式。除了总体趋势分析之外,我们还研究了将要做出的设计选择,以及如何实现它们,并描述了如何实现平台(客户机和服务器)。此外,我们根据移动视频应用的通信特点和对蜂窝网络的不同需求,重点研究移动视频应用。我们还对设备和网络应用程序编程接口(API)进行了分析,这些接口构成了未来高效和安全移动应用程序开发的基本构件。
关键字:安卓;移动应用程序;移动应用模式;移动互联网;无线网络
- 背景和介绍:为移动平台开发的应用程序,如iPhone的iOS、谷歌的Android或RIM的黑莓(Blackberry),在过去几年中一直是企业、市场和技术关注的焦点。以消费者和企业为目标的移动应用程序主要集中于将有线网络世界的用户已经使用的流行应用程序迁移到无线世界(即(如智能手机或汽车)。虽然少数应用程序,例如基于位置的应用程序和服务,在有线世界中没有现有的对应程序,但这组独特的移动应用程序在为移动市场开发的应用程序中只占很小的一部分。基于平台的制造商一直致力于为其平台的应用程序(如Android的App Inventor)开发高效的代码生成器。换句话说,每个平台开发人员都为开发可移植到其平台的应用程序提供了一个模型或“设计模式”。他们还发布了代码生成器,用于捕获应用程序开发人员在设计模式/模板模型中提供的移动应用程序的规范并生成代码,这些代码可以通过无线平台运行时环境(OTA)或有线接口(即、USB)。
A:MVC还是PAC?模型-视图-控制器(MVC)模式或设计模式(见图1)已广泛应用于移动应用软件开发社区中,模型封装功能数据和底层逻辑(应用程序代码),而控制器捕获来自用户的输入和更新模型,然后更新视图将结果呈现给用户。因为视图和控制器是紧密耦合的,代表一个用户界面一侧,和功能应用程序(模型)另一方面,应用程序开发人员通常很难捕捉到他或她的MVC模型中规范有效的方式可以支持多个平台独立于平台的方式。在移动应用程序中,多模态输入(除了用户输入,如键盘和触摸事件)包括各种传感器(即这进一步增加了为控制器和视图[1]编写代码的复杂性。表示抽象控制器转换器/网关(PAC-TG)模型(见图1)提供了MVC的另一种选择,用于开发更多独立于平台的移动应用程序表示。控制器提供了抽象(模型)和表示组件之间的链接。各种转换器和转码器支持将接口定制到特定的目标平台,而协议网关允许将各种类型的通信接口轻松集成到输入、输出和传感器。整个移动应用程序由多个组件组成,每个组件被建模为PAC-TG模板[2]、[3]。因此,当前的应用程序开发环境,或“移动应用程序构建器”,由应用程序开发人员用来组装构建块(例如,按钮,滑块),开发人员还定义了每个块对用户输入的响应,如何采取行动,结果,紧随其后的是一个描述的更新的信息呈现给用户,而更改的状态模型。然后代码生成器将此规范映射到移动平台[4]所包含的运行时。在本文中,我们将更多地关注如何设计下一代移动应用程序来满足企业和消费者领域中的特定需求,以及无线网络、移动需求和业务流程(和标准)如何驱动移动应用程序开发,而不是关注特定于平台的代码生成技术。
- 是什么使移动应用程序成功?现代企业的六个主要功能活动是:1)入库物流和供应链;2)出站物流与供应链;3)销售及市场推广;4)服务;5)操作;和6)的关系。这六项功能活动由辅助功能集支持,辅助功能集包括:1)基础设施;2)人力资源(包括社交网络);3)产品开发与技术;4)管理;5)采购[6]、[7]。成功的企业移动应用程序很可能是那些允许他们的客户获得明显的上下文中当测量以下指标:1)业务转型:业务转型是通过任务的自动化,信息和人的共享和联网,转换的过程和关系,并创造新的收入机会。2)效率:效率是通过生产率的提高和成本的降低而获得的,主要是通过过程自动化和信息共享。基于高可用性信息执行独立决策的能力还基于采用移动方法来构建组织架构。3)有效性:有效性是一个主观术语,与业务目标和目标的改进实现的感知有关。同样,在消费者环境中,成功的移动应用程序是那些能够积极影响生活和工作中相关领域的应用程序,包括1)生产率(例如,即时电子邮件、[基于云的文档、基于旅行的服务];2)公用事业服务(如导航、通信、报警、费用、票据管理等);3)娱乐(如游戏、音乐、视频、电视);4)信息收集(如浏览网页);5)社交网络。要判断移动应用程序的成功与否,最好的标准是它在实现其功能方面(即,并符合业务或消费者的目的或目标;如何利用技术提供高质量和良好的性能;以及它是如何被用户接受为用户友好,安全,强大,和满意的使用。成功的移动应用程序,如移动web浏览器或移动电子邮件,非常有用,提供了出色的性能,并且易于使用,同时提供了一个相对安全的使用模型。
- 为移动应用程序选择交互性特性 下一代移动应用程序开发人员必须为用户之间以及用户与资源(数据、信息等)之间的交互选择正确的特性。此类交互性和控制选择的示例包括以下[7]。构建移动交互:移动通信可以被视为中介或定位。介导交互允许任意两点之间的通信有一定空间位置和/或时间,在银行与客户交易,可以在正常的时间处理本地在盘后通过一个呼叫中心,而位于沟通需要支持一个特定的位置在空间和时间。控制风格:对组织或用户活动的控制是集中式的还是分布式的要求必须从设计的早期就集成到移动性和移动应用策略中。例如,支持移动出租车的呼叫中心通过集中控制进行运营,而连锁医院中的医疗服务提供商网络可能以自主方式运营,从而导致移动应用规范的变化。协作风格:要求员工以团队或个人的身份工作,也必须在早期集成到公司的移动应用策略设计中。对于移动应用程序套件的信息共享、交互性和连接性模型,独立工作或集体工作或两者兼而有之的能力具有重要的影响。通信风格:要求每个通信事件要么是事务(没有以前通信的内存,要么是无状态的),要么是关系(有以前通信的内存,例如,状态已满),这是企业必须在移动应用程序设计策略中包含的另一个重要因素。
- 移动应用的技术要求 确定了移动应用的功能范围后,根据其技术需求进行设计,如下[8]所示。1)连接性要求:连接性的选择范围:在线、在线点播、在线可用和离线。某些应用程序,如Skype,可能需要连续连接才能发挥作用,而其他应用程序,如股票报价,则可以按需连接。与编目目录相关的移动应用程序可能必须能够在连接可用时下载更新。其他应用程序,如消费游戏,可能能够在移动设备上运行很长一段时间,而不需要任何连接。2)访问要求:选择范围:读、写/创建、更新或警告。某些移动应用程序可能仅作为数据的消费者而运行,而其他应用程序可能是数据的消费者和生产者,而其他应用程序只需要在云中何时可用选定信息或信息是否已更改时发出警报。3)内容类型:内容跨度的选择:企业/结构化或非结构化(多媒体)。在企业中访问某些类型的内容(例如,工资单或销售数据)可能需要遵循数据库应用程序编程接口(api)的标准化连接器,而对非结构化数据(如音乐)的访问可以使用标准流媒体协议。4)数据大小:取决于应用程序使用大数据库还是小数据库。如果移动应用程序需要访问大量数据,那么考虑到设备上可用的资源有限,它们可能以客户机的形式更好地构建,客户机使用基于云的服务器,而不是将所有数据存储在本地。5)位置信息:许多流行的移动应用程序,例如本地搜索,都得益于位置信息的可用性。6)设备管理要求:a)同步要求;b)分区要求(业务/个人);c)用户角色分配和策略;d)备份和安全功能;e)损失和防盗。
- 运营商对移动应用的影响 到目前为止,我们讨论了不同移动应用程序的设计注意事项。一方面,不同类型的应用程序在网络上产生不同的负载,网络条件和设备的计算/存储特性影响移动应用程序的感知质量和使用。作者研究了用户行为的变化以及应用程序的类型作为运营商数据计划和平台的函数,如图2所示。图2显示了随着订阅者数据计划配额的增加,不同应用程序的分类以及它们的绝对使用量。每个数据计划都与x轴所示的每月最大带宽消耗值的给定限制相关联。有趣的是,我们发现不仅流量增加了,而且四种应用程序之间的分布也发生了变化。当数据限制为2gb时,web浏览是最主要的移动应用程序。当限制增加到5 GB和10 GB时,在线媒体(音频、视频)变得越来越占主导地位。这些知识可以增强网络运营商提供更智能的资源,提高用户满意度,增加收益。除了网络的影响外,用户设备对用户使用移动应用程序的方式有更直接的影响。图3显示了不同平台类型的应用程序使用情况分布,该分布基于从欧洲主要ISP的网关GPRS支持节点接口收集的一周数据的测量。其中一项研究发现,使用流动网络数据接入点的手提电脑或个人电脑(pc)用户消耗大部分带宽,因为该平台(包括显示器大小)对用户友好,从电池寿命和计算能力来看都是可取的。在不久的将来,移动PC或平板电脑上最主要的应用是网页浏览。另一方面,针对消费者智能手机市场的HTC Nexus One,其主要应用是社交网络的使用。对于黑莓类型的设备,主要的应用程序是电子邮件,因为它主要用于业务和企业用户。
- 移动应用程序设计指南 根据定义,移动应用程序用于具有挑战性和不断变化的用户环境。用户(企业或消费者)是否无法提供充分关注到设备(例如,一边),在许多不同的环境和使用的应用程序场景(飞行期间在公司会议或),用户可能无法使用手完全利用应用程序和设备的特性(例如,开车在使用应用程序),并可能有多个干扰和干扰在移动任务。广泛的研究将这些指南分为三类:[6],[7],下面将讨论。
A:移动应用程序的通用UI指南 已经为移动应用程序中的用户界面(UI)设计开发了一套通用的指导原则。1)为有经验的用户提供快捷方式,为新用户提供向导;2)不断提供反馈(触觉、听觉、视觉等),保持用户的参与和专注;3)通过与应用程序的可预测、直观的交互序列,创建良好的对话框;4)允许通过在任意时刻控制(或中止)应用程序来维护控制;5)跨多个平台(如桌面和移动)创建一致的应用程序外观和感觉;6)通过仔细检查允许确认和反转步骤的错误对话框,减少使用中的错误数量;7)通过每次将信息分组到“chunk[”中,减少对用户内存的依赖,从而限制滚动的需要。
- 流动准则 针对移动应用程序的特定迁移指导方针包括1)创建适用于多个上下文(家庭、业务、旅行等)的设计,包括对应用程序运行时适应性的支持;2)允许与设备进行多模态交互;3)使用方便,能够在有限的用户注意力下处理多次频繁的中断;4)设计运行速度,使响应请求快速、紧凑;5)信息分层呈现,允许自顶向下交互;6)允许个性化应用以适应用户;7)提供应用程序与桌面和云数据存储同步的能力;8)设备、应用、系统级内置安全设计;9)允许单个或多个用户的隐私。
- 组织指导方针 公司和企业特定的移动应用指南包括1)与组织的标准和系统的一致性;2)支持组织的商业模式和战略;(三)将与动员有关的技术与组织内现有任务和鼓励采用的社会结构联系起来。
- 移动和服务器平台架构 移动应用程序模型是支持移动和服务器平台,它不仅是重要的理解移动平台已经进化,但也越来越多的作用,网络和通信资源在网络方面,和增加适应在服务器端,是导致设计、构建、测试和使用先进的移动应用程序的未来[10]。
A:移动平台架构演进 移动平台的特点是在以下技术领域的能力和功能不断增强。通信和网络架构:1)数据和语音通信平台越来越倾向于朝着ip模型multimegabit上传和下载数据速率,同时与多个通信管道,第五次代(4 g)移动链接,WiFi链接局域网(LAN)的连接,和短程个人区域网络(锅)创建网络与本地设备嵌入在大多数电子系统。未来的智能移动平台预计将与地面电视紧密互动;机顶盒;视频游戏控制台;汽车平台;旅游、机场及酒店资讯亭;超市结帐寄存器;以及在线和现实世界中的业务系统(例如支付和购物)。当前使用模型,大多数移动平台可以与汽车音响系统集成,将扩展到包括其融入消费者通常与其他电子系统,包括个人电脑,笔记本电脑,电视,和各种各样的支付系统,位于购物中心、杂货、在学校或工作场所。2)数据和内容存储架构:移动平台上的本地存储不断增加,基于云的存储增强了本地存储能力,提供了几乎不受限制的容量,可以按需下载,无论是批处理模式还是流访问模式。许多这样的存储和同步选项是基于订阅模式,为存储和内容,并确保应用程序看到的移动消费同一Bcloud-t
全文共15846字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[499]
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。