1 角色和职责
1.1 质量保证人员(SQA)
² 辅助过程裁减,细化、制定项目规范;
² 制定《质量保证计划》;
² 产品检查;
² 过程审计;
² 跟踪问题处理;
² 度量和报告;
² 项目经验积累;
² 学习、研究和推广。
1.2 项目主管(SPM)
² 为SQA工作的顺利实施提供保障;
² 协调SQA与项目之间产生分歧的问题。
1.3 项目经理(PM)
² 批准《质量保证计划》;
² 为SQA工作提供支持。
1.4 开发人员(DEV)
² 参与评审《质量保证计划》;
² 按照《质量保证计划》执行活动;
² 协助SQA完成质量管理工作。
2 SQA周期性工作
2.1 产品评价
SQA可以用过审计、独立测试等手段评价产品,也可以通过监督评审、测试等过程来保证产品质量,也可以从格式和规范(比如代码规范、设计规范、UML图、DFD图、ER图等)上实施检查,并尽可能地检查中间产品之间的一致性。
检查内容:工作产品和最终产品。
2.2 过程评价
主要是检查项目是否按规定的过程和计划执行活动。检查规则包括过程执行的符合性和有效性两个方面。
检查内容:包括工程和管理两类过程(有些划分为工程、管理、支持等)。管理类过程包括项目管理、质量管理和配置管理。开发类包括需求分析、设计、编码、测试、评审等过程。
2.3 跟踪问题处理
SQA应跟踪问题处理过程,直到问题解决。跟踪的问题包括日常发现的产品问题、过程问题、项目风险、评审发现的问题、测试发现的问题等。如果不能和项目组就解决方案达成一致,可向项目主管反应。
2.4 度量和报告
SQA应善于根据过程规范和经验发现项目运行中的问题,并做到紧急问题、重要问题随时汇报,其它问题周期性汇报。
SQA需要随时收集数据并保障数据的有效性、真实性。定期汇总数据、统计分析并产生度量报告。SQA应协助项目组和SEPG针对不良趋势和问题采取纠正或预防措施。
2.5 质量推进
质量推进主要包括提高全员的质量意识和推进、解释过程的执行两个方面。这项工作需要在日常工作中一点一点地、坚持不懈地实施。
3 SQA非周期性工作
3.1 制定《质量保证计划》
在项目计划阶段,SQA在参考项目计划的基础上,与项目经理一起制定《质量保证计划》。质量保证计划的内容包括:QA组织结构、工作产品输出计划、计划执行的QA活动、度量计划以及计划采用的辅助工具等。《质量保证计划》要做到内容明确、可操作并及时更新。
3.2 过程制定
如果项目或组织需要制定过程规范,SQA应组织相关人员来完成过程制定工作。一般情况下,过程制定应由遵守和执行该过程的人员负责。所有制定的过程都必须经过评审,并由SQA检查执行情况。
3.3 过程改进
过程改进是一项长期的任务。SQA应注意随时发现、听取过程执行中问题和改进工作的方法,并进行阶段性的总结(比如质量报告等),以不断改进过程,提高过程能力。
3.4 学习和研究
SQA要不断学习和研究,尽量保持与领域最新的知识、方法同步,找出提高产品质量和工作效率的方法与过程。学习的内容主要包括管理领域和开发领域。管理领域包括质量管理(TQM、ISO9000、CMM、RUP、MSF、XP等)、软件度量(PSM、GQM、SPC、SixSigma)、项目管理、配置管理等。开发领域包括需求工程、设计、编码、测试等各阶段的开发和管理方法。
3.5 质量培训
项目或组织需要时,SQA需要向相关人员进行质量管理方面的培训或咨询。