软件质量保证过程的实施要点

发表时间:2020/6/12   来源:《基层建设》2020年第5期   作者:卢青
[导读] 摘要:软件质量保证是软件质量管理的主要内容,它贯穿软件的整个生命周期,在软件研制和管理过程中发挥了重要作用,识别软件质量保证的实施要点,建立独立和专业的软件质量保证组织,规定不符合项的处理流程,参与软件项目策划,并严格按照计划执行过程审核和工作产品审核,在执行过程中通过质量数据的测量与分析,不断地持续改进,提升软件质量保证的能力,以更好地保障软件质量。
        太原航空仪表有限公司  山西太原  030006
        摘要:软件质量保证是软件质量管理的主要内容,它贯穿软件的整个生命周期,在软件研制和管理过程中发挥了重要作用,识别软件质量保证的实施要点,建立独立和专业的软件质量保证组织,规定不符合项的处理流程,参与软件项目策划,并严格按照计划执行过程审核和工作产品审核,在执行过程中通过质量数据的测量与分析,不断地持续改进,提升软件质量保证的能力,以更好地保障软件质量。
        关键词:软件质量保证;过程;实施要点
        由于各方面因素的影响和限制,软件质量保证过程在一些单位的实际实施效果并不尽如人意,一定程度上影响了软件产品的质量。以下是我识别的软件质量保证过程实施要点,在实施方法和实施要素等层面围绕实施要点进行阐述,并提出了软件质量数据分析的转化,以促进持续改进。
        一、软件质量保证概述
        过程和产品质量保证(PPQA)的目的是使员工和管理者对过程和相关的工作产品能有客观深入的了解,以支持交付高质量的产品和服务。过程和产品质量保证过程主要包括指导和改进过程,保证所有规定的程序和流程得到贯彻和实施,对项目根据其计划和已定义的过程执行相应活动进行客观的验证等活动,此项工作带有预防的性质。软件质量保证(SQA)人员是PPQA过程重要的实施人员,SQA人员制定和维护软件质量保证计划,依据适用的标准、程序和计划等,对软件项目遵循的过程和工作产品进行客观的评价,记录、跟踪不符合项,并向项目成员和中高层管理者反馈质量保证的结果,以确保不符合项的及时发现和处理解决。
        二、软件质量保证过程的实施要点
        1.建立独立的质量保证机构。在组织级和项目级均建立质量保证组织,组织级独立于项目团队进行审核活动。为每个软件项目指派独立于项目组外的项目级SQA人员,以确保项目按既定的标准、程序等开展实施活动。在组织层面配备组织级SQA,以监控项目层面的质量保证实施情况。这种自顶向下且独立的质量保证组织将使有效、客观、公正的质量保证审核成为可能。
        2.选择合适的员工担任SQA。SQA人员应具有良好的表达和沟通协调能力,尤其在不符合项的处理解决过程中,考验了SQA人员与多角色多层级人员的沟通协调技巧;SQA人员应熟悉本单位现有的软件研制和管理体系;具备质量活动策划的能力;有面临复杂工作的应对能力,他们可能同时面临多个项目组,其任务相对复杂;应能够客观、公正地就项目团队内反复协调解决的问题向软件负责人和相关管理者提供建议;SQA人员应优先考虑取得GJB5000A内部评估员或相关资质的人员;SQ人员最好具有资深的软件研制和管理经验,以便能精准、深入地发现不符合项,并提供最切和实际的改进意见。
        3.参与项目策划活动,制定软件质量保证计划。软件项目开工会和项目策划阶段,SQA人员应介入项目的启动和策划,了解用户对项目的质量保证要求,明确项目质量目标,协助项目团队定义开发计划中活动,确保软件开发计划符合用户制定的标准、要求和组织的体系要求。SQA人员根据用户软件质量保证要求、软件研制任务书和软件开发计划等策划软件质量保证活动,包括过程审核活动、工作产品审核活动、不符合项的解决途径和质量保证活动记录等,并与项目团队达成一致。SQA人员应参加计划的评审,关注软件各管理计划的一致性等。
        4.过程审核要求。应依据质量保证计划、用户要求、体系要求和过程检查单等依据文件进行过程审核,具体应按照软件质量保证计划中策划的审核内容、审核方法和依据、责任人、审核时机和审核频度等内容执行。

