项目经验分享概述:
海辉有位老总曾经说过,IT行业最值得做的是金融,软件金融行业最好的是银行。本人有幸从毕业就开始做银行项目,至今已有四年之余。经历了银行几个建设性的项目开发,同时也积累了不少银行项目经验,希望与大家分享交流,有不足之处希望大家指正,让我们共同学习进步。
下面我以华夏银行国结系统为例,与大家做一个项目经验分享。
华夏银行国结系统整体流程介绍
华夏银行国际结算系统,简称国结系统。整体分为六个大的模块:融资模块,结算模块,参数模块,接口模块,报表模块,新产品模块。其余涉及到权限设定、系统维护、审批流程、账务流程等。
华夏银行以前是有国结系统的,但运作效率比较低。比如某某公司想做一笔出口押汇,第一他要去银行提出申请,银行审计员再进行资产审查做手工登记,如果符合银行的标准再口头告知主管进行正规流程申请;第二银行内部开始通过国结系统做出口押汇操作,记录出口押汇所需基本信息,通知担保行并对发来的报文做手工分析。整体来看以前国结系统的出口押汇操作,基本是以打电话,手工记录以及人工分析为主,严重影响了华夏银行国际结算业务的实施与开展。通过我们公司给华夏银行做完的国结系统,不仅消除了以前业务缓,办事慢,效率低的状态,而且大大提高了华夏银行国际结算系统与其他系统配合协作的能力。 下面具体从两个方面与大家分享一下华夏银行国结系统项目经验:
华夏银行项目经验分享:
一.项目技术分享 1.理解整体框架 一般来讲,任何一个项目都有几种架构,通过客户需求以及功能要求最后决定采用哪种架构。华夏银行国结系统采用C/S模式EBILLS系统,基于UNIX系统下多用户系统。其中比较重要的工作流的控制,审批流程以及账务处理。EBILLS系统采用jboss进行编译,工具Eclipse 或是MyEclipse,数据库为Oracle。整体模式采用EJB分布式开发,系统运行采用webSphere服务器,其中表现层采用Struts,jsp,js技术,业务逻辑控制采用Spring简单配置,写action类通过ebills.jar包具体实现业务控制,底层的数据应用采用ebills.commons.jar包实现,一部分也利用到了hibernate技术。
Ebills系统有自己的API,大部分功能实现都已经封装好,比如报文实现有swift.jar包,工作流实现有workFlow.jar包,银行接口有bankAcct.jar包等。EBILLS整体架构以及里面技
发奋识遍天下字 ,立志读尽人间书。
术的应用,能够做到功能可以实现,具体技术可以搞懂并可以修改利用,这就说明对架构有了很深入的理解。
2.熟悉常用技术
一般来说,一个项目会用到很多技术,华夏银行国结系统常用的技术有JSP、JS、JAVA、SSH框架使用、tomcat/ jboss/websphere服务器应用、oracle数据库应用、UNIX系统操作命令、小型机软件安装使用等。常用到的一些比如文件上传下载、JSP界面显示、业务逻辑编写、JDBC连接数据库、SQL语句实现等。有些我们知道原理并且会应用,比如spring的AOP切面实现,hibernate映射。这些技术熟能生巧,只要我们用心去思考并经常运用,学会总结,没有可以难倒的技术。
3.突破关键难点
在华夏国结项目中,我们利用了很多技术,包括以前没有用到的或不是很熟悉的。哪怕是我们以前很熟悉的,一旦环境变化或是各种条件改变都有可能跟我们想象的不一样。比如EBILLS系统用Eclipse工具开发,开始也没有具体规定那种工具那个版本比较适合,因为以前EBILLS 是一个产品,在其他银行只是安装使用,简单修改一些模块。但在华夏国结系统中有比较大的改动,包括核心工作流的变动,所以导致开始使用Eclipse 3.4.1以及Eclipse 3.3.0都很不稳定,经常启动不起来,最后经过试验用Eclipse 3.5.2很好的与EBILLS系统核心工作流配合,并修改jboss配置使之编译顺利进行。还有一个难点就是维护人员管理系统中,要用图表显示与各个系统之间关联,以及系统之间传输数据量即时显示问题。EBILLS产品中开始有iReport报表工具,但由于维护人员管理系统属于国结系统的子系统,所以在数据查询的时候有些麻烦,通过查询资料与实际操作实验,最后选择了jfreechart通过在action层查询获取数据。这里充分体现了技术的选取取决于效率与实际应用。
4.用心沟通协作
千人同心,则得千人之力;万人异心,则无一人之用。如果一千个人同心同德,就可以发挥超过一千人的力量,可是,如果一万个人离心离德,恐怕连一个人的力量也比不上了!这,就是团队的力量。任何项目中,都没有英雄主义,我们只有互相协作,发挥团队的力量,把自己工作做好,帮助身边的同事,自己会的技术与同事分享,只有这样我们才能从中学到东西,只有这样我们才能把项目做成功。
二.项目业务分享
1. 国结系统与外围系统关系介绍
华夏银行国结系统,其功能是银行的国际结算业务操作,主要关联信贷系统、清算系统、BansLink核心系统、报文系统等。 信贷系统主要是保函开立、出口双保理等业务需要信贷系统审批,审批通过后进入国结系统
发奋识遍天下字 ,立志读尽人间书。
进行业务操作。
清算系统主要是融资业务如出口代付、福费廷、打包贷款等业务需要清算系统发报文通知国结系统是否可以做此业务。
banslink核心系统主要涉及到账务处理,通过核心系统给出的接口进行操作,账务可以通过banslink查询交易流水。
报文系统在各银行与银行系统之间起到纽带作用,swift报文国际通过格式,大额报文中国人民银行专用格式等。
2. 国结系统业务介绍
华夏国结系统主要包括5大业务,其中包括出口业务,进口业务,保函业务,国内证业务,融资业务。其他还有权限设置,账务管理,公共查询,光票托收等。本人属于融资组,对出口押汇,进口代付,出口双保理以及福费廷都有比较深入的了解,下面以福费廷为例,介绍一下华夏国结系统出口福费廷业务。
福费廷业务定义为无追索权的融资业务。通过与华夏银行各地分行业务人员了解,福费廷业务南方做的比较多,业务量也比较大。因为他这种融资银行没有追索权,公司的风险会降低,但担保行的风险会很高,所以他的融资利率也是很高的。出口福费廷,首选要办理出口信用证议付寄单,进行电文登记,这笔业务有了国外的承兑行,那我们就可以做出口福费廷。出口福费廷业务中首选要进行额度验证,如果这家承兑行额度不满足这笔业务的金额,那么这笔业务不允许做出口福费廷。如果满足那么在国结系统做出口福费廷开始进行福费廷款项处理,这时说明华夏银行已经把款项放给客户了,等到出口福费廷还款日到期则开始进行出口福费廷清算,这时清算系统收到承兑行报文,并把钱汇入华夏银行账户行,清算系统收到这笔款项则给国结系统发报文,国结系统才可以做出口福费廷清算。
福费廷业务按照国际惯例主要分为买断型、转售型、参贷型。一般来说买断型福费廷做的比较多,参贷型涉及到风险参贷行,由于参贷金额以及分配比例没有固定化规则,所以参贷型福费廷还是比较少的。福费廷业务流程比较复杂,涉及到账务处理以及前置业务关联比较多,所以做福费廷业务难度也比较大。华夏银行福费廷记账分录中福费廷的记账分录是最多也是最长的,可见其复杂程度。
以下我们继续介绍福费廷账务处理。
3. 国结系统账务介绍
国结系统的账务以融资账务处理为主,以福费廷账务为重点。国结系统账务处理整体思路是核心提供接口,通过接口一笔业务给出一笔流水账,国结系统再开始对这一笔账务进行各种业务操作以及控制分流,出现多笔账务,最后再根据具体业务把每笔帐分别汇入到核心系统的不同结算户。以福费廷为例,出口福费廷业务主要分为两步,一为款项处理,二为收汇清算。在款项处理的时候,国结系统从核心拿到一笔账务,根据具体业务再细分不同账务,如预扣费账务、暂收账务等,并且在界面显示,操作员会根据福费廷利率以及预扣费、当前币种汇率等检查福费廷账务是否正确。在收汇清算过程中,根据清算系统发来的报文,国结系统显示此笔业务的还款详细信息,并根据金额多少自动计算,显示还款账务信息。华夏国结系统的还款原则是多退少补,还款多余的转移到客户帐,如果没有还清还可以再次做还款。
发奋识遍天下字 ,立志读尽人间书。