CN107257956A - 具有自动升级的分层数据表面处理配置 - Google Patents
具有自动升级的分层数据表面处理配置 Download PDFInfo
- Publication number
- CN107257956A CN107257956A CN201680011139.3A CN201680011139A CN107257956A CN 107257956 A CN107257956 A CN 107257956A CN 201680011139 A CN201680011139 A CN 201680011139A CN 107257956 A CN107257956 A CN 107257956A
- Authority
- CN
- China
- Prior art keywords
- node
- solution
- data
- increment
- customization
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
定制并创建选择的数据表面处理解决方案的配置的新版本的用户交互被检测。定制和新版本被保存为选择的数据表面处理解决方案的改变(或增量)。具有定制增量的选择的数据表面处理解决方案被标识为专用的解决方案,并且被保存为解决方案层次结构中的节点,该节点具有作为其祖先节点的选择的解决方案。具有新版本(升级)增量的所选择的数据表面处理解决方案被标识为选择的解决方案的新版本,并且作为新版本被保存在解决方案层次结构中的相同节点中。对应于具有定制和升级增量的选择的解决方案的层次结构中的节点继承对应于祖先节点的配置。
Description
背景技术
计算***目前正在广泛使用。一些这样的计算***相当大并且相对复杂。它们还经常有用于在***中聚合、转换和输出数据和其他信息的数据表面处理***。
许多组织使用计算***,以便于控制组织的各种流程、任务、其他计算***或设备的运行。许多这种组织也服从数据如何被表面处理并被提供给用户或其他计算***的规则。规则可以指定要输出给用户或其他计算***的各种格式、内容或其他配置。一些组织是多国组织,因为它们在世界各地的各种不同司法管辖区内运作。因此,它们可能服从各种不同类型的规则,这些规则定义了数据如何被表面处理并被输出给用户和其他计算***。这些规则在每个不同的司法管辖区可能会经常变化。
为了遵守这些各种类型的限制,一些***通常需要顾问或开发人员来配置***中的根据限制被运行以生成数据输出的编译的代码(或命令式代码)。然而,这可能是耗时且麻烦的。
为了加剧这个问题,一些这样的计算***通常由制造商作为基本计算***来制造。基本计算***然后可以被开发者、独立软件供应商或最终用户组织定制(并且有时被深度定制)。这些***也可以在所有这些各种不同的级别中被定制。例如,基本***可以由独立软件供应商定制以产生计算***的定制的版本。然后定制的版本可以由开发人员或终端用户组织进一步定制。最终的方案是在最终被部署在终端用户组织之前已经在多个级别被定制的计算***。
因此,在计算***制造商或向计算***提供定制的个体中的一个升级或以其他方式修改基本***或其定制的情况下,这些类型的升级或修改可能难以在终端用户组织处部署。
上面的讨论仅被提供用于一般背景信息,并不旨在用于辅助确定所要求保护的主题的范围。
发明内容
定制并创建所选择的数据表面处理解决方案的配置的新版本的用户交互被检测到。定制和新版本被保存为对所选择的数据表面处理解决方案的改变(或增量(delta))。具有定制增量的所选择的数据表面处理解决方案被标识为唯一的解决方案,并作为节点被保存在解决方案层次结构中,该解决方案层次结构具有作为其祖先节点的所选择的解决方案。具有新版本(升级)增量的所选择的数据表面处理解决方案被标识为所选择的解决方案的新版本,并且在解决方案层次结构中的相同节点中被保存为新版本。对应于具有定制和升级增量的所选择的解决方案的层次结构中的节点继承与祖先节点相对应的配置。
本发明内容旨在以简化的形式介绍概念的选择,这些概念在下面的具体实施例中进一步描述。本发明内容不旨在标识所要求保护的主题的关键特征或基本特征,也不旨在用于辅助确定所要求保护的主题的范围。所要求保护的主题不限于解决背景中指出的任何或所有缺点的实现。
附图说明
图1是一个示意性的计算***架构的框图。
图2是一个示意性的定制架构的框图。
图3是图示图2中所示的定制架构的操作的一个示例的流程图。
图4是解决方案层次结构的一个示例的框图。
图4A示出了用户界面显示的一个示例。
图5是图示部署***的操作的一个示例的流程图。
图6是图示自动升级***的操作的一个示例的流程图。
图7示出了部署在云计算架构中的上述架构的一个示例。
图8-10示出了移动设备的各种示例。
图11是计算环境的一个示例的框图。
具体实施方式
图1是计算***架构100的一个示例的框图。架构100示意性地包括计算***102,其生成具有用户输入机制106的用户界面显示器104,用于由用户108的交互。用户108示意性地与用户输入机制106进行交互以便控制和操纵计算***102。架构100还示出了计算***102示意性地与其他计算***110进行通信。
计算***102示意性地包括处理器或服务器112、数据存储装置114-116、应用部件118、接口部件120、数据表面处理解决方案122、可配置数据表面处理部件124(表面处理特定于域、表面处理的和格式化的数据126),并且其可以包括其他项128。数据存储114-116可以包括各种信息,诸如表130、实体132、类134、工作流程136、处理138、文件140和其他信息142。可配置数据表面处理部件124示意性地包括格式化部件144、逻辑执行部件146、数据提取部件148、输出部件150,并且其可以包括其他项152。
应用部件118示意性地运行对各种表130、实体132、类134、文件140或其他记录142执行工作流程136或处理138的一个或多个应用。尽管数据存储装置114和116可以包含相同或不同的项,但仅提供数据存储装置114中的项的示例。
接口部件120示意性地生成接口,诸如用户界面显示器104,以及应用编程接口或者到其他计算***110的其他接口。用户108示意性地使用用户接口显示器104上的用户输入机制106与计算***102通信。其他计算***110可以使用应用编程接口或其他合适的接口来示意性地与***102进行通信。
其他计算***110可以示意性地根据规则或指示要接收的信息的特定内容、格式、文件格式和其他配置细节的其他限制来接收信息。因此,在一个示例中,计算***102示意性地包括根据这些规则来表面处理或变换数据的可配置数据表面处理部件126。
可配置的数据表面处理部件124可由用户108、开发人员或其他个体(其一个示例在下面参照图2描述)示意性地配置。其可以用于生成数据表面处理解决方案122,其为用户108或其他计算***110提供将在表面处理数据中被使用的各种格式化和配置。数据提取部件148示意性地访问数据表面处理解决方案122中的映射,以标识基于数据表面处理解决方案122将被提取的数据。逻辑执行部件146示意性地在数据上执行任何期望的逻辑,格式化部件144访问数据表面处理解决方案122中的格式化信息,并将所提取的数据变换为在数据表面处理解决方案122中指定的期望格式。输出部件150示意性地输出由部件124表面处理的格式化和特定于域的数据。数据126可以被提供给用户108、给其他计算***110或给其他用户。
图2是可以用于允许用户108或其他用户提供定制以获得经定制的数据表面处理解决方案122使得可以从计算***102根据由数据表面处理解决方案122实现的限制来对数据进行表面处理的定制架构160的一个示例的框图。架构160示意性地包括定制***162,其可访问存储基本数据表面处理解决方案166和解决方案层次结构168的一个或多个数据存储装置164。架构160还示出了定制用户170(其可以是ISV、开发人员、终端用户等)示意性地与在由定制***162生成的用户界面显示器174上的用户输入机制172交互。定制用户170与用户输入机制交互,以便控制和操纵定制***162以生成定制的数据表面处理解决方案。在这样做时,定制用户170可以通过单独的定制设备176(诸如客户端设备)或直接与定制***162进行交互。
在图2所示的示例中,定制***162示意性地包括模型定制部件178、映射定制部件180、格式定制部件182、处理器或服务器184、用户界面部件186、自动升级***188、部署***190、并且其可以包括其他项192。自动升级***188示意性地包括定制合并部件194、冲突解决部件196、并且其可以包括其他项198。部署***190示意性地包括层次访问部件200、层次遍历部件202、部署引擎204、增量应用部件206、并且其可以包括其他项208。定制用户170可以示意性地与定制部件178交互以在基本数据表面处理解决方案166中定制数据模型。用户170可以示意性地与映射定制部件180交互以在基本数据表面处理解决方案166中定制各种映射。用户170可以示意性地与格式定制部件182交互以在基本数据表面处理解决方案166中修改各种格式配置。用户170可以示意性地与***162中的其他部件192交互,以便向基本数据表面处理解决方案166提供其他配置或定制。
在一个示例中,由用户170输入的定制被捕获为增量(或来自基本数据表面处理解决方案166的改变),并被存储在解决方案层次结构168中。下面将更详细地描述。部署***190示意性地访问基本数据表面处理解决方案166,并且在解决方案层次结构168中应用相关的增量(或改变)以获得定制的数据表面处理解决方案166。自动升级***188示意性地检测何时基本数据表面处理解决方案166(或在解决方案层次结构168中标识的任何其他解决方案)已被升级或以其他方式被修改。其示意性地基于针对解决方案层次结构168中高于定制的数据解决方案的数据表面处理解决方案的升级或其他修改,自动地升级由定制用户170生成的定制的数据表面处理解决方案。
图3是图示在允许定制用户170生成定制的数据表面处理解决方案的定制架构160的操作的一个示例的流程图。图4示出了解决方案层次结构168的一个示例。现在将结合彼此描述图2-4。
首先假设计算***制造商或其他开发人员已经生成了基本数据表面处理解决方案。例如,这可能包括针对监管电子报告表面处理数据。监管电子报告涉及来自组织的计算机***(由政府或其他监管机构定义的特定格式)的电子文件的创建,该创建需要电子格式中的信息。例如,政府或其他监管机构可能经常发布规定各种不同类型组织的报告要求的规定。这种类型的规定会经历相对频繁的改变。其也可以特定于单独的司法管辖区。在一些常规***中,为了满足任何新的或修改的立法,必须雇用代码开发人员以便修改运行以生成报告的已编码的代码。这当然可能是麻烦和耗时的,也容易出错。在从基本版本修改的***中,问题更加严重。当提供对基本版本的升级时,升级通常需要手动部署到在组织处部署的计算***的定制的版本。同样,这样做不仅麻烦和耗时,而且容易出错。
为了本讨论的目的,假设基本数据表面处理解决方案包括一组声明性的、特定于域的数据模型,该组数据模型可以通过将它们映射到一个或多个不同的数据源来映射到域。然后,声明性的、特定于域的数据模型也被映射到电子报告格式。用户可以提供声明性输入来修改声明性、特定于域的数据模型与电子报告格式之间的映射。例如,特定于域数据模型可以被配置为在图4中在220处大体上图示的支付配置。支付配置示意性地配置数据模型,以表面处理来自计算***102的支付数据。支付配置解决方案因此包括数据模型定义222、将潜在数据模型(在基本数据表面处理解决方案166中)映射到某些数据源的数据模型映射224、定义数据和文件格式或电子报告的格式定义228、以及将格式定义228映射到数据模型定义222的格式映射230。支付配置解决方案也可以包括其他项232。
如本文所讨论的,给定解决方案220示意性地组合了用于给定监管报告***的配置。在解决方案树(或解决方案层次结构168)中定义了其他解决方案,其是包括多个节点的分层数据结构。例如,图4示出了解决方案层次结构168包括支付配置解决方案节点221、单个欧元支付区域(SEPA)配置解决方案节点223、SEPA信用转移(CT)配置解决方案节点225,并且其可以包括其他解决方案节点227。支付配置解决方案节点221对应于根据给定配置来表面处理来自***102的支付数据的支付配置解决方案。SEPA配置解决方案节点223对应于仅是示例解决方案的SEPA配置解决方案,并且定制支付配置解决方案以符合SEPA集成计划的配置,其简化了以欧元计价的银行转账。SEPA CT配置解决方案225对应于SEPA CT配置解决方案,SEPA配置解决方案是SEPA配置解决方案的定制。
在解决方案层次结构168中的更低且旨在处于更高节点右侧的节点是更高和外凹节点的后代节点。给定节点的直接后代称为给定节点的子节点。在解决方案层次结构168中的更高且向左凹陷的节点是更低和内凹的节点的祖先节点。给定节点的直接祖先节点称为给定节点的父节点。
每个后代节点都示意性地继承了来自其祖先节点的所有配置细节。后代节点进一步定义从祖先节点中找到的配置详细信息的改变,并且在一个示例中,仅存储这些改变。例如,SEPA配置解决方案节点223包括对与支付配置节点221对应的解决方案中发现的格式定义228的一组改变或增量。SEPA CT配置解决方案节点225包括对格式定义的第二组增量(或改变)(它们是在节点223处找到的定义的改变)。节点225还包括对节点221中的格式映射230的一组增量(或改变)。
因此,在一个示例中,定制用户170使用定制***162通过从解决方案树(或解决方案层次结构)168中已经存在的解决方案导出来创建他或她自己的解决方案。每当层次结构168中较高的解决方案已被改变(这可能意味着该解决方案的新版本已经发布),对应于层次结构168中的后代节点的解决方案可以通过将祖先节点中的变化与在后代级别做出的增量(或定制)进行比较来应用该新版本。这可以由自动升级***188自动执行。现在将更详细地描述定制解决方案的生成、其部署、和自动升级的部署。
图3是图示定制用户170如何通过修改基本数据表面处理解决方案166(其可以由对应于层次结构168中的节点221的支付配置解决方案220表示)来提供输入以在解决方案层次结构168中生成解决方案(对应于后代节点)的一个示例的流程图。在一个示例中,用户界面部件186示意性地生成允许定制用户170选择他或她希望订制的基本数据表面处理解决方案166以便生成定制的解决方案的用户界面显示。
图4A示出了这样的用户界面显示250的一个示例。可以看出,用户界面显示250示意性地显示了图4所示的解决方案层次结构168中的解决方案252的列表。用户可以通过导航表单左侧的解决方案树示意性地选择解决方案中的一个以进行修改。在任何情况下,一旦用户选择了解决方案,在描述256中进行描述,并且一般地在258处显示对应于所选解决方案的各种其他信息。然后,用户可以提供打开用于定制的开发环境中(诸如定制***162中)的该解决方案的输入。检测指示用户希望定制所选择的解决方案的用户输入由图3的框260指示。框262指示访问所选择的用于定制的解决方案。
然后,用户界面部件186示意性地生成具有可由用户致动的用户输入机制的一组用户界面显示,以便定制所选择的解决方案。这由框264指示。
用户然后可以与用户输入机制交互,以便定制所选解决方案的特定配置。这由框266指示。例如,用户输入机制可以包括允许用户提供将特定于域的数据模型映射到特定域的映射输入的机制。在这种情况下,模型定制部件178和映射定制部件180示意性地修改数据模型配置以将其映射到域。通过框268指示检测将特定于域的数据模型映射到域的输入。
用户输入机制还可以允许用户向数据模型提供将配置以指定格式映射到输出文件的格式映射输入。这由框278指示。输入机制还可以允许用户提供用于配置格式定义以指定针对特定解决方案的数据输出的输入。在这种情况下,格式定制部件182基于格式配置输入来示意性地定制所选择的解决方案。检测格式配置输入由图3中的框280指示。以类似的方式,输入机制还可以允许用户提供用于配置数据模型定义的输入。检测数据模型配置输入由图3中的框270指示。当然,用户输入机制可以允许用户170输入其他定制输入,并且通过框282指示检测那些用户交互。
在一个示例中,由用户170提供的定制输入表示的定制将被捕获,作为来自正在被定制的底层的所选解决方案的改变。作为第一步,用户创建专用的解决方案作为解决方案层次结构中所选解决方案的后代。其由图3中的框288指示。例如,如果用户提供改变格式定义的配置输入,则这些可以被捕获为增量229(图4所示),该增量简单地指示来自解决方案220中的格式定义228的改变。因此,在节点223处表示的解决方案简单地从解决方案220继承所有配置,然后根据增量229将改变应用于格式定义。节点223处的解决方案被定义为专用的解决方案,但是继承所有来自解决方案220的配置设置,然后简单地改变格式定义。将用户170提供的定制保存为对所选择的解决方案的增量由图3的流程图中的框284指示。
因此,解决方案223由在其祖先节点(节点221)中发现的配置设置连同被应用于这些配置设置的增量(增量229)来表示。
一旦定制解决方案(由层次结构168中的节点223表示)已被保存,则可以将其部署到运行时***。图5是图示这样做的部署***190的操作的一个示例的流程图。
部署***190首先检测指示用户希望部署给定解决方案的用户交互。这由图5中的框300指示。在一个示例中,用户提供与其希望部署的解决方案相关联的专用标识符302。这由框302指示。用户可以以其他方式与***交互以指示要部署的给定解决方案,并且这由框304指示。
层次结构访问部件200然后访问解决方案层次结构168中的给定解决方案。这由框306指示。作为示例,专用标识符可以标识在解决方案层次结构168中给定解决方案的被定义在哪里。
层次结构遍历部件202然后遍历解决方案层次结构168,直到层次结构168中的根节点(或最高节点)。在图4所示的示例中,这是节点221。由框308指示遍历层次结构。
在这样做时,遍历部件202标识解决方案层次结构168中、在对应于给定的解决方案的节点与根节点之间的任何中介节点中的所有不同的增量。由框310指示标识所有增量。作为另一示例,假设作为要部署的给定解决方案,用户已经标识出与图4中的节点225相关联的解决方案。在这种情况下,遍历部件将不仅标识节点225中的增量,而且还将标识节点223中的增量,因为其是解决方案层次结构168中的节点225和节点221之间的中介节点。遍历部件202也可以在遍历层次结构中执行其他操作,并且这由框312指示。
部署引擎204然后部署对应于根节点(在这种情况下为节点221)的解决方案。这由框312指示。然后,在要部署的给定解决方案与对应于根节点的解决方案之间,增量应用部件206修改已部署的解决方案,以应用在层次结构中标识的所有增量。由框314指示应用增量。一旦部署了对应于根节点的解决方案,并且应用了所有标识的增量,则由用户选择的给定解决方案被完全部署。
这也可能发生:生成解决方案层次结构168中的解决方案中的一个的开发人员、计算***制造商或其他人也可能对其提供升级或其他改变。例如,假定在层次结构168中制造对应于节点221的解决方案220的制造商现在发布新版本,在新版本中定义或映射等中的一些已被修改或扩展。在这种情况下,因为后代解决方案在层次结构168中通过来自祖先解决方案的增量(或改变)来定义,所以对祖先解决方案的改变可以被自动地应用或升级到对应于层次结构168中的后代节点的后代解决方案。图6示出了这样做的自动升级***188的操作的一个示例。
在一个示例中,自动升级***188首先检测对应于层次结构168中的祖先节点的祖先解决方案的改变或一组改变。这由图6中的框320指示。例如,可以是制造商或祖先解决方案的开发者指示存在对由解决方案220和节点221表示的基本***的升级或升级。这由图6的流程图中的框322指示。在一个示例中,配置***162再次捕获了对祖先解决方案的改变作为对该基础祖先解决方案的升级增量(或升级改变)。这由框324指示。***也可以以其他方式检测对祖先解决方案的改变,并且由框326指示。
在某点上,用户将与自动升级***188示意性地交互,以指示用户希望具有自动地被应用于对应于层次结构168中的后代节点的后代解决方案的升级。这由框328指示。例如,可以是使用后代解决方案(诸如对应于层次结构168中的节点225的解决方案)的用户或开发人员或其他人提供输入,该输入指示用户希望具有对被自动地应用于由节点225表示的后代解决方案的解决方案220(基本***)的升级。指示后代解决方案希望自动摄取一组升级由框330指示。当然,***可以检测到指示升级也将以其他方式被自动地应用的用户交互,并且这由框332指示。
在一个示例中,定制合并部件194然后将基本***的升级增量与对由节点225表示的后代解决方案所做的任何定制增量(和***的增量)合并。在这样做时,它访问对应于节点225的所有定制增量和中介节点。这由图6中的框334指示。然后其将升级增量与所有已识别的增量合并。这可以通过方框336来指示。例如,可以这样做,即通过将升级增量(表示对解决方案220做出的升级)与定制增量(诸如节点223中的增量229和节点225中的增量231)进行比较,以确定它们如何互相交互。将升级增量与定制增量进行比较由框338指示。比较将指示定制增量是否已经合并任何升级增量,以及这两组增量之间是否存在任何冲突。合并增量也可以以其他方式执行,并且这由框340指示。
合并部件194向冲突解决部件196指示将升级增量应用于后代解决方案是否存在任何冲突。这由框342指示。如果存在冲突,则冲突解决部件196可以自动地解决一些或所有冲突,而一些可能需要手动解决。例如,在一个示例中,冲突解决部件196访问可以应用的一组冲突规则,以便在应用定制增量或升级增量时解决冲突。例如,规则可以指示升级增量总是优先。在另一个示例中,规则可以指示在某些情况下,定制增量优先。当然这些只是规则的示例。框344指示自动解决冲突。
对于那些无法自动解决的冲突,冲突解决部件196示意性地对它们进行表面处理用于手动解决。这由框346指示。
一旦解决了任何冲突,则自动升级***188示意性地标识节点225的新的一组增量,其对应于升级的祖先解决方案(具有应用的升级增量的解决方案220)和升级的后代解决方案(解决方案由具有应用了自己的增量的节点225表示)之间的差异。即***将标识在解决方案220(应用了升级的增量)和由节点225所表示的解决方案之间什么配置设置或信息是不同的,其中应用了其增量和中间增量。这些差异将被识别为新的增量组,如框348所指示。
然后,自动升级***188将在解决方案层次结构168中的新的增量保存在对应于正被升级的后代解决方案的节点处。例如,如果对应于节点225的解决方案被升级,则增量(在图4中的350处的括号中示出)被保存在节点225,而不是增量132。在解决方案层次结构168中保存新的增量由图6中的块352指示。
可以看出,本***有利地允许用户使用声明性方法来将数据模型映射到报告格式定义,使得用户不需要修改通常为开发人员或其他用户保留的任何底层的命令性代码,该开发人员或其他用户相当详细的知道各种数据源中的物理数据模型,并且还具有对计算***的代码级理解。在一个示例中,映射可以使用可以类似于电子表格应用中使用的语言类型或其变体的公式类型语言来执行。这仅是一个示例。***接收声明输入以配置各种数据表面处理格式,并将数据模型映射到对应的报告格式定义。在一个示例中,声明输入映射到电子报告的定义。可配置数据表面处理部件124现在被配置为以用于电子报告的各种报告文件的合法定义的结构来生成信息的输出。
基本数据表面处理解决方案的各种定制有利地保存为解决方案层次结构中的增量。层次结构中的后代节点继承了来自祖先节点的所有配置输入,并且可以应用它们自己的增量来实现对应于后代节点的定制解决方案。这使得生成定制的数据表面处理解决方案更容易,并且更不容易出错。其还提高了定制***的效率,因为不需要采用用于生成新的命令代码的计算资源。这也大大增强了在层次结构中将升级应用于祖先解决方***性。此外,其大大增强了可以在客户环境中部署升级的***的速度。其在部署升级***方面和在将升级应用到部署的解决方案方面也提高了计算***的效率。
目前的讨论提到了处理器和服务器。在一个实施例中,处理器和服务器包括具有关联存储器和定时电路的计算机处理器,未单独示出。它们是它们所属和由其激活的***或设备的功能部件,并且促进由这些***中的其他部件或项的功能。
此外,已经讨论了许多用户界面显示。它们可以采用各种不同的形式,并且可以具有部署于其上的各种不同的用户可致动的输入机构。例如,用户可致动输入机构可以是文本框、复选框、图标、链接、下拉菜单、搜索框等。它们也可以以各种不同的方式致动。例如,它们可以使用定点或点击设备(如轨迹球或鼠标)来致动。它们可以使用硬件按钮、开关、操纵杆或键盘、拇指开关或拇指垫等来致动。它们也可以使用虚拟键盘或其他虚拟致动器来致动。其中,显示它们的屏幕是触感屏幕,它们可以使用触摸手势来致动。此外,其中,显示它们的设备具有语音识别部件,它们可以使用语音命令来致动。
还讨论了多个数据存储装置。将会注意到,它们可以各自被分成多个数据存储装置。所有这些对于访问它们的***可以都是本地的,所有这些可以都是远程的,或者一些可以是本地的,而另一些则是远程的。所有这些配置都在本文中想到。
此外,附图示出了具有归因于每个框的功能的多个框。应该注意的是,可以使用较少的框,因此功能由更少的部件执行。此外,可以使用更多的框,其中功能被分布到更多部件中。
图7是图1和图2所示的架构100和160的框图,除了元件被布置在云计算架构500中。云计算提供不要求终端用户了解传递服务的***的物理位置或配置的计算、软件、数据访问和存储服务。在各种实施例中,云计算使用适当的协议来在广域网(例如因特网)上传递服务。例如,云计算提供商通过广域网传递应用,并且可以通过Web浏览器或任何其他计算部件访问它们。架构100的软件或部件以及相应的数据可以存储在远程位置的服务器上。云计算环境中的计算资源可以固定在远程数据中心位置,或它们也可以被分散。云计算基础设施可以通过共享数据中心传递服务,即使它们呈现为针对用户的访问的单一点。因此,本文描述的部件和功能可以使用云计算架构从远程位置的服务提供商提供。替代地,它们可以从常规服务器提供,或者它们可以直接被安装在客户端设备上,或以其他方式。
该描述旨在包括公共云计算和私有云计算。云计算(公共和私有)实质上提供了无缝的资源池,以及对管理和配置底层硬件基础设施减少的需求。
公共云由供应商管理,并且通常支持使用相同基础设施的多个消费者。此外,与私有云相反,公共云可以从管理硬件中释放终端用户。私有云可以由组织本身管理,并且基础设施通常不与其他组织共享。组织仍然在某种程度上维护硬件,诸如安装和维修等。
在图7所示的示例中,一些项类似于图1和图2所示的项,并且它们被类似地编号。图7具体示出了定制***162可以位于云502(其可以是公共的、私有的、或其中部分是公共的、而其它部分是私有的组合)中。因此,用户108和170使用用户设备504和定制设备176通过云502来访问这些***。
图7还描绘了云架构的另一示例。图7示出了还可以预期,架构100和160中的一些元件可以被布置在云502中,而其他元件不被布置在云502中。作为示例,数据存储装置114和164可以被布置在云502的外面,并且通过云502被访问。在另一个示例中,定制***162也在云502的外面。无论它们位于何处,它们可以由设备504和设备176通过网络(广域网或局域网)直接访问,它们可以由服务在远程站点处托管,或者它们可以通过云被提供为服务或者由驻留在云中的连接服务访问。本文预期了所有这些架构。
还将注意到,架构100和160或它们的一部分可以被布置在各种不同的设备上。这些设备中的一些设备包括服务器、台式计算机、膝上型计算机、平板计算机或其他移动设备,诸如掌上电脑、手机、智能电话、多媒体播放器、个人数字助理等。
图8是可以用作用户或客户的手持设备16的手持或移动计算设备的一个示意性实施例的简化框图,其中本***(或其部分)可以被部署或其可以与架构100、或160、或架构100和160二者交互。图9-10是手持设备或移动设备的示例。
图8提供可以运行架构100和160的部件、或者与架构100和160、或者两者的客户端设备16的部件的一般框图。在设备16中,提供通信链路13,通信链路13允许手持设备与其他计算设备进行通信,并且在一些实施例下提供用于自动地接收信息的信道(诸如通过扫描)。通信链路13的示例包括红外端口、串行/USB端口、诸如以太网端口的有线网络端口、以及允许通过一个或多个通信协议进行通信的无线网络端口,通信协议包括用于提供对网络进行蜂窝接入的无线服务的通用分组无线业务(GPRS)、LTE、HSPA、HSPA+和其他3G和4G无线电协议、1Xrtt和短消息服务、以及提供到网络的本地无线连接的Wi-Fi协议和蓝牙协议。
在其他实施例中,应用或***在连接到SD卡接口15的可移除安全数字(SD)卡上被接收。SD卡接口15和通信链路13沿着总线19与处理器17(其也可以体现来自图1和图2的处理器或服务器112或184)通信,总线19也连接到存储器21和输入/输出(I/O)部件23以及时钟25和定位***27。
在一个实施例中,I/O部件23被提供以有助于输入和输出操作。设备16的各种实施例的I/O部件23可以包括:输入部件,诸如按钮、触摸传感器、多点触摸传感器、光学或视频传感器、语音传感器、触摸屏、接近传感器、麦克风、倾斜传感器和重力开关;以及输出部件,诸如显示设备、扬声器和打印机端口。也可以使用其他I/O部件23。
时钟25示意性地包括输出时间和日期的实时时钟部件。也可以示意性地为处理器17提供定时功能。
位置***27示意性地包括输出设备16的当前地理位置的部件。其可以包括诸如全球定位***(GPS)接收机,LORAN***,航位推算***,蜂窝三角测量***或其他定位***。其还可以包括例如生成期望地图、导航路线和其他地理功能的地图软件或导航软件。
存储器21存储操作***29、网络设置31、应用33、应用配置设置35、数据存储装置37、通信驱动器39以及通信配置设置41。存储器21可以包括所有类型的有形易失性和非易失性计算机可读存储器设备。其还可以包括计算机存储介质(如下所述)。存储器21存储计算机可读指令,该计算机可读指令当由处理器17执行时使处理器根据指令执行计算机实现的步骤或功能。例如,数据存储装置中的应用或项可以驻留在存储器21中。类似地,设备16可以具有能够运行各种应用或实施所示***的部分或全部的客户端***24。处理器17也可以由其他部件激活以有助于它们的功能。
网络设置31的示例包括诸如代理信息、因特网连接信息和映射的内容。应用配置设置35包括为特定企业或用户定制应用的设置。通信配置设置41提供用于与其他计算机通信的参数,并且包括诸如GPRS参数、SMS参数、连接用户名和密码的项。
应用33可以是先前已经存储在设备16上的应用或在使用期间安装的应用,尽管这些应用也可以是操作***29的一部分,或者被托管在设备16的外部。
图9示出了其中设备16是平板计算机600的一个示例。在图9中,示出了具有用户界面显示屏幕602的计算机600。屏幕602可以是触摸屏(因此来自用户的手指的触摸手势可以用于与应用交互)或从笔或触控笔接收输入的支持笔的界面。其也可以使用屏幕上的虚拟键盘。当然,其也可以通过诸如无线链路或USB端口的合适的附接机构来附接到键盘或其他用户输入设备。计算机600也可以示意性地接收语音输入。
也可以使用设备16的附加示例。设备16可以是功能电话、智能电话或移动电话。手机可以包括用于拨打电话号码的一组键盘、能够显示包括应用图像、图标、网页、照片和视频的图像的显示器,以及用于选择显示器上示出的项的控制按钮。手机可以包括用于接收蜂窝电话信号(诸如通用分组无线业务(GPRS)和1Xrtt以及短消息服务(SMS)信号)的天线。在一些示例中,手机还包括一个可接受安全数字(SD)卡的SD卡插槽。
移动设备也可以是个人数字助理或多媒体播放器或平板计算设备等(以下称为PDA)。PDA可以包括当触控笔位于屏幕上方时感应触控笔(或其他指示器,例如用户的手指)的位置的感应屏幕。这允许用户选择、突出显示和移动屏幕上的项以及绘图和写入。PDA还可以包括多个用户输入键或按钮,其允许用户通过在显示器上显示的菜单选项或其他显示选项进行滚动,并且允许用户改变应用或选择用户输入功能,而不用接触显示器。PDA可以包括允许与其他计算机进行无线通信的内部天线和红外发射器/接收器以及允许到其他计算设备的硬件连接的连接端口。这样的硬件连接通常通过支架做出,该支架通过串行或USB端口连接到另一台计算机。因此,这些连接是非网络连接。
图10示出了电话可以是智能电话71。智能电话71具有显示图标或拼图的触敏显示器73或其他用户输入机构75。用户可以使用机构75来运行应用,进行呼叫,执行数据传递操作等。通常,智能手机71建立在移动操作***上,并且提供比功能电话更高级的计算能力和连接性。
注意,其他形式的设备16是可能的。
图11是其中可以部署架构100或160或其部分(例如)的计算环境的一个示例。参考图11,用于实现一些实施例的示例性***包括以计算机810形式的通用计算设备。计算机810的部件可以包括但不限于处理单元820(其可以包括处理器或服务器112和184)、***存储器830和将包括***存储器的各种***部件耦合到处理单元820的***总线821。***总线821可以是包括以下几种类型的总线结构中的任何一种:存储器总线或存储器控制器、***总线和使用各种总线架构中的任一种的本地总线。作为示例而非限制,这种架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线、和***部件互连(PCI)总线(但也称为夹层总线)。关于前面的附图描述的存储器和程序可以被部署在图11的对应部分中。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是可由计算机810访问的任何可用介质,并且包括易失性介质和非易失性介质、可移除和不可移除介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质不同于、并且不包括调制数据信号或载波。其包括硬件存储介质,该硬件存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪速存储器或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光盘存储器、磁带盒、磁带、磁盘存储器或其他磁存储设备或可用于存储所需信息并且可由计算机810访问的任何其他介质。通信介质通常实施计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并且包括任何信息传递媒体。术语“调制数据信号”是指以编码信号中的信息的方式设置或改变其特征中的一个或多个的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接的有线介质以及诸如声学、RF、红外和其他无线介质的无线介质。上述任一项的组合也应包括在计算机可读介质的范围内。
***存储器830包括以诸如只读存储器(ROM)831和随机存取存储器(RAM)832的易失性和/或非易失性存储器形式的计算机存储介质。基本输入/输出***833(BIOS)通常存储在ROM 831中,其包含诸如在启动期间有助于在计算机810内的元件之间传送信息的基本例程。RAM 832通常包含数据和/或程序模块,该数据和/或程序模块可以立即由处理单元820访问和/或当前正在由处理单元820操作。作为示例而非限制,图11图示了操作***834、应用程序835、其他程序模块836和程序数据837。
计算机810还可以包括其他可移除/不可移除的易失性/非易失性计算机存储介质。仅作为示例,图11图示了硬盘驱动器841和光盘驱动器855,该硬盘驱动器841从不可移除、非易失性磁性介质读取或写入到不可移除、非易失性磁性介质,光盘驱动器855从可移除、非易失性光盘856(诸如CD ROM或其他光学介质)读取或写入到可移除、非易失性光盘856。可以在示例性操作环境中使用的其他可移除/不可移除、易失性/非易失性计算机存储介质,包括但不限于磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器841通常通过诸如接口840的不可移除存储器接口连接到***总线821,并且光盘驱动器855通常通过诸如接口850的可移除存储器接口连接到***总线821。
备选地或另外地,本文描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,并且在没有限制的情况下,可以使用的示意性类型的硬件逻辑部件包括现场可编程门阵列(FPGA)、程序专用集成电路(ASIC)、程序特定的标准产品(ASSP)、片上***(SOC)、复杂可编程逻辑器件(CPLD)等
上面讨论的和图11所图示的驱动器及其相关联的计算机存储介质为计算机810提供计算机可读指令、数据结构、程序模块和其他数据的存储装置。在图11中,例如,硬盘驱动器841被图示为存储操作***844、应用程序845、其他程序模块846和程序数据847。注意,这些部件可以与操作***834、应用程序835、其他程序模块836和程序数据837相同或不同。操作***844、应用程序845、其他程序模块846和程序数据847在本文被给予不同的数字,以说明至少它们是不同的副本。
用户可以通过诸如键盘862、麦克风863的输入设备和诸如鼠标、轨迹球或触摸板的指向设备861将命令和信息输入到计算机810中。其他输入设备(未示出)可以包括操纵杆、游戏垫、卫星天线、扫描仪等。这些和其他输入设备通常通过被耦合到***总线的用户输入接口860连接到处理单元820,但是可以通过诸如并行端口、游戏端口或通用串行总线(USB)的其他接口和总线结构来连接。视觉显示器891或其他类型的显示设备也经由诸如视频接口890的接口连接到***总线821。除了监视器之外,计算机还可以包括诸如扬声器897和打印机896的其他***输出设备,该其他***输出设可以通过输出***接口895连接。
计算机810在使用到一个或多个远程计算机(诸如远程计算机880)的逻辑连接的联网环境中操作。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其他公共网络节点,并且通常相对于计算机810包括上述元件的许多或所有。图11中描述的逻辑连接包括局域网(LAN)871和广域网WAN)873,但也可能包括其他网络。这样的联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。
当在LAN网络环境中使用时,计算机810通过网络接口或适配器870连接到LAN871。当在WAN联网环境中使用时,计算机810通常包括调制解调器872或其他装置用于通过WAN873(诸如因特网)建立通信。可以是内部或外部的调制解调器872经由用户输入接口860或其他适当的机制可以被连接到***总线821。在联网环境中,相对于计算机810描述的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图11将远程应用程序885图示为驻留在远程计算机880上。应当理解,所示的网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其他装置。
还应当注意,本文描述的不同实施例可以以不同的方式组合。也就是说,一个或多个实施例的部分可以与一个或多个其他实施例的部分组合。本文中想到了所有这一切。
示例1是计算***,包括:
用户界面部件;
定制部件,该定制部件控制用户界面部件以生成具有配置用户输入机制的定制用户界面显示,并且作为响应,检测与配置用户输入机制的用户交互并生成对所选择的数据表面处理***的定制,定制部件将定制存储为包括对所选择的数据表面处理***的改变的增量,并且在具有祖先节点和后代节点的数据表面处理解决方案层次结构中的节点处标识所述增量,每个节点表示唯一的数据表面处理***,并且每个后代节点标识相对于祖先节点的增量;以及
自动升级***,该自动升级***检测对给定数据表面处理***的改变,检测对应于给定数据表面处理***的所述数据表面处理解决方案层次结构中的给定节点,并且响应于检测到升级另一数据表面处理***的用户升级交互,标识对应于另一数据表面处理***的数据表面处理解决方案层次结构中的另一个节点以及在给定节点和另一个节点之间的所有中介节点,并基于对所述给定数据表面处理***的改变以及基于在所述给定节点、所述另一节点和所述中介节点处标识的增量,重新配置另一数据表面处理***,以对其进行升级。
示例2是根据任意一个或所有先前示例的计算***,其中给定节点包括到另一节点的祖先节点,并且其中另一节点包括到给定节点的后代节点。
示例3是根据任意一个或所有先前示例的计算***,其中自动升级***包括:
定制合并部件,其合并在给定节点、另一节点和中介节点处所标识的增量。
示例4是根据任意一个或所有先前示例的计算***,其中定制合并部件在合并增量之后标识针对后代节点的新的一组增量,作为升级的新的一组增量指示具有应用了改变的给定数据表面处理***与另一数据表面处理***之间的差异。
示例5是根据任意一个或所有先前示例的计算***,其中所述定制***存储所述新的增量并且在所述数据表面处理解决方案层次结构中的所述后代节点处标识所述新增量。
示例6是根据任意一个或所有先前示例的计算***,其中自动升级***包括:
冲突解决部件,该冲突解决部件标识对给定数据表面处理***的改变在所述后代节点处标识的增量之间的冲突,访问一组冲突解决方案规则,并自动地解决所标识的冲突。
示例7是根据任意一个或所有先前示例的计算***,其中冲突解决部件标识用于手动解决的一组冲突并且控制用户界面部件以表面处理用于手动解决的冲突。
实施例8是根据任意一个或所有先前示例的计算***,还包括:
部署***,该部署***响应于检测到标识部署特定数据表面处理***的用户部署交互,访问数据表面处理解决方案层次结构并且部署特定数据表面处理***。
示例9是根据任意一个或所有先前示例的计算***,其中数据表面处理解决方案层次结构包括对应于基本数据表面处理解决方案的根节点,并且其中部署***包括:
层次结构访问部件,该层次结构访问部件标识对应于特定数据表面处理***的数据表面处理解决方案层次结构中的特定节点;以及
遍历部件,该遍历部件遍历从特定节点到根节点的数据表面处理解决方案层次结构,数据表面处理解决方案层次结构标识在特定节点以及根节点和特定节点之间的所有中介节点处的增量。
示例10是根据任意一个或所有先前示例的计算***,其中部署***包括:
部署引擎,该部署引擎部署基本数据表面处理解决方案;以及
增量应用部件,其向基本数据表面处理***应用在特定节点以及根节点和特定节点之间的所有中介节点处被标识的所有增量。
示例11是计算***,包括:
用户界面部件;
自动升级***,该自动升级***通过用户界面部件检测对基本数据表面处理解决方案的升级,以获得升级的基本数据表面处理解决方案,并且该自动升级***访问具有对应于基本数据表面处理解决方案的根节点以及表示定制的数据表面处理解决方案的后代节点的数据表面处理解决方案层次结构,定制的数据表面处理解决方案是基本数据表面处理解决方案的定制形式,后代节点将基本数据表面处理解决方案和定制数据表面处理解决方案之间的差异标识为增量;以及
定制合并部件,该定制合并部件将升级与增量合并,以获得升级的和定制的数据表面处理解决方案,该升级的和定制的数据表面处理解决方案生成新的一组组增量,新的一组增量指示升级的基本数据表面处理***与升级的和定制的数据表面处理解决方案之间的差异,并且将新的一组增量存储在后代节点处。
示例12是根据任意一个或所有先前示例的计算***,还包括:
定制***,改定制***控制用户界面部件以显示具有定制用户输入机制的定制用户界面显示,该定制用户输入机制被致动以生成增量,并且所述定制用户输入机制将增量保存在所述数据表面处理解决方案层次结构中的后代节点处,并且将该后代节点标识为对应于专用数据表面处理解决方案,专用数据表面处理解决方案从所述数据表面处理解决方案层次结构中的祖先节点继承配置信息的。
示例13是根据任意一个或所有先前示例的计算***,还包括:
部署***,该部署***检测标识数据表面处理解决方案层次结构中的节点的用户交互,并且该部署***访问所述数据表面处理解决方案层次结构中的标识的节点,并部署对应于识别的节点的唯一数据表面处理解决方案。
示例14是根据任意一个或所有先前示例的计算***,其中部署***包括:
遍历部件,该遍历部件从所识别的节点到所述根节点遍历所述数据表面处理解决方案层次结构,并且标识来自所述根节点和所标识的节点之间的所有后代节点的所有增量。
示例15是根据任意一个或所有先前示例的计算***,其中部署***包括:
增量应用部件,该增量应用部件将所有标识的增量应用于基本数据表面处理解决方案,以获得对应于识别的节点的定制数据表面处理解决方案;以及
部署引擎,该部署引擎部署对应于识别的节点的定制数据表面处理解决方案。
示例16是计算机实现的方法,包括:
通过用户界面部件检测对基本数据表面处理解决方案的升级,以获得升级的基本数据表面处理解决方案;
访问数据表面处理解决方案层次结构,该数据表面处理解决方案层次结构具有对应于基本数据表面处理解决方案的根节点以及表示就基本数据表面处理解决方案的定制形式的定制数据表面处理解决方案的后代节点,所述后代节点将基本数据表面处理解决方案和定制的数据表面处理解决方案之间的差异标识为增量;
将升级与增量合并,以获得升级和定制的数据表面处理解决方案;
生成新的一组增量,所述新的一组增量指示升级的基本数据表面处理***与所述升级和定制的数据表面处理解决方案之间的差异;以及
将新的一组增量存储在所述数据表面处理解决方案层次结构中的后代节点处。
实施例17是根据任意一个或所有先前实施例的计算机实现的方法,还包括:
将升级与增量进行比较,以确定升级中的任一个是否与增量相冲突;以及
如果是,则标识用于解决方案的冲突。
实施例18是根据任意一个或所有先前实施例的计算机实现的方法,并且还包括:
检测标识数据表面处理解决方案层次结构中的节点的用户交互;
访问数据表面处理解决方案层次结构中的标识的节点;以及
部署对应于标识的节点的唯一数据表面处理解决方案。
示例19是根据任意一个或所有先前示例的计算机实现的方法,其中部署包括:
从所标识的节点到根节点遍历数据表面处理解决方案层次结构;以及
标识来自根节点和所标识的节点之间的所有后代节点的所有增量。
示例20是根据任意一个或所有先前示例的计算机实现的方法,其中部署包括:
将所有识别的增量应用于基本数据表面处理解决方案,以获得对应于所识别的节点的定制数据表面处理解决方案;以及
部署对应于识别的节点相对应的定制数据表面处理解决方案。
虽然主题已经以特定于结构特征和/或方法动作的语言描述,但是应当理解,所附权利要求中定义的主题不必限于上述特定特征或动作。相反,上述特定特征和动作被公开为实现权利要求的示例形式。
Claims (15)
1.一种计算***,包括:
用户界面部件;
定制部件,所述定制部件控制所述用户界面部件以生成具有配置用户输入机制的定制用户界面显示,并且作为响应,检测与所述配置用户输入机制的用户交互并且生成对选择的数据表面处理***的定制,所述定制部件将所述定制存储为包括对所述选择的数据表面处理***的改变的增量,并且在具有祖先节点和后代节点的数据表面处理解决方案层次结构中的节点处标识所述增量,每个节点表示专用的数据表面处理***,并且每个后代节点标识相对于祖先节点的增量;以及
自动升级***,所述自动升级***检测对给定数据表面处理***的改变,检测对应于所述给定数据表面处理***的所述数据表面处理解决方案层次结构中的给定节点,并且响应于检测到用于升级另一数据表面处理***的用户升级交互,标识对应于所述另一数据表面处理***的所述数据表面处理解决方案层次结构中的另一个节点、以及在所述给定节点和所述另一节点之间的所有中介节点,并基于对所述给定数据表面处理***的改变以及基于在所述给定节点、所述另一节点和所述中介节点处标识的增量,重新配置所述另一数据表面处理***,以对其进行升级。
2.根据权利要求1所述的计算***,其中所述给定节点包括到所述另一节点的祖先节点,并且其中所述另一节点包括到所述给定节点的后代节点。
3.根据权利要求2所述的计算***,其中所述自动升级***包括:
定制合并部件,所述定制合并部件合并在所述给定节点、所述另一节点和所述中介节点处被标识的增量。
4.根据权利要求3所述的计算***,其中所述定制合并部件在合并所述增量之后,标识所述后代节点的新的一组增量,作为升级的所述新的一组增量指示具有被应用的所述改变的所述给定数据表面处理***与所述另一数据表面处理***之间的差异。
5.根据权利要求4所述的计算***,其中所述定制***存储所述新的增量,并且在所述数据表面处理解决方案层次结构中的所述后代节点处标识所述新的增量。
6.根据权利要求5所述的计算***,其中所述自动升级***包括:
冲突解决部件,所述冲突解决部件标识对所述给定数据表面处理***的所述改变与在所述后代节点处标识的所述增量之间的冲突,访问一组冲突解决方案规则,并自动地解决所述标识的冲突。
7.根据权利要求6所述的计算***,其中所述冲突解决部件标识用于手动解决的一组冲突,并且控制用户界面部件以表面处理用于手动解决的所述冲突。
8.根据权利要求5所述的计算***,还包括:
部署***,所述部署***响应于检测到标识要部署的特定数据表面处理***的用户部署交互,访问所述数据表面处理解决方案层次结构,并且部署所述特定数据表面处理***。
9.根据权利要求8所述的计算***,其中数据表面处理解决方案层次结构包括对应于基本数据表面处理解决方案的根节点,并且其中所述部署***包括:
层次结构访问部件,所述层次结构访问部件标识对应于所述特定数据表面处理***的所述数据表面处理解决方案层次结构中的特定节点;以及
遍历部件,所述遍历部件遍历从所述特定节点到所述根节点的所述数据表面处理解决方案层次结构,所述遍历部件标识在所述特定节点、以及所述根节点和所述特定节点之间的所有中介节点处的增量。
10.根据权利要求9所述的计算***,其中所述部署***包括:
部署引擎,所述部署引擎部署所述基本数据表面处理解决方案;以及
增量应用部件,所述增量应用部件向所述基本数据表面处理***应用在所述特定节点、以及所述根节点和所述特定节点之间的所有中介节点处识别的所有所述增量。
11.一种计算***,包括:
用户界面部件;
自动升级***,所述自动升级***通过所述用户界面部件检测对基本数据表面处理解决方案的升级,以获得升级的基本数据表面处理解决方案,并且所述自动升级***访问具有对应于所述基本数据表面处理解决方案的根节点、以及表示定制的数据表面处理解决方案的后代节点的数据表面处理解决方案层次结构,所述定制的数据表面处理解决方案是所述基本数据表面处理解决方案的定制形式,所述后代节点将所述基本数据表面处理解决方案和所述定制的数据表面处理解决方案之间的差异标识为增量;以及
定制合并部件,所述定制合并部件将所述升级与所述增量合并,以获得升级的和定制的数据表面处理解决方案,所述定制合并部件生成新的一组增量,所述新的一组增量指示所述升级的基本数据表面处理***与所述升级的和定制的数据表面处理解决方案之间的差异,并且所述定制合并部件将所述新的一组增量存储在所述后代节点处。
12.根据权利要求11所述的计算***,还包括:
定制***,所述定制***控制所述用户界面部件,以显示具有定制用户输入机制的定制用户界面显示,所述定制用户输入机制被致动以生成所述增量,并且所述定制用户输入机制将所述增量保存在所述数据表面处理解决方案层次中的所述后代节点处,并且将所述后代节点标识为对应于专用数据表面处理解决方案,所述专用数据表面处理解决方案从所述数据表面处理解决方案层次结构中的祖先节点继承配置信息。
13.根据权利要求12所述的计算***,还包括:
部署***,所述部署***检测标识所述数据表面处理解决方案层次结构中的节点的用户交互,并且所述部署***访问所述数据表面处理解决方案层次结构中的标识的所述节点,并且部署对应于标识的所述节点的专用数据表面处理解决方案。
14.根据权利要求12所述的计算***,其中所述部署***包括:
遍历部件,所述遍历部件从标识的所述节点到所述根节点遍历所述数据表面处理解决方案层次结构,并且标识来自所述根节点和标识的所述节点之间的所有后代节点的所有增量;
增量应用部件,该增量应用部件将所有标识的增量应用于所述基本数据表面处理解决方案,以获得对应于识别的所述节点的定制的数据表面处理解决方案;以及
部署引擎,所述部署引擎部署对应于标识的所述节点的所述定制的数据表面处理解决方案。
15.一种计算机实现的方法,包括:
通过用户界面部件检测对基本数据表面处理解决方案的升级,以获得升级的基本数据表面处理解决方案;
访问数据表面处理解决方案层次结构,所述数据表面处理解决方案层次结构具有对应于所述基本数据表面处理解决方案的根节点、以及表示定制的数据表面处理解决方案的后代节点,所述定制的数据表面处理解决方案是所述基本数据表面处理解决方案的定制形式,所述后代节点将所述基本数据表面处理解决方案和所述定制的数据表面处理解决方案之间的差异标识为增量;
将所述升级与所述增量合并,以获得升级的和定制的数据表面处理解决方案;
生成新的一组增量,所述新的一组增量指示所述升级的基本数据表面处理***与所述升级和所述定制的数据表面处理解决方案之间的差异;以及
将所述新的一组增量存储在所述数据表面处理解决方案层次结构中的所述后代节点处。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/627,397 | 2015-02-20 | ||
US14/627,397 US10110442B2 (en) | 2015-02-20 | 2015-02-20 | Hierarchical data surfacing configurations with automatic updates |
PCT/US2016/017646 WO2016133791A1 (en) | 2015-02-20 | 2016-02-12 | Hierarchical data surfacing configurations with automatic updates |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107257956A true CN107257956A (zh) | 2017-10-17 |
CN107257956B CN107257956B (zh) | 2021-06-08 |
Family
ID=55485332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680011139.3A Active CN107257956B (zh) | 2015-02-20 | 2016-02-12 | 具有自动升级的分层数据表面处理配置的方法及*** |
Country Status (3)
Country | Link |
---|---|
US (1) | US10110442B2 (zh) |
CN (1) | CN107257956B (zh) |
WO (1) | WO2016133791A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10789080B2 (en) * | 2015-07-17 | 2020-09-29 | Microsoft Technology Licensing, Llc | Multi-tier customizable portal deployment system |
US10338991B2 (en) | 2017-02-21 | 2019-07-02 | Microsoft Technology Licensing, Llc | Cloud-based recovery system |
US10585788B2 (en) | 2017-02-21 | 2020-03-10 | Microsoft Technology Licensing, Llc | State-based remedial action generation |
US10437663B2 (en) | 2017-04-14 | 2019-10-08 | Microsoft Technology Licensing, Llc | Administrative user communication and error recovery |
US10785108B1 (en) * | 2018-06-21 | 2020-09-22 | Wells Fargo Bank, N.A. | Intelligent learning and management of a networked architecture |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050257210A1 (en) * | 2004-05-11 | 2005-11-17 | Frank Stienhans | Upgrading pattern configurations |
US20080196008A1 (en) * | 2004-05-20 | 2008-08-14 | Symbian Software Ltd. | Method of Operating a Computing Device |
US20090055797A1 (en) * | 2007-08-23 | 2009-02-26 | International Business Machines Corporation | Method and computer program product for viewing extendible models for legacy applications |
CN101739275A (zh) * | 2008-11-25 | 2010-06-16 | 费舍-柔斯芒特***股份有限公司 | 在软件***升级期间提供定制化发布说明的***及方法 |
US20110307798A1 (en) * | 2010-06-11 | 2011-12-15 | Microsoft Corporation | Merging Modifications to User Interface Components While Preserving User Customizations |
CN102591666A (zh) * | 2012-01-04 | 2012-07-18 | 浪潮集团山东通用软件有限公司 | 一种分级结构的元数据版本管理方法 |
US8560938B2 (en) * | 2008-02-12 | 2013-10-15 | Oracle International Corporation | Multi-layer XML customization |
CN103647816A (zh) * | 2013-12-03 | 2014-03-19 | 北京奇虎科技有限公司 | 一种应用软件升级的方法及装置 |
US20140304694A1 (en) * | 2011-07-15 | 2014-10-09 | Integware, Inc. | Software Automated Data and Data Model Upgrade System |
CN104133717A (zh) * | 2014-08-26 | 2014-11-05 | 中电海康集团有限公司 | 一种用于数据开放***的服务自动化生成和部署方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7131069B1 (en) | 1998-10-22 | 2006-10-31 | Made2 Manage Systems, Inc. | Navigational interface for ERP system |
US6873997B1 (en) | 1999-08-04 | 2005-03-29 | Agile Software Corporation | Data management system and method for automatically propagating information to disparate information systems from a central location |
US6678716B1 (en) | 2000-06-19 | 2004-01-13 | J. D. Edwards World Source Company | System and method for managing processes |
US20020099583A1 (en) | 2001-01-24 | 2002-07-25 | Matusek Lawrence W. | Architecture and techniques for providing product configurations to an enterprise resource planner |
US20040172278A1 (en) | 2003-02-27 | 2004-09-02 | Bell Kevin R. | System for completing a requisitioning cycle |
US20050096774A1 (en) | 2003-10-31 | 2005-05-05 | Bayoumi Deia S. | System and method for integrating transactional and real-time manufacturing data |
US7890544B2 (en) * | 2004-01-16 | 2011-02-15 | Microsoft Corporation | Metadata driven customization of a software-implemented business process |
US8122377B2 (en) * | 2004-03-09 | 2012-02-21 | Siebel Systems, Inc. | Preserving user interface customizations while upgrading an enterprise application |
AU2005223867A1 (en) | 2004-03-19 | 2005-09-29 | Stayton D. Addison | Methods and systems for transaction compliance monitoring |
US7805706B1 (en) | 2005-06-21 | 2010-09-28 | Unisys Corporation | Process for optimizing software components for an enterprise resource planning (ERP) application SAP on multiprocessor servers |
US20080077613A1 (en) | 2006-09-27 | 2008-03-27 | Ffd, Inc. | User Interface Displaying Hierarchical Data on a Contextual Tree Structure |
US8745611B2 (en) | 2008-06-05 | 2014-06-03 | Accenture Global Services Limited | Software upgrade analysis system |
US20100146478A1 (en) * | 2008-12-10 | 2010-06-10 | Microsoft Corporation | Multi-layered storage and management of software components |
US20100306010A1 (en) | 2009-06-01 | 2010-12-02 | Microsoft Corporation | Interactive map/diagram of erp code and model elements |
US8626703B2 (en) | 2010-12-17 | 2014-01-07 | Verizon Patent And Licensing Inc. | Enterprise resource planning (ERP) system change data capture |
US9158438B2 (en) * | 2013-09-16 | 2015-10-13 | Sap Se | Multi-level user interface theming engine |
-
2015
- 2015-02-20 US US14/627,397 patent/US10110442B2/en active Active
-
2016
- 2016-02-12 CN CN201680011139.3A patent/CN107257956B/zh active Active
- 2016-02-12 WO PCT/US2016/017646 patent/WO2016133791A1/en active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050257210A1 (en) * | 2004-05-11 | 2005-11-17 | Frank Stienhans | Upgrading pattern configurations |
US20080196008A1 (en) * | 2004-05-20 | 2008-08-14 | Symbian Software Ltd. | Method of Operating a Computing Device |
US20090055797A1 (en) * | 2007-08-23 | 2009-02-26 | International Business Machines Corporation | Method and computer program product for viewing extendible models for legacy applications |
US8560938B2 (en) * | 2008-02-12 | 2013-10-15 | Oracle International Corporation | Multi-layer XML customization |
CN101739275A (zh) * | 2008-11-25 | 2010-06-16 | 费舍-柔斯芒特***股份有限公司 | 在软件***升级期间提供定制化发布说明的***及方法 |
US20110307798A1 (en) * | 2010-06-11 | 2011-12-15 | Microsoft Corporation | Merging Modifications to User Interface Components While Preserving User Customizations |
US20140304694A1 (en) * | 2011-07-15 | 2014-10-09 | Integware, Inc. | Software Automated Data and Data Model Upgrade System |
CN102591666A (zh) * | 2012-01-04 | 2012-07-18 | 浪潮集团山东通用软件有限公司 | 一种分级结构的元数据版本管理方法 |
CN103647816A (zh) * | 2013-12-03 | 2014-03-19 | 北京奇虎科技有限公司 | 一种应用软件升级的方法及装置 |
CN104133717A (zh) * | 2014-08-26 | 2014-11-05 | 中电海康集团有限公司 | 一种用于数据开放***的服务自动化生成和部署方法 |
Also Published As
Publication number | Publication date |
---|---|
US10110442B2 (en) | 2018-10-23 |
WO2016133791A1 (en) | 2016-08-25 |
US20160248636A1 (en) | 2016-08-25 |
CN107257956B (zh) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106471517B (zh) | 对显示元素的因用户而异的可视化 | |
CN107430515A (zh) | 开发环境中的可定制类型的可视化框架 | |
CN105229637B (zh) | 内容集合的自动生成 | |
CN105612497B (zh) | 所选更新在多个环境中的自动安装 | |
CN105830019B (zh) | 用于基本模型定制的集成环境 | |
CN105612495B (zh) | 在计算机***中安装所选更新之后自动解决冲突 | |
CN106233252A (zh) | 用于定制软件的动态更新安装器 | |
CN106605234B (zh) | 使用近场通信与许可控制共享内容 | |
CN107710157A (zh) | 多租户、租户特定的应用程序 | |
CN107257956A (zh) | 具有自动升级的分层数据表面处理配置 | |
CN105723337B (zh) | 用于从交互式开发环境递增地编译软件制品的方法和*** | |
CN105229678A (zh) | 进程建模和界面 | |
CN107408049A (zh) | 模型驱动定制框架 | |
CN105612496B (zh) | 用于基于存储的生命周期信息来自动推荐更新的方法和*** | |
CN107810509A (zh) | 工作流生成和编辑 | |
CN104737124B (zh) | 用于提交服务的业务元数据的门户 | |
CN106133697A (zh) | 具有分支和门控的便携式业务逻辑 | |
CN106462486A (zh) | 使用可操作洞察的用户体验诊断 | |
CN106164851B (zh) | 基于对已实现的过程进行过程建模的计算机***的自动配置 | |
CN106663090A (zh) | 在编译期间将呈现元数据转换成浏览器可渲染格式 | |
US20140279823A1 (en) | Lifecycle product analysis | |
CN105408922A (zh) | 过程流基础结构和配置界面 | |
CN102982569A (zh) | 在可编辑和不可编辑向导之间进行区分 | |
CN106462415A (zh) | 访问开发***中的语义内容 | |
CN106062689A (zh) | 知晓上下文的命令 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |