论软件开发平台的选择与应用

-银行中间业务系统

[摘要]

本文讨论选择新软件开发平台用于重新开发银行中间业务系统。银行中间业务系统是指银行通过与企事业单位、机关团体的合作,为客户提供金融服务的系统。X省农行银行的原中间业务系统软件开发平台是以UNIX系统为操作系统,使用的数据库是Sybase,采用二层的C/S结构,使用DB-Libraiy, T-SQL编程。随着业务的不断发展和软件开发维护工作的剧増,该软件开发平台表现出工作效率低,开放性差,开发出的产品不易管理等突出性的问题。为了解决原软件开发平台的不足之处和基于该银行长远发展目标的要求,我们引入新的软件开发平台OSP FYePbrancho在文中阐述了选择软件开发平台的原则:要求开放性好,可复用性高、开发出的软件易于管理、风险可控、技术能与发展主流趋势相一致并易于掌握,并总结了应用新软件开发平台开发银行中间业务系统所带来的优势。

[正文]

银行的中间业务系统是指银行依托自身的电子化平台、网点网络和人员等资源,通过与企事业单位、机关团体的合作,为客户提供代收代付、资金转帐结算、业务代理和咨询、増值理财等金融服务的平台。x省农业银行的中间业务系统主要包括由五大类业务组成,即批量业务,如代发工资、国库统发工资、批量代收代付;单笔缴费业务,如柜台代收学费、行政管理费等;通值类业务,主要是指要与外单位进行实时通值的业务,如固定电话缴费系统,手机缴费系统等;増值服务业务,如代客理财、银证资金转帐和结算;其他业务,如业务咨询和代理等。

该行原中间业务系统是C/S结构,采用DB-Library/C编程,使用的数据库是Sybase,以UNIX作为操作系统。该开发平台在开发中间业务系统是工作效率比较低,开发周期比较长,复用性差。针対上述开发平台的实际情况和存在的主要问题我们引入新的国内某公司的基于中间件技术的软件开发平台“OSP PrePbranch"用于重新开发该银行的中间业务系统。在整个项目期间我参与了软件开发平台的选型,系统的分析,开发和设计,测试的工作。在选择0SP PrePbranch平台时,我们主要遵循了以下原则:利用选择的平台开发出的新系统能和基础业务系统有机集成的原则,选择的开发平台易于掌握的原则,选择的开发平台开放性好、复用率高的原则,选择的平台易于管理的原则。应用新软件开发平台开发出来的系统要能够和基础业务系统有机集成是引入软件开发平台的基本条件,它也是选择软件开发平台的原则之一。OSP Prepunch软件开发平台是一个独立的开发平台,使用该软件开发平台开发的中间业务系统能方便通过基础系统的接口直接调用,不需要另外开发接口调用中间业务系统,而且0SP PrePbranch 开发商进行了现场演示和提供了正式的书面文档。这样,通过简单的调用能实现基础业务系统和中间业务系统的有机集成。

选择的开发平台要遵循易掌握性原则。引入一项过于复杂或难以掌握的软件开发平台是毫无意义的。基于中间件技术的0SP R-ePbranch软件开发平台采用的操作系统是UNIX,使用C/C++和嵌入式的T-SQL语言为开发工具。C/C++、SQL它们都是该银行软件工程师比较熟悉的编程语言,因此该软件开发平台易于掌握。使得该银行选用该软件开发平台在较短的时间就能掌握它,应用它。

选择的开发平台要遵循开放性好、复用率高的原则。OSP PrePbranch系统提供的每个原子交易都定义了规范的接口说明,调用时入参、出参的类型、个数、顺序方面都有明确的定义,使用的场合范围;如文件的上传/下传服务就有详细的定义,上传文件名,传输方式,存放的目录等方面都有详细的说明。在开发时只要根据实际情况和应用说明文档就可以实现透明调用了。OSP PrePbranch软件开发平台在应用层提供了网关(GateWay)服务,使得中间业务系统与协作单位的通值不需要银行开发人员自己开发,而由OSP PrePranch直接提供;OSP PrePbranch还提供了通值的包格式的定义,通值连接方式的定义,通值格式加包头,通行打包,通值格式去包头,通值格式解包等原子交易。

