技术开发 频道

用SOA构架更好的移动应用服务

   移动应用的标准架构

    VoiceXML等标准的成功使得之前分离的交互语音应答系统(IVR)和网络这两个世界融合到了一起。这样不仅用户可以从更好的应用中获得方便,连开发人员的生活都变得安逸了,因为统一的架构在为他们提供了更好的灵活性、扩展性和互通性的同时,还提供了更快的周转时间。

    当前的多信道电话应用的标准架构主要由以下几个部分构成:

    · 基于Eclipse框架的统一的服务创建环境

    · 基于电话应用服务器的统一的服务运行环境

    · 基于面向服务架构(SOA)的统一的后端设备

    在本文下面的部分中我们将主要讨论服务创建环境,分析其为什么能帮助开发人员给用户提供更好的体验。

    用Eclipse+SOA构架移动应用服务

    Eclipse提供了一个开放框架将所有最优工具整合成强有力的集成平台。因此开发人员不必再为选择一个整体式的IDE而采取种种折中措施,他们可以从一系列开源和商业组件中挑选最合适的组件。这些组件以插件的形式融入到Eclipse架构,从而实现彼此之间的无缝交互。

    在构建多信道电话应用的时候,这种方法的优势尤为明显,因为可以根据各个信道不同的技术需求作为非常好的的选择。更妙的是,这些工具大部分都可以免费下载到,比如下面我们就有一个很好的例子。

    VoiceObjects Developer Edition即是一个综合性的多信道框架的优秀示例,它可以为语音、视频、文本和网络信道提供综合支持。它包括一个图形界面IDE和用于一键测试及部署的嵌入式电话应用服务器。应用程序是使用面向对象的方法通过一系列主要组件模拟用户交互和后端集成与应用逻辑进行构建的。而拖曳式的图形用户界面使快速原型开发和对象重用更为便捷。

    个性化调整是通过"层"的概念实现的,而这个层同时也包括了像多语言或多外观等方面。在各个电话信道上都可以进行集成测试与调试,包括可以显示(各种手机上的)文本和网络的电话模拟器。如果要端对端地测试语音程序,可以下载整套的IVR软件比如Voxeo的Prophecy,也可以使用寄存式IVR比如Tellme。

    如果你的开发重点是语音信道,那么你可以使用Eclipse Voice Tools Project。这种应用设计和Microsoft Visio类似,是从一套基本的可配置的构建模块开始的,使用的是box-and-arrows 方式。应用逻辑通过定制JavaScript代码进行定义。在测试方面,可以将应用封装成WAR文件并手动部署到一系列可选的网络应用服务器上,比如Tomcat。

    在语音应用开发中语法也是一个很重要的方面。用户可能会说"我的账单有点问题"或者"转账五百美元"等,因此必须对这些语句进行建模,这样语音识别引擎才能成功地对其进行辨别。Nu Echo的NuGram IDE为有效地管理这种语法提供了一套工具。诸如自动完成和即时验证等功能可以为构建语法规则提供有效帮助。在测试和调整的时候,可以对样本用户的发音方式进行解析,从而分析其语法的覆盖范围并保证正确的语义解释。

    不管应用运行于哪种信道,对后端系统的访问都是关键的一部分。在Eclipse系统中,有几种框架可以用来解决这个任务。其中两个比较重要的是网络工具箱(WTP)和SOA工具箱(STP)。

    对于简单或即时性的任务来说,通常会选择JavaServer Pages(JSP)作为解决方案,其优势是较低的管理费用和对静态及动态页面的直接支持。WTP提供了种类繁多的各种用于支持开发、测试和部署的功能。

    对于较复杂和偏向于重用性的任务来说,网络服务是一种较好的方式。STP包含了广泛的功能,包括SOA中从业务过程建模和服务编排到代码生成、部署、测试及文档的方方面面。

    而Eclipse插件只是这诸多可自由选择的工具中的一部分。越来越多的开源项目和商业开发标志着Eclipse平台已经在开发团体中获得了主导地位。

    Eclipse工作平台其自身便是优秀的工具集自不用说,仅仅各种插件(如上所述)即可带来流畅的互通性:你可以在检查并调整一个语音识别语法的同时查看对应于用户输入的对话流;你可以在使用简单的拖曳方式调整应用逻辑的同时编写连接到后端的网络服务代码。可以说有史以来开发人员第一次可以真正地同时掌握应用的各个方面而不必在不同的IDE之间切换或为选择某个独立的环境而做出各种妥协了。

    移动应用的新时代

    移动应用还将继续发展下去。

    用户需要获取越来越多的的信息并进行交互,而且他们希望这些操作能与以往同样便捷——不管是拨打800电话、发送短信或是访问一个移动网站。这给开发人员带来的挑战便是要实现可以根据用户需要和期望动态进行调整的多信道电话应用。

    IVR与因特网技术的融合使得我们可以把从网络中学到的东西应用到所有的电话信道中:利用以应用服务器为中心的多层架构。通过网络服务和SOA统一对后端系统的访问。

    在IDE方面,Eclipse框架具有丰富的且仍在不断充实的各种互通的插件,为开发人员提供了大量可选的功能套装。这样就可以满足多信道应用开发的各个方面的需求--并且不是孤立地,而是以彼此相通、彼此协调的方式。

    还有同样重要的一点,即这些Eclipse插件中的大部分都可以通过免费下载得到,这使得开发人员不仅可以自由选择,还能分别对各种工具的优势进行评估。

    现在,要实现一个新点子已经无比简单。灵活且可扩展的设备已经就位,能够实现创新的工具也唾手可得。

    可以说,更优秀的移动应用的时代马上就要降临。

0
相关文章