当软件研制过程发生变更活动或软件验收交付后发生软件维护活动等触发事件时,需触发性增加变更过程审核或软件维护过程审核等过程审核。项目级质量保证人员可以每周间隔进行过程审核,公司级质量保证人员可以每月定期审核,并结合现场抽查等方式进行监督。在阶段、里程碑评审等会议上,SQA人员总结并通报软件质量保证审核结果,并提出改进建议。
        5.工作产品审核要求。应依据软件质量保证计划、用户要求、体系模板、抽样准则和产品检查单等依据文件进行工作产品审核,具体应按照质量保证计划中策划的审核内容、审核方法和依据、责任人、审核时机、审核频度和抽样比例等内容进行执行。当软件研制过程或软件维护过程软件工作产品发生变更时,应触发性增加变更后软件工作产品的审核。在阶段、里程碑评审会议上,SQA人员总结并通报软件质量保证审核结果,并提出改进建议。
        6.规定对发现的不符合项的处理流程和逐级上报渠道。项目级SQA发现不符合项后,应确定不符合项的级别,填写问题描述和应采取的纠正措施,告知软件相关责任人;相关责任人对不符合项进行确认,如果接受不符合项,则责任人与项目级SQA商定解决期限,进行原因分析,并按制定的纠正措施和期限解决不符合项,项目级SQA跟踪、验证不符合项直至关闭;相关责任人如果不接受不符合项或不能解决或未在规定期限内更改完成,则项目级SQA将不符合项告知软件负责人,软件负责人如果接受不符合项,则责令责任人按期更改,如果不接受不符合项或不能解决,则项目级SQA将不符合项上报组织级SQA,组织级SQA与承研部门中层领导沟通不符合项,如果达成一致,则相关责任人按期更改,如果未达成一致或无法在职权范围内解决,则组织级SQA将不符合项上报高层领导,高层领导做出最终处理意见。项目级SQA人员记录和关闭不符合项。
        三、软件质量数据分析
        1.不符合项数据的测量。针对软件项目或软件组织的有目的的进行测量。首先要对项目或组织的目标有一个非常明确的认识,针对软件项目或软件组织的有目的的测量,收集为目标定义的可量化和可操作的数据,然后对确定的目标进行数据解释和分析。例如对软件质量保证活动内的产生的不符合项数据进行收集,并且对收集的数据进行测量。可以从不符合项按过程分布情况和不符合项按工作产品分布两个角度进行测量,通过对不符合项在工程过程(按阶段划分)、项目管理过程(包括策划、集成项目管理、项目监控、需求管理、风险管理等过程)和支持过程(包括配置管理、测量与分析、决策分析和决定等过程)三个维度分别进行测量,可以分析出项目的薄弱过程环节,进行有针对性的培训,并在后续项目的相关过程审核中加强监督;通过对不符项按工作产品的分布的测量,可以分析出工作产品的共性问题和薄弱点,并进行有针对性的培训或完善体系模板。
        2.将质量数据转化为体系要求。SQA人员在软件研制和管理的过程审核和工作产品审核中,能从一个宏观和客观的角度对软件过程和工作产品进行评价,一方面,从项目发生的不符合项、评审缺陷、测试问题、软件故障等数据总结项目的失败教训,从中分析共性问题和引以为鉴的过程,贡献给组织资产库,给组织改进过程提供良好的意见和建议,组织采纳后,将体系改进完善,后续项目就能大大避免发生重复的错误;另一方面,SQA人员可以为组织推荐项目优秀实践和文档,同样纳入组织资产库,优化完善体系流程和模板,后续项目可以在较高的起点按照优化的流程进行研发和管理。这两方面将有利地促进项目的良性循环和组织的持续改进。
        四、结束语:
        软件质量保证过程在整个软件研制和管理过程中发挥了重要作用,应建立专业独立的组织,选择合适的人员来保证质量,并从制定的过程审核和产品审核的要求入手,依据计划严格执行评价,同时做好质量数据的测量与分析,为组织的持续改进做贡献。
        参考文献:
        [1]路浩.军用软件能力成熟度模型[S].2018
        [2]李建.软件质量保证与软件质量控制的初探[S].2018
投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: