如何做好软件项目质量管理

2024-05-07 09:32

1. 如何做好软件项目质量管理

项目质量是一个项目的灵魂,体现的是项目与项目目标需求的符合程度。项目质量管理则是为保证项目满足原先规定的各项要求而组织的各项活动。
  
 软件质量管理的作用,体现在如下3个方面 :
  
 项目质量除了交付成果的质量外,还包括项目管理的质量。一般来讲,项目质量管理包括如下4个方面内容:
  
 质量不是每个指标都越优越好,一方面要看客户有没有提出需求,没有需求的质量的是没有意义的。另一方面,在提高质量的同时需要考虑到质量成本的增加。最后还要考虑到一种情况,有些质量指标需要权衡,比如提高软件的安全性可能带来软件性能指标的降低。
  
 所有这些都需要在项目启动之初想清楚,定下项目质量的方针与目标。
  
 一切有序的工作都需要计划,质量管理计划一般包括如下内容:
  
 监控项目的具体成果,确定其是否符合项目的质量标准,并进行不合格情况的追踪。
  
 按照既定的质量计划来对过程进行追踪,同时提供质量改进,为项目满足所有项目利益相关方的要求提供信心。
  
 1、质量管理策略的展开与实施
   明确公司软件质量要求,提高全体项目人员质量意识。
   2、寻找高素质的软件人才
   优秀的人才,自我对质量的要求就高。
   3、利用一些激励手段激励项目成员
   将项目质量纳入到到绩效考核指标
   4、加强项目实施的过程监督
   平时通过质量检查和阶段检验等两种方式确保项目顺利执行,加强评审与抽查,及时发现问题
   5、建立软件测试小组,做好软件质量控制
   专门的测试小组,没有开发的压力,更有可能发现软件质量问题。
   6、借助一些先进项目管理软件或者软件开发过程管理软件
   好的工具,可以加强控制、提升效率,如问题追踪系统的使用。

如何做好软件项目质量管理

2. 怎样做好软件项目的质量管理工作

在实际的项目质量管理中,质量管理总是围绕着质量保证(Quality?Assurance)过程和质量控制(Quality?Control)过程两方面。这两个过程相互作用,在实际应用中还可能会发生交叉。正如引言所述,关于软件的质量,很难下一个非常明确的定义。本文主要针对软件工程中的质量管理来进行讨论。
  1、做软件“大餐”的工序
  软件质量保证(Software?Quality?Assurance,以下简称SQA)的目的是验证在软件开发过程中是否遵循了合适的过程和标准。软件质量保证过程一般包含以下几项活动:
  首先是建立SQA组;其次是选择和确定SQA活动,即选择SQA组所要进行的质量保证活动,这些SQA活动将作为SQA计划的输入;然后是制定和维护SQA计划,这个计划明确了SQA活动与整个软件开发生命周期中各个阶段的关系;还有执行SQA计划、对相关人员进行培训、选择与整个软件工程环境相适应的质量保证工具;最后是不断完善质量保证过程活动中存在的不足,改进项目的质量保证过程。
  独立的SQA组是衡量软件开发活动优劣与否的尺度之一。SQA组的这一独立性,使其享有一项关键权利――“越级上报”。当SQA组发现产品质量出现危机时,它有权向项目组的上级机构直接报告这一危机。这无疑对项目组起到相当的“威慑”作用,也可以看成是促使项目组重视软件开发质量的一种激励。这一形式使许多问题在组内得以解决,提高了软件开发的质量和效率。

3. 软件项目管理中的质量控制是由谁来实施的

软件项目管理中的质量控制通常是由操作人员来实施的,对于发生的质量问题不重视。在出现产品质量问题时,不仅没及时进行原因分析,而且在后续的加工过程中也未采取任何的控制措施,同样还是按习惯生产,结果导致第二次质量事故的发生。
人为的工作习惯、经验不能作为生产操作的标准和依据。如果仅靠习惯和经验做事,走不出习惯和经验的人,其生产的产品质量将得不到有效的保障。

质量控制点的停止点
停止点是重要性高于见证点的质量控制点,它通常是针对“特殊过程”或“特殊工艺”而言。凡列为停止点的控制对象,要求必须在规定的控制点到来之前通知监理方派人对控制点实施监控,如果监理方未能在约定的时间到现场监督、检查,施工单位应停止进入该控制点相应的工序。
并按合同规定等待监理方,未经认可不能越过该点继续活动。通常用书面形式批准其继续进行,但也可以按商定的授权制度批准其继续进行。

