《软件项目质量计划..ppt》由会员分享,可在线阅读,更多相关《软件项目质量计划..ppt(80页珍藏版)》请在三一办公上搜索。
1、第5章 软件项目质量计划,5.1 质量概述,质量的概念,质量(广义质量概念)反映实体满足明确(或隐含)需要能力的特性的总和。质量(符合性质量概念)符合标准就是合格的质量,符合程度反映了产品的一致性标准有合理与不合理之分,不合理的标准即使百分之百的满足也不能认为质量就好标准往往不能将客户的各种需求和期望都规定出来,特别是隐含的需求与期望软件项目开发中需求管理的例子,质量的概念,质量(适用性质量概念)产品在使用时能够成功地满足用户需求的程度从使用要求和满足程度两方面去定义质量符合顾客在其合理价格下对产品的要求新项目管理的核心之一是项目管理必须以用户为中心,它强调了用户的满意度。质量是满足要求的程度
2、,包括符合规定的要求和满足顾客的需求。质量好的一个重要方面是让用户满意,质量管理的目标是满足项目干系人的需求。,质量的概念,一个项目的主要内容是成本、进度、质量。良好的项目管理就是综合三方面的因素,平衡三方面的目标,最终依照目标完成任务。项目的这三个方面是相互制约和影响的,有时对这三方面的平衡策略甚至成为一个企业级的要求,决定了企业的行为。质量目标其实立足于企业的战略目标。质量管理是项目管理的最高统一(三大目标的统一)。,质量的概念,等级与质量对具有相同功能而技术特征却不尽相同的实体进行分类低等级和低质量并不相同,低等级意味着功能不强,而低质量则意味着功能的质量不好。两者并无逻辑关系项目组在项
3、目质量与等级之间进行平衡,质量标准、质量策略和质量责任,1)质量标准是企业、国家或者国际制定的对某个方面的规范,与质量政策相比,更侧重质量的细节特征,属于微观的范畴。2)质量策略是某个组织针对自身要求制定的一种质量指导方针,更侧重于指导思想,属于宏观的范畴。3)质量责任是整个组织都对项目质量负有责任,但是如果没有明确和细化责任,就会形成人人有责,人人不负责的局面。所以,质量责任包括管理层的责任、最终责任、首要责任等。,软件质量,软件质量的定义:与软件产品满足规定的和隐含的需求能力有关的特征或特性的全体。软件质量反映了以下三方面的问题:1)软件需求是度量软件质量的基础,不满足需求的软件就不具备质
4、量。2)不遵循各种标准中定义的开发规则,软件质量就得不到保证。3)只满足明确定义的需求,而没有满足应有的隐含需求,软件质量也得不到保证。软件质量是软件满足软件需求规格中明确说明以及隐含的需求的程度。,软件质量框架模型,软件质量框架模型,上层是面向管理的质量特征,每个质量特征是用以描述和评价软件质量的一组属性,代表软件质量的一个方面。软件质量不仅从软件外部表现出来的特征来决定,而且必须从其内部所具有的特征来确定。只有质量要素才值得开发人员下功夫去改善。1)从技术角度讲,对软件整体质量影响最大的那些质量属性才是质量要素。2)从商业角度讲,客户最关心的、能成为卖点的质量属性才是质量要素。,软件质量框
5、架模型,第二层的质量子特征是上层质量特征的细化,一个特定的子特征可以对应若干个质量特征。软件质量子特征是管理人员和技术人员关于软件质量问题的通信渠道。最下面一层是软件质量度量因子(包括各种参数),用来度量质量特征。定量化的度量因子可以直接测量或统计得到,为最终得到软件质量子特征值提供依据。,软件质量的重要性,如今社会越来越多的系统是依赖于软件的,软件的不正确运行可能导致灾难性的后果,例如经济损失以至于人员伤亡。低质量的软件像定时炸弹一样,随时可能引起危害的。而且低质量的产品,要增加后期的成本。即使是小的缺陷也可以引起难以预料的后果。质量是企业的生命也是信誉,如果没有质量,企业就无法生存了。,5
6、.2 质量管理,质量管理,质量管理是指导和控制组织的与质量有关的互相协调的活动。质量管理通常包括质量方针和质量目标的建立、质量策划、质量控制、质量保证和质量改进等,质量管理是以质量管理体系为载体,通过建立质量方针和质量目标,并为实施规定的质量目标进行质量策划,实施质量控制和质量保证,开展质量改进等活动予以实现的。质量管理涉及组织的各个方面,是否有效地实施质量管理关系到组织的兴衰。,质量管理,质最管理的学派和观点有很多,具有代表性有戴明理论、朱兰理论、克鲁斯比理论、田口玄一理论等。其中:戴明理论的核心是“目标不变、持续改善和知识积累”,预防胜于检验。朱兰理论的核心思想是适用性,适用性是通过遵守技
7、术规范,使项目符合或者超过项目相关人及客户的期望。克鲁斯比理论的核心思想是质量定义符合预先的要求,质量源于预防,质量的执行标准是零缺陷(zero defect),质量是用非一致成本来衡量的。田口玄一核心思想是应用统计技术进行质量管理,通过损失函数来决定产生未满足目标产品的成本。,全面质量管理,全面质量管理(TQM)是指通过全体员工的参与、改进流程、产品、服务和公司文化,达到在百分之百时间内生产百分之百的合格产品,以便满足顾客需求,TQM是一种思想观念,一套方法、手段和技巧。软件项目的质量管理指的是保证项目满足其目标要求所需要的过程,质量管理的关键是预防重于检查,事前计划好质量,而不是事后检查。
8、,质量管理,质量一般通过定义交付物标准来明确定义,这些标准包括各种特性及这些特性需要满足的要求。质量还包含对项目过程的要求,比如规定执行过程应该遵循的流程、规范和标准,并要求提供过程被有效执行的证据。因此,质量管理主要就是监控项目的交付物和执行过程,以确保它们符合相关标准,同时确保不合格项能够按照正确方法排除。对项目的顾客应对质量作出规定,包括应对顾客的态度、速度以及方法。高质量来自满足顾客需求的质量计划、质量保证、质量控制和质量改善活动,来自保证质量、捍卫质量和创造质量的卓越理念、规则、机制和方法。,质量管理过程,质量管理过程的目的是确保项目满足需要执行的过程。主要过程是包括:质量规划确定与
9、项目相关的质量标准以及如何满足这些标准。质量保证是通过定期的评估项目的整体性能以确保项目满足相关的质量标准。质量控制通过控制特定项目的状态保证完全按照质量标准完成,同时确定质量改进的方法。,质量计划,软件质量计划过程是确定项目应达到的质量标准,以及决定如何满足质量标准的计划安排和方法。合适的质量标准是质量计划的关键。只有做出精准的质量计划,才能指导项目的实施,做好质量管理。质量计划主要指依据公司的质量方针、产品描述以及质量标准和规则等制定出来实施策略,其内容全面反应用户的要求,为质量小组成员有效工作提供了指南,为项目小组成员以及项目相关人员了解在项目进行中如何实施质最保证和控制提供依据,为确保
10、项目质量得到保障提供坚实的基础。,质量的成本效益分析,满足质量要求主要的回报是更少的返工,而返工的减少意味着生产率提高、费用降低、客户满意度的提高。质量管理方面的费用则主要与项目质量管理活动相关质量管理观点是回报大于投入,价格,成本,利润,质量保证,质量保证是“为了提供信用,证明项目将会达到有关质量标准,而开展的有计划、有组织的工作活动”。它是贯穿整个项目生命周期的系统性活动,经常性地针对整个项目质量计划的执行情况,进行评估、检查与改进等工作。软件质量保证的目的是验证在软件开发过程中是否遵循了合适的过程和标准。其主要作用是保证软件透明开发的主要环节。,质量保证,质量保证的职责就是确保过程的有效
11、执行,监督项目按照指定过程进行项目活动;同时审计软件开发过程中的产品是否按照标准开发。质量保证过程是通过评价项目整体绩效,建立对质量要求的信任。质量保证是为管理人员及相关的各方提供软件项目的过程和项目本身的可视化。,质量保证,开发高质量产品是开发组的责任,质量保证人员的职责是规划和维护质量过程,以便实现项目的目标。质量保证人员要定期对项目质量计划执行情况进行评估、审核与改进等工作,在项目出现偏差的时候提醒项目管理人员,它要提供项目和产品可视化的管理报告,质量保证人员通过各种手段来保证得到高质量结果的工作,属于管理职能。,质量保证活动,正规的质量评价(质量审计)通常在项目执行的过程中进行总结性质
12、量评价(质量改进)通常在项目结束时进行自检开展质量活动,质量审计,对其他质量管理的系统评价采用结构化的方式目的是为同组织内其他项目提供经验和教训质量审计可以是预定的或随意的,并由经过培训的内部审计人员或第三方来执行,质量系统的文档结构,手册,程 序,指导书,图纸、规格、清单、检验报告、测试报告等,质量政策、质量目标,ISO 9000要求,做什么,怎么做,文档记录,质量控制,质量控制是确定项目结果与质量标准是否相符,同时确定消除不符的原因和方法,控制产品的质量,及时纠正缺陷的过程。质量控制是对阶段性的成果进行检测、验证,为质量保证提供参考依据。质量保证是保证项目能够按照计划的过程执行。软件质量控
13、制主要就是发现和消除软件产品的缺陷。质量控制一般由开发人员实施。是直接对项 目工作结果的质量进行质量控制。,质量控制,项目度量,数据度量不是目的,度量结果的应用才是目的如果只搜集数据而不做分析,那么数据搜集只是在浪费时间和精力统计数据表明,花在数据分析与应用方面的工作量至少是数据搜集工作量的三倍以上提供度量数据的个人或组织必须了解这些数据如何使用,他们提供这些数据将为组织或个人带来什么样的好处,质量控制,评审会议的类型,讨论与建议设计头脑风暴会议项目计划评审了解状态项目月度会议项目周例会沟通阶段启动会议里程碑评审会议识别并消除缺陷同行评审,同行评审,一组在要评审的软件工作产品领域方面有经验的同
14、行,确认工作产品是否正确是软件开发、维护过程的重要组成部分将注意力集中到尽可能在缺陷的引入阶段发现缺陷,不要将缺陷遗留到下一阶段同行评审无法发现所有的缺陷,但是目的是尽可能发现更多的缺陷尽早地和高效率地从软件工作产品中消除缺陷尽可能在缺陷的引入阶段就发现它们收集度量数据,为缺陷预防建立基础交流技术信息,培训参与者,质量保证和质量控制是有区别,质量控制是检验产品的质量,保证产品符合客户的需求,是产品质量检查者,即挑毛病的。质最保证是审计产品和过程的质量,保证过程被正确执行,是过程质量审计者,审计是来确认项目按照要求进行的证据。QC 人员进行质量控制,向管理层反馈质量信息;QA 人员则确保 QC
15、按照过程进行质量控制活动,按照过程将检查结果向管理层汇报。,5.3 质量计划开发,质量计划开发,现代质量管理强调:质量是计划出来的,而不是检查出来的。只有制定出切实可行的质量计划,严格按照规范流程实施,才能达到规定的质量标准。尤其软件项目更是预防胜于检验,要求预防、计划、未雨绸缪,而不是后期的补救和打补丁。质量是在开发过程中形成的,高质量的开发才能产生高质量的软件产品。当软件完成之后,你就无法再提高它的质量了,好的质量保证开始于好的设计,而且在遵守设计好的编程过程中得以延续。,质量计划开发,程序员必须在编程过程中重视每一行编码的质量,在测试、运行或者维护中所发现的每个缺陷都是不重视质量的开发人
16、员带来的。一旦一个庞大的软件被开发出来后,保证它没有缺陷是不现实的,测试也是不能保证的,那么保证软件没有错误或者几乎没有错误的最好办法就是做一些事情将错误扼杀在摇篮里,如何做好这些事情就需要做好的质量管理和质量规划过程。质量形成于产品或者服务的开发过程中,而不是事后的检查(测试)把关等。,质量成本,质量成本(Cost Of Quality,COQ)是由于产品的第一次工作不正常而衍生的附加花费。在质量概念中还有一个要素是值得注意的那就是质量的经济性。根据Coby 的质量定义,“符合需求”的代价是指第一次把事情做对所花费的成本,总是最经济的。而“不符合要求”的代价是必须进行补救使企业产生额外的支出
17、,包括时间、金钱和精力,由此产生了质量损失,成本相应增加。,质量成本,质量成本包括预防成本和缺陷成本。预防成本是为确保项目质量而进行预防工作所耗费的费用。预防成本包括:评估费用是使项目符合所提要求(第一次)检测缺陷所衍生的成本,例如,质量审计、测试、V&V 等。预防费用是使项目符合所提要求预防失败所衍生的成本,例如,用户满意确定、过程评审、改进等。缺陷成本是为确保项目质量而修复缺陷工作所耗费的费用。缺陷成本包括:内部费用是对于不能符合所提要求、尚未发行的软件(返工)所衍生的费用,例如,缺陷标记、返工、重新测试等。外部费用是对于已经发布但是不符合要求所衍生的费用,例如,技术支持、问题估计、修正、
18、索赔等。,质量成本,本着预防重于事后检查的原则,预防成本应该大于缺陷成本。有时,预防成本可以称为一致性成本,而缺陷成本称为非一致性成本。软件质量是在开发过程中形成,不是后期测试出来的,如果开发人员认为可以通过后期的测试来提高产品的质量,这是个错误的想法,一个高质量的产品是开发出来的,后期的测试不能真正提高产品的质量,只能靠前期的质量预防和质量检测。前期的质量成本应该高于后期的质量成本,所以在安排计划的时候,应该注意质量活动的时间安排和质量成本的合理安排。,质量成本,质检/过失比预防成本/缺陷成本这个值大于 2 是努力达到的程度,如果质检/过失比小于1,则后期测试阶段会发现很多错误。质量保证中的
19、过程审计、产品审计以及质量控制中的测试、对等评审等就是预防成本;而出错后的返工、缺陷跟踪以及诉讼和维护的费用等是缺陷成本。质量成本还包括项目返工的管理时间、丧失的信誉、丧失的商机和客户好感的丧失,丧失的财产等的费用,也许还有更多的其他费用。克鲁斯比的质量理论认为质最用预防成本来衡量,即一致性成本来衡量,因为质量的形成不能靠缺陷成本来拟补。,质量计划的方法,质量计划是确定哪种质量标准适合项目并决定如何达到这些标准的过程。质量计划是规划阶段的一个基本过程:每个提交结果都有质量检查的衡量标准。编制项目的质量计划,首先必须确定项目的范围、中间产品和最终产品,然后明确关于中间产品和最终产品的有关规定、标
20、准,确定可能影响产品质量的技术要点,并找出能够确保高效满足相关规定、标准的过程方法。编制质量计划通常对项目进行分析,确定需要监控的关键元素,并制定质量标准。,试验设计的方法,试验设计是一种统计学方法,确定哪些因素可能会对特定变量产生影响,是一个不错方法。它是在可选的范围内,对特定要素设计不同的组合方案,通过推演和统计,权衡结果,来寻求优化方案。例如,对成本和时间就可以设计不同的组合方案,并筛选出最优的组合。可以确定在一个项目中的哪些变量是引起项目出现问题的主要原因。,数据检查表方法,收集与显示数据收集具体过程的数据确定活动的发生频率,基准对照的方法,基准对照是一种寻找最佳实践的方法,是利用其他
21、项目的实施情况作为当前项目性能衡量的标准。它通过审查项目的提交结果、项目管理过程、项目成功或者失败的原因等来衡量本项目的绩效。,质量成本分析方法,质量成本分析也是常用的方法,质量成本是为了达到满足用户期望的交付结果的质量要求而花费的所有成本。这包括了为满足质量需求而做的所有工作和解决不合格项而付出的花费。当不合格项需要返工、需要浪费资源时,这个成本是最明显的。所以,质量计划必须进行质量成本的综合分析,以便决定质量活动。,帕雷托分析图,1897年由意大利经济学家Vilfred Pareto所提出Duran 将其发展为一般的帕雷托原则80-20原则帕雷托图中数据的重要性以下降的顺序排列按优先顺序表
22、示数据,并将注意力集中在关键数据上,一般来说,关注在前两到三个因素就可以解决绝大部分的问题,因果分析图的方法,因果分析图也称鱼刺图,对于复杂的项目,编制质量计划时可以采用因果分析图,如图所示。描述相关的各种原因和子原因如何产生潜在问题或影响,将影响质量问题的“人员、设备、参考资料、方法、环境”等各方面的原因进行细致的分解,方便地在质量计划中制定相应的预防措施。,直方图方法,数据频率分布的示意图快速理解数据之间的相对频率,散布图方法,用于描述两个变量之间的依赖关系分析变量之间的关系,并用相关系数描述对于多变量之间的关系分析,可以采用多元线性回归等计算方式,统计过程控制图,过程变更的实施是否带来预
23、期的改进。如果过程处于正常控制范围之内,就不应对其进行调整。但如果没有处于正常控制之内时,则需要对其进行调整。控制上限和控制下限一般都设定在3个六西格玛(标准差)的位置。过程随时间推移的变化显示过程的实际性能与控制极限预防高于检验确定过程是否受控结果的差异是否由随机变量或偶然事件而发生如果已失控,必须查明原因并修正,统计过程控制图,时序图方法,质量计划的方法,质量计划中还必须确定有效的质量管理体系,明确质量监理人员对项目质量负责和各级质量管理人员的权限。,六西格玛,六西格玛(Six Sigma)定义为“一种达到、维持、最大化商业成功的一个全面、灵活的系统”。实现六西格玛要求创造性地密切了解客户
24、需求,训练有素地使用事实、数据统计分析,以及认真关注管理、改进和再造业务流程。六西格玛追求完美,其目标是每百万个机会中允许不超过3.4个缺陷、错误或过失。使用六西格玛进行质量控制的项目通常遵循一个五步骤改进过程,称为DMAIC,代表定义、衡量、分析、改进和控制。,质量计划的编写,质最计划应说明项目管理小组如何具体执行它的质鼓策略。质量计划的目的是规划出哪些是需要被跟踪的质盈工作,并建立文档。此文档可以作为软件质量工作指南,帮助项目经理确保所有工作按计划完成。开发一个好的、具有针对性的质量计划可以为软件项目带来很多益处:交付一些可靠的、具有特色的、可用的和可维护的产品。项目实施得到控制,降低项目
25、延期交付和成本超出的风险。普遍提高后续软件产品的质量。,质量计划应满足的要求,应达到的质量目标和所有特性的要求。确定质量活动和质量控制程序。项目不同阶段,职责、权限、交流方式以及资源分配。确定采用的控制手段,合适的验证手段和方法。确定和准备质量记录。,六西格玛质量控制的项目的步骤,定义(Define):定义问题/机会、过程及客户需求。这一阶段使用的重要工具有项目章程、客户需求说明书、过程图及客户之声(VOC)数据。VOC数据的例子包括代表组织客户的观点和需要的抱怨、调查、意见及市场调查。衡量(Measure):定义测量,然后收集、编辑和显示数据。如本节后面要说的定义,衡量是以每个机会的缺陷来定
26、义的。分析(Analyze):仔细检查过程细节以发现改进机会。为一个六西格玛项目工作的团队通常称为六西格玛团队。这一团队调查分析数据,以确认出现质量问题的根本性可疑原因,声明潜在的问题。这一阶段使用的一个重要工具是本章前面所述的鱼骨图或石川馨图。,六西格玛质量控制的项目的步骤,改进(Inlprove):产生改进问题的方法和思路。最终解决方法由项目发起人确定,六西格玛团队制定计划,并指导和测试此方法。六西格玛团队商讨试验测试的结果,如果需要则改进方法,然后在合适的地方实施此方法。控制(Control):跟踪并核实改进之处的稳定性及解决方法的预测能力。如本章稍后描述的,控制图是控制过程中使用的一种
27、工具。,质量计划中应明确项目要达到的质量目标,1)可用度:可用度指软件运行后在任意随机时刻需要执行规定任务或完成规定功能时,软件处于可使用状态的概率。2)初期故障率:初期故障率指软件在初期故障期(一般以软件交付给用户后的三个月内为初期故障期)内单位时间的故障数。一般以每 100 小时的故障数为单位。可以用它来评价交付使用的软件质量与预测什么时候软件可靠性基本稳定。初期故障率的大小取决于软件设计水平、检查项目数、软件规模、软件调试彻底与否等因素。,质量计划中应明确项目要达到的质量目标,3)偶然故障率:指软件在偶然故障期(一般以软件交付给用户后的四个月以后为偶然故障期)内单位时间的故障数。一般以每
28、1 000 小时的故障数为单位,它反映了软件处于稳定状态下的质量。4)平均失效前时间(MTTF):指软件在失效前正常工作的平均统计时间。5)平均失效间隔时间(MTBF):指软件在相继两次失效之间正常工作的平均统计时间。,质量计划中应明确项目要达到的质量目标,6)缺陷密度(FD):指软件单位源代码中隐藏的缺陷数量。通常以每千行无注解源代码为一个单位。一般情况下,可以根据同类软件系统的早期版本估计FD的具体值。如果没有早期版本信息,也可以按照通常的统计结果来估计。“典型的统计表明,在开发阶段,平均每千行源代码有50-60个缺陷,交付后平均每千行源代码有15-18个缺陷”。7)平均失效恢复时间(MT
29、TR):指软件失效后恢复正常工作所需的平均统计时间。,质量计划的编写,在质量计划中非常重要的一个任务是提供项目执行的过程程序。编制一份清晰的质量计划是实施项目质量管理的第一步,而一个清晰的质量计划首先要明确采用的质量标准和质量目标。质量政策和质量标准是编制质量计划的约束条件。质最计划描述项目管理团队如何实施组织的质量策略过程,是项目计划的一个输入。软件项目的质量计划要根据项目的具体情况决定采取的相应的计划形式,没有统一的定律。有的质量计划只是针对质量保证的计划,有的质量计划既包括质量保证计划也包括质量控制计划。,质量计划的编写,质量计划可以包括质量保证和质量控制的活动安排。质量保证的(审计、评
30、审软件过程、活动和软件产品等)的方法、职责和时间安排等;质量控制计划可以包含在开发活动计划中,例如代码走查、单元测试、集成测试、系统测试等。质量计划中要明确质量管理组织,职责和义务。其中质量保证的人员应该有特殊的问题上报渠道,以保证问题的顺利解决。但是这个渠道,作为质量保证人员应该慎用。项目经理是项目质量管理的最终责任承担者。质量计划模板,5.4 质量体系,质量体系,在ISO 9000的术语中,对质量体系的描述是:“组织结构、责任、工序、工作过程及具体执行质量管理所需的资源”。,即质量体系是为实施质量管理所需的组织结构、程序、过程和资源,如图 所示。企业的质量体系是根据企业质量方针和实施策略建
31、立的,以保证达到企业的质量目标。,质量体系,质量体系是一个企业质量管理系统的规范,包含的内容比较全,是企业长期遵循和需要重复实施的文件,具有较强的标准性可以参照一定的标准实施,例如参照 CMM,ISO 等标准。质量计划可以参照质量体系编写,是一次性实施的,项目结束,质量计划的有效性就结束了。质量体系内容的核心是建立、执行和维护(改善)软件生产过程,以保证最终生产出的软件产品达到用户综合的质量要求。,质量体系要素,组织:包括三类组织,即过程改善组织、过程执行组织和过程质量保证组织。过程改善组织负责建立和维护整个企业基于过程的质量体系。过程执行组织具体执行质量体系中相关的过程规范和标准。过程质童保
32、证组织负贵过程执行的质量控制和基于过程生产出的产品的质量控制。过程域:过程域包括关键过程域和支持过程域。关键过程域的定义包括关键过程实施规范和程序的定义以及工作产品标准的定义。关健过程域的执行是质量保证的对象之一。支持过程域是关键过程域的补充和支持性过程实施规范。质量文件体系;质量文件体系是过程实施的文档化规范和产品标准。产品:产品包括工作产品(即过程阶段中产生出的产品)和提交产品(即向客户提交的最终产品)。所有这些产品需通过确定的过程或步骤产生,并作为质量保证的对象之一。,质量体系要素,软件过程改进,提高软件质量最好的办法是在开发过程中有效地防止工作成果产生缺陷,将高质量建立于开发过程之中。
33、即苦练内功,通称为“软件过程改进”。软件过程改进(Software Process Improvement,SPI)帮助软件企业对其软件开发过程的改进进行计划、制定措施以及实施措施。其实施对象就是软件企业的软件过程,也就是软件产品的生产过程,当然也包括软件维护之类的维护过程。,能力成熟度模型集成,能力成熟度模型集成(Capability Maturity Model Integration,CMMI)是“一种为组织的有效过程提供基本要素的过程改进方法。它可用于指导一个项目、一个部门或整个组织中的过程改进。CMMI有助于集成传统上分离的组织功能,设定过程改进目标和优先顺序,提供质量过程指导,为评
34、估现有的过程提供一个参考点”。,CMMI的能力层次,0不完整级:在这一层次,不是没有实施过程,就是只是部分实施了过程。在这一层次不存在通用的目标,也没有达到过程域的一个或多个特定目标。1已执行级:已实施的过程实现了过程城的特定目标和提供了支持,使所有需要开展的工作都能产生工作成果。尽管这一能力层次使某些内容得到改进,但是如果不能将其制度化,这些改进一段时间后就会消失。2 受管理级:在这一层次,一个过程会有合适的基础架构来支持。这一过程是根据政策来规划和执行的,并聘用了有经验的员工。这些员工有足够的资源产生控制的输出。这一层次反映出的过程纪律,能够保证现行的做法在持续的压力中仍然能够保持下去。,
35、CMMI的能力层次,3已定义级:在此成熟层次,过程被严格地进行了定义。一个项目的标准、过程描述及程序已从组织的系列标准过程中分离出来,以适应这一特殊项目。4定量管理级:在此层次,对过程使用统计及其他定量技术来加以控制。组织设立了质量和过程绩效的定量目标,用于管理过程的标准。5持续优化级:一个最优的过程是基于对过程内在偏差的一般原因的理解而得到改进的。重点是通过递增的和革新的改善,持续扩大过程绩效的范围。,5.5 软件质量改善建议,软件质量的改善,软件质量的改善是一个巨大的挑战,以前,人们将软件质量改善都归结为测试的问题,但是现在,一个讲究效率的质量过程远远不只是测试。软件质量改善是对软件质量保
36、证的一种承诺。如果急功近利,不但会做很多浪费人力和物力的无效工作,还会给客户留下不好的印象。为了更好地进行软件质量的改善。,软件质量的改善的几点建议,不但要主观认识到质量的重要性,同时还要落实到行动中。把想法落实到实际工作中是做好软件质量管理的第一原则。软件质量活动必须经过规划、必须明文规定。树立提高质量就是尊重客户的思想。在软件产业发达的今天,已经是客户的买方市场,客户永远会选择质量和服务都表现良好的产品来满足自己的需求。因此,我们应该尊重客户,把客户放在“上帝”的位置上,认真做好质量工作。,软件质量的改善的几点建议,质量活动必须尽早开始。质量小组尽可能独立存在。质量小组的人应该经过必要的培
37、训。建立规范的质量保证体系,逐步使软件开发进入良性循环状态。在没有开发规范的前提下,软件团队是不能开发出高质量软件的。因此软件团队一定要建立规范的质量保证体系,同时把规范体系逐步落实到工作中。,5.6 校务通系统案例分析,5.7 小结,小结,软件质量是软件满足用户明确说明或者隐含说明的需求的程度,用户的满意度是质量非常重要的要素。保证软件的质量非常重要,低质量的软件可以导致后期成本的增加。质量的管理过程包括质量计划、质量保证、质量控制三个过程。质量保证是验证软件是否正确,而质量控制是验证软件是否正确构造。所有的质量标准和质量活动都需要质量计划来进行规划,它说明软件项目中的质量活动任务,采用的相应方法、对策,以及出现问题时的处理方式。质量计划最好由独立的质量人员负责。,