元数据驱动的移动商业对象的制作方法

xiaoxiao2020-7-22  6

专利名称:元数据驱动的移动商业对象的制作方法
技术领域
本发明涉及软件开发,更准确的是涉及移动环境中抽象化数据存取。
背景技术
为了抽象化数据存取到移动装置中的远程系统,对象通常被设计以面向对象的方式来表示不同来源的数据,如关系数据库。这也通常允许通过对象关系映射存储对象到装置上的关系数据库中。此外,同步往往在本地数据库和企业数据库之间进行。最后,应用程序开发商可以在各种应用程序中再使用这些对象。这个方法的缺点是当关键的系统组件改变时,必须改写和重新设计对象。通常,几个版本的对象是需要的,导致兼容性问题。另外一个缺点是需要开发人员了解关系型同步技术的复杂性。虽然对象关系映射隐藏了大部分对象的映射细节,但是没有这样的帮助去调动企业数据作为对象在移动应用程序中以透明和有效的方式使用。最后,在许多类型的数据源如Web服务、企业应用等,任务变得更加艰巨。因此,一个灵活的数据抽象化方法是必须的。

发明内容
本发明实施例包括在远程数据源抽象化数据的系统,方法和计算器程序产品。例如,该方法包括以下步骤定义数据源、定义数据同步的方法以进行与数据源的通信,以及提供抽象层来存取数据源的数据。抽象层实现了当数据通过抽象层被存取时数据同步的方法。本发明的其他功能和优点,以及不同实施例的结构和操作,会在下面与附上的参考附图详细描述。本发明不限于这里所述的具体实施例。这里提出的实施方案只作说明之用。根据这里的教导,额外的实施例对本领域的技术人员是显而易见的。


纳入本说明书一部分