软件项目管理中的质量控制是由谁来实施的

4. 软件企业质量管理

软件质量管理体系概论


软件企业实施质量管理体系的一般过程
从企业宣布开始建立质量管理体系的那天起,企业最高领导人的全员动员,是宣告企业进入状态的必不可少的步骤;
咨询机构的加入是一种外部压力,对全员进行质量体系基础知识的培训和考试是增强员工质量意识的重要措施;
对企业组织架构的调整是建立体系的基础;
共同参与提出质量方针和目标、编写质量手册和过程文件,以及质量体系的试运行等步骤,实质上是企业内部进行沟通、取得共识、开始走向成熟的过程。
质量认证咨询工作的三个阶段
1. 企业现状调查与诊断和ISO 9000族标准与软件工程培训阶段。
对企业的组织和管理现状进行调查,与企业管理层一起讨论,找出问题的症结,提出有关组织架构和管理流程调整的建议;
为全体员工进行ISO 9000族标准与软件工程方面的培训,培训的内容包括:ISO9000标准的基本知识和条款、软件质量管理的要点、软件过程模型(ISO12207信息技术-软件生存周期过程)、CMM软件能力成熟度模型、和软件过程度量等方面。
确定企业的质量目标、质量方针,质量体系文件的策划。
质量认证咨询工作的三个阶段
2. 质量体系文件的编写阶段
对编写小组成员进行文件编写的培训,提出编写的方法和要求,给出文件编写样本,构建文件框架,然后分工编写。
对第一稿的体系文件进行符合性检查,逐个文件进行深入细致地的讨论和修改,使编写的文件与标准的要求完全符合,对文件进行全面的修改,产生文件的第二稿。
对体系文件进行一致性和可操作性检查与修改,产生了体系文件的第一个试运行版本。
质量认证咨询工作的三个阶段
3. 质量管理体系的试运行阶段
遵循“一要坚持、二要改进”的原则开始质量管理体系的试运行。
“一要坚持”,就是所有的部门和人员都要按照已建立的文件体系执行,规范行为;
“二要改进”,就是在试运行中发现的问题应按照纠正预防措施所规定的程序进行改进,如发现质量体系不合理的地方按规定的程序进行修改。
质量管理主要涉及三方面的问题
规范化、量化和固化:
1)规范化就是按照ISO9001标准建立一套适合软件企业的质量管理体制,同时引入CMM中的相关关键过程作为规范管理的手段;
2)量化就是要采用基于事实的决策方法,收集数据进行量化分析,实现质量管理的反馈控制;
(3)固化就是要建立一套行之有效的文件化程序,使得企业无论在什么地方、由什么人管理,都要按照统一的模式去实施。
......

