作者:潘绍强,新炬网络高级技术专家。
在软件需求的提出、设计、开发、测试、上线、运行等阶段需要大量的质量控制、测试、文档等工作,企业要应对软件的全生命周期过程管控工作的全新挑战,为了集中化管理和更有效管控,必须对软件的全生命周期的质量进行控制。但如何不同业务系统的统一管理,实现统一开发、统一测试、统一发布等过程管理,是IT部门面临的最大挑战。
软件生命周期管理体系建设是人、工具、方法、流程四个维度进行,体系建设主要围绕以下7大步骤来实施。
我们要清楚了解我们实施软件全生命周期体系建立或者优化的目的,以及当前存在什么痛点。通常客户面临的痛点包括如下:
1.现有流程的完整性和效率不足以支撑集中化管理;
2.现有IT平台需要进一步完善,以提高过程管理能力;
3.各项工作的自动化测试程度有待提高,改善工作效率;
4.管理模式和资源配置需要转变等。
在访谈中经常采用麦肯锡访谈方法来快速了解企业当前的运作情况。
1) 访谈前必须制定详细的访谈计划表,确定访谈对象、时间、访谈的主题、访谈的地点等。
2)需要根据不同的访谈者设计访谈问卷,调研按照人、工具、方法、流程四个维进行设计。 具体流程实现点的调研问题、未来业务目标和流程目标的调研问题等,应从人力和技能结构、工具平台配置、业务方法、流程控制力和节点控制力等方面设计问题和收集信息。
3)调研并整理访谈内容。
根据访谈掌握的情况来整理分析当前各流程现状,通过RMC流程描述和规范方法来实施,梳理出软件全生命周期各阶段流程、流程的角色职责及流程任务分解描述。
管理流程大致可以划分如下:
1.共用流程:标准评审流程;
2.需求管理:需求收集评审流程、需求分析流程、需求定版流程、需求变更流程、版本变更流程、版本规划流程、版本季度审视流程、版本变更流程、紧急版本流程等;
3.开发监控:需求开发流程、需求开发进度监控流程等;
4.测试及测试管理:集成商内部测试流程、用户接受测试流程、上线验证测试流程、缺陷管理流程、标准评审流程等;
5.发布管理:版本发布流程、版本回退流程。
以下是管理流程中的上线验证流程:
流程任务分解描述:
任务分解描述 | |||||||||||
编号 | 任务名 | 角色 | 工作 | 输入件 | 输入模板 | 输出件 | 输出模板 | 步骤 | 角色技能要求 | 软件工具 | 方法指南 |
TO1 | 上线测试计划制定 | 质量部门 | 根据上线版本,制定上线测试计划 | 上线版本 | 上线测试计划 | ||||||
TO2.1 | 组织案例准备 | 质量部门 | 根据上线测试计划,组织相关资源进行案例准备,其中资源角色根据要求选择对应的角色参与 | 测试计划 | 测试案例 | ||||||
TO2.2 | 案例准备 | 集成商、第三方测试公司、需求提出部门 | 根据TO2.1任务分派而决定是否案例准备 | 测试计划 | 测试用例 | ||||||
…… |
对需求申请、评审、定版、开发监控、发布、测试各阶段梳理出来的管理流程、部门、岗位职责进行了分析,识别了各环节的重大风险点,并基于业界最佳实践结合客户情况,提出流程优化建议。
各环节风险点:
管理模块 | 风险编号 | 风险简述 |
流程接口 | PIR1 | 无法建立业务规划与系统需求申请的跟踪管理 |
PIR2 | 需求缺乏统一管理接口 | |
PIR3 | 需求缺乏管道化排序管理 | |
需求及版本 | RVR1 | 需求缺乏统一的管理管道 |
RVR2 | 开发商内部缺乏对需求的版本化管理 | |
RVR3 | 需求变更缺乏决策过程 | |
RVR4 | 保障部没有对需求过程的管控 | |
...... |
根据流程优化建议优化现有流程,补充职能流程,建立端到端的需求生命周期管理流程,并制定软件全生命周期管理规范,包括对需求申请、评审、定版、开发监控、发布、测试各阶段的管理。通过规范的推广实施,建立需求全生命周期的管理能力,实现对多个业务系统高效、稳定的运维管理,同时满足业务系统的持续开发需求和稳定快速交付的要求。规范管理流程也将促进企业建立高效透明的配合流程体系,提高整体运作效率。
管理流程优化包括需求、开发、发布、测试阶段的各流程的优化。
针对端到端的需求生命周期管理流程,规划实现一套完整的IT基础平台,以支撑端到端流程的管理工作,包含需求管理、开发管理、测试管理、发布管理的端到端流程管理体系。通过这一IT平台,实现客户、开发商等各方协作、高效地开展业务支撑性日常需求的申请、评审、分析、定版、开发监控、测试、发布、验收工作,并实现各阶段工作任务、各输出工件的跟踪管理,进一步提高管理效率和管理质量。其中管理流程规范分为需求、开发监控、测试、发布流程等模块。其中需求的发布是以版本为主体进行管理的,版本管理和开发监控、发布管理在实际工作中具有较紧密而一致的,在各个管理流程中需要有需求变更管理、需求排版、需求评审、版本规划、配置管理、版本评审等功能,以下是一个从需求管理、版本、开发、发布管理及测试管理设计的IT平台规划的功能。
平台规划不仅仅上面IT平台规划功能还需要规划以下内容:
1) 制定总的IT架构;
2) 确定架构中的模块分解;
3) 界定每个模块中的功能点;
4) 描述系统与周边系统间的架构关系;
5) 比对各类需求管理流程软件、测试管理软件的优劣,明确引入相关通用工具软件的技术指标要求;
6) 提出IT平台的部署方式建议。
完成IT平台的总体规划后,需要基于已有的工具平台具体的IT功能上,对还没有具备的功能则需要进行开发,建议采用分阶段建设的方式进行。建议首先完成当前工具的部署和流程优化,再考虑实现工具之间的基础,最后才考虑实现深度集成和持续优化,以下是一个IT架构平台实施推进思路。
根据上面IT架构平台实施推进思路规划每个阶段的实施内容。
流程模块 | 流程 | 支持程度 | 解决办法 |
版本管理 | 版本规划流程 | 一期支持 | |
版本季度审核流程 | 一期支持 | ||
版本变更流程 | 一期支持 | ||
紧急版本流程 | 一期支持 | ||
版本总结/需求后评估 | 一期支持 | 二期扩展实现:配置实现需求生命周期展现文档 | |
开发监控 | 需求开发流程 | 一期支持 | |
需求开发进度监控流程 | 一期支持 | 二期可扩展开发更多度量指标和展现方式 | |
…… |
上一篇:Latch Free、Library cache伪游标(pseudo cursor)之间的那些事
下一篇:通过透明网关实现informix到oracle海量传输