基于windows的开放式银行自动柜员机应用开发平台的系统的制作方法

文档序号:6666239阅读:195来源:国知局
专利名称:基于windows的开放式银行自动柜员机应用开发平台的系统的制作方法
技术领域
本发明涉及一种应用程序开发平台的系统,特别是涉及一种用于银行自动柜员机的基于WINDOWS的开放式应用开发平台的系统。
背景技术
银行目前在线运行的自助终端设备品种繁多,据调查国内中型以上的银行大多同时使用五种以上自动柜员机,其它各种查询终端设备、自助金库等更不下十种,但各设备厂商的产品标准不统一,造成银行应用软件的开发和修改各自为政,同一种功能的修改,需要不同厂家针对不同硬件配置从底层驱动改至上层应用。这导致开发人员的工作内容相似,工作量巨大,最终的结果却互不兼容、耗时费力,且银行管理不便。国内金融业界一直迫切需求一个与硬件无关的、统一的应用软件开发平台。
国内已有的开发平台有御银自助设备统一开发平台、面向银税类行业应用的嵌入式Linux软件开发平台,基于Web技术的自助服务开发平台;广电运通的自助终端统一技术平台;新华时代数据系统有限公司开发的自助服务终端软件开发平台;由湘计新星、上海长岛与上海市农村商业银行共同开发的自助终端业务软件平台。但以上平台不支持简单流程配置功能,不能只通过对各业务功能模块自由组合形成定制的自动柜员机终端程序。不能在开发过程进行调试、排错,不能提供终端的所有运行信息。

发明内容
本发明的目的在于克服现有技术中的不足,提供一种功能强大的基于WINDOWS的开放式应用开发平台,适应目前各银行已有的主机前置机软件平台和业务要求,用于多厂商多产品应用软件开发,可方便地进行二次开发,并根据实际需要进行业务和流程的定制。
为了解决上述技术问题,本发明是通过以下技术方案实现的本发明提供了一种基于WINDOWS的开放式银行自动柜员机应用开发平台的系统,包括软件总线1,其特征在于,还包括跟踪和日志组件2、硬件仿真模拟组件3、步表解释器4和以插件的形式挂接到软件总线1上的应用服务模块,包括应用模块5、前台交易模块6、主机协议处理模块7、对话框处理模块8、后台管理模块9和硬件设备模块10;所述软件总线1是开发平台的底层核心部分,以软件总线实例的形式存在,提供各模块之间的通信机制;所述跟踪和日志组件2,包括跟踪组件和日志组件,用于记录错误和警告信息,查找错误和定位故障;所述硬件仿真模拟组件3,用于各硬件模块的仿真,建立脱离硬件的开发调试环境;所述步表解释器4,用于解析步表并调用应用模块5,实现流程的跳转;所述应用模块5,是系统主控实例,用于前台交易模块6、后台管理模块8、主机协议处理模块7的交互;所述前台交易模块6,用于提供用户交易所需的功能模块,并处理与用户的信息交互;所述主机协议处理模块7,用于处理所有逻辑主机间的消息,传入和传出的消息全部通过指定的协议进行传输;所述对话框处理模块8,用于显示所有种类的用户对话框;所述后台管理模块9,用于提供操作员维护和管理自动柜员机设备所需的功能模块;所述硬件设备模块10包括出钞模块201、卡处理模块202、特殊电子设备模块203、密码键盘模块204、管理员操作面板模块205、日志打印机模块206和凭条打印机模块207;前述模块的进程内都有一个软件总线实例,是进程内各模块之间通信机制的管理者。
作为一种改进,所述软件总线1包括模块加载器101、调度器102、分布式管理器103和共享数据区域104;
所述模块加载器101,用于将应用需要的各个模块加载到内存中,并在软件总线1上注册;所述调度器102,用于负责模块之间的函数调用、调用响应、发送事件、事件响应的实现机制;所述分布式管理器103,提供跨进程、跨主机模块之间的通信机制,通过分布式管理器将各个进程中的模块串接到了一起;所述共享数据区域104,用于模块注册信息、事件注册信息、调用数据交换信息存放和共享。
本发明具有以下有益效果(1)采用面向对象的组件化架构设计,各业务模块可以作为可拆卸的组件装到软件总线上,可根据需要将各业务模块进行自由组合集成形成一套完整的软件系统。
(2)通过步表解释器,对使用可视化、图形化的流程配置工具配置好的步表文件进行解析,应用程序的开发只需通过简单的流程配置即可完成,使自动柜员机终端设备程序的开发变得非常简单方便。
(3)硬件仿真模拟组件模拟各类硬件设备模块的输入和输出。实现完全脱离硬件设备模块的调试开发环境,在普通的计算机上,可直接模拟运行自动柜员机终端设备程序,可以方便开发平台的硬件设备模块功能调试。
(4)提供跟踪和日志组件,作为分析应用和模块状况的主要工具,应用服务工程师,可以根据该组件迅速地查找错误和定位故障。跟踪信息的数据格式采用外挂配置定义,这样既方便业务调整,又对多语言显示跟踪信息提供了很好的支持。