5. 软件质量保证的项目内容

 需求分析→功能设计→实施计划检查:开发目的;目标值;开发量;所需资源;各阶段的产品作业内容及开发体制的合理性。 结构设计→数据设计→过程设计检查:产品的计划量与实际量;评审量;差错数;评审方法,出错导因及处理情况,阶段结束的判断标准。 说明书检查;程序检查。⒈3质量保证实施软件质量评价标准。⒈质量需求准则:着眼点是是否满足用户的要求⒉质量设计准则:开发者在设计实现时是否按软件需求保证了质量⒊质量度量准则:为质量度量规定了一些检查项目:精密度量:根据质量度量准则进行详细度量全面度量简易度量五个实施步骤⒈Target:以用户需求和开发任务为依据,对质量需求准则,质量设计准则的质量特性设定质量目标进行评价。⒉Plan:设定适合于待开发软件的评测检查项目,一般设定20—30个。⒊DO:在开发标准和质量评价准则的指导下,制作高质量的规格说明书和程序。⒋Check:以Plan阶段设定的质量评价准则进行评价,算出得分,以质量图的形成表示出来,比较评价结果的质量得分和质量目标看其是否合格。⒌Action:对评价发现的问题进行改进活动,重复Plan到Action的过程直到开发项目完成。⒈4软件可靠性可靠性统计定义:在给定的环境和给定的时间间隔内,按设计要求成功运行程序的概率。二、软件可靠性的主要指标MTBF ——平均故障间隔时间MTTF —— 平均故障时间MTTR ——平均修复时间MTBF = MTTF + MTTR软件可用性是指在某个给定时间点程序能够按照需求执行的概率。可用性 = MTTF /(MTTF+MTTR)×100%⒈5 ISO9000 质量标准ISO9000是指质量管理体系标准,它不是指一个标准,而是一族标准的统称。ISO9000是由TC176(TC176指质量管理体系技术委员会)制定的所有国际标准。ISO9000是ISO发布之12000多个标准中最畅销、最普遍的产品。ISO(国际标准化组织)和 IAF (国际认可论坛)于2008年8月20日发布联合公报,一致同意平稳转换全球应用最广的质量管理体系标准,实施ISO9001:2008认证。2000版ISO 9000族标准包括以下一组密切相关的质量管理体系核心标准:⑴ISO 9000《质量管理体系结构 基础和术语》,表述质量管理体系基础知识,并规定质量管理体系术语。⑵ISO 9001《质量管理体系要求》,规定质量管理体系要求,用于证实组织具有提供满足顾客要求和适用法规要求的产品的能力,目的在于增于顾客满意。⑶ISO9004《质量管理体系业绩改进指南》,提供考虑质量管理体系的有效性和效率两方面的指南。该标准的目的是促进组织业绩改进和使顾客及其他相关方满意。ISO9000标准被很多国家采用,包括欧盟的所有成员,加拿大、墨西哥、美国、澳大利亚、新西兰和太平洋区域。为了注册成为ISO9000中包含的质量保证系统模型中的一种,一个公司的质量系统和操作应该由第三方审计者仔细检查,查看其标准的符合性以及操作的有效性。成功注册之后,这一公司将收到由审计者所代表的注册实体颁发的证书。此后,每半年进行一次检查性审计。ISO9001是应用于软件工程质量保证标准。这一标准中包含了高效的质量保证系统必须体现的20条需求。因为ISO9001标准,适用于所有的工程行业,因此,为帮助解释该标准在软件过程中的使用而专门开发了一个ISO指南的子集ISO9000—3。ISO9001描述的需求涉及到管理责任,质量系统,合约评审,设计控制,文档和数据控制,产品标识和跟踪,过程和控制,审查和测试,纠正和预防性动作,质量控制记录,内部质量审计,培训,服务以及统计技术的主题。

软件质量保证的项目内容

6. 如何做好软件工程质量管理

在实际的项目质量管理中,质量管理总是围绕着质量保证(Quality?Assurance)过程和质量控制(Quality?Control)过程两方面。这两个过程相互作用,在实际应用中还可能会发生交叉。正如引言所述,关于软件的质量,很难下一个非常明确的定义。本文主要针对软件工程中的质量管理来进行讨论。
  1、做软件“大餐”的工序
  软件质量保证(Software?Quality?Assurance,以下简称SQA)的目的是验证在软件开发过程中是否遵循了合适的过程和标准。软件质量保证过程一般包含以下几项活动:
  首先是建立SQA组;其次是选择和确定SQA活动,即选择SQA组所要进行的质量保证活动,这些SQA活动将作为SQA计划的输入;然后是制定和维护SQA计划,这个计划明确了SQA活动与整个软件开发生命周期中各个阶段的关系;还有执行SQA计划、对相关人员进行培训、选择与整个软件工程环境相适应的质量保证工具;最后是不断完善质量保证过程活动中存在的不足,改进项目的质量保证过程。
  独立的SQA组是衡量软件开发活动优劣与否的尺度之一。SQA组的这一独立性,使其享有一项关键权利――“越级上报”。当SQA组发现产品质量出现危机时,它有权向项目组的上级机构直接报告这一危机。这无疑对项目组起到相当的“威慑”作用,也可以看成是促使项目组重视软件开发质量的一种激励。这一形式使许多问题在组内得以解决,提高了软件开发的质量和效率。

