[发明专利]使用基于事件的遗留应用进行的集成系统组合建模有效
申请号: | 201010285867.8 | 申请日: | 2010-07-19 |
公开(公告)号: | CN101996078A | 公开(公告)日: | 2011-03-30 |
发明(设计)人: | M·格雷查尼克;谢晴;傅忱 | 申请(专利权)人: | 埃森哲环球服务有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 酆迅;姜彦 |
地址: | 爱尔兰*** | 国省代码: | 爱尔兰;IE |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 使用 基于 事件 遗留 应用 进行 集成 系统 组合 建模 | ||
技术领域
本公开涉及一种用于使用基于事件的遗留应用来扩展建模环境的工具。特别地,本公开涉及这样的工具,其允许建模人员创建用于来自图形用户界面(GUI)应用(GAP)的建模环境工具箱的建模元素,以及生成用以控制和操纵由建模元素表示的GAP的GUI对象的源代码。
背景技术
集成系统由交换信息的组件组成,这样的组件也被称为互操作组件。集成系统的组件可以包含基于事件的不同遗留应用,例如图形用户界面(GUI)应用(GAP)。组织使用遗留的GAP来协助业务运营,以使业务处理自动化,例如,增加信息交换的速度和有效性。
组织发现将GAP重新建造到编程组件中是困难的,这是因为脆弱的遗留架构、不良的文档、巨大的编程努力、以及由此导致的这些项目的巨大成本。因为业务成功使用GAP数十年,管理者不愿意批准更改源代码,因这可能破坏GAP和扰乱已经良好建立的业务服务。为了通过增加GAP与新组件(例如网络服务)的互操作性来改善业务处理,许多组织探索如何在新的集成系统中包含遗留GAP。
组织经常依赖建模人员开发新集成系统的模型。建模人员可以使用统一建模语言(UML)图形表示应用(例如,ArgoUMLTM应用),其提供了用来创建描述新集成系统的模型的一套图形符号技术。然而,建模人员发现,对包含GAP的新集成系统进行建模是困难的,因为许多GAP是封闭的、整体的,并且没有以已知的格式公开任何编程接口或数据。尽管建模人员渴望将GAP作为集成系统中的组件使用,但是建模人员发现,捕获GAP的功能和接口以作为基于UML的模型的元素(例如,类和接口)是困难的。建模人员发现,捕获GUI对象的属性和GUI对象间的依赖关系是困难的,因为GUI模型对于遗留应用经常是不可得的。
当前,建模人员使用手工的、费劲的、易于出错的过程来研究GAP以及将GUI对象转换为UML元素,以作为这些GAP功能的抽象。建模人员发现,在建模环境中使用GAP是困难的,因为许多遗留GAP没有公开任何编程接口。建模人员发现,捕获GUI对象的属性和GUI对象间的依赖关系是困难的,因为GUI模型对于遗留应用经常是不可得的。
理论上,能够从GAP的源代码中提取GUI模型,然而,存在两个根本的限制。第一,GAP的源代码经常可能是不可得的。例如,建模可能外包给外部组织,遗留应用的源代码可能不对该组织共享。这样,外部组织没有能力从源代码中导出精确的GUI模型。第二,即使外部组织具有或拥有对源代码的访问权,依然存在使从源代码导出GUI模型的方法低效的限制。例如,Microsoft WindowsTM应用编程接口(API)调用CreatWindow,其用在大量的GAP中,获得包括字符串变量的若干参数变量,该字符串变量保有GUI对象的类型的值,这个值常常是只有在运行时才可知。
另外,从GAP的源代码导出模型依赖于了解创建和操纵GUI对象的API调用的精确语义(例如,CreatWindow)、为用于创建GUI应用的语言建立适当的解析器和分析器以及开发用于从集成开发环境(IDE)GUI资源库中提取GUI模型的IDE特定工具。元组的数量按照“API调用×编程语言×IDE”的成千上万的笛卡尔积来测量,这增加了识别与不同GUI应用的源代码库一起工作的方法的难度。
UML模型中使用GUI对象的一个根本限制是GUI对象不是可以使用UML标准元素来建模的编程对象。在相应的GAP内使用底层GUI框架创建GUI对象,GUI对象不是任何建模环境的一部分。一些GUI对象要求用户在GUI对象实例化之前执行对GAP的多个动作。在未将这些动作嵌入UML元素中的情况下,建模人员发现创建能够转变成使用这些GUI对象的源代码的UML模型是困难的。
GAP以很多不同的语言编写并运行在很多不同的平台。存在很多从GAP中提取数据的平台和语言特定的技术。然而,在用于不同建模平台和语言的工具中实现这些特定技术导致用于各个工具的多个源代码版本、增加了维护工具的成本、难以维护和演进不同的代码库。
最后,建模人员发现从包含描述GUI对象的元素的UML模型中生成源代码是困难的。表示GUI对象的类应包含访问和操纵这些GUI对象的代码,因为这些GUI对象在GAP进程和底层GUI框架(例如,MS-WindowsTM或JavaTM SWT-标准部件工具包)的上下文中动态地创建。因为模型没有反映GUI对象存在的上下文,建模人员发现维护和利用相应的GAP演进这些模型是困难的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于埃森哲环球服务有限公司,未经埃森哲环球服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010285867.8/2.html,转载请声明来源钻瓜专利网。