遗产系统
2019-11-22

遗产系统

依照本公开的方面提供一种用于针对已有遗产系统创建和操作移动应用的示例方法。该方法包括:用与移动应用关联的应用编程接口(API)包装器封装已有遗产系统的多个用户界面(UI)自动脚本。响应于来自该移动应用的调用,该方法进一步包括:利用该API包装器中的记录的多个UI自动脚本中被选择的UI自动脚本,执行该遗产系统中的至少一个动作。该方法还包括:向该移动应用返回来自该遗产系统中的至少一个动作的结果。

通信接口50使计算设备27能够与多个网络和通信链接通信。输入接口45可以接收来自遗产系统20、网络25、以及与计算设备27通信的一个或多个其它外部系统的信息。在一个示例中,输入接口45至少包括数据接口60。在其它示例中,输入接口45可以包括其它接口。在一个示例中,当计算设备27与遗产系统20通信时,数据接口60接收与在计算设备27上运行(即,用于开发或测试目的)的至少一个移动应用关联的信息。例如,当遗产系统20是允许找出基于公司员工的数据项(例如,员工名或员工ID)的"员工目录"网页应用时,数据接口60可以接收员工信息。

此外,开发者可以通过测试UI自动脚本、确定是否存在故障的脚本、以及识别使用它们的移动应用,持续地并快速地验证移动应用的健康状况。在故障的情况下,开发者可以修复自动脚本本身,而不必对移动应用提供修复。由于UI自动脚本用作生产应用并且不仅是针对测试目的执行的,所以此验证技术可以用作可以在生产中每天验证和检查的移动应用的安全保障。

在一个示例中,IDE15与由开发者(未示出)操作的计算设备27通信,以开发或更新移动应用。计算设备27可以是开发者的工作站,并且可以包括个人计算机、便携式计算机、服务器、多个分布式计算设备、或任意其它合适的计算设备。在所图示的示例中,计算设备27包括处理器30、存储器35、UI自动脚本模块40、以及API包装器模块42,API包装器模块42用于创建遗产系统20的UI自动脚本以及用API包装器封装自动脚本来通过使用API包装器中的脚本在遗产系统20上执行动作。

计算设备27经由网络25连接至遗产系统15、IDE15、记录-重放引擎17以及至少一个移动设备28。网络25允许这些设备中的每个与计算设备27通信以及与任意其它系统或设备通信。网络25可以包括允许系统10的设备之间进行通信的任意合适类型或构造的网络,。例如,网络25可以包括广域网("WAN")(例如,基于TCP/1P的网络,蜂窝网,例如全球移动通信("GSM")网络、通用分组无线业务("GPRS")网络、码分多址("⑶MA")网络、演进数据优化("EV-D0")网络、增强型数据速率GSM演进技术("EDGE")网络、3GSM网络、4GSM网络、数字增强无绳通信("DECT")网络、数字AMPS("IS-136/TDMA")网络、或集成数字增强型网络("iDEN")网络等)。网络25可以进一步包括局域网("LAN")、邻域网("NAN")、家域网("HAN")、个域网("PAN")、公共交换电话网络("PSTN")、内联网、互联网、或任意其它合适的网络。

由于移动设备的普及,这些机构可能期望使它们的已有遗产系统现代化并且使它们兼容移动通信设备。为了使移动设备可利用已有遗产系统,机构必须针对这些已有遗产系统中的每个开发新的移动应用。针对已有遗产系统创建移动应用的任务对于下面的任何公司而言是重要的:该公司想要与不论何时都期望具有对服务、个人数据和内容的移动访问权的移动用户保持接触。

在一个示例中,IDE15与由开发者(未示出)操作的计算设备27通信,以开发或更新移动应用。计算设备27可以是开发者的工作站,并且可以包括个人计算机、便携式计算机、服务器、多个分布式计算设备、或任意其它合适的计算设备。在所图示的示例中,计算设备27包括处理器30、存储器35、UI自动脚本模块40、以及API包装器模块42,API包装器模块42用于创建遗产系统20的UI自动脚本以及用API包装器封装自动脚本来通过使用API包装器中的脚本在遗产系统20上执行动作。

在另一示例中,来自至少一个动作的结果可以不被立即返回给移动应用。例如,控制单元33可以将执行遗产系统20中的至少一个动作的请求放置在队列内,并且移动应用可以接收该动作的指令被接收到的初始确认。控制单元33于是可以通过稍后使用API包装器中的脚本来执行遗产系统20中的至少一个动作,并且可以在执行该动作时向移动应用发送确认。在发送确认之后,控制单元33可以向移动应用返回来自遗产系统中至少一个动作的结果。

方法300始于步骤305,在步骤305中,控制单元33选择由API包装器封装的记录的至少一个UI自动脚本或多个脚本,以执行遗产系统20中的至少一个动作。在一个示例中,控制单元33通过分析来自移动应用的调用并且确定要由遗产系统20执行的动作是什么,选择UI自动脚本。如上所述的,动作可以包括由遗产系统实施的一个步骤或多个步骤,其中可以以特定顺序,也可以不以特定顺序实施这些步骤。在一个示例中,控制单元33通过分析从移动应用调用的脚本的名称,确定待执行的动作(以及因此确定待选择的UI自动脚本)。在其它示例中,控制单元33仅基于移动应用调用来确定待选择的UI自动脚本。可选地,待选择的UI自动脚本可以与移动应用上的对象(例如,链接、控制按钮等)关联。

背景技术

此外,移动应用的开发者可能没有对遗产系统后端中的原始源代码或API的访问权。遗产系统的源代码可能过时并且是以不再支持的框架编写的。在许多情况下,已有遗产系统是如此过时,使得不存在关于系统是如何建立的以及使用了什么样的特定源代码的文档记录。因此,当尝试编写已有遗产系统的移动版本(例如,网页应用)时,编写全新的应用可能比尝试并使用遗产网页应用的API更容易。但是,编写全新的应用需要重写遗产应用已经使用的许多源代码。