7. 软件开发企业质量管理

       软件开发企业质量管理 
         摘 要:为了提升信息产业的竞争力,我国软件企业应参照标准化质量体系认证ISO9000系列标准进行规范化管理并与国际接轨,以提高软件开发企业的质量管理水平。
         通过对软件开发过程及软件质量实质的分析,提出加强软件企业质量管理的方法与途径。
         关键词:软件工程;软件质量;质量管理
         作者简介:金铁(1969-),男,军事经济学院襄阳士官学校计算机教研室副教授,研究方向为计算机与多媒体教学;唐晓军(1971-),女,航天42所化学源部工程师,研究方向为企业管理;张勇(1982-),男,军事经济学院襄阳士官学校计算机教研室讲师,研究方向为网络通信。
         0 引言
         随着软件业的高速发展,在软件开发史上出现了“软件危机”,由于对于软件开发中的成本控制、软件进度、软件的可维护性等问题缺乏有效的管理手段,导致软件质量无法得到保证。
         因此,应与国际标准化质量体系认证体系ISO9000系列标准接轨,加强软件企业对项目开发的质量管理,全面提升软件企业的开发质量。
         1 软件工程视角下的软件开发质量
         1.1 软件开发方法与开发质量
         软件的开发一般是由开发模式决定的,不同的开发模式决定了开发方法的不同,并最终影响到产品质量的高低。
         软件质量管理所关心的问题正是规模化开发过程中对可重复性、可复用性、可维护代码的可靠性和健壮性要求,最终的目标是适用于专业领域的应用需要,发挥软件应用功能提升专业领域的生产及工作效率。
         在开发的各个环节实现以下目标,各个阶段易于实现而不是使用高深的技术,各阶段平滑过渡而不是另起炉灶,整个系统结构易于理解也便于维护,已实现的成熟开发过程能够重用,根据现实生活中的实体形成系统模型,整合多个开发团队协同工作。
         目前,面向对象的技术是反映现实世界为主导的建模技术,它可以最大限度地模仿现实世界,并可以最大程度地重用现有的软件产品。
         1.2 代码重用与开发质量
         面向对象的技术核心就是重用,开发者要在各个环节贯彻这种思想。
         重用是解决软件工程中诸多问题的一个重要手段,代码重用的好处很多,表现在提高代码开发生产力的作用是十分明显的,而且在提高软件开发质量方面的作用更是表现得十分深远。
         开发人员往往比较熟悉“自己的”代码,自己编写的更为熟悉,也感觉更可靠,但是软件的工业化生产是不允许每次开发都要从空白状态为起点,要能够运用过去开发成果、运用相关企业的开发成果,这都需要开发团队从代码重用中找到解决方案,以代码重用为基础,合理规划人员组织分工、收益分配、责权利等管理环节,才能使开发过程中的质量管理渗透到软件企业的血液之中。
         2 软件质量模型与改进方法
         现代质量管理理论的思想应用于软件的开发质量管理,目前国际上流行的ISO9000系列标准和CMM模型已受到软件企业的重视,它可以有效地指导软件企业建立适合自身发展的质量管理体系。
         在此基础上基于我国中小型软件企业的质量管理需求,在软件开发行业中,产生了基于过程改进的软件质量管理模型,具有较强的现实意义。
         2.1 基于过程改进的软件质量模型
         企业在软件开发中需要关注顾客满意、目标管理、过程管理等问题,如何形成一种机制,使企业迅速建立起自己的质量管理体系,并且在生产实践中逐步完善和升级。
         软件开发的过程模型很多,有瀑布开发模型、原型法模型、螺旋模型、迭代式过程模型等。
         它们对软件生命周期的划分都有所不同,但是为了便于实际工作中的应用,质量控制模型还是依据软件开发中的“策划、控制、改进”三个环节来分,用这三个过程对软件开发质量管理过程进行划分,也分为软件质量策划、软件质量控制和软件质量改进三个阶段,对每个阶段分别进行过程改进,提升质量管理水平,使软件企业和相关人员能够在软件开发过程中便于实施,保证企业能够达到质量管理的目标。
         2.2 基于过程改进的软件质量管理
         基于过程改进的质量管理主要包括软件过程成熟度、合理的软件质量目标确立、软件测试与维护能力的提高等。
         对于多数软件企业来说,由于软件人才不足,许多必须的过程改进无法实施,开发人员处于绝对的'主导地位。
         人们在软件生产全过程中,不愿提出过多的质量要求,结果使开发质量无法保证,多数情况下,在开发初始阶段,这些质量要求是被完全忽视的。
         软件过程成熟度是衡量软件企业质量水平和开发能力的重要指标,对于软件企业的核心竞争力来说,不是掌握了多少先进的技术,而是多少技术能够用于成功的开发,也就是常说的不在于会而在于精,精通成熟技术的能力才具有商业价值,也才能够实现用户的质量要求。
         为此,需要围绕这个中心进行软件企业的能力建设,也要时刻清楚企业自身的能力水平,在开发中合理确立质量目标,与用户充分沟通,防止好大喜功及盲目夸大自身能力,使企业陷入软件危机。
         软件测试与维护在软件生命周期中是一项重要工作,对于一个中小型软件企业来说,缺乏强有力的机构和人员来完成这项工作,使一些很容易解决的问题难以及时发现和解决,最终严重影响了软件的质量,教训是十分深刻的。
         3 软件企业加强质量管理的途径
         3.1 质量管理的关键
         质量的提高如果没有人的参与是不可能实现的,人们在软件开发质量管理中的任务就是消除软件的缺陷,达到用户满意目标。
         软件的缺陷主要有两种:技术方面和管理方面。
         技术方面的软件缺陷,需要从技术方面去解决,主要手段是让软件开发人员学习和创新,从技术上探索和总结,找到解决此类问题的方法。
         要经常召开技术方面的会议,通过对产品中的各种错误和缺陷进行研究,就可以最终找到解决的办法,并通过技术培训等形式进行推广,解决此类技术问题。
         而管理方面的缺陷,需要从管理方面去解决,由于企业管理水平低下,在软件开发中会产生责任与职能上交叠或空缺的领域,当软件开发出现质量问题时,大家都知道问题所在,但谁都不愿管,谁都不负责。
         软件开发是一个充满挑战的工作,很难一开始就把需求和解决方案完全描述清楚,随着开发工作的不断深入,那些视而不见的“小问题”会变成阻碍产品质量的大问题。
         因此,需要加强各类人员的交流,要充分发挥开发人员的主观能动性和质量意识,才能不断突破管理缺陷带来的质量问题。
         3.2 质量管理的完善
         质量的提高更需要一套强有力的管理机构,实施一套有效的管理程序来不断地消灭产品的质量缺陷,质量的提高必然需要人的参与,更需要有效组织下的人的参与。
         质量管理要在质量管理部门的有效组织下有序进行,质量部门主导的质量工作应渗透到企业各个部门的开发工作之中,质量管理不是产品生产完成后的检验工作,也不是最后判断合理与否的橡皮图章,而是渗透到每个员工血液中的、融入每个开发环节中无形的而又真正存在的东西,不应仅仅地把它看成是一个思想认识问题,而应该由质量管理部门拿出行之有效的具体办法、现实可行的考评指标,以及最终产品检验标准,才能实现质量管理的目标。
         3.3 质量认证的实施
         质量认证是一种对企业质量管理水平的评估,ISO9000系列标准化质量体系认证是一种外部认证,通过了认证,就可以获得国际上的质量认可,是产品质量达到形式上的也是本质上的目标。
         但外部认证往往是被动的,具有一定的功利色彩,在认证过程中也会产生一定偏差,有的会因为获得认证而放松管理,有的会为了实现认证指标而加强管理,而忽视软件产品质量的本质内容,这都违背了质量认证目标。
         实际上,企业内部质量活动也是一种认证,它是一种主动的认证行为,企业要走“向质量要生存、向质量要效益”的发展之路,就要认真做好企业内部认证,实事求是地解决内部的质量问题。
         参考文献:
         [1]许育诚.软件测试与质量管理[M].北京:电子工业出版社,2004.
         [2]李志伟.军用软件开发工程化质量管理研究[J].制造业自动化,2011(5).