图1是本发明的一种实施例的应用结构图。
图2是本发明的一种实施例的跟踪和日志组件结构图。
图3是本发明在整个软件体系中的位置关系图。
图4是本发明的一种实施例中的软件总线结构图。
图5是本发明的一种实施例的软件总线实例模型图。
图6是本发明的一种实施例的模块间调用关系图。
具体实施例方式
下面结合附图与具体实施方式
对本发明作进一步详细描述参考图1、图3,一种基于WINDOWS的开放式应用开发平台,它至少包括软件总线1、跟踪和日志组件2、硬件仿真模拟组件3、步表解释器4、应用模块5、前台交易模块6、主机协议处理模块7、对话框处理模块8、后台管理模块9、硬件设备模块10。
软件总线1是开发平台的底层核心部分,用于将各类应用服务模块以插件的形式挂接到软件总线1上,软件总线1提供了各模块之间的通信通道,它包括模块加载器101、调度器102、分布式管理器103、共享数据区域104,在每个进程的软件总线1初始化后,模块加载器101、调度器102、分布式管理器103自动建立并驻留内存为各模块之间的功能调用、事件调用提供通信机制,对模块操作通过逻辑名访问,每个模块被加载时都要向软件总线1注册,当前模块对其他模块发送消息、函数调用全部通过软件总线1负责执行。
模块加载器101,实现将应用需要的各个模块加载到内存中,并在软件总线上1注册;调度器102,负责模块之间的函数调用、调用响应、发送事件、事件响应的实现机制;分布式管理器103,提供跨进程、跨主机模块之间的通信机制,通过分布式管理器将各个进程中的模块串接到了一起;共享数据区域104,实现模块注册信息、事件注册信息、调用数据交换信息存放和共享模块注册信息区域,记录模块所在的进程、逻辑名、为软件总线1提供调用的模块入口地址;事件注册信息区域,记录每个模块事件关联的模块,当前模块有事件时,将触发这些关联模块的服务函数做出事件响应;调用数据交换信息区域,是函数调用、事件调用的数据区域,用于实现跨进程参数传递。
软件总线1以软件总线实例的形式存在,在每个模块进程内都有一个软件总线实例,是进程内各模块之间通信机制的管理者。每个模块的进程都需对软件总线1进行实例化,实例化后,每个进程内的模块加载器101、调度器102、分布式管理器103才能开始工作。有多少个模块进程,就有多少个软件总线实例。
软件总线实例驻留在每个进程中,为每个模块函数调用、事件触发提供服务支持,所有任务都交由软件总线实例完成并获得返回。软件总线实例是模块任务的执行者和调度者。
跟踪和日志组件2,包括跟踪组件和日志组件两部分,其中跟踪组件用于跟踪程序的运行状态和事件状态,支持多个程序并发和多任务系统,可根据调试和排错的需要,设置过滤,进行模块的选择跟踪,跟踪信息的数据格式采用外挂配置定义。其中日志组件连续记录系统中的错误和警告信息。跟踪和日志组件2是分析应用和模块状况的主要工具,应用服务工程师可以根据跟踪和日志组件2迅速地查找错误和定位故障。
硬件仿真模拟组件3,用于各硬件设备模块10的仿真,建立脱离硬件的开发调试环境,可以在普通的计算机上直接模拟运行自动柜员机终端设备程序,通过模拟和硬件通信,实现开发平台的硬件设备模块10功能调试。
硬件仿真模拟组件3提供了所有真实硬件设备模块10的接口,在软件总线1环境下模拟硬件设备模块10的输入输出。
步表解释器4,用于解析步表并调用应用模块5,实现流程的跳转。
应用模块5,是系统主控实例,为前台交易模块6、后台管理模块9、主机协议处理模块7提供交互。
前台交易模块6,提供用户交易所需的功能模块,并处理与用户的信息交互。
主机协议处理模块7,处理所有逻辑主机间的消息,传入和传出的消息全部通过指定的协议进行传输。
对话框处理模块8,显示所有种类的用户对话框。
后台管理模块9,提供操作员维护和管理自动柜员机设备所需的功能模块。
硬件设备模块10,包括出钞模块201、卡处理模块202、特殊电子设备模块203、密码键盘模块204、管理员操作面板模块205、日志打印机模块206、凭条打印机模块207。
本发明在整个软件体系中所处的位置参考图2,整个自动柜员机软件体系共分为四层,分别是硬件驱动层、WOSA(Windows Open System Architecture,Windows开放式系统体系结构,以下简称WOSA)层、基于WINDOS的开放式应用开发平台、客户配置层,基于WINDOS的开放式应用开发平台处于WOSA层和客户配置层之间,完成对WOSA层应用程序接口和外设接口的封装,为客户配置层提供应用配置接口。
本发明的软件总线与各模块间的工作原理参考图3、图4,软件总线1是开发平台的底层核心部分,用于将各类应用服务模块以插件的形式挂接到软件总线1上,软件总线1提供了各模块之间的通信通道,模块间使用统一的通信接口,各模块作为可配置的挂接组件挂接到软件总线1上,对模块操作通过逻辑名访问,每个模块被加载时都要向软件总线1的共享数据区域104注册,当前模块对其他模块发送消息、函数调用全部通过软件总线1负责执行。
软件总线1是一个总的概念,在每个模块进程内都有一个软件总线实例,每个进程都需对软件总线1进行实例化,模块间函数调用均通过软件总线实例完成实现,软件总线实例驻留在每个进程中,为每个模块函数调用、事件触发提供服务支持,所有任务都交由软件总线实例完成并获得返回。软件总线实例是模块任务的执行者和调度者。
对模块而言,所有调用均通过本进程内软件总线实例完成实现,由软件总线实例决定是否是本地调用还是跨进程调用基于WINDOS的开放式应用开发平台提供标准应用程序函数接口,只要支持Windows系统应用程序接口调用和支持回调函数的语言,都可以通过应用程序接口的调用,挂接到软件总线1上,为本发明的跨语言提供了保障。
本发明的部分模块间的调用关系参考图5,使用时可以自由的组合各模块,可以根据实际的需求,来对各模块进行相应的组合以达到具体的实现目标。应用模块5作为系统主控实例,实现对前台交易模块6、后台管理模块9、主机协议处理模块7的调用。前台交易模块6完成对对话框处理模块8和硬件设备模块10的调用。
最后,还需要注意的是,以上列举的仅是本发明的具体实施例子。显然,本发明不限于以上实施例子,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。
权利要求
1.一种基于WINDOWS的开放式银行自动柜员机应用开发平台的系统,包括软件总线,其特征在于,还包括跟踪和日志组件、硬件仿真模拟组件、步表解释器和以插件的形式挂接到软件总线上的应用服务模块,包括应用模块、前台交易模块、主机协议处理模块、对话框处理模块、后台管理模块和硬件设备模块;所述软件总线是开发平台的底层核心部分,以软件总线实例的形式存在,提供各模块之间的通信机制;所述跟踪和日志组件,包括跟踪组件和日志组件,用于记录错误和警告信息,查找错误和定位故障;所述硬件仿真模拟组件,用于各硬件模块的仿真,建立脱离硬件的开发调试环境;所述步表解释器,用于解析步表并调用应用模块,实现流程的跳转;所述应用模块,是系统主控实例,用于前台交易模块、后台管理模块、主机协议处理模块的交互;所述前台交易模块,用于提供用户交易所需的功能模块,并处理与用户的信息交互;所述主机协议处理模块,用于处理所有逻辑主机间的消息,传入和传出的消息全部通过指定的协议进行传输;所述对话框处理模块,用于显示所有种类的用户对话框;所述后台管理模块,用于提供操作员维护和管理自动柜员机设备所需的功能模块;所述硬件设备模块,包括出钞模块、卡处理模块、特殊电子设备模块、密码键盘模块、管理员操作面板模块、日志打印机模块和凭条打印机模块;前述模块的进程内都有一个软件总线实例,是进程内各模块之间通信机制的管理者。
2.根据权利要求1所述的银行自动柜员机应用开发平台的系统,其特征在于,所述软件总线包括模块加载器、调度器、分布式管理器和共享数据区域;所述模块加载器,用于将应用需要的各个模块加载到内存中,并在软件总线上注册;所述调度器,用于负责模块之间的函数调用、调用响应、发送事件、事件响应的实现机制;所述分布式管理器,提供跨进程、跨主机模块之间的通信机制,通过分布式管理器将各个进程中的模块串接到了一起;所述共享数据区域,用于模块注册信息、事件注册信息、调用数据交换信息存放和共享。
全文摘要
本发明涉及一种应用程序开发平台的系统,旨在提供一种用于银行自动柜员机的基于WINDOWS的开放式应用开发平台的系统。该系统包括软件总线,还包括跟踪和日志组件、硬件仿真模拟组件、步表解释器和以插件的形式挂接到软件总线上的应用服务模块,包括应用模块、前台交易模块、主机协议处理模块、对话框处理模块、后台管理模块和硬件设备模块。本发明采用面向对象的组件化架构设计,应用程序的开发只需通过简单的流程配置即可完成,使自动柜员机终端设备程序的开发变得非常简单方便。硬件仿真模拟组件模拟各类硬件设备模块的输入和输出。提供跟踪和日志组件,作为分析应用和模块状况的主要工具。
文档编号G07F19/00GK1963754SQ200610154978
公开日2007年5月16日 申请日期2006年12月1日 优先权日2006年12月1日
发明者高峰, 朱锦宏, 蒋建挺 申请人:杭州东信金融技术服务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1