首页  > 公司 > 成功案例 > nh

中国农业银行总行研发中心

行业:银行与金融

公司:农业银行总行研发中心

项目名称:农业银行总行研发中心软件开发管理系统

汉星天公司解决方案:汉星天ALM全面解决方案

中国农业银行(以下简称农行)是四大国有独资商业银行之一,是中国金融体系的重要组成部分,总行设在北京。在国内,农行网点遍布城乡,资金实力雄厚,服务功能齐全,不仅为广大客户所信赖,而且与他们一道取得了长足的共同进步,已成为中国最大的银行之一。在海外,农行同样通过自己的努力赢得了良好的信誉,被《财富》评为世界500强企业之一。农行软件开发中心是中国农业银行下属软件开发机构,拥有上千人的软件开发和维护团队,负责农行财务管理、网上银行、电话银行等各个关键业务系统的开发、维护、推广和服务。

问题和挑战

当今信息技术产业的迅猛发展,促进了国内的软件开发在先进技术和产品方面的广泛应用。但是,在先进的操作系统,开发工具为企业带来高效益的同时,另一方面也使得我们的开发环境日趋复杂化而难以管理。如:团队沟通困难,软件重用率低下,代码冗余度高,文档不健全等,结果造成数据丢失,开发周期漫长,产品可靠性差,质量低劣,软件维护困难,项目风险增加等。事实已经表明,随着整个软件业的迅速发展,没有得到有效管理的软件开发过程中所出现的风险和挑战将越来越突出。加强软件开发过程管理,通过管理和追踪软件开发环境中产生的变更,建立规范化的软件开发环境,已成为软件产业化的必要条件。农行在这些方面也同样面临以下挑战:

  • 版本统一管理——没有建立统一的配置管理系统,开发过程中所产生的相关代码、文档以及数据等历史记录都保存在各个项目团队或者个人手中。软件开发管理人员的流失,造成项目管理人员难以确定软件产品中各模块所处的状态及阶段,使软件产品的版本出现混乱。
  • 项目计划控制——农行的项目组少则10人,多则近百人,当项目规模非常大时,如果仅仅定制概要的项目计划,无法满足控制项目的目的。
  • 随着软件产品的需求日益增加,无法快速标识和查找软件的历史版本;
  • 需求变更审批——很多项目的规模非常大,面临的需求非常多,变更十分频繁,管理需求变更成为项目控制的难点。
  • 问题缺陷追踪——问题和缺陷是运行维护时期必须面临的难题,在最短的时间内对于简单问题、重大问题和疑难问题能够有效的处理。
  • 测试质量管理——测试是保障软件质量的重要环节,如何分配测试任务、记录测试结果、保障测试的质量,成为过程控制中的难点。
  • 成本进度度量——项目管理的核心在于“在规定的时间和成本内,按照质量要求将需求实现为软件产品”,其中对成本和进度进行量化的度量是项目管理的重点。无法实现异地开发团队的协调和沟通;

面对问题,农总行软件开发中心的领导层下决心要建立一套适合企业特点,并能在短期内迅速提高研发团队开发管理水平的科学化管理平台,以实现对庞大复杂的金融应用软件系统的开发控制。

全面管理开发流程,提高效率

在对国内外主流厂商的软件配置管理工具进行综合比较之后,农总行软件开发中心于2006年3月正式选用Hansky ALM 解决方案作为其软件配置管理和变更管理工具,希望通过过程改进实现提高质量和降低成本的目的,并采用了下述管理方法:

  • 版本统一管理——建立总行中心级别的配置管理库,将原来分散在各个项目组的软件代码入库进行统一管理。采用并行和并发的开发方式,建立项目级别的分支,避免版本产生混乱。
  • 周任务分解——每周由项目经理进行一周的任务和计划分解,将每个任务的开始时间、结束时间、计划工时、计划工期、资源人等信息进行填写,之后将任务自动分发给相关的资源人,并且自动记录任务的完成情况。
  • 需求审批过程——所有的需求均需要进行需求分析、业务审批、技术审批、项目审批过程,并且所有的新需求会共享在整个项目组中,保障项目组能够了解到最新的需求。
  • 缺陷追踪过程——缺陷会按照简单缺陷、复杂缺陷、跨组缺陷进行不同的过程控制,平衡的满足解决缺陷在时间和质量上的要求。
  • 测试管理过程——对于开发类的任务和缺陷,必须通过测试才能关闭,保障软件开发质量。
  • 工时周报过程——利用挣值分析法,综合计算计划工时、挣到工时、实际工时,分析成本偏差和进度偏差,量化度量项目的进展,并提供相应的查询和报表。

Hansky ALM解决方案首先完成的就是构建整个中国农业银行软件开发中心的配置管理服务器。如下图所示:

Hansky ALM解决方案提供了业界领先的配置管理工具Firefly,在功能,安全,平台, 易用性等多方面具有优势。其功能的主要特点如下: 版本控制,基线管理,分支管理,权限控制,团队支持和团队开发管理,统计审计报告,Build管理, Web界面交互。

其次,为了实现上述管理,Hansky SCM 解决方案设计了六大流程管理对象,它们是: 缺陷追踪(defect),任务计划(task_plan),事务任务(todo),测试计划(test_task),需求变更(request),工时周报(weekly_report)。 这六大流程对象并不是孤立的,它们之间的关系如下图所示

在六大流程之间建立关系的基础上,各流程之间能够互相传递状态和数据信息,如下图所示:

Hansky SCM解决方案在设计方面具有下述特点:

  • 定义了项目组的组织结构
  • 解决复杂的流程关联关系
  • 定义了流程之间的联动关系
  • 实现了流程内的自动化处理
  • 具有丰富的流程度量手段

成果与未来

Hansky ALM 管理平台基于以需求驱动为核心的项目管理理念,帮助农总行软件开发中心量身定制了最适合农行现状的项目开发管理流程,安全、完整地保留了整个软件项目中的代码、文档、模型及数据等软件资产,使代码利用率大大提高。在此基础上,Hansky通过量化项目的度量,帮助农行领导根据需要随时了解项目的进展和成本,使得开发项目过程透明化并可以管控。同时Hansky协助农行建立了软件开发管理规范,不仅规范了其软件开发和管理过程,而且使开发人员明确了自己在项目中的角色和分工,进一步增加了团队凝聚力。 作为农行质量管理的重要工具,Hansky通过全面的质量管理解决方案帮助客户快速的切换到了新的管理平台,并根据农行的业务发展变化对于管理流程进行持续的改进,对农行今后的全面开发质量提升和CMMI晋级发挥了巨大作用。