软件开发企业质量管理

8. 如何开展软件的质量管理

在实际的项目质量管理中,质量管理总是围绕着质量保证(Quality?Assurance)过程和质量控制(Quality?Control)过程两方面。这两个过程相互作用,在实际应用中还可能会发生交叉。正如引言所述,关于软件的质量,很难下一个非常明确的定义。本文主要针对软件工程中的质量管理来进行讨论。
  1、做软件“大餐”的工序
  软件质量保证(Software?Quality?Assurance,以下简称SQA)的目的是验证在软件开发过程中是否遵循了合适的过程和标准。软件质量保证过程一般包含以下几项活动:
  首先是建立SQA组;其次是选择和确定SQA活动,即选择SQA组所要进行的质量保证活动,这些SQA活动将作为SQA计划的输入;然后是制定和维护SQA计划,这个计划明确了SQA活动与整个软件开发生命周期中各个阶段的关系;还有执行SQA计划、对相关人员进行培训、选择与整个软件工程环境相适应的质量保证工具;最后是不断完善质量保证过程活动中存在的不足,改进项目的质量保证过程。
  独立的SQA组是衡量软件开发活动优劣与否的尺度之一。SQA组的这一独立性,使其享有一项关键权利――“越级上报”。当SQA组发现产品质量出现危机时,它有权向项目组的上级机构直接报告这一危机。这无疑对项目组起到相当的“威慑”作用,也可以看成是促使项目组重视软件开发质量的一种激励。这一形式使许多问题在组内得以解决,提高了软件开发的质量和效率。