作为全国性股份制商业银行,中信银行在信息化建设方面也一直走在同类银行前列,它在发展过程中建立了相对完善的IT业务支撑链,包括从核心帐务类、渠道类、信贷类、数据类等全业务IT支撑和相应的管理能力,IT部门的建设也覆盖了包括从设计、开发、测试、运维、质量控制在内的全生命周期管理体系。
不过,随着流程银行、电商业务的日益兴盛,以及交叉销售建设的深入开展,如何更好适应“随需应变”的业务发展需求变得越来越重要,这也对金融IT建设提出更多挑战和要求。2010年,中信银行就面临着如何搭建统一技术平台的问题,在普元金融行业服务总监陈路凝看来,当时中信银行面临的挑战主要有:
挑战一:如何固化和统一好技术架构
中信银行在IT规划中,提出了建立以“客户为中心”的应用架构和“以服务为导向”开放/松耦合的应用架构,并明确了应用系统架构设计原则。但IT部门在逐步落实IT规划提出的要求时,也发现了一些问题。其中最为显著的是银行内部对于架构目标和架构设计原则理解的不一致,评判应用系统架构标准的不统一,架构设计结果和实现方式也千差万别。另外,普元还发现,中信银行项目建设的质量很大程度上还受到较大的人为因素影响。因此,如何选择好的架构并将好的架构固化,统一到可落地的平台和工具,是中信银行贯彻其IT规划一个很重要的挑战。
挑战二:高效、高质量、易管控完成应用系统开发
如何高效、高质量、用易管控的模式完成各类应用系统开发,也是中信银行IT部门很关心的问题。为此,普元特地调研了18个应用项目,发现中信银行此前的项目从立项,到项目实施完成,一般都要比预计时间(计划时间)晚20%左右;此外,中信银行针对项目管理和质量监测,虽然有很多以文档形式存在的规范和要求,但是因检查和管理手段比较单一,具体实施起来还基本依赖于各项目组自身的自我约束和管控,这导致了各应用项目开发进度不一,和质量参差不齐。此外普元还发现,中信银行的应用项目在其上线前三个月的时间段内,系统的可靠性普遍一般小于98%,故障定位和处理也较慢,事前防范系统生产风险的能力较弱。
挑战三:如何保证和提高系统的非功能需求
相对而言,业务部门对应用系统的主要核心关注点在于,系统对主营业务需求的支撑能力,而对于系统在非功能需求方面则考虑较少。同时IT部门如何保证系统的非功能需求,也缺少较好的手段。但是普元认为,事实上系统非功能性需求会严重影响系统使用效果和生命力,例如系统可扩展性要求。普元在其他项目中就曾遇到这样场景:原有客户信息均分布在不同系统中,但是当在ECIF系统在建设时,就需要考虑将客户信息从不同系统中剥离出来。这就会存在很大风险和潜在工作量,毕竟当初大部分很多系统在建设时候,各模块均采用紧耦合的方式,模块之间相互依赖性较高,常常是牵一发而动全身,变更的工作量很难评估。因此基于中信银行本身有限的IT资源,如何在众多应用系统建设中,均能保证系统非功能性需求的满足,是一个很大的挑战。
挑战四:持续全行级软件资产复用能力
在统一平台建设前,中信银行一般均采用众多开发商自有框架和平台进行应用开发与运维,缺少基于全行范围内,跨应用、跨开发商软件资产复用体系和能力,从而导致各应用存在大量重复、低水平的开发工作,同时系统中还存在大量类似功能操作模式,与界面差距很大,代码质量参差不齐。
因此,目前如何解决这些挑战,更好让IT服务既满足中信银行的业务发展需要,还能实现更好低成本、高质的量开发和管控,也成为中信银行IT部门核心需要解决的问题。
选择平台之路
通过了解了普元软件全面和深刻的市场调研工作,以及参考国内外先进银行的IT建设经验,中信银行的领导认识到,必须通过建设全行统一平台才能有效解决这些挑战;但是如何选择平台,如何建设平台,也存在多种建设模式,常见的建设模式包括:
(1)完全自主建设模式,但这种模式作为仅有200人左右的中信银行IT部门,是不现实的;而中信银行向来在IT项目建设上,也都采用合作开发商模式。
(2)完全外包或成型产品模式,这种模式好处是产品成型和稳定,同时投入和工期可控;但是缺点也很明确,比如很难适应中信银行总体IT架构规划,很难契合中信银行现用的IT能力和基础设施,容易药不对症。
(3)合作开发模式,这种模式好处是一方面,中信银行能充分吸收平台厂商产品的研发成果和经验,能有一套完整方法论来保证平台方向和质量,另一方面中信银行自身人员也参与其中,能提升平台契合度,使其符合中信IT技术架构的规范要求。但缺点就是项目周期和投入较大。
最后,中信银行领导在进行充分调研和POC基础上,选择了与普元软件合作开发模式。
实施平台之路
中信银行在选择平台建设模式和厂商之后,在实施过程中,也充分遵守考虑按照“总体规划、分步实施、持续发展”的原则,进行实施。同时平台建设工作中,按照方法与规范、平台与工具、资产与知识、应用框架、项目推广五个维度全面推进和展开。
平台价值分析
中信银行统一平台建设至今,现已经进入全面推广期:如今已经有超过40个应用(包括ECIF、CRM、IC卡交易系统等核心类应用)均采用该统一平台。均不完全统计,同一平台应用上线后,故障率从2.3下降到1.6左右,应用框架和技术组件应用复用率达到100%,通过复用减低开发成本约占应用总开发成本的11%。
从平台价值分析而言,大致可以归纳以下几点:
1) 固化并统一的SOA技术与应用架构
正如上文所言,要通过人工管理的手段很难保证一个统一的,“好的”SOA技术架构,但是普元向中信银行提供了统一平台这个可落地的载体,可以很好地将符合中信IT规范要求的SOA技术架构固化并统一起来,保证将来任何应用项目和开发团队,都能以统一平台为载体,就能轻松实现技术架构统一和符合规范,并能很好满足系统很多非功能性需求,例如耦合性需求,系统开发轻松实现纵向解耦(技术分层)与横向解耦(模块依赖规范),同时没有带来额外工作量的增加。
2) 实现全行级基础业务组件与技术组件复用
首先在上线同一平台后,这种基于组件化的统一技术架构使得组件的跨各项目组复用成为可能;另一方面IT人员可以基于统一的开发工具方便的地实现组件积累和复用。目前中信银行的各应用项目组,几乎所有技术组件和基础业务功能组件均采用统一平台组提供的高质量组件为基础扩展实现。这种模式让应用项目组能更高效、更和迅速地关注业务功能的实现,系统非功能性需求也能得到较好实现和满足。
3)有利于构建高质量和易管控的J2EE应用与服务
通过统一开发工具,开发人员可以像搭积木一样,通过既有构件的重新装配来实现新的业务需求,从而大大简化开发工作,提高开发效率,保证软件的质量。另一方面通过向导和表单配置,屏蔽各种技术细节和复杂度,也能降低人员要求并提高效率。例如针对Spring根据依赖关系自动生成Spring配置文件,让开发人员不需要关注Spring本身技术细节。
通过Governor进行重新规划和设计,保证在项目运行维护期间,及时和准确将应用各模块、各层次所发生异常信息、风险信息发送给相关运维人员和项目经理,以更好防范生产风险与异常。同时定期自动生成运行分析报告,将各种运行数据以图形化、更加直观方式提供给运维人员,更好分析和了解项目运行情况和能力。
4)提高应用项目随需应变的能力
通过统一平台实施项目,避免了各个项目的架构多样性和架构风险。也较好屏蔽了各应用厂商和项目组技术能力的差异性,保证中信银行完全掌控系统多期迭代式开发,而不依赖特定开发商或特定团队。
平台技术架构统一分层和模块松耦合能力,实现系统功能和组件的耦合度减低,保证了当业务需求发生变化时,开发人员可以快速和低风险根据需求的变化对系统业务功能进行调整。
基于SOA统一平台,实现业务服务的组件化和编排能力,同时保证未来所有通过此平台构建的应用都是以业务驱动的,而且创建的服务都具备统一的标准,从而保证了未来服务整合和服务随需应变的可能性。
更多精彩内容请关注普元软件出版的《软件平台价值评论》
普元的成功之处在于:
互联网及SOA的发展推动下一个被标准化和商品化的领域将是应用服务器之上的SOA中间件;
是SOA国际标准SCA/SDO的主要参与制定者和电子商务标准的主要制定者OASIS的核心奠基成员,CMMI5开发模型成熟度5级认证;
德勤2006年高科技成长50强之一,并荣膺“国家级重点A类新产品”、“上海市科技进步二等奖”、中国计算机报“最佳编辑选择奖”、中国计算机用户协会“最有价值中间件产品奖”等奖项;
是国内少数在基础软件领域赢得银行、电信等高端用户信任的品牌之一,成为中国联通等关键用户、华为科技等大型软件商的重要产品供应商;
成功承担了国家发改委软件重大专项、国家863计划、上海市科教兴市重大产业化专项等项目的研发任务。