第12章 软件项目质量管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、软件项目的质量计划
软件项目质量计划就是要将与项目有关的质量标准标识 出来,提出如何达到这些质量标准和要求的设想。项目质量 保证计划的编写就是为了确定与项目相关的质量标准并决定 达到标准的一种有效方法。
第20页
1.软件质量标准
技术标准包含两个方面:一是作为软件开发企业的软件行业
技术标准,包括知识体系指南、过程标准、建模标准、质量
第24页
在制定质量计划时,主要采取的方法和技术有:
效益/成本分析法。质量计划必须考虑效益与成本的关系。 满足质量需求的主要效益时减少了重复性工作,即高产出、 低成本、高用户满意度。 基准法。主要是通过比较项目的实施与其他同类项目的实施 过程,为改进项目的实施过程提供借鉴和思路,并作为一个 实施的参考标准。 流程图。可以包括原因结果图、系统流程图、处理流程图等。 因此,流程图经常用于项目质量控制过程中,其主要目的是 确定以及分析问题产生的原因。 试验设计。试验设计对于分析整个项目输出结果是最有影响 的因素,也是十分有效的。对于软件开发、设计原型解决核 心技术问题和主要需求也是可行和有效的。
第18页
3.过程的改善 过程的改善仅包含一个方面的活动,即优化过程。 12.2 软件质量的度量 确认目标 对当前能力的理解及评价 设计度量过程 过程原型 过程文档 过程实施 程序扩展
第19页
12.3 软件质量管理
质量管理是在质量方面指挥和控制组织的协调的活动, 指对确定和达到质量所必须的全总职能和活动的管理,包括 制定质量方针和质量目标以及质量策划,通过质量计划的编 制、质量控制、质量保证和质量提高等活动提高质量的活动。
第8页
正确性:系统满足规格说明和用户的程度,即在预定环境下 能正确地完成预期功能的程度。 健壮性:在硬件发生故障、输入的数据无效或操作等意外环 境下,系统能做出适当响应的程度。 效率:为了完成预定的功能,系统需要的计算资源的多少。 完整性:对未经授权的人使用软件或数据的企图,系统能够 控制的程度。 可用性:系统在完成预定应该完成的功能时令人满意的概率。 风险性:按预定的成本和进度把系统开发出来,并且使用户 感到满意。
第10页
三. 项目质量管理的概念
项目质量管理的基本概念也包括:项目质量方针的确定、项 目质量目标和质量责任的制定,项目质量体系的建设,以及 为实现项目质量目标所开展的项目质量计划、项目质量控制 和项目质量保障等一系列的项目质量管理工作。
1.使顾客满意是质量管理的目的 2.质量是干出来的不是检验出来的
环保质量特性:主要是指产品或服务对于环境保护的贡 献或对于环境造成的污染等方面的特性。
第6页
二. 软件质量
1.软件质量定义
与软件产品满足规定的和隐含的需要的能力有关的特征或特
性的组合 。软件质量的特性是多方面的,但必须包括:
与明确确定的功能和性能需求的一致性,能满足给定需要的
特性之全体。
第23页
3.质量计划的编写
在编制项目质量计划时,主要的依据如下:
质量方针。质量方针是由高层管理者对项目的整个质量目标 和方向制定的一个指导性的文件。但在项目实施的过程中, 可以根据实际情况对质量方针进行适当的修正。 范围描述。范围描述是质量计划的重要依据。 产品描述。产品描述包含了更多的技术细节和性能标准,是 制定质量计划必不可少的部分。 标准和规则。项目质量计划的制定必须参考相关领域的各项 标准和特殊规定。
(6)产品开发周期;(7)日程与作业量估算精度;(8)复用有效性;(9)计划与实际的成本
经营者
开发组织
(1)不同阶段的成本;(2)不同开发小组成员的生产率;(3)产品规模;(4)工作量分配;(5)需
管理者 项目组 求状况;(6)测试用例合格率;(7)主要里程碑之间的估算期间与实际期间;(8)估算与实际的 员工水平;(9)结合测试和系统测试检出的缺陷数目;(10)审查发现的缺陷数目;(11)缺陷状 况;(12)需求稳定性;(13)计划和完成的任务数目
作业者
(1)工作量分配;(2)估算与实际的任务期间与工作量;(3)单体测试覆盖代码;(4)单体测试
软件开发人员
检出缺陷数目;(5)代码和设计的复杂性
第13页
软件度量的效用有如下几个方面: 理解:获取对项目、产品、过程和资源等要素的理解,选择 和确定进行评估、预测、控制和改进的基线。 预测:通过理解项目、产品、过程、资源等各要素之间的关 系建立模型,由已知推算未知,预测未来发展的趋势,以合 理地配置资源。 评估:对软件开发的项目、产品和过程的实际状况进行评估, 使软件开发的标准和结果都得到切实的评价,确认各要素对 软件开发的影响程度。 控制:分析软件开发的实绩和计划之间的偏差,发现问题点 之所在,并根据调整后的计划实施控制。 改善:根据量化信息和问题之所在,探讨提升软件项目、产 品和过程的有效方式,实现高质量、高效率的软件开发。
第16页
1.过程计划的制定
确认范围:该活动的根据是要明确度量需求的大小,以限 定一个适合于企业本身需求的度量过程。因为在整个度量 过程中是需要花费人力、物力等有限资源的,不切实际的 大而全或不足以反映实际结果的需求都会影响度量过程的 可靠性以及企业的发展能力。
定义程序步骤:在确认了范围后,就需要定义操作及度量 过程的步骤,在构造的同时应该成文立案。主要工作包括 定义完整、一致、可操作的度量;定义数据采集方法以及 如何进行数据记录与保存;定义可以对度量数据进行分析 的相关技术,以使用户能根据度量数据得到这些数据背后 的结果。
第9页
可理解性:理解和使用该系统的容易程度。 可维修性:诊断和改正错误所需要的概率。 灵活性:修改或改正在运行的系统需要的工作量的多少。 可测试性:软件容易测试的程度。 可移植性:把程序从一种硬件配置和(或)软件环境转移到另 一种配置和环境时,需要的工作量的多少。 可重用性:在其他应用中该程序可以被再次使用的程度。 可运行性:把该系统和另一个系统结合起来工作量的多少。
度量、质量度量、项目度量、以及品牌资产度量、知识产权价
值度量等。度量取向要依靠事实、数据、原理、法则;其方法 是测试、审核、调查;其工具是统计、图表、数字、模型;其
标准是量化的指标。
第12页
软件开发主体及其度量内容
角 色
12.2 软件质量的度量 度 量 内 容
(1)顾客满意度;(2)收益;(3)风险;(4)绩效;(5)发布的缺陷的级别;
质量管理标准:ISO9001:2000、TQC、6σ;
程序语言标准:Java、C++、PB、编程规范; 数据库标准:Oracle数据库后台规范。
第22页
2.质量计划的要求
确定应达到的质量目标和所有特性的要求。 确定质量活动和质量控制程序。 确定项目不同阶段中的职责、权限、交流方式以及资源分配。 确定采用控制的手段、合适的验证手段和方法。 确定和准备质量记录。
与明确成文的开发标准的一致性。 与所有专业开发的软件所期望的隐含的特性的一致性。 顾客或用户认为能满足其综合期望的程度,软件的组合特性, 它确定软件在使用中将满足顾客预期要求的程度。
第7页
2.软件质量的要素
可理解性(我能理解它吗?) 可维修性(我能修复它吗?) 灵活性(我能改变它吗?) 可测试性(我能测试它吗?)
一、质量的基本概念
国际标准化组织对于质量的定义:质量是反映实体(产品、 过程或活动等)满足明确和隐含的需要能力和特性总和。质 量包括如下含义: 所谓“实体”是指承载质量属性的具体事物。反映质 量的实体包括产品、过程(服务)和活动(工作)3种。
质量本身的含义是指“实体”能够满足用户需求的能 力和特性的总和。“明确的需求”一般是在具体产品 交易合同中标明的,“隐含的需求”一般是需要通过 市场或用户调查获得的。 对于不同“实体”,质量的实质内容不同,即“实体” 满足用户明确和隐含的需求在实质内容上也不同。
第5页
质量特性是指产品或服务满足人们明确或隐含需求的能力、 属性和特征的总和。 内在质量特性:主要是指产品的性能、特性、强度、精 度等方面的质量特性。 外在质量特性:主要是指产品外形、包装、装潢、色泽、 味道等方面的特性。 经济质量特性:主要是指产品的寿命、成本、价格、运 营维护费用等方面的特性。 商业质量特性:主要是指产品的保质期、保修期、售后 服务水平等方面的特性。
第14页
二. 软件度量的分类
度量维度 侧 重 点 具 体 内 容
项目度量
理解和控制当前项目的情况和状态;项目度量具有 战术性意义,针对具体的项目进行。
规模、成本、工作量、进度、生产力、 风险、顾客满意度等
产品度量
侧重理解和控制当前产品的质量状况,用于对产品 质量的预测和控制。
以质量度量为中心,包括功能性、可 靠性、易用性、效率性、可维护性、 可移植性等
第17页
2.过程的实施
数据的采集:该活动根据已定义的度量操作进行数据的采集, 记录及存储。此外,数据还应经过适当的校验以确认有效性。 在进行该项活动时应具有一定的针对性,对于不同的项目或 活动所需要的实际数据量是有差别的,而且对活动状态的跟 踪也是非常重要的。 数据的分析:该项活动包括分析数据及准备报告,并提交报 告,当然进行评审以确保报告足够的确实性是有必要的。这 些程序步骤可能会需要更新,因为报告可能没有为使用者提 供有益的帮助或使用者对报告中的内容不理解,在这两种情 况下,都应回馈并更新度量过程以再进行数据分析。
管理标准、程序语言标准、数据库标准;二是软件开发服务 对象所在的行业技术标准,例如,安全保密标准、技术性能 标准。
业务标准指的是软件开发服务对象所在的组织或行业制定的
业务流程标准和业务数据标准等。
第21页
软件开发常用技术标准包括:
知识体系:软件工程知识体系指南SWEBOK2004、项目管 理知识体系指南PMBOK2000(最新的是PMBOK2004)、组 织管理标准等等; 过程标准:CMMI、PSP、TSP、RUP、软件工程规范国家 标准;(AP、XP、ASD等开发过程思想好像还不能称其为 标准) 建模标准:UML、软件工程规范国家标准;
第12章 软件项目质量管理
1 2 3 4
软件质量概述 软件质量度量 软件质量管理 软件质量体系
5
第2页
本章学习目标
第11章 软件项目风险管理
理解质量、项目质量管理的概念
了解软件质量度量的概念和过程
掌握软件质量的标准与质量计划的内容 掌握软件质量的控制过程与活动
熟悉软件质量体系
第3页
12.1 软件质量概述
产 品 修 改
产 品 转 移
可移植性(我能在另一台机器上使用它吗?)
可重用性(我能利用它的某些部分吗?) 互运行性(我能改变它吗?) 可测试性(我能把它和另一个系统结合吗?)
产品运行ቤተ መጻሕፍቲ ባይዱ
正确性(它按我的需要工作吗?) 健壮性(对意外环境它能适当地相应吗?) 效率(完成预定功能时它需要的计算机资源多吗?) 完整性(它是安全的吗?) 可用性(我能使用它吗?) 风险性(能按预定计划完成它吗?)
理解和控制当前情况和状态,还包含了对过程的改 过程度量 善和未来过程的能力预测;过程度量具有战略性意
如成熟度、管理、生命周期、生产率、 缺陷植入率等
义,在整个组织范围内进行。
第15页
三. 软件度量过程 软件度量过程的主要构架如下:
开发一个度量过程并使其成为企业组织中标准软件过程的一 部分; 通过定制与整合各种过程资产来对项目及相关手续拟定过程 计划; 执行拟定的计划和相关手续来对项目进行过程的实施; 当项目进一步成熟且度量需求发生改变时,对相关计划及手 续进行改进以改善该过程。
3.质量管理的责任是全体员工的
4.质量管理的关键是不断地改进和提高
第11页
12.2 软件质量的度量
一. 软件质量度量
软件度量是对软件开发项目、过程及其产品进行数据定义、 收集以及分析的持续性定量化过程,目的在于对此加以理解、 预测、评估、控制和改善。 度量取向是软件开发诸多事项的横断面,包括顾客满意度
质量是指一组固有特性满足要求的程度,指产品或服务满
足规定或潜在需要的特征和特性的总和。 既包括有形产品也 包括无形产品;既包括产品内在的特性,也包括产品外在的特 性。随着应用的不同而不同,随着用户提出的质量要求不同而 不同。 软件质量体现在开发过程的质量和它所拥有的特征上,是 各种特性的复杂组合。
第4页