目前国内各行各业越来越多的软件项目选择了外包的开发模式,采用较多的还是粗放式的管理模式,在项目开发过程中缺乏系统的管理,如果按照SA.CMM的模型划分,目前银行业的软件获取能力仅仅处于SA.CMM模型的初始级和可重复级,软件的成熟度比较低。一般来说银行业的软件外包项目分为以下几个阶段:
一、软件开发外包项目启动阶段
软件开发外包项目外包阶段在项目启动阶段,首先需要项目需求部门与信息技术部一起进行项目可行性分析,通过对项目所属行业及各兄弟行的了解情况,对该项目的实施情况有一个明确把握和目标,生成项目可性研究分析报告,并上报给上级领导审批。上级领导从本企业内部的总体发展战略考虑,分析该项目对企业的发展所起的作用,是否符合企业的战略发展要求,尤其是对较大的项目会在行长级别的会议中进行分析讨论,确定项目的可行性。领导审批通过后项目正式启动,根据该项目的需求部门与参与单位,从信息技术部门选择合适的项目管理员成立项目组,对项目概述和需求进行讨论,此时以业务部门为主,技术部门为辅,生成较简洁的项目需求分析报告。然后根据项目需求报告生成招标技术文档提交采购部或者资源管理室进入项目招标阶段。
二、软件开发外包项目招标阶段
各家银行均设有自己的招标采购机构,以华夏银行为例,根据项目组提交的招标技术报告,资源管理室从目前与本行合作较为密切的公司中选择适合要求的企业,并对其发布招标邀请,同时从各个部门(包括业务部门、技术部门、行政部门、法律部门等等)聘请相应的专家成立招标专家组,并根据招标技术文档,生成招标打分表,打分项的设置一般会从本行的发展、技术、管理、价格等方面综合进行考虑。待各供应商根据实际情况对招标文件分析之后,生成投标文件及系统设计的初步方案,递交资源管理室,资源管理室根据投标企业的多少决定是否继续招标,一般情况下如果投标企业小于五家,将重新进行投标。资源管理室负责对各投标公司的投标文件进行审核,确定其投标资质是否符合要求,对不符合要求的公司必须取消其投标资格。招标过程中,由资源管理室召开专家组成员参与的招标会议,由各家供应商轮流阐述自己的投标方案及系统设计方案,此时,各家供应商之间要独立进行论述,确保商业机密的泄露尤其是价格的泄露。专家组根据供应商情况,按照资源管理室出具的打分项对投标公司进行打分。所有公司投标阐述结束后,资源管理室根据专家小组的打分结果,择优选择中标公司。中标公司确定后,资源管理室负责给中标公司发送中标通知。最后由项目组通过法律部门的合作,同中标公司签订项目开发合同。合同签署后,项目进入开发阶段。
三、软件开发外包项目开发阶段
软件开发外包项目进入开发阶段后,项目组将确定项目开发地点,外包公司派出项目实施小组入驻。外包公司项目人员将与业务人员及项目管理员进行充分沟通,进一步了解项目的需求,共同讨论生成详细的需求分析报告。外包公司的项目人员根据软件开发的基本过程,按照需求分析报告分别进行系统的概要设计、详细设计、编码、测试等多个软件开发过程,同时根据项目管理的要求,在项目的各个阶段生成各类文档,并与业务部门及信息技术部的项目参与人员进行讨论,确定可行性。
在项目开发阶段将以外包公司的项目人员为主,银行内部业务人员与项目管理员负责提供相应支持以及对外包公司的各种文档和交付物的审核,确定其开发符合要求,并参与系统开发过程的单元测试、集中测试阶段,确定系统开发及运行的稳定性。待项目开发完成后,项目进入测试阶段。
四、软件开发外包项目测试阶段
测试阶段是确保项目能保质保量的达到预期效果的重要阶段,也是项目正式投产前的最后关键阶段。该阶段的主角是本行内部的业务人员和信息技术部门的项目管理员,外包公司人员配合完成相应的修改和完善工作。尤其是技术部门人员要根据本行的技术标准进行软件测试、硬件测试、备份测试、主备机切换测试、应急演练测试等。由于银行的系统一般都是7*24小时不间断,所以对系统的压力测试时至关重要的。业务人员则要对软件的使用和合理性进行实际操作的测试对各种可能出现的情况都要考虑周全,对测试结果不理想的要及时提出完善。测试阶段结束后进
入验收阶段。
五、软件开发外包项目验收阶段
项目验收阶段主要以本行业务部门和技术部门人员为主,业务人员对系统进行充分测试后,确定系统的可用性及运行稳定性,项目管理员与外包公司项目人员进行编码、流程和文档的交接,对系统开发过程中产生的程序代码及文档进行分析及审核,确保系统交付使用后可以正常运行和维护。验收报告签署后,项目进入收尾阶段。
六、软件开发外包项目收尾阶段
软件开发外包项目收尾阶段主要是按照项目开发合同中规定的项目付款方案进行结算,按照合同规定定期将项目款项支付给软件开发外包公司。大部分情况下合同款都是分期按阶段支付,因为软件系统不同于其他产品,即使进行了再多的测试也不能保证系统中所有的问题都已经被发现并解决,因此为保证系统正式运行后,外包公司对软件系统存在的问题能够及时更正和升级,项目的开发款项都是分期支付,以确保对外包公司进行一定的限制和督促作用。同时在项目开发合同中应明确规定公司在系统维护期间应提供的服务质量以及服务响应时间,确保银行方在系统出现问题后能最大限度的减少损失。项目收尾后,系统将按照计划进入运行阶段,项目组宣布解散,外包公司项目开发人员也撤回公司,项目宣告结束。