软件质量保证管理办法
本文档的目的是为特定产品、项目或合同的质保工作提供指导,帮助项目组其他成员了解质量保证要素,明确质量保证活动,确定质量保证范围。本文档将规定项目质量管理员的职责和权利,资源要求,活动安排,进度,要求质量保证活动中必须生成的文档,反馈问题的方法和频度等。
本公司的软件质量保证活动统一由质量管理员进行管理、检查与汇报,公司相关部门经理及项目中的项目经理、程序经理、开发经理、测试经理、产品经理、测试经理、用户教育经理是质量保证活动中的第一责任人。
二、软件开发过程
本公司的软件开发过程分为以下8个阶段:项目策划阶段、需求分析阶段、设计阶段、开发阶段、测试阶段、实施阶段、验收阶段、维护阶段,每个阶段的主要活动分别为:业务启动和项目规划、需求分析、逻辑设计和物理设计、软件开发、软件测试、系统实施及用户培训、用户试用及验收、维护,里程碑分别为:策划完成、需求明确、设计完成、开发完成、测试通过、系统上线、验收通过、合同结束。每阶段结束后,必须对相应的里程碑进行检查,方式为评审或批准。
三、项目文档
项目文档分为两种:管理类文档与技术类文档,所有文档必须保存于知识库及相应的VSS库中。文档共有三种状态:编制完成、审核通过、批准通过。其中管理类文档只有编制和批准两种状态,技术类文档拥有所有三种状态。所有文档必须明确说明当前文档版本号。
管理类文档包含以下类型:计划、总结、报告、会议纪要、备忘录、申请等。技术类文档包含:设计文档、需求文档、测试设计文档、界面原型软件、使用手册、安装手册、技术白皮书、培训资料、源代码、软件产品等。除VSS库中的文档以外,放入知识库中的文档由部门助理统一放入,文档必须批准通过。
文档的编制、审核、批准可在文档中直接写明,也可使用单独的审批文档进行说明。
每个项目在不同阶段必须产生的文档如下,但不限于此:
1、项目开始前:
合同、技术方案、市场立项表。以上文档存放于知识库。
2、项目策划阶段:
业务启动表(EXCEL格式)、项目规划(WORD格式)、项目进度(PROJECT格式)等。必须使用规定模板编写。以上文档存放于知识库。
3、需求分析阶段:
需求模型(EA格式)、软件需求规格说明书(WORD格式)、单据报表格式(EXCEL格式)、需求分析评审表(WORD格式)、需求分析计划(WORD格式和PROJECT两种格式)。必须使用规定模板编写。以上文档存放于知识库。
4、设计阶段
软件开发计划(PROJECT格式)、逻辑设计(EA格式)、物理设计(VS.NET格式)、设计评审表(WORD格式),必须使用规定模板编写。物理设计存放于VSS库,其它文档存放于知识库。
5、开发阶段
源代码、可安装的软件、安装手册、评审表(WORD格式)。源代码、可安装的软件存放于VSS库,其它文档存放于知识库。
6、测试阶段
测试用例设计、软件BUG、测试计划(WORD格式和PROJECT两种格式)、测试报告(WORD格式)、开发的测试工具源代码及软件、测试通过的软件产品、软件评审表(WORD格式)。开发的测试工具源代码及软件、测试通过的软件产品存放于VSS库,其它文档存放于知识库。软件BUG存于TD中。
7、实施阶段
实施计划(WORD格式和PROJECT两种格式)、实施报告(WORD格式)、用户使用手册、用户培训资料、用户培训记录、软件问题反馈表(EXCEL格式)、上线报告(书面、电子扫描件)等。必须使用规定模板编写。以上文档存放于知识库。
8、验收阶段
验收材料、验收报告(书面、电子扫描件)。以上文档存放于知识库。
9、维护阶段
维护报告(WORD格式),以上文档存放于知识库。
本公司的项目关键检查点有以下8个,采取评审和批准的方式,由质量管理员进行跟踪。
1、策划完成里程碑
以总经理批准通过业务启动表为标志,质量管理员检查业务启动表、项目规划、项目风险控制计划、项目进度、技术方案文档是否进入知识库。负责人为项目经理。
2、需求明确里程碑
以软件需求评审通过为标志,评审通过后由配置管理员建立软件功能基线。项目由用户代表、公司代表、同行、下游人员(程序经理、开发经理、测试经理、用户教育经理)进行评审,评审记录上必须有以上几类角色的人员进行签名。质量管理员检查需求规格说明书、需求模型、需求评审表是否进入知识库。负责人为产品经理。
3、设计完成里程碑
以逻辑设计和物理设计通过评审为标志,它包含两个部分:逻辑设计与物理设计。逻辑设计评审通过后由配置管理员建立指派基线1,物理设计评审通过后由配置管理员建立指派基线2。逻辑设计评审参与人员必须包括:公司代表、产品经理、开发经理、测试经理、同行。物理设计评审参与人员必须包括:公司代表、程序经理、测试经理、同行。质量管理员检查逻辑设计、物理设计、设计评审表是否进入知识库或VSS库。逻辑设计负责人为程序经理、物理设计负责人为开发经理。
4、开发完成里程碑
以软件所有功能开发完成,并通过评审为标志,它的评审必须包括:公司代表、产品经理、程序经理、测试经理。质量管理员检查评审表是否进入知识库。负责人为开发经理。
5、测试通过里程碑
以软件评审通过作为标志,评审通过后将建立产品基线。评审参与人员必须包括:公司代表、产品经理、开发经理、实施经理、用户教育经理。质量管理员检查测试报告、软件评审表是否进入知识库。负责人为测试经理。
6、系统上线里程碑
以用户签署通过上线报告为标志,评审参与人员必须包括:用户代表、公司代表、项目经理。质量管理员检查上线报告、实施计划、培训材料等文档是否进入知识库。如上线报告为纸质文档,则扫描后入库。负责人为实施经理。
7、验收通过里程碑
以用户签署通过验收报告为准,评审参与人员必须包括:用户代表、公司代表、项目经理。质量管理员检查验收报告文档是否进入知识库,如上线报告为纸质文档,则扫描后入库。负责人为项目经理。
8、合同结束里程碑
合同结束,项目跟踪完成。负责人为软件业务部技术服务组长。
本公司的软件必须通过测试。测试工作由开发部测试组负责,所有测试出来的BUG必须统一存放,由测试组负责管理。在测试活动进行前必须有测试计划,测试完成后必须编写测试报告。测试报告由测试经理负责编写,测试组长批准。
软件开发过程中的配置管理工作由配置管理员负责,配置管理工作详细要求依据《配置管理规范》进行。
在软件开发过程中产生的正式文档必须存入于知识库中或VSS库中,由公司系统管理员负责每天进行物理备份。在项目进行过程中的备份采用移动硬盘进行,已结项的项目使用刻录光盘存档备份。
质量记录主要包括各种评审记录和审批记录,形式有评审表、签名文件、会议纪要、质量报告等。所有的质量记录由质量管理员统一管理,纸质的保存在指定的文件柜中,电子的保存在知识库中。质量记录的保存期限是3年。
公司所有的项目必须有独立的风险控制计划,风险控制计划由项目经理负责编写并跟踪,风险控制计划由项目管理部门批准。风险计划中必须包括风险列表、风险度、应急方案、缓解方案、责任人、风险状态。风险度由风险发生可能性和风险造成的危害程度相乘得到。
十、质量报告
项目的质量管理员必须在每周五12:00以前制作当前的项目质量报告,报告公司当前正在进行的项目的质量状态。主要包括:项目文档的审核情况、存放情况、完备情况;各里程碑的评审执行情况;各种计划的跟踪情况,责任人是否及时更新计划;各项规范的符合程度;等等。质量报告属于项目状态报告的一部分,与其一同填写。具体格式参见《项目状态报告》。
十一、质量会议
质量会议与公司的项目月例会合并召开,开会时必须提交质量报告。参会人员必须包括软件业务部部门经理、产品组组长、实施组组长和开发部部门经理、开发组组长、技术支持组组长、测试组组长、各项目经理。如遇特殊情况,质量管理员可临时针对某类问题发起会议,会议结束时必须有会议纪要并存档。
十二、工具及技术
在进行质量保证活动中,主要使用两种工具软件:知识管理系统和MS Visual SourceSafe。前者用来存放项目产生的各种文档,后者主要用于存放源码。公司在所有正式场合中所使用的项目文档均以这两个系统中的数据为准。在使用工具软件的过程中,各项目成员的权限统一由公司文档管理员进行分配。
十三、变更控制委员会
公司所有在建项目必须成立变更控制委员会,该委员会最小要包括以下人员:用户代表、市场代表、软件业务代表、开发代表、项目经理,但不限于此。一般情况下,产品经理、程序经理、开发经理、测试经理、实施经理、用户教育经理也可包括在该组织中。对于维护性项目,变更控制委员会由营销中心主任、软件业务部经理、开发部经理组成。