商业银行新产品开发风险点及其控制(下).doc
商业银行新产品开发风险点及其控制(下) 五、程序测试验收阶段 程序测试本身是控制项目开发风险和保障软件质量的重要手段,其主要方式是在设计测试用例的基础上检验软件的各个部份。首先是进行单元测试,查找各模块在功能和结构上存在的问题并加以纠正;其次是进行组装测试,将已测试过的柜块按一定顺序组装起来;最后按规定的各项需求,逐渐进行有效性测试,决定已开发软件是否合适,能否交付使用。 (一)风险点分析 1、测试未能发现程序中的重大错误,给安全运行留下隐患。 2、埋有的逻辑炸弹未能发现。 3、测试未能按严格的步骤走完。 4、测试中出现的问题未引起足够重视。 5、测试受到个别人意志的左右。 (二)风险控制 1、坚持若干测试原则:①尽早地和不断地进行测试;②程序员应避免检查自己的程序;③在设计测试用例时,应当包括合理的输入条件和不合理的输入条件;④充分注意测试中的群集现象;⑤对每一个测试结果作全面检查。 2、严格按测试内容和步骤操作: ( 1)单元测试,测试内容应包括:模块接口、局部数据结构、独立路径、错误处理和边界条件,以消除程序模块内部在逻辑上和功能上的错误和缺陷; ( 2)集成(组装)测试,主要检测以下内容: ①在把各个模块连接起来的时候,穿越模块接口的数据是否会丢 失; ②一个模块的功能是否会对另一个模块的功能产生不利影响;③各个子功能组合起来,能否达到预期要求的父功能; ④全局数据结构是否有问题; ⑤单个模块的误差累积起来,是否会放大,从而达到不能接受的程度; ⑥排除子系统(或系统)结构上的错误。 ( 3)确认测试。确认测试阶段首先要进行有效性测试以及软件配置复审,然后进行验收测试和安装测试,在通过专家鉴定后,才能将软件交付使用。该测试主要确定软件的功能和性能与需求是否有差距。 ( 4)系统测试。即从系统整体出发,看系统是否满足要求。 3、运用黑盒测试,以证明每个实现了的 功能是否符合要求;运用白盒测试,以证明每种内部操作是否符合设计规格要求,所有内部成份是否已经过检查4、整个测试过程必须建立完整的文档和测试评价制度。 六、试点推广阶段 试点推广是指新产品测试通过后,先作局部试点,然后将新产品全面推向市场。 (一)风险点分析 1、新产品未经过严格的测试,匆忙上马。 2、培训工作没有跟上,业务人员在使用产品中发生失误。 3、操作规程、管理办法以及合同、协议等法律文书等有漏洞。 4、同一产品的各种文书材料对产品的功能或操作界定不一。5、在试点中发现的问题未引起市场推广人员和产品开 发人员的注意。 6、在新产品推广过程中发生失误,给新产品的形象带来影响。 7、新产品开发或推广半途而废。 (二)风险控制 1、新产品未经严格的测试并经委员会同意,不得随意上马。 2、对新产品操作人员必须进行专门的培训,培训后应举行笔试和上机操作考试,凡考试未通过者,不得上岗操作新产品。对大的产品项目的培训时间必须达到 30 小时以上,并且上机教学时间不得少于 8 小时。 3、有关新产品的各种操作规程、管理办法以及合同、协议在使用前应统一由法律事务部和风险管理部进行审查。 4、建立新产品试点推广中的推广责任人制度。责 任人必须经常与试点推广网点保持联系,在第一时间发现新产品在试点推广中出现的问题,小问题立即予以解决,重大问题必须向所在部门领导汇报。由所在部门领导确定该问题是否送委员会会议讨论。 5、若新产品在试点推广过程中发生失误,有关部门和业务操作部门应在第一时间将失误纠正过来,力求减少失误给新产品形象带来的不良影响,并就此事件进行分析总结,以免重蹈覆辙。 6、凡经委员会通过的新产品开发项目,停止开发或推广必须报委员会批准。 七、运行维护阶段 运行维护是交付使用的产品投入正式使用后,由于各种原因,需要对其进行维护和修改 。 (一)风险点分析 1、运行中发现了产品的错误或设计缺陷需要修正而未引起有关方面足够重视,造成不良后果。 2、产品市场环境或程序运行数据环境发生了变化而未对产品或程序进行合理修正。 3、产品功能已显落后而未修改,造成在竞争中处于劣势甚至丧失市场。 4、新产品运营后无人对其改进负责。 (二)风险控制 1、建立改正性维护、适应性维护、完善性维护、预防性维护的完整产品维护体系。 2、对处于运行过程中的新产品,必须由市场开发人员和科技部门人员共同对新产品运行的性能、功能、可靠性等每半年进行一次评估。 3、对于软件产 品的维护,需建立内部分工合理的、附属于科技部门的产品维护机构。产品维护机构中至少要有下列五种人:修改负责人、维护管理员、配置管理员、系统监督员、维护人员,以明确各自的责任所在:维护申请提交给一个维护管理员,他把申请交给某个系统监督员去评价。系统监督员作出评价后,由修改负责人确定如何进行修改。在维护人员对程序进行修改的过程中,由配置管理员严格把关,控制修改的范围,对软件配置进行审计。 4、在产品维护中建立明确的产品质量目标和优先级。因为尽管可维护性要求产品的每一质量特性都要得到满足,但它们相对的重要程度却随产 品用途及环境的不同而不同。 5、在产品开发中必须选择可维护的程序语言。因而应尽量使用第三代和第四代语言。 6、实施软件再造工程。 7、业务管理部门应对新产品的改进负责。