了本发明的实施例,与说明书结合在一起,进一步解释了本发明的原理并使得本领域的技术人员能够制造和使用本发明。图1是本发明实施例中网络架构的例子,或者其中某些部分得到实现的例子。图2是本发明的一个实施例中开发框架的例子。图3是本发明的一个实施例中移动应用程序的扩大图。图4是本发明的一个实施例中定义移动商业对象(MBO)的步骤流程图。图5是根据本发明的一个实施例中说明MBO开发平台的示范用户界面的截图。图6是根据本发明的一个实施例说明了一个MBO示范的整体开发和部署框架。图7是根据本发明的一个实施例说明了一个示范的数据库连接剖面图,以及从一个表选择不同的列。图8是根据本发明的一个实施例说明了一个从MBO属性到企业信息系统(EIS)列的示范映射。图9是根据本发明的一个实施例说明了一个示范创建操作。图10是根据本发明的一个实施例说明了运行参数到EIS参数的示范映射。图11是根据本发明的一个实施例说明了一个部署MBO模式和同步元数据表到客户端数据库的示范操作。图12A和12B是根据本发明的一个实施例说明了示范的元数据表。图13是根据本发明的一个实施例说明了一个示范的客户端堆栈。图14是根据本发明的一个实施例说明利用MBO接口的步骤流程图。图15是根据本发明的一个实施例说明保存和利用MBO的状态的步骤流程图。图16描述了本发明一个可实现的实施例中计算器系统的例子。在参照附图的基础上,现在开始陈述本发明。附图上的相同的参考号码表示相同的或者功能上相似的组件。再者,参考号码最左边的数字用来识别参考号码首次出现在哪个附图上。
具体实施例方式I.前言对于本发明以下的详细说明,请参照附图,附图描述了本发明相对应的示范实施例。其他的实施例是可能的,在本发明的精神和范围内可以对实施例进行修改。所以,这里的详细描述没有限制本发明的范围。然而,本发明的范围是被权利要求书所定义。如下文描述,对于本领域的技术人员,此发明明显地可以在附图中软件、硬件、韧体和/或者实体的不同实施例中执行。本发明不会被任何利用专门硬件控制去实践本发明的实际软件代码而限制。因此,本发明的操作性能会在理解改装和变动实施例是可能的基础上陈述。图1是本发明实施例中网络架构100的例子,或者其中某些部分得到实现的例子。 根据本发明的一个实施例,网络架构100包括通过网络104连接到远程数据源106的移动装置102。在本发明的进一步实施例,开发人员编写软件应用程序以部署在移动设备102 上。该软件应用程序被编写为偶尔地从远程数据源106收回数据。当软件应用程序尝试从远程数据源106收回数据时,网络104可能是可用的或者不可用的。本领域的技术人员会明白移动装置102可以是任何通过网络,如网络104,连接到远程数据源的计算装置,以及不需要一定是移动装置。继续参照图1,软件开发过程在这里会更详细地描述。II.软件开发框架图2是本发明的一个实施例中发展框架200的例子。根据本发明的一个实施例,框架200定义了一个移动应用程序202、中介软件204、设有关联的元数据和数据的移动商业对象(“ΜΒ0 “)206、企业数据源208。本领域的技术人员会明白显示在图2中框架200的安排只是以例子的方式来表示,而不是限制。根据本发明的一个实施例,移动应用程序202 可以在图1移动装置102上运行。根据本发明的进一步实施例,企业数据源208相当于图 1中远程数据源106。根据本发明的一个实施例,移动应用程序202通过调用API或中介软件204的其他界面来存取企业数据源208的数据。根据本发明的一个实施例,中介软件204是加利福尼亚都柏林Sykise Inc.提供的iAnywhere Mobilink中介软件。本领域的技术人员会明白企业数据源208可以是任何数目任何种类的数据源,包括如关系数据库或远程程序。中介软件204通过使用它的API,可以由一个应用程序到一个或多个数据源如数据源208,使
得通信更简单。根据本发明的一个实施例,MB0206是包含在企业数据源208的数据子集代表。在本发明的进一步实施例,MB0206同时代表多个数据源(即MB0206包括206多个数据源的子集)。MB0206用元数据来表示,并由移动应用程序202的软件来解释所述元数据,以方便通过中介软件204存取来自企业数据源208的数据。例如,如果企业数据源208是含有一间公司内个人电话目录信息表的数据库, MB0206会被配置为从数据源208存取电话目录信息和允许移动应用程序202使用面向对象的方法去存取该目录而不需要查询企业数据源208本身。这使移动应用程序202以透明的方式存取来自企业数据源208的数据。图3是本发明的一个实施例中移动应用程序202的扩大图300。根据本发明的一个实施例,如图2所示,移动应用程序202通过中介软件204来和企业数据源208通信。移动应用程序202由面向对象编程(“00P“)的语言对象302组成。在本发明的一个实施例, 这些OOP对象302拥有通过中介软件204来存取的数据的抽象视图,该抽象化由映射层提供,如对象关系映射层304和消息对象映射层306。此外,根据本发明的一个实施例,装置持久性库308被提供去保存数据到执行移动应用程序202的移动装置102。在本发明的一个实施例,本地数据库310被提供用来储存从数据库数据源收回的数据,也用来储存移动应用程序202的更新。在另一个实施例中,本地信息缓存312被提供用来在移动装置102储存信息数据移动。这些缓存设施310和312 被装置持久性库抽象化到映射层304和306。在一个实施例,不是为了限制本发明,本地信息缓存312是中介软件204和本地数据库310之间传输信息的管道。在一个实施例,本地信息缓存312从中介软件204接收信息并通过持久库308写入信息(或数据)到本地数据库310。当移动应用程序202存取、使用、或与对象302相互交流,它要求信息对象映射层 306读取本地数据库310。在一个实施例,本地数据库310通过信息对象映射层306和装置持久库308来更新变更。然后发出消息,以表示中介软件204的变更通过本地信息缓存312 完成。如此,本地信息缓存312作为一个信息传递渠道。根据本发明的一个实施例,任何通过中介软件204接收的数据被认为是被装置持久库308保存(或“持久化“),另外任何会传送到中介软件204的数据也被认为是保存。此外,根据本发明的一个实施例,移动应用程序202包括状态管理模块314以确定持久化数据的状态,还包括数据安全模块316以确定持久化数据的安全特征。图2的MB0206与映射层304和306相似地运作,除了它不单纯是移动应用程序 202 —部分的库。MB0206允许应用程序202的OOP对象302存取MB0206中的数据,其方法与映射层304和306提供的并抽象化方法相似,但MB0206提供了额外的功能以提高部署在移动环境中的应用程序的能力。III.定义移动商业对象
图4是本发明的一个实施例中说明定义移动商业对象(MBO)的步骤流程图400。 本领域的技术人员会明白定义一个ΜΒ0,并非所有以下的步骤都是必要的。根据本发明的一个实施例,MBO是通过使用元数据来定义。该方法开始在步骤402,然后进行到定义数据源的步骤404。根据本发明的一个实施例,所述数据源是企业资源。根据本发明的进一步实施例,所述数据源是一种服务。根据本发明的一个实施例,MBO进一步定义了从数据源接收或发送到数据源的任何被执行的转变。在本发明的一个实施例,通过定义数据源,图3中OOP对象302存取的属性和领域也被定义,而MBO可以使用传统的OOP方法来沟通。在步骤406,与MBO相关的数据的安全特征被定义。根据本发明的一个实施例,这包括关于什么系统组件可以存取数据以及如何存取数据的信息。根据本发明的进一步实施例,这还决定了是否要按照事先确定的政策在装置上擦除数据以保护由于用户乱放装置而造成的数据泄漏。在步骤408,MBO的数据同步特征被定义。例如,这可以包括关系数据同步,如本地数据库的副本与远程数据库和信息模型的同步。该方法继续进行到步骤410,在此步骤,实时MBO和其他MBO之间的关系被定义。 在步骤412,从远程数据源接收数据的方法被定义为默认(或预先设定的)缓存策略。包括配置缓存时间间隔和预定重复去更新来自EIS的缓存数据的任何缓存策略变更可以是MBO 定义被部署后的管理任务。在步骤414,数据被远程数据源压栈到移动装置的处理方法被定义。例如,这包括数据是否应该更新和如何更新,以及紧急和非紧急压栈压栈数据如何被处理。在步骤416, MBO的内在调用方法被定义。这使得远程数据源直接地调用MBO以压栈动数据,从而得到比传统压栈更新更先进的功能。MBO的图形用户界面(“⑶I”),以及MBO与移动应用程序自己的⑶I的互动在步骤418被定义。所述方法结束于步骤420。IV.示范的MBO开发平台在一个实施例,一个基于数据复制和操作反馈(或操作回放/中继)的开发平台可以用来模拟ΜΒ0。作为一个例子而不是为了限制本发明,开发平台/框架可以定义绑定 MBO到后端系统。一个示范的MBO开发框架是Sykise 的无线企业平台(SUP)。在一个实施例中,中介软件204执行MBO模型以从后端系统获取数据,并使用复制去调动和部署MBO 到移动装置。数据库复制方法对本领域的技术人员来说是众所周知的,可以是例如共享信息进程,以确保冗余资源如软件或硬件组件之间的一致性,以提高可靠性、容错性或存取能力。在一个实施例中,MBO开发平台允许用户设计MBO —次,然后使用普通的基础设施部署MBO到多个移动装置。在本发明一个非限制性的实施例中,MBO的开发平台允许“设计时间〃和〃运行时间〃环境的分离自上而下和/或自底向上的设计方法模具组件企业数据服务移动中介软件(移动一致性)
装置应用(UI)为移动元素使用基于对象的原理装置代码的代码生成、包装和部署在当地环境使用商业对象和调用APIs的自定义。图5是根据本发明的一个实施例中说明MBO开发平台502的示范用户界面的截图。如图5所示,MBO开发平台502允许通过集成开发环境(IDE)来设计ΜΒ0。在一个实施例中,MBO开发平台502包括一个设计者模式以允许用户设计和修改 MBO0作为一个例子,这可以通过使用接口 504来“定义/编辑"ΜΒ0。在设计者模式,MBO 开发平台502为移动装置和任何服务器端应用程序生成SQL和代码操作。此外,额外的操作如应用程序接口(API)的创建和过滤可以在设计者模式下完成。在一个实施例中,MBO开发平台502可以打包和部署MBO到不同的应用程序。在操作或运行模式,在MBO开发平台502的运行引擎进行被MBO运行参数指定的同步/负载和关系管理。作为本发明一个非限制性的实施例,MBO的运行参数与MBO的运行行为相关联并可以被开发者指定。图6是根据本发明的一个实施例说明了一个MBO示范的整体开发和部署框架600。 如图6所示,MBO开发和部署框架可以包括但不限于服务器、工作区和平台代码模板。作为一个纯粹说明的例子,该服务器可以是Sykise 的无线企业平台(SUP)服务器。在一个实施例中,服务器使用MBO运行和服务器运行参数以提供MBO元数据(如后端数据的元数据)到工作区。然后,所述工作区可使用MBO元数据(或返回的信息)来设计ΜΒ0。在一个实施例中,这样的设计过程产生了如元数据描述的ΜΒ0。作为一个例子, 工作区是MBO开发平台502。与工作区相关联的平台代码模板可以生成拥有MBO层的装置指定的客户端应用程序。在一个实施例中,MBO层表现为运行对象,并可以用于多个应用元素的同步和交易。开发和部署框架600也可用于生成客户端对象,包括但不限于C#和Java对象。在一个实施例中,MBO的输入参数可以个性化来过滤后端数据集或者提供后端数据以确定哪些数据需要进行处理并返回到开发和部署框架600。在一个实施例中,MBO的属性和参数可以定义移动装置端的数据存储和服务器端缓存的范围。每个MBO的属性可以被映射到企业信息系统(EIS)列、数据库操作的特性或任何其他数据库的结构。V. MBO 操作在一个实施例中,MBO操作包括(但不限于)通常相对于MBO的属性在企业环境内或通过外部服务进行的后端任务。MBO的操作例子包括但不限于创建、更新和删除(CUD) 操作。MBO的参数(如操作参数)可提供给一个或多个操作,并可以链接到上游参数或 MBO属性。此外,本发明的实施例允许操作参数进行个性化。在一个实施例中,MBO的定义如属性和操作参数,在设计时被绑定或映射到后端数据。在设计时的绑定或映射包括创建可用于将数据绑定到MBO定义的EIS连接文件。作为一个例子,EIS连接文件可用于执行后端系统。
VI.示范的读取操作如前所述,MBO的属性可以被映射到EIS的列或属性。在一个实施例中,服务器缓存(未显示)可以通过执行读操作(可以使用一个或多个读/回放参数)来集结。根据本发明的一个实施例,图7显示了一个示范的数据库连接剖面图,以及从一个表选择不同的列。如图8所示,每个MBO的属性可以被映射到EIS的列。在一个实施例中,MBO的属性名称不需要和EIS的名称匹配。MBO开发平台502可以执行一个定义为读操作的SQL语句,然后储存结果在服务器缓存。VII.示范的创建操作在一个实施例中,MBO的操作参数可以被映射到EIS的参数(或变量)。如上所述,MBO可以包括创建、更新、删除和其他操作种类。在一个实施例中,MBO的每个操作类型可以有多个实例。—个示范创建操作在图9中显示,其连接到一个数据库文件并将数据插入表中。 如图9所示,在插入语句中使用的值使用属性“OOP“,该属性可以标记该值为MBO开发平台 502中EIS的参数。然后,操作参数被映射到如图10所示的EIS参数。VIII.运行部署在一个实施例中,一旦MBO模型被定义和绑定到数据源,包括一个或多个MBO的数据包可被部署到服务器(如图6的服务器)。在一个实施例,部署过程把使用在MBO的设计时间连接文件映射到服务器连接文件。作为一个例子,如果新的服务器连接文件不存在,其可以被创建。每个定义在数据包的MBO被映射到数据库表(如服务器缓存)。IX. MBO 模型在一个实施例中,MBO被部署到服务器后(如图6的服务器),服务器库或综合数据库(CDB)拥有MBO模式的代表。一个部署MBO模式到CDB的示范操作在图11的示图1102 中说明了。元数据表在一个实施例中,元数据表为每个部署到服务器的MBO存储MBO元数据。当这些元数据表被同步到客户端数据库(如移动装置客户端数据库),客户端可以使用元数据表来生成基础数据表。这样做,客户端数据库可以反映CDB(服务器综合数据库)。图11的示图1104说明了一个同步元数据表到客户端数据库的示范操作。元数据表和数据表的分离允许动态MBO的部署到现有的MBO包。这样,整个客户端数据库不需要重新创建。在一个实施例中,在元数据表的MBO元数据被用来生成MBO数据表,以存储从服务器储存库(如CDB)获取的MBO数据。图12A及12B说明了在本发明的实施例中示范的元数据表。参考图12A,应用目录 1202说明了已部署的MBO和与每个MBO相关的信息。参数表1204可以列出所有参数信息以用来读取、创建、更新、删除和其他操作。列详情表1206可以包括MBO属性和与属性相关的元数据。参考图12B,表链接1208识别包括链接到MBO操作的MBO关系。点击表1210识别了 MBO的数据关系,请求参数表1212包括用于MBO操作(如读操作)的MBO同步参数数据。X.调用MBO和MBO数据流在一个实施例中,一旦MBO模型被部署到服务器库(如⑶B),客户端可以执行元数据同步来接收所有已部署的MBO元数据。在元数据同步过程之后,客户端生成类似CDB表的MBO数据表。在一个实施例中,在元数据同步的过程中,客户端为每个MBO定义公布。作为一个例子,公布包括一个或多个数据库表。在一个实施例中,公布被用来确定一套会被同步的表。XI.示范的客户端堆栈图13显示了本发明的一个实施例中示范的客户端堆栈。如图13所示,根据一个实施例,工具层定义和创建MBO模式并将其部署到服务器。 代码生成引擎使用MBO模型并生成客户端对象API。在一个实施例中,生成的客户端对象的实现可以利用数据持久库(DPL)实用层来处理移动装置的数据库相互联系。在一个实施例中,生成的客户端对象和DPL都是由MBO元数据驱动的。XII.与移动商业对象的互相影响图14是根据本发明的一个实施例说明利用MBO接口的步骤流程图。根据本发明的一个实施例,如图400的流程图400所示的方法,该方法始于步骤1402,并进行到步骤 1404,此时用于MBO的元数据被定义。该方法进行到步骤1406,建模工具捕获MBO的元数据。按照本发明的一个实施例, 这种建模工具是特定于移动应用程序正被部署的装置上,从而在必要时以平台特定方式解释元数据。这进一步使MBO的新版本可以通过更新元数据来定义,而不需要考虑到平台特定的变化。在步骤1408,一个通用的MBO的API被应用程序调用以存取MBO提供的数据或者在面向对象的环境下与MBO互动。此外,按照本发明的一个实施例,MBO的对象特定的API 也是可用的,所述API使用捕获元数据生成,通常提供比一般API更高的计算效率。然后, 该方法结束于步骤1410。XIII.移动商业对象状态管理图15是根据本发明的一个实施例说明保存和利用MBO的状态的步骤流程图。该方法始于步骤1502,然后进行到步骤1504,此时API对MBO提供的数据作出调用。根据本发明的一个实施例,MBO的当前状态在步骤1506确定。MBO能够更新其状态,而当前状态影响MBO响应的行为。因此,在步骤1508,生成对步骤1504中API调用的回应,此回应与MBO的状态一致,该方法结束于步骤1510。该方法结束于步骤1512。XIV.示范的计算机系统实施例本发明的各个方面可以通过软件、韧体、硬件或者其组合来实现。图16描述了示范的计算器系统1600,该系统是本发明或其一部分可实现为计算机可读代码的例子。例如, 在图4的流程图400、图5的流程图500、图6的流程图600中说明的方法可在系统1600中实现。本发明的各种实施例在计算器系统1600的基础上描述。看完本说明书后,对本领域的技术人员来说,如何使用其他计算器系统和/或计算器结构来实施本发明都是显而易见的。
计算器系统1600包括一个或多个处理器,如处理器1604。处理器1604可以是一个特殊用途的或通用的处理器。处理器1604连接到通信基础设施1606(例如总线或网络)。计算器系统1600还包括一个最好是随机存取存储器(RAM)的主内存1608,可能还包括辅助存储器1610。辅助存储器1610可以包括,例如,硬盘驱动器1612、可移除的存储驱动器1614和/或记忆棒。可移除的存储驱动器1614可包括软盘驱动器、磁带驱动器、光盘驱动器、闪存或类似的媒体。可移除的存储驱动器1614以公知的方式读取和/或写入可移除的存储单元1618。可移除的存储单元1618可以包括被读取和写入到可移除的存储驱动器1614的软盘、磁带、光盘等。本领域的技术人员会明白可移除的存储单元1618包括储存有计算机软件和/或数据的计算机可用的存储介质。在另一个实施例,辅助存储器1610可以包括其他类似的手段使计算机程序或其他指令得以加载到计算器系统1600。这些手段可以包括,例如,可移除的存储单元1622和接口 1620。这种手段的例子可以包括程序盒式存储器和盒式接口(如发现在视频游戏设备中的)、可移除的内存芯片(如EPROM或PR0M)和相关的插座,以及其他允许软件和数据从可移除的存储单元1622转移到计算器系统1600的可移除的存储单元1622和接口 1620。计算器系统1600还可以包括通讯接口 16M。通信接口 16 允许软件和数据在计算器系统1600和外部装置之间传输。通信接口 16M可包括调制解调器、网络接口(如以太网卡)、通信端口、PCMCIA插槽和卡或类似的东西。通过通信接口 16 来传输的软件和数据可以是电子、电磁、光学或其他能够被通信接口 16M接收到的信号形式。这些信号通过通信路径16 被提供到通信接口 16M。通信路径16 运载信号并可以使用电线、电缆、光纤、电话线、蜂窝电话连接、射频链接或其他通讯渠道来实现。在这份文件中,“计算器程序媒体“和“计算器可用的媒体“被用来泛指媒体如可移除的存储单元1618、可移除的存储单元1622和安装在硬盘驱动器1612上硬盘。在通信路径16 上运载的信号也体现这里所述的逻辑。计算器程序媒体和计算器可用的媒体也可以是存储存器,如可以是存储半导体(如DRAM等)的主存储器1608和辅助存储器1610。 这些计算器程序产品是提供软件到计算器系统1600的手段。计算器程序(也称为计算器控制逻辑)存储在主存储器1608和/或辅助存储器 1610。计算器程序也可通过通讯接口 16 来接收。这种计算器程序,在执行时,启用计算器系统1600来实施这里所述的本发明。特别是,计算器程序,在执行时,使处理器1604实施本发明的进程,如上述图4中流程图400、图14中流程图1400、图15中流程图1500说明的方法步骤。因此,这些计算机程序代表计算器系统1600的控制器。如果本发明是通过使用软件来实施,该软件可以存储在计算器程序产品中并使用可移除的存储驱动器1614、接口 1620、硬盘驱动器1612或通信接口 16M以加载到计算器系统1600。本发明还涉及计算器程序产品,该产品包括存储在任何计算器可用媒体上的软件。当在一个或多个数据处理装置运行时,这些软件使数据处理装置如这里所述的运作。本发明的实施例使用任何现在已知的或将来会知的计算器可用或可读媒体。计算器可用媒体的例子包括但不限于主存储装置(例如任何类型的随机存取内存)、辅助存储装置(如硬盘、软盘、光盘、ZIP磁盘、磁带、磁性存储装置、光存储装置,MEMS,纳米技术存储装置等)和通信媒体(例如有线和无线通信网络、局域网、广域网、内部网络等)。XV.结论
虽然本发明的不同实施例已如上描述了,但这些实施例应该理解为例子而已,而不是限制。本领域的技术人员会理解不同形式的变更和细节也可以实施本发明但没有偏离本发明权利要求书中的精神和范围。本发明应理解为不只限于这些例子。本发明适用于这里陈述的任何操作原理。所以,本发明的广泛程度和范围不应该被以上所述的示范实施例所限制,而应该只被下列的权利要求书和其相同的意思所定义。
权利要求
1.一种在远程数据源中抽象化数据的方法,其可被偶尔连线的移动装置使用,包括 定义所述远程数据源;定义与所述远程数据源通信的数据同步方法;和提供抽象层以在所述远程数据源存取数据,当数据通过所述抽象层来存取时,所述抽象层执行所述数据同步的方法。
2.如权利要求1所述的方法,进一步包括定义所述数据被所述远程数据源提供到所述移动装置的方法。
3.如权利要求1所述的方法,进一步包括与移动商业对象连接。
4.如权利要求3所述的方法,进一步包括定义所述移动商业对象的安全特征;定义所述移动商业对象的数据同步特征;和定义所述移动商业对象与其他移动商业对象之间的关系。
5.如权利要求3所述的方法,进一步包括为所述移动商业对象定义移动入站调用方法。
6.如权利要求3所述的方法,进一步包括为所述移动商业对象定义移动元数据。
7.如权利要求6所述的方法,进一步包括用建模工具捕获所述的元数据。
8.如权利要求3所述的方法,进一步包括执行应用程序接口(API)调用到所述移动商业对象;和得到对所述应用程序接口调用的响应,其中所述回应是基于所述移动商业对象的状态。
9.一种在远程数据源中抽象化数据的系统,其可被偶尔连线的移动装置使用,包括与所述远程数据源相关联的中介软件;以及与所述中介软件相关联的移动商业对象 (MBO),其中所述移动商业对象包括所述远程数据源内至少一个数据子集。
10.如权利要求9所述的系统,进一步包括与所述中介软件相关联的移动应用程序, 其中所述移动应用程序配置为使用所述中介软件的应用程序接口(API)在所述远程数据源存取数据。
11.如权利要求10所述的系统,其中所述移动应用程序包括对象关系映射层,所述对象关系映射层配置为与一个或多个面向对象编程语言对象互动;信息对象映射层;和与所述信息对象映射层相关联的装置持久性库,其被配置为储存与所述移动应用程序相关联的数据。
12.如权利要求11所述的系统,其中所述移动应用程序还包括配置来确定所述存储数据状态的状态管理模块。
13.如权利要求11所述的系统,其中所述移动应用程序还包括配置来确定所述存储数据安全特征的数据安全模块。
14.如权利要求11所述的系统,其中所述移动应用程序还包括配置为用于存储取自所述远程数据源数据的本地数据库。
15.如权利要求11所述的系统,其中所述移动应用程序还包括配置为用于存储与所述移动应用程序相关联信息数据的本地信息缓存。
16.一种计算器程序产品,其内存储有控制逻辑,所述控制逻辑依据方法使一个或多个处理器在远程数据源中抽象化数据,其可被偶尔连线的移移动装置使用,所述方法包括定义所述数据源;定义与所述数据源通信的数据同步方法;和提供抽象层以在所述数据源存取数据,当数据通过抽象层来存取时,所述抽象层执行所述数据同步的方法。
17.如权利要求16所述的计算机程序产品,所述方法还包括定义所述数据被所述远程数据源提供到所述移动装置的方法。
18.如权利要求16所述的计算机程序产品,所述方法还包括与移动商业对象连接。
19.如权利要求16所述的计算机程序产品,所述方法还包括定义所述移动商业对象的安全特征;定义所述移动商业对象的数据同步特征;和定义所述移动商业对象与其他移动商业对象之间的关系。
20.如权利要求16所述的计算机程序产品,所述方法还包括定义所述移动商业对象的入站调用方法。
全文摘要
一种用于抽象化数据存取的系统、方法、和计算器程序产品在此提供。方法通过定义数据源、定义数据同步的方法以进行与数据源的通信,以及提供抽象层来存取数据源的数据来运作。抽象层实现了当数据通过抽象层被存取时数据同步的方法。
文档编号G06F9/44GK102165416SQ200980138558
公开日2011年8月24日 申请日期2009年7月27日 优先权日2008年8月1日
发明者迈克尔·弘, 霍华德·王 申请人:赛贝斯股份有限公司

最新回复(0)