除了上述OSP PrePbranch系统本身具有良好的开放性,提供大量可复用的原子交易外。在此次开发新系统时根据银行中间业务系统的特点还自制作了大量可复用的原子交易,如帐户的入帐、帐户明细的查询、帐户性质的判断、卡折之间的转帐、各人帐户和対公帐户之间的转帐等,把这些模块加载到OSP PrePbranch系统的构件库中,与OSP PrePbranch本身的原子交易一起提供服务。対自制的原子交易也提供了规范的接口说明,参数调用说明,应用场合等规范性文档。它们和OSP Prepunch软件开发平台本身直接提供的原子交易対于所有的程序员是透明的,程序员使用时只要查阅规范文档就可以直接使用,而根本不需要了解它们的具体实现的细节。有了这的开发平台,在开发新系统时只要根据不同的业务品种编写必需银行核心功能模块,然后从OSP PrePbranch构件库中选择所需的原子交易就可以快速开发出金融交易。这样提高了软件的复用率,改变了过去重复开发和重复测试的大量工作,极大地缩短了开发地周期,大大加快了研制进程。因此,无论0SP PrePbranch软件开发平台本身,还是后继的开发都保持了良好的开发性,较高的复用率。

选择的开发平台要遵循易于管理的原则。该银行中间业务系统改造之前客户端前台软件升级时,采用手工作业方式,工作量大,不便于管理。新系统中把各网点终端值息收集在一起,保存中间业务系统应用数据库中;若软件需升级史新时,把升级软件放在中间业务平台的指定目录下,每天网点开启中间业务系统时,前台软件自动执行版本史新升级程序,保证网点及时、自动地从后台取回最新版本软件并投入生长运行。因此,新系统极大地减少了软件升级所带来地工作量,使得中心机房可対各网点运行的软件进行统一升级、版本控制、集中管理、方便管理。

由于选用的软件开发平台OSP Prepunch是基于中间件技术的,它由前台开发子系统,主控守护进程ubndge,后台开发子系统和数据库连接与管理子系统组成的。中间件技术是当前信息技术发展的一种主流技术,因此OSP Prepunch软件开发平台在相当长的一段时期内保持技术领先的优势。

OSP PrePbranch软件开发平台具有良好的开放性,复用性高,它所采用的是先进的中间件技术。特别是OSP PrePbranch系统的开放性好,可复用性高方面在应用该软件开发平台开发中间业务系统时,可以方便的使用0SP PrePbranch^供的开放的接口,大量现成的原子交易,在具体开发时只要根据业务需要编写’必须的核心代码就可以快速开发出金融交易,缩断了软件开发的周期,提高了工作的效率,提高了软件的复用性,加快了研制开发的进程。使得该银行能在较短的时间内开发出新的金融产品,提高了银行的市场竟争力。任何一种软件开发平台的选用都具有一定的风险,特别是在金融业中引入新的软件开发平台要谨慎从事。首先,它是一个基于中间件技术的成熟的产品,在此之前已经在国内金融业有多个成功应用的先例;其次,该软件开发平台大部分是采用C/C++语言开发的,它易于掌握,因此就不存在选用一个不易掌握或不能掌握的平台;再次,该软件开发平台实施成本低。因此我们从软件开发平台的成熟性,易掌握性,实施成本等多方面进行了论证和考察,它所带来的风险是在可以控制的范围之内的。

当然,我们在选择0SP PrePbranch软件开发平台主要是基于该银行的实际情况的需要。在不同的应用领域有不同的选择,如企业应用集成可以选择EJB规范的J2EE平台,它具有开放性,平台应用的无关性等特点。但是无论那种软件开发平台,它们都应该朝着开放性、平台无关性、可移植性、能够实现异构集成等方向发展和演变,同时它们应该代表着先进的技术发展方向。