您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 第12章__软件项目质量管理
第1/53页软件质量概述1软件质量度量2软件质量管理3软件质量体系4第12章软件项目质量管理5第2页学习目标理解质量、项目质量管理的概念了解软件质量度量的概念和过程掌握软件质量的标准与质量计划的内容掌握软件质量的控制过程与活动熟悉软件质量体系第11章软件项目风险管理第3页HotTip质量是指一组固有特性满足要求的程度,指产品或服务满足规定或潜在需要的特征和特性的总和。软件质量体现在开发过程的质量和它所拥有的特征上,是各种特性的复杂组合。12.1软件质量概述第4页HotTip一.质量的基本概念质量是反映实体(产品、过程或活动等)满足明确和隐含的需要能力和特性总和。所谓“实体”是指承载质量属性的具体事物。反映质量的实体包括产品、过程(服务)和活动(工作)3种质量本身的含义是指“实体”能够满足用户需求的能力和特性的总和。“明确的需求”一般是在具体产品交易合同中标明的,“隐含的需求”一般是需要通过市场或用户调查获得的。对于不同“实体”,质量的实质内容不同,即“实体”满足用户明确和隐含的需求在实质内容上也不同。12.1软件质量概述第5页HotTip质量特性是指产品或服务满足人们明确或隐含需求的能力、内在质量特性:主要是指产品的性能、特性、强度、精度等方面的质量特性。外在质量特性:主要是指产品外形、包装、装潢、色泽、味道等方面的特性。经济质量特性:主要是指产品的寿命、成本、价格、运营维护费用等方面的特性。商业质量特性:主要是指产品的保质期、保修期、售后服务水平等方面的特性。环保质量特性:主要是指产品或服务对于环境保护的贡献或对于环境造成的污染等方面的特性。12.1软件质量概述第6页HotTip二.软件质量1.软件质量定义与软件产品满足规定的和隐含的需要的能力有关的特征或特性的组合。软件质量的特性是多方面的,但必须包括:与明确确定的功能和性能需求的一致性,能满足给定需要的特性之全体。与明确成文的开发标准的一致性。与所有专业开发的软件所期望的隐含的特性的一致性。顾客或用户认为能满足其综合期望的程度,软件的组合特性,它确定软件在使用中将满足顾客预期要求的程度。12.1软件质量概述第7页HotTip2.软件质量的要素正确性:系统满足规格说明和用户的程度,即在预定环境下能正确地完成预期功能的程度。健壮性:在硬件发生故障、输入的数据无效或操作等意外环境下,系统能做出适当响应的程度。效率:为了完成预定的功能,系统需要的计算资源的多少。完整性Integrity:对未经授权的人使用软件或数据的企图,系统能够控制的程度。可用性:系统在完成预定应该完成的功能时令人满意的概率。?风险性:按预定的成本和进度把系统开发出来,并且使用户感到满意。12.1软件质量概述第8页HotTip可理解性:理解和使用该系统的容易程度。可维修性:诊断和改正错误所需要的概率。灵活性:修改或改正在运行的系统需要的工作量的多少。可测试性:软件容易测试的程度。可移植性:可重用性:在其他应用中该程序可以被再次使用的程度。(可)互运行性interoperationality:把该系统和另一个系统结合起来工作量的多少12.1软件质量概述图12-1McCall软件质量模型9图12-1McCall软件质量模型图12-2p23910第11页HotTip三.项目质量管理的概念项目质量管理的基本概念也包括:项目质量方针的确定、项目质量目标和质量责任的制定,项目质量体系的建设,以及为实现项目质量目标所开展的项目质量计划、项目质量控制和项目质量保障等一系列的项目质量管理工作。1.使顾客满意是质量管理的目的2.质量是干出来的不是检验出来的3.质量管理的责任是全体员工的4.质量管理的关键是不断地改进和提高(本段可忽略)12.1软件质量概述3.4.2质量体系、质量手册和质量计划质量体系、质量手册和质量计划之间的关系质量体系好比一个国家的法制机构,质量手册就如同宪法,是质量体系的文档化的体现。而为每个项目制定的质量计划类似地方法规,它在符合质量手册的前提下,根据自身的要求与特殊性,通过适当的裁减修正而来。关系图ISO9000质量标准与CMM体系软件企业质量体系企业质量手册项目质量计划裁减修正文档化指导12.4软件质量体系第13/53页HotTip一.软件度量(softwaremetric=ameasureofsomepropertyofapieceofsoftwareoritsspecifications.=尺度)软件度量是对软件开发项目、过程及其产品进行数据定义、收集以及分析的持续性定量化过程,目的在于对此加以理解、预测、评估、控制和改善。度量取向是软件开发诸多事项的横断面p240=多样性=表12-1,包括顾客满意度度量、质量度量、项目度量、以及品牌资产度量、知识产权价值度量等。度量取向要依靠事实、数据、原理、法则;其方法是测试、审核、调查;其工具是统计、图表、数字、模型;其(理想)标准是量化的指标。12.2软件(质量)的度量第14页HotTip表12-1软件开发主体及其度量内容12.2软件质量的度量角色度量内容经营者开发组织(1)顾客满意度;(2)收益;(3)风险;(4)绩效;(5)发布的缺陷的级别;(6)产品开发周期;(7)日程与作业量估算精度;(8)复用有效性;(9)计划与实际的成本管理者项目组(1)不同阶段的成本;(2)不同开发小组成员的生产率;(3)产品规模;(4)工作量分配;(5)需求状况;(6)测试用例合格率;(7)主要里程碑之间的估算期间与实际期间;(8)估算与实际的员工水平;(9)结合测试和系统测试检出的缺陷数目;(10)审查发现的缺陷数目;(11)缺陷状况;(12)需求稳定性;(13)计划和完成的任务数目作业者软件开发人员(1)工作量分配;(2)估算与实际的任务期间与工作量;(3)单体测试覆盖代码;(4)单体测试检出缺陷数目;(5)代码和设计的复杂性第15页HotTip软件度量的效用有如下几个方面:理解:获取对项目、产品、过程和资源等要素的理解,选择和确定进行评估、预测、控制和改进的基线。预测:通过理解项目、产品、过程、资源等各要素之间的关系建立模型,由已知推算未知,预测未来发展的趋势,以合理地配置资源。评估:对软件开发的项目、产品和过程的实际状况进行评估,使软件开发的标准和结果都得到切实的评价,确认各要素对软件开发的影响程度。控制:分析软件开发的实绩和计划之间的偏差,发现问题点之所在,并根据调整后的计划实施控制。改善:根据量化信息和问题之所在,探讨提升软件项目、产品和过程的有效方式,实现高质量、高效率的软件开发。12.2软件质量的度量第16页HotTip二.软件度量的分类12.2软件质量的度量度量维度侧重点具体内容项目度量过程理解和控制当前项目的情况和状态;项目度量具有战术性意义,针对具体的项目进行。规模、成本、工作量、进度、生产力、风险、顾客满意度等产品度量侧重理解和控制当前产品的质量状况,用于对产品质量的预测和控制。以质量度量为中心,包括功能性、可靠性、易用性、效率性、可维护性、可移植性等过程度量理解和控制当前情况和状态,还包含了对过程的改善和未来过程的能力预测;过程度量具有战略性意义,在整个组织范围内进行。如成熟度、管理、生命周期、生产率、缺陷植入率等IEEE982NineClassesofMeasuresProductMeasures1.errors,faults,failures2.mean-time-to-failure3.realibilitygrowthandprojection4.remainingproductsfaults5.completenessandconsistency6.complexityProcessMeasures1.managementcontrol2.coverage3.risk,benefit,costevaluationIEEE982第18页HotTip三.软件度量过程开发一个度量过程并使其成为企业组织中标准软件过程的一部分;通过定制与整合各种过程资产来对项目及相关(手续=procedure=程序/步骤)拟定过程计划;执行拟定的计划和相关手续来对项目进行过程的实施;当项目进一步成熟且度量需求发生改变时,对相关计划及手续进行改进以改善该过程。12.2软件质量的度量第19页HotTip1.过程计划的制定确认范围:该活动的根据是要明确度量需求的大小,以限定一个适合于企业本身需求的度量过程。因为在整个度量过程中是需要花费人力、物力等有限资源的,不切实际的大而全或不足以反映实际结果的需求都会影响度量过程的可靠性以及企业的发展能力。定义程序步骤:在确认了范围后,就需要定义操作及度量过程的步骤,在构造的同时应该成文立案。主要工作包括定义完整、一致、可操作的度量;定义数据采集方法以及如何进行数据记录与保存;定义可以对度量数据进行分析的相关技术,以使用户能根据度量数据得到这些数据背后的结果。12.2软件质量的度量第20页2.过程的实施数据的采集:该活动根据已定义的度量操作进行数据的采集,记录及存储。此外,数据还应经过适当的校验以确认有效性。在进行该项活动时应具有一定的针对性,对于不同的项目或活动所需要的实际数据量是有差别的,而且对活动状态的跟踪也是非常重要的。数据的分析:该项活动包括分析数据及准备报告,并提交报告,当然进行评审以确保报告足够的确实性是有必要的。这些程序步骤可能会需要更新,因为报告可能没有为使用者提供有益的帮助或使用者对报告中的内容不理解,在这两种情况下,都应回馈并更新度量过程以再进行数据分析。12.2软件质量的度量第21页3.过程的改善确认目标对当前能力的理解及评价设计度量过程过程原型过程文档过程实施程序扩展/修改完善12.2软件(质量)的度量第22/53页质量管理是在质量方面指挥和控制组织的协调的活动,指对确定和达到质量所必须的全总职能和活动的管理,包括制定质量方针和质量目标以及质量策划,通过质量计划的编制、质量控制、质量保证和质量提高等活动提高质量的活动。•软件项目的质量计划软件项目质量计划就是要将与项目有关的质量标准标识出来,提出如何达到这些质量标准和要求的设想。项目质量保证计划的编写就是为了确定与项目相关的质量标准并决定达到标准的一种有效方法。12.3软件质量管理第23页1.软件质量标准技术标准包含两个方面:一是作为软件开发企业的软件行业技术标准,包括知识体系指南、过程标准、建模标准、质量管理标准、程序语言标准、数据库标准;二是软件开发服务对象所在的行业技术标准,例如,安全保密标准、技术性能标准。业务标准指的是软件开发服务对象所在的组织或行业制定的业务流程标准和业务数据标准等。12.3软件质量管理第24页软件开发常用技术标准包括:知识体系:软件工程知识体系指南SWEBOK2004(IEEE)、项目管理知识体系指南PMBOK2000(最新的是PMBOK2004)、组织管理标准等等;过程标准:RUP、软件工程规范国家标准;CMMI、PSP&TSP=PersonalSoftwareProcess&TeamSoftwareProcess(SEI)建模标准:UML、软件工程规范国家标准;质量管理标准:ISO9001:2000、TQC=TotalQualityControl、6σ;程序语言标准:Java、C++、PowerBuilder编程规范;数据库标准:SQL、Oracle数据库后台规范。12.3软件质量管理第25页2.质量计划的要求确定应达到的质量目标和所有特性的要求。确定质量活动和质量控制程序。确定项目不同阶段中的职责、权限、交流方式以及资源分配。确定采用控制的手段、合适的验证手段和方法。确定和准备质量记录。12.3软件质量管理第26页3.质量计划的编写在编制项目质量计划时,主要的依据如下:质量方针。质量方针是由高层管理者对项目的整个质量目标和方向制定的一个指导性的文件。但在项目实施的过程中,可以根
本文标题:第12章__软件项目质量管理
链接地址:https://www.777doc.com/doc-781479 .html