7.2.2 商业银行研发外包风险管控工作方法
研发外包不同于一般意义上的商品购买,它使得信息科技生产要素所有权、直接管理权和决策权向外包方转移,模糊了商业银行的管理边界。外包方与商业银行间的责、权、利难以清晰划分。外包双方共管的组织架构也使得银行原有信息科技治理过程发生结构性变化。风险管理形态也随之改变。另外,外包过程中外包服务商及其活动向商业银行原有的组织、流程“内嵌”,更加剧了风险的变化性、复杂度,增加了管理难度。为应对上述挑战,商业银行机构需要调整思路,进行战略思考和治理研究,加强外包评估、关系管理和风险监督控制体系建设,避免因引入外部资源而增加商业银行在信息安全、业务连续性和合规性等方面的风险。
对研发外包风险的管控,可参考信息系统研发项目管理流程分为战略决策阶段、启动阶段、实施阶段、交付阶段开展。其中,战略决策阶段应站在全局高度,从战略角度规划整个研发外包风险管控工作。其余三个阶段面向具体的项目和信息系统,从执行角度对研发外包项目进行信息系统研发全生命周期的风险管控。
1.战略决策阶段的研发外包风险管控
《IT外包指引》明确指出“商业银行金融机构应当以提升信息科技队伍能力,提高科技管理及创新水平,掌握信息科技核心技能为目标,基于信息科技战略、外包市场环境、自身风险控制能力和风险偏好制定信息科技外包战略,包括:不能外包的职能、资源能力建设方案、供应商关系管理策略和外包分级管理策略”。
根据监管部门关于IT外包的监管要求,商业银行普遍建立了适合本行实际情况的IT外包管理策略、组织、制度、流程等,形成战略决策层面的IT外包管理体系。研发外包风险管控要想顺利开展,必须在IT外包管理体系中嵌入研发风险管控相关的工作内容,主要表现在以下方面:
1)在组织层面增加研发外包风险管控角色和职责。建立有效的组织体系是IT外包风险管控的基础。商业银行IT外包风险的复杂性要求必须建立完善的风险管理组织,为风险管理提供组织方面的保障。目前,商业银行普遍建立了IT外包管理组织,并成立了专家组织对IT外包项目进行相关评审。在研发外包风险管控方面:应在IT外包管理组织中增加研发外包风险管控角色,负责跟进项目研发外包风险管控工作开展情况;应要求外包服务商建立对口联系人制度,确保商业银行能够及时掌握项目研发风险管控工作的实际情况;应在专家组织中增加信息安全专家,负责对IT外包项目中的服务商安全资质、信息系统安全架构、研发风险管控活动执行情况和效果等进行评价和审核。
2)在制度层面增加研发外包风险管控工作流程和要求。目前,商业银行普遍建立了项目管理、采购管理、外包管理的相关制度体系。为明确研发外包风险管控工作职责和要求,商业银行应在项目管理制度中明确信息系统研发外包项目的适用条件,在外包管理制度中明确信息系统研发外包项目的管理职责、流程、要求等,在采购管理制度中明确信息系统研发外包服务的采购流程和要求。
3)在外包服务商和服务人员管理方面增加研发风险管控工作约束。外包服务商的资质和服务人员的能力对外包服务的质量有很大影响。商业银行应制定制度明确的外包服务商和服务人员的管理制度,明确外包服务商和服务人员的准入、准出原则,还应建立外部服务质量评估机制,制定针对性的风险评估策略。
2.启动阶段的研发外包风险管控
启动阶段是外包项目的准备阶段,主要包括三项工作,即外包项目立项与审批、外包服务采购和外包合同签订。在启动阶段,应通过控制项目的启动、控制外包服务商资质和合同签订等工作,在项目源头把控研发外包风险。
1)在外包项目立项与审批过程中控制研发外包项目范围。对于信息系统研发外包项目,特别是重大信息系统的研发外包,需充分考虑IT外包风险可能对系统的安全性、资源的可用性与完整性、信息的机密性及规则的一致性所构成的威胁。基于项目预研或前期调研的风险分析结果,以企业的风险容忍度为尺度,进行是否进行外包的决策。例如,企业内部的核心信息系统或者关键信息系统的核心模块不宜外包给服务商进行开发。
2)在外包服务采购过程中考察研发外包服务商资质。在采购外包服务时,商业银行可以根据“战略决策”中的准入原则选取外包服务商。准入原则和流程可根据商业银行的实际情况确定,但应遵守以下总体原则:一是应建立规范的采购流程和制度,保证采购流程的合规性,经得起内外部的审计;二是要严格考察研发外包服务商各方面的资质和能力,包括技术能力、服务能力、行业地位、管控能力、信用度、经营声誉、企业文化、人力资源情况、财务状况、对商业银行的熟悉程度、突发事件应对能力等。
3)在外包合同中明确研发外包风险管控要求。外包合同是实现外包策略的一个关键环节。商业银行在签订信息系统研发项目外包合同时,应与服务商约定项目范围、费用、计划等,对于可能给商业银行造成高风险的环节应排除在项目范围之外;应明确对商业银行各种资源(如信息、硬件、软件、知识产权等)的安全性和机密性要求,或者单独签订相关的保密协议,对保密信息内容、保密信息提供与保护、服务商保密义务、保密期限和违约条款等进行约定,以防止服务商泄露商业银行的敏感信息;应明确外包研发信息系统的安全需求和研发风险管控工作要求,确定信息系统的安全交付标准和研发风险管控相关工作的考核标准。
3.实施阶段的研发外包风险管控
实施阶段需要对外包项目研发过程中的风险进行管控。由于研发外包风险兼具研发风险和外包风险的特点,因此除了需要按照研发风险管控工作流程在项目研发过程中开展安全需求定制、安全设计、源代码安全审核等安全管理活动以外,还要兼顾项目研发过程中涉及的外包风险,例如泄密风险、外包服务中断风险等。具体管控措施包括外包服务安全管理、外包服务风险监控、业务连续性管理等。
(1)外包服务安全管理 其目标是降低外包服务过程的相关安全风险,主要涉及外包服务人员、外包服务商提供的外包服务和交付成果,包括信息安全培训、外包使用资产管理、外包开发交付物检查等。
1)信息安全培训指为提高商业银行在研发外包实施过程中的信息安全水平而进行的必要培训,通常包括安全技能、保密教育和安全管理等内容。
2)外包使用资产管理包括外包人员使用设备管理和信息资产访问授权管理。商业银行应对外包人员使用的设备进行限制,可根据情况提供专用设备,同时,还应对外包服务人员的信息资产访问按“必需知道”和“最小授权”原则进行授权,并登记备案。
3)外包开发交付物检查是针对外包服务商交付成果的检查,包括对其提供的产品进行安全漏洞扫描,对其提供的项目源代码进行代码检查等。
(2)外包服务风险监控 通过对外包服务商提供的服务进行持续的监督、控制与评价,实现对研发外包风险进行管控的目的。鉴于外包服务开展的本质是履行外包服务合同,所以,此阶段的风险管理应主要依据外包服务合同开展,在关注外包服务合同履行情况(包括服务范围、服务支持情况、服务质量、人力资源情况等)的同时,还应重点对研发外包风险进行定量监控。
(3)业务连续性管理 商业银行的业务连续性至关重要。在研发外包服务中,可以采取制订业务连续性管理计划,制定事关业务连续性风险的措施来确保商业银行业务的连续性。
1)制订业务连续性管理计划通常包括识别重要业务涉及的外包商和资源,监控评价外包商业务连续性管理水平,将相关外包商纳入业务连续性计划演练等部分。
2)制定事关业务连续性风险的措施指针对可能对业务连续性管理造成重大影响的外包服务制定针对性的措施对风险进行管理。这些风险通常可以重点考虑外包服务质量无法满足合同要求、外包服务发生中断等情况。
4.交付阶段的研发外包风险管控
交付阶段的研发外包风险管控主要包括外包服务后评价和资源回收管理两方面。
(1)外包服务后评价 商业银行在外包项目的服务后评价中,应对该项目研发风险管控工作要求的执行情况进行综合评价,并将评价结果应用于对外包服务商的考核中去。
(2)资源回收管理 对外包服务实施过程中使用的资源进行回收或释放,以降低外包剩余风险。例如:信息系统交付后,应对相关的软硬件开发资源、资产库权限进行回收,对商业银行提供的人力、场地等资源进行释放等。