用于计算机应用程序开发和执行的方法、系统和数据结构技术方案

技术编号:2887477 阅读:264 留言:0更新日期:2012-04-11 18:40
对软件开发和执行的一个方法、系统和数据结构包括一个实时事件管理器和一组模型。一个模型是一类数据结构,它们不包含程序码,而是一个有序的参照组,参照其他模型、方法或其他对象。一旦满足一组条件,将模型登录,它们就能被实时事件管理器访问。在本发明专利技术的一个实施例中,实时事件管理器是一个用程序代码执行的调入-执行循环,它在每个循环中操作一组模型,校验外部输入/输出状态,且在这种条件下可以处理不同的或变种的模型,而不是具有默认条件的标准的或规范的模型。且按本发明专利技术可以实现一个弹性数据库,以允许动态地扩展数据库的功能。(*该技术在2017年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术与计算机编程有关,特别地与计算机软件应用开发和执行有关。背景计算机应用软件的开发和修改需要使用编程规范编写代码或软件目标(“对象”),例如使用第三代语言(“3GL”)、第四代语言(“4GL”)或面向对象的开发(“OOD”)方法。这些传统方法的关键限制之一是它们在软件开发和修改中使用时需要开发者实际修改代码。不仅从编码涉及的劳动力观点看,还是从软件开发和测试过程中有关的协调计划看这都是一种麻烦的限制。近年来出现的面向对象的主导编程方法通过提供高度模块化、自然且可重新使用的编程结构促进了软件开发计算。作为背景,术语“对象”,正如被面向对象软件和编程领域技术人员所使用的那样,是指以数据结构形式出现的软件组成部分,通过从一个向另一个发送消息它们能互相通信或调用。相应于相同消息的对象被说成具有一个共同的“类”。对象的“类”描述并实现捕捉该类的“实例”(即对象)行为的所有方法。一个类的实例的状态或结构由模板所规定,模板可以规定一个对象的状态包括了其它对象、由OOD引入的模块性有助于用分治法解决问题,能较容易调试,允许对现实世界问题或环境有效高的保真模型并能产生可重复使用的代码。但还是要求编写和测试代码。一个计算机“应用”就是一个程序,计算机用户用该程序交互地执行一项任务,并且有别于系统软件其它软件(它们为设计的应用软件创建运行的功能环境)。然后,计算机应用软件的开发者参预对用户接口的支持和达到用户的目标。在许多应用环境中,特别是基于用户开发的软件环境中,用户的需求在更新。想满足这些需要的应用软件最好能跟着更新。然而,用现有的方法修改应用软件--即使由OOD方式提供了模块方法--需要编写或修改计算机代码,调试代码,且进行中要对应用的使用造成最小的干扰。然而,这一目标已证明难以把握。为了开发和修改软件应用,除了与需要编写和集成新代码有关的问题外,现行的软件应用开发或修改方法的另一个问题是这些代码还必须适应外部事件的处理,例如用户的输入/输出(I/O)或其它事件的发生。然而,由于这种用户I/O或其它事件可以在一种用户环境和另一种用户环境之间变动很大(例如,与字符输入相对的图形用户接口(“GUI”),用现有技术适应这种不同外部事件的能力要求或者(1)费时的客户软件开发、完成调试的过程,或者(2)开发一组具有足以处理意外事件能力的代码以能在各种当时所知的应用环境中能工作。在每一种情况下,对于每个应用环境要求大量的编码和测试过程,一旦这种外部事件条件变化发生时,只有或者与应用环境下要改进的软件缺点共存或者完成艰巨的再编码和测试过程。专利技术概述本专利技术是针对一种用于计算机应用软件的开发(包括设计、建立、测试、维护和修改)和执行的方法、系统和数据结构,它能减轻由现行技术的用户所遇到的许多应用设计、测试和修改问题。最值得注意的是,通过用下面将详述的运行时间事件管理器和以后连接、可重新使用的模块、方法或其它对象来替换代码可以排除对被编码应用程序的需要。代替用作应用的程序源代码或目标代码或者任何形式的以后连接或动态连接的运行时间应用代码,本专利技术的一个实施例提供了单个与应用无关的软件实体,这里称之为运行时间事件管理器(“RTEM”)并描述如下。RTEM是在按照本专利技术开发的任何应用的运行期间存在的单个控制实体。任何时候给定应用和输入/输出状态时RTEM继续确定通过调用任何可供使用的手段计算机所作的什么才是最合适的。然而,RTEM并不实际完成它所确定的合适的功能,仅是调用完成这功能所必须的手段-包括对象、应用专用对象及工具。(本文档中所用的“工具”这一术语,指的是允许或提供对低层或操作系统功能访问的过程代码;例如,下述的数据库访问工具(“DBAC”)向数据库读写信息。本文档中所用术语“工具使用”指的是允许对工具访问的模型设计对象,即它为工具提供了接口定义,例如使用DBAC进行读或写的参数)。这些对象和工具(包括方法、I/O工具或其它能在计算机上实现功能性的软件结构)并不独立于RTEM的指导而工作。换句话说,它们最好由RTEM且仅由RTEM调用来实现RTEM调用它们所要作的功能。为了由RTEM调用对象和工具以完成一种功能,按照登录过程对象和工具必须可供RTEM使用,示例如下所述。例如,根据本专利技术,没有对象和工具可以被登录而为包含了将控制从RTEM转移开的指令的RTEM所使用。因此,例如一个使用由RTEM运行的应用的操作者可受到保护不至于不适当地超越任何应有的特权,否则会因请求了禁用的动作而危及应用的整体性。此外,RTEM重复地检查诸如操作者的交互操作等外部事件且因而能立即与操作者交互对话,例如提供信息、接收指令、开始应用任务、跟踪时间或其它功能。在本专利技术的一个实施例中,RTEM是一个模块,它管理所有的运行时间事件并实现与操作者的通信。一个“事件”可定义为任何计划发生的事情,最明显地包括了以预定的方式完成一个应用过程中所发生的事情。根据本专利技术,RTEM最好是应用的操作者直接与之通信的唯一软件,即使操作者要直接与应用通信时亦如此。RTEM将来自操作者的信息中转给要实现信息的应用事件。RTEM也把应用给出的信息返回中转给操作者。除了在操作者和应用之间中介传递外,本专利技术实施例中的RTEM在运行时间任务期间中介传递所有的事件,这是由于如上所述(以下将详述),对象或工具不能调用或与另一个对象通信。根据本专利技术,通过重复检验和处理“模型”以执行模型中所捕获的与应用有关的逻辑,RTEM能调用或与另一对象通信。每个模型指定了与应用有关的过程。模型最好只包括数据,即不可执行的对象(全部或部分均可)。模型中的数据向处理该模型的RTEM提供规则、工具、格式和RTEM必须调用的应用专用对象以使与应用处理有关的运行时间事件出现。在本专利技术的实施例中,模型是对提出与应用有关的处理的对象和数据引用的列表;然而,如下所述,根据给定时刻的应用或外部条件的状态,RTEM在合适的时候可以对由模型表示的处理概要作全部或部分的忽略、更改和/或添加。在缺乏相关的、有效的认可的可替代信息时,在运行时间上模型后面绝对地跟随着RTEM。根据本专利技术,由RTEM调用和检查的模型包括范例模型和与给定的范例模型有关的派生模型。范例模型描述了与应用有关的“标准”处理过程。派生模型描述了有关“标准”处理的各种变化。根据本专利技术,两种模型在经过评价以确定它们的形式(包括它们的构成数据)是否遵照由RTEM处理的有关的约束后必须被登录。虽然范例模型可以为应用的一部分提出了一组规则,派生模型则表示了一组子规则,指明在某种条件下标准的或范例的处理方式可由更改的变化的规则所替代。在本专利技术的实施例中,派生模型仅指与它有关的范例模型有所不同或有变化的模型;如所述,RTEM10随后监视应用和外部运行时间事件,并且随着条件变化它识别和检验在这些条件下所应用的派生模型并调用所应用的这些派生模型。根据本专利技术,当按照预先条件把模型登录为可供RTEM使用,RTEM识别和存储在运行时间调用派生模型的逻辑时所处的一组条件。另外,根据本专利技术,与范例模型有关的派生模型不用对范例模型或其它派生模型修改即可创建和登录以建立对派生模型在模型方面的任何引用。通过创建新模型而对应用进行修改使得对现行模型重新测试的需要最小化,也使在本文档来自技高网...

【技术保护点】
一个用于运行应用软件的计算机执行系统,所述系统具有一个处理器,一个存储器和一个存储介质,所述系统包括: 储存在存储介质中的多个模型,每个模型包含的数据中包括对一个或多个对象的参照;和 一个实时运行事件管理器,用于将从多个模型中选定的一个从存储介质加载到存储器中,读出所述所选模型的数据,且当读入对一个对象的参照时,调用并执行所述对象。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:W马韦F麦格克J贝内特M克拉克
申请(专利权)人:马维斯国际软件股份有限公司
类型:发明
国别省市:CA[加拿大]

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1