it软件项目质量管理课件_第1页
it软件项目质量管理课件_第2页
it软件项目质量管理课件_第3页
it软件项目质量管理课件_第4页
it软件项目质量管理课件_第5页
已阅读5页,还剩125页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2023/9/11第7章IT软件工程质量管理7.1质量管理根本概念7.2IT软件质量管理根本知识7.3软件工程质量方案7.4软件工程评审7.5软件质量体系7.6软件过程能力成熟度模型(CMM)2023/9/122023/9/13软件系统功能齐全是不是就是质量好?用户界面友好是不是就是软件的质量好?没有BUG是不是就是软件的质量好?什么是用户满意的软件工程?软件测试是不是软件质量的全部?那么,什么是软件的质量?什么是软件工程的质量?2023/9/14软件工程管理中的质量管理与软件工程的测试管理,有什么不同?工程经理与工程QA经理有什么不同?什么是软件工程的质量管理?工程经理在保证工程的质量方面,要做什么工作?什么是软件工程的质量管理?2023/9/157.1质量管理根本概念7.1.1质量、质量特性、质量管理的定义7.1.2质量管理开展过程及影响因素7.1.3全面质量管理2023/9/167.1.1质量的定义

实体是指可单独描述和研究的事物,也就是有关质量工作的对象,它的内涵十分广泛,可以是活动、过程、产品(软件、硬件、效劳)或者组织等。明确需求是指在标准、标准、图样、技术要求和其他文件中已做出规定的需要。隐含需求是指用户和社会对实体的期望以及公认的、不必明确的需求,需要对其加以分析研究、识别并加以确定的。质量:国际标准组织对质量的定义:“反映实体满足主体明确和隐含需求的能力的特性总和〞2023/9/177.1.1质量特性的定义

质量是综合的概念,它要求功能、本钱、效劳、环境、心理等诸方面都能满足用户的需要。质量是一个动态的、相对的、变化的、开展的概念,随着地域、时期、使用对象、社会环境、市场竞争的变化而被赋予不同的内容和要求,而且随着社会的进步及知识创新,其内涵和要求也是不断更新、丰富的。质量特性:“是指实体所特有的性质,它反映实体满足需求的能力〞2023/9/18质量特性对于工程管理,质量特性表现在两个方面:工程过程质量工程成果质量如果未能满足其中的任何一个,都会对工程产品和效劳的局部或者全部造成缺陷,给工程干系人带来消极的影响和损失。工程质量的“明确的需求和隐含的需求〞,一般在工程的需求说明中进行定义,工程范围管理的一个重要工作就是将质量“隐含的需求〞转变为“明确的需求〞,不能明确的需求那么作为工程的风险而存在。2023/9/197.1.1质量管理的定义

质量管理是工程管理的重要组成局部,是一个工程的性能(功能)、本钱、进度3项指标实现的重要领域。质量管理主要就是监控工程的可交付产品和工程执行的过程,以确保它们符合相关的要求和标准,同时确保不合格项能够按照正确方法或者预先规定的方式处理。质量管理:“确定质量方针、目标和职责并在质量体系中通过质量方案、质量控制、质量保证和质量改进使其实施的全部管理职能的所有活动〞2023/9/1107.1.2质量管理开展过程及影响因素〔1〕以产品为中心的质量检验和统计质量控制阶段(18世纪——1950年)。以顾客为中心的质量保证阶段(1950年——1987年)。强调持续改进的质量管理阶段(1987年——现在)。全面质量管理阶段(TQM)。检验统计质量控制质量保证质量管理全面质量管理图7.1质量管理开展阶段2023/9/1117.1.2质量管理开展过程及影响因素〔2〕目前质量管理理论和实践的中心是针对过程的质量管理,主张在生产开发过程中保证质量,而不是在传统的生产过程结束后才发现质量问题,这样比产品质量检验控制更具有先期性和主动性。根据制造业的情况,一般认为开发过程的质量直接影响可交付产品的质量,产品的质量直接与生产过程有密切的关系,过程的改进自然会得到产品质量的提高。2023/9/1127.1.2质量管理开展过程及影响因素〔3〕产品质量的形成过程:经过生产的全过程一步一步产生和形成,它是一个产生、形成、开展和实现的过程。美国质量管理专家朱兰采用一条螺旋上升的曲线来表达这一过程,称为“朱兰螺旋曲线〞,大致经过了市场研究、新产品研制、设计试制、生产制造、成品检验、产品销售以及用户效劳等13个环节。基于朱兰螺旋曲线的思想,瑞典质量管理专家桑霍姆提出“质量循环〞,表述产品质量的形成过程,如图7.2所示。它是从朱兰螺旋曲线的13个环节中选择8个主要环节来构成的,并根据图循环进行质量管理,即全面质量管理。2023/9/1137.1.2质量管理开展过程及影响因素〔4〕供应单位用户采购制定工艺产品研制市场研究服务销售检验生产图7.2产品质量循环2023/9/1147.1.2质量管理开展过程及影响因素〔5〕IT工程的产品——软件,是一种知识产品,其生产过程存在相似性,因此开发过程可以借鉴一般产品生产的质量管理根本思想。质量管理工作涉及多方面的复杂因素,影响产品质量的因素很多。从对质量的影响大小来看,质量因素可以分成偶然因素与异常因素两类。偶然因素:始终存在、不可防止,对质量的影响小。异常因素:对质量的影响比较大,应该尽快找出,并应采取相应的措施加以消除。2023/9/1157.1.2质量管理开展过程及影响因素〔6〕产品质量材料方法设备测量人员环境图7.3产品质量的主要影响因素根据来源不同,质量因素可以分成以下几个方面〔5M1E〕:材料(Material)、方法(Method)、设备(Machine)、操作人员(Man)、测量(Measurement)和环境(Environment)。产品的质量可以从这5M1E入手加以保证。2023/9/1167.1.3全面质量管理(1)全面质量管理是由美国的费根堡姆和朱兰共同提出的,简称TQM〔TotalQualityManagement〕。具体含义:运用质量管理的科学理论、技术、方法,建立起贯穿于产品质量形成全过程的质量保证体系,使企业全体职工树立质量观点,提高工作质量,经济地生产用户满意的产品。全面质量管理针对的是广义的质量,即产品质量与工作质量的总和。工作质量是指与质量有关的各项工作,即保证产品质量的各种手段,反映了与质量直接有关的各项工作对产品质量的保证程度。2023/9/1177.1.3全面质量管理(2)——三个根本观点1.系统的观点产品质量的形成和开展过程包括了许多相互联系、相互制约的环节,不管是保证和提高产品质量还是解决产品质量问题,都应该把生产企业看成一个开放的系统,运用系统科学的原理和方法,对所有环节进行全面的组织管理。2.向用户效劳的观点,用户满意是第一原那么要树立质量第一、用户第一的思想,满足广义用户(产品的使用者以及企业生产过程的下一阶段)对产品质量的要求。3.预防为主的观点,事前主动进行质量管理要求生产企业的质量管理重点应从事后检验把关转移到事前预防,从管结果转变为管因素,找出影响产品质量的各种因素,抓住主要因素,使生产经营活动处于受控状态。2023/9/1187.1.3全面质量管理(3)——特点全面质量管理的特点:全过程的质量管理——事前控制生产过程的质量,保证一切环节的质量良好全员的质量管理——重视人的因素,发挥人的主观能动性全企业的质量管理——从组织管理角度来理解作好全面质量管理,光靠技术是不够的,不但需要一定的管理组织、方法和手段,还需要重视人的作用,需要解决好机制问题,这是世界质量管理开展的趋势。2023/9/1197.1.3全面质量管理(4)——方法全面质量管理常用方法的理论根底是概率论和数理统计。常用的方法那么有排列法、因果图法、控制图法、分层法、相关图法、统计分析图法、不合格品统计法、缺陷位置调查表、频数分布统计表等。根本方法是PDCA循环法。PDCA循环表达了全面质量管理的根本思想,也是全面质量管理的根本工作步骤和程序。它把质量管理过程具体划分为方案(Plan)、执行(Do)、检查(Check)和处理(Action)4个阶段8个工作步骤,强调按此顺序不断地循环,以此来进行所有的质量管理活动。如图7.4所示。2023/9/1207.1.3全面质量管理(5)——PDCA循环图

APCD检查执行经验教训遗留问题问题原因主要原因

计划图7.4质量管理的PDCA循环图方案处理2023/9/1217.1.3全面质量管理(6)——PDCA各阶段工作方案阶段〔P〕的工作:分析质量现状,找出存在的质量问题分析产生质量问题的原因及各种影响因素找出影响质量的主要因素针对质量的主要因素制定相应措施,提出改进质量的方案执行阶段〔D〕的工作:按照即定的质量方案加以执行,具体实施方案检查阶段〔C〕的工作:检查方案实际执行情况,判断是否到达方案的预期效果处理阶段〔A〕的工作:总结经验教训,稳固取得的成绩明确尚未解决或者新发现的问题,并转入下一个PDCA循环7.1.3全面质量管理(6)——质量管理常用工具老七种工具:直方图、因果图、排列图、查表法、散布图、分层法、对决策表法新七种工具:KJ法、系统图法,矩阵图法、矩阵数据分析法、过程决策程序图法〔PDPC〕、箭头图法2023/9/1排列图:为寻找主要问题或影响质量的主要原因所使用的图。它是由两个纵坐标、一个横坐标、几个按上下顺序依次排列的长方形和一条累计百分比折线所组成的图,又称帕累托图。对排列图的观察分析可以抓住影响质量的主要因素。2023/9/12023/9/1影响质量的各项因素,按影响程度的大小〔即出现频数多少〕从左到右排列累积频率直方图描绘数据的分布上学期某门课程考试成绩如下,请分析考试情况2023/9/1成绩学生数优秀(90-100)3良好(80-89.99)15中等(70-79.9921及格(60-60.99)52不及格(60以下)7从上图我们可以大致观察出数据的分布,可以帮助我们确定使用什么样的数字特征〔均值,方差,中位数,极差等〕来描述数据2023/9/1某网络游戏统计得出的在24小时能不同玩家玩游戏的时间2023/9/1小时数人数0-143001-369003-549005-10200010-2421002023/9/1频数得分在某个范围〔区间〕内事物出现的次数2023/9/1小时数人数0-143001-369003-549005-10200010-242100绘制一个能够描述数据分布的直方图时长方形宽度=区间长度长方形面积=频数长方形高度=频数/长方形宽度2023/9/12023/9/1散点图描绘数据之间的相关性某专业男生体检指标,请分析各个指标之间的相关性2023/9/1身高体重肩宽脉搏173.2860.138.9775.3172.0960.3838.6276.7171.4659.7438.8375.8…………168.1554.5638.4474.3相关性两个变量之间的相关关系2023/9/1

2023/9/12023/9/1

年广告费投入月均销售额12.5

15.3

23.2

26.4

33.5

34.4

39.4

45.2

55.4

60.921.2

23.9

32.9

34.1

42.5

43.2

49.0

52.8

59.4

63.52023/9/1例:请分析某公司广告费投入和其销售额的相关性

高度相关!!折线图描绘数据的变化趋势公司每月利润如下,请分析公司的利润走势2023/9/1月份利润(百万)11.9522.132.242.1552.3562.472.52023/9/1公司利润每月温和增长!2023/9/1公司利润惊人增长!公司利润每月温和增长!观察及绘制折线图时都应该特别注意!!关联图亲和图系统图2023/9/12023/9/1417.2IT软件质量管理根本知识7.2.1软件质量概念7.2.2软件质量影响因素7.2.3软件度量标准7.2.4软件工程质量保证7.2.5软件质量管理2023/9/1427.2.1软件质量概念〔1〕ISO8402定义:“对用户在功能和性能方面需求的满足、对规定的标准和标准的遵循以及正规软件某些公认的应该具有的本质〞ANSI/IEEE定义:“与软件产品满足规定的和隐含的需求能力有关的特征和特性的全体〞软件质量不是绝对的,而是相对的概念,讨论软件的质量,最终将归结为定义软件的质量特性,而定义一个软件的质量,就等价于为该软件定义一系列质量特性软件质量

:2023/9/1437.2.1软件质量概念〔2〕、和M.Lipow于1976年首次提出软件质量模型——提出从3个方面来考虑软件产品的质量:软件的可使用性、软件的可维护性、软件的可移植性Boehm等人将软件质量分成假设干层次,对于最低层的质量特性再引入数量化的概念。其主要的质量特性有:可存取性、可说明性、准确性、可扩充性、完备性、简洁性、通信性、一致性、与设备无关性、效率、人类工程、易读性、可维护性、可修改性、可移植性、可靠性、可理解性、易用性等。其质量层次结构如图7.5所示。软件质量模型:2023/9/1447.2.1软件质量概念〔3〕总体效用可移植性可维护性可使用性可靠性效率人性化可测试性易理解性可修改性设备无关性自包含性准确性完备性健壮性一致性可说明性设备效率易存取性易交流性自描述性结构性简明性易读性可扩充性图7.5Boehm软件质量模型2023/9/1457.2.1软件质量概念〔4〕1977年Walters和McCall提出了新的软件质量层次模型与度量。它是ISO质量特性层次模型及其他模型的根底。McCall的模型提出了对影响软件质量的因素进行了分类,认为软件的质量要素主要有11个:可用性、正确性、可靠性、高效性、完整性、可维护性、适应性、可测试性、可移植性、可重用性、互操作性等。这11个质量特性集中在软件产品的3个方面:软件运行特性、修正特性和转移特性。如图7.6所示。2023/9/1467.2.1软件质量概念〔5〕产品修改产品升级产品运行正确性、可靠性、高效性、易用性、完整性可维护性灵活性可测试性可移植性可重用性互操作性图7.6McCall软件质量模型2023/9/1477.2.1软件质量概念〔6〕1994年ISO9000-3软件质量国际标准〔ISO的软件质量评价模型〕给出了6个软件质量特性和与其相关的21个质量子特性的明确定义第一层:质量特性——功能性、可靠性、可维护性、高效性、可使用性、可移植性第二层:质量子特性——适合性、准确性、互用性、依从性、平安性、成熟性、容错性、可恢复性、可理解性、易学习性、操作性、时间特性、资源特性、可分析性、可变更性、稳定性、可测试性、适应性、可安装性、一致性、易替换性等。第三层:度量2023/9/1487.2.2软件质量影响因素〔1〕正确性:系统满足规格说明和用户目标的程度,即在预定环境下能正确地完成预期功能的程度。健壮性:在硬件发生故障、输入的数据无效或者操作错误等意外情况下,系统能做出适当响应的程度。效率:为了完成预定的功能,系统需要的计算资源的多少。完整性(平安性):对未经授权地使用软件或者数据的企图,系统能够控制〔禁止〕的程度。可用性:系统在完成预定的、应该完成的功能时令人满意的程度。风险:按预定的本钱和进度把系统开发出来,并且为用户所满意的概率。可理解性:理解和使用该系统的程度。2023/9/1497.2.2软件质量影响因素〔2〕可维修性:诊断和改正在运行现场发现的错误所需要的工作量的大小。灵活性(适应性):修改或改进正在运行的系统需要的工作量的多少。可测试性:软件容易测试的程度。可移植性:把软件从一种硬件配置和软件系统环境转移到另一种配置和环境时,需要的工作量的多少。可重用性:在其他应用中该程序可以被再次使用的程度〔或范围〕。互操作性:把该系统和另一个系统结合起来需要的工作量的多少。2023/9/150软件质量评价准那么〔1〕McCall选择的软件质量要素评价准那么共21种,它们是:〔1〕可审查性:检查软件需求、规格说明、标准、过程、指令、代码与合同是否一致的难易程度。〔2〕准确性:计算和控制的精度,是对无误差程序的一种定量估计。最好表示成相对误差的函数。值越大表示精度越高。〔3〕通信通用性:使用标准接口、协议、标准的程序。〔4〕完全性:所需功能完全实现的程度。〔5〕简明性:程序源代码的紧凑与简洁性。〔6〕一致性:设计文档与系统实现的一致性。〔7〕数据通用性:在程序中使用标准的数据结构和类型。2023/9/151软件质量评价准那么〔2〕〔8〕容错性:系统在各种异常条件下提供继续操作的能力。〔9〕执行效率:程序运行效率。〔10〕可扩充性:能够对结构设计、数据设计和过程设计进行扩充的程度。〔11〕通用性:程序部件潜在的应用范围的广泛性,即部件可重用。〔12〕硬件独立性:软件同支持其运行的硬件系统不相关的程度。〔13〕检测性:监视程序的运行,一旦发生错误时,能明确地标识错误的程度。〔14〕模块化:程序部件的功能独立性。2023/9/152软件质量评价准那么〔3〕〔15〕可操作性:操作一个软件的难易程度。〔16〕平安性:控制或保护程序和数据不受破坏的机制,以防止程序和数据受到意外的或蓄意的存取、使用、修改、毁坏或泄密。〔17〕自文档化:源代码提供有意义文档的程度。〔18〕简单性:理解程序的难易程度。〔19〕软件系统独立性:程序与非标准的程序设计语言特征、操作系统特征以及其他环境约束无关的程度。〔20〕可追踪性:从设计表示或实际程序构件,追踪到需求的能力。〔21〕易培训性:软件支持新用户使用该系统的能力。软件质量特性指标软件质量一级特性指标软件质量二级特性指标2023/9/1分解软件质量的一级特性指标2023/9/1功能性软件所实现的功能达到它的设计规划和满足用户需求的程度可靠性软件能够正常维持其工作的能力可维护性能使软件正常运行所需要的条件易用性用户在学习、操作和理解某个软件过程中所作努力的程度有效性软件实现某种功能所需的计算机资源的有效程度可扩充性在功能改变和扩充情况下,软件能够正常运行的能力可移植性是软件从现有运行平台向另一运行平台过度所作的努力重用性整个软件或者其中一部分能作为软件包而被再利用的程度安全性软件具备的自身保护能力软件质量的二级特性指标2023/9/1软件质量的一级特性指标软件质量的二级特性指标面向用户面向技术软件质量一级特性指标与二级特性指标之间的关系2023/9/1功能性可追踪性、完备性、一致性可靠性可操作性、简单性、健壮性、可防护性可维护性一致性、简单性、模块性、结构型、清晰性、可见性2023/9/157我国的软件质量度量模型及其度量方法〔SSC,ShanghaiSoftwareCenter〕模型2023/9/1质量要素评价准则度量SSC三层质量模型软件质量要素代外表向管理的软件质量管理观点,这些要素为系统开发初期建立质量需求提供了有利的工具对应软件质量的一级特性指标软件质量要素之间,存在着互利或不利的影响2023/9/1功能性可靠性易用性有效性可维护性可移植性功能性++可靠性+-+-易用性-++有效性----可维护性+++-+可移植性-+-+要素影响关系表2023/9/1评价准那么评价准那么是质量特性分解和转换的结果,它是面向技术层面的SSC模型中选用了24个评价准那么,对应于前面介绍过的二级质量特性评价准那么的假设干组合将反映某一软件质量要素2023/9/1软件质量要素和准那么之间的关系主要有三种关系准那么是要素的根本属性准那么对要素有有利的影响准那么对要素有不利的影响2023/9/1通过要素与准那么之间的关系,可以推出要素与要素之间也有三种关系几个要素共享同一准那么:如功能性要素和可靠性要素以及可维护性要素共享完备性准那么某个要素的准那么对其它要素有有利的影响:如功能性要素的可追踪性准那么有利于可维护性要素某个要素的准那么对其它要素有不利的影响:可靠性要素的平安性准那么与有效性冲突2023/9/1度量SSC第三层是度量,每一度量由假设干度量问题〔度量元〕组成,根据对度量问题的答复和计分可以反映度量的得分,从而可以反映评价准那么与软件质量要素的得分。SSC模型中,共提供两套度量工作表面向过程的,即专门用于软件开发过程面向产品的,用来对已经开发好的软件产品中的质量进行度量2023/9/1SSC模型的应用策略按软件的开发状况,选择适当的软件质量度量工作表按软件的应用情况,选择侧重的质量要素、评价准那么注意:对于不同的软件,如系统软件、教育软件、网络软件等,质量要素、评价准那么和度量选择都应该有所不同2023/9/1SSC软件质量度量技术目的:从用户的观点出发,从整体上来度量和评价软件的质量,确保软件产品质量特性的高标准SSC软件质量评价技术主要包括两局部:2023/9/1规定软件质量需求为软件定指标,说明软件需要达到什么水平才算符合质量要求评价软件的质量水平如何评价软件产品的质量

规定软件质量需求2023/9/1选择质量的要素决定属于每个要素的准则及其权值决定度量和度量问题1选择质量要素问题:要素之间的相互影响步骤:2023/9/1确定原始的质量指标要求考虑相互影响协调各指标要求评价软件的质量水平评价软件到达的质量水平必须在每个开发阶段的最后进行,评价的依据是每个阶段所应提交的各种文档。2023/9/1各种文档度量工作表(回答问题)要素打分表(计算要素得分)数据分析结果(综合评价)软件度量评价报告准那么:完全性CP.1(1)对所有输入、输出都做了清楚而精确的定义吗? ………… CP.1(8)到目前为止,共记录了多少软件问题?准那么:一致性 CS1.〔1〕在需求中人-机界面的划分是否清楚…………准那么可追踪性 TC.1〔1〕是否在表中做了有关记录,把分配到子系统的所有需求追溯到全歼系统的需求?…………10N70NABCDEN10N度量工作表2023/9/1计算要素分数要素的分数是通过度量元、度量、准那么的分数得到的要素得分=准那么得分的加权和准那么得分=度量元得分的加权和2023/9/1分析要素分数找出与该要素相关的子系统根据子系统大小,计算子系统的权重要素在每个子系统中的加权和就是要素在系统中的分数2023/9/1

2023/9/1注:在系统中,如果某个要素得分不符合要求,就应当把该要素找出来,分析其原因。在分析原因时,应该从上到下进行,即首先在系统级进行分析,再依次在子系统和模块级分析。2023/9/1撰写评价报告软件质量评价报告是软件质量评价的最终结果,其中应该包含度量数据与数据分析,以便检查是否满足在系统需求说明书中规定的软件质量要素的需求。2023/9/12023/9/1767.3软件工程质量方案7.3.1软件质量标准7.3.2软件工程质量方案7.3.3软件工程质量保证7.3.4软件工程质量控制7.3.5软件质量管理的实施2023/9/1777.3软件工程质量方案软件工程质量方案〔或软件工程质量规划〕就是将与工程有关的质量标准标识出来,提出如何到达这些质量标准和要求的设想。工程质量保证方案的编制是为了确定与工程的相关的质量标准并决定到达标准和一种方法。它是工程方案编制过程中的主要组成局部之一,并与其他的工程方案编制过程同步。一般,工程质量保证方案的编制依据主要有:工程质量标准、工程阶段划分、工程质量范围、工程质量方案的内容等。2023/9/1787.3.1软件质量标准〔1〕编制质量保证〔QA〕方案的一个重要工作就是开发软件产品和过程的标准。产品标准定义了所有产品组件应该到达的特性;过程标准定义了软件过程应该怎么来执行。标准的重要性:标准提供了一个最好的或至少是最适宜的操作的概要描述。标准提供了一个实施QA过程的框架。标准能有助于工作的连续性,使一个人的工作可以很容易地被其他人理解和继续。2023/9/1797.3.1软件质量标准〔2〕软件质量标准的定义,有3个重要方面需要强调:

软件需求是进行质量度量的根底,与需求不符就是质量不高。指定的标准定义了一组指导软件开发的准那么。如果不遵循这些准那么,就极有可能导致软件质量的不高。软件需求中通常有一组“隐含需求〞是很少被提及的,如对易维护的要求,如果软件符合了明确需求却没有满足隐含需求,软件的质量仍然值得疑心。2023/9/1807.3.1软件质量标准〔3〕表7.1产品及过程标准产品标准过程标准设计复审格式设计复审行为文档命名标准文档应该服从CM程序标头格式版本发行过程编程标准项目计划同意过程项目计划格式变化控制过程变化请求表测试记录过程

2023/9/1817.3.2软件工程质量方案〔1〕编制工程质量方案的主要依据:质量方针。质量方针是由高层管理者对工程的整个质量目标和方向制定的一个指导性的文件。但是,在工程实施过程中,可以根据实际情况对质量方针进行适当的修正。范围描述。工程的范围描述说明了投资人对工程的需求以及工程的主要要求和目标,因此,范围描述是质量方案的重要依据。产品描述。产品描述包含了更多的技术细节和性能标准,是制定质量方案必不可少的局部。标准和规那么。工程质量方案的制定必须参考相关领域的各项标准和特殊规定。其他工作的输出。在工程中,其他方面的工作成果也会影响质量方案的制定。2023/9/1827.3.2软件工程质量方案〔2〕制定质量方案时主要采取的方法和技术〔1〕效益/本钱分析法。质量方案必须考虑效益与本钱的关系。满足质量需求的主要效益是减少了重复性工作,即高产出、低本钱、高用户满意度。质量管理的根本原那么是效益与本钱之比尽可能大。基准法。主要是通过比较工程的实施与其他同类工程的实施过程,为改进工程的实施过程提供借鉴和思路,并作为一个实施的参考标准。2023/9/1837.3.2软件工程质量方案〔3〕制定质量方案时主要采取的方法和技术〔2〕流程图。流程图是一个由箭线和结点表示的假设干因素关系图,可以包括原因结果图、系统流程图、处理流程图等。因此,流程图经常用于工程质量控制过程中,其主要目的是确定以及分析问题产生的原因。试验设计。试验设计对于分析整个工程输出结果是最有影响的因素,也是十分有效的。对于软件开发,设计原型解决核心技术问题和主要需求也是可行和有效的。但是,这种方法存在费用与进度交换的问题。2023/9/1847.3.2软件工程质量方案〔4〕质量方案编制过程中得到的主要阶段成果:质量管理方案。主要描述了工程管理小组应该如何实施工程质量方针,包括对组织结构、责任、方法、步骤、资源等实施质量管理。质量方案提供了对整个工程进行质量控制、质量保证及质量改进的根底。操作说明。对于质量方案中的一些特殊条款需要附加的操作说明,包括注解、如何控制、如何度量,以及在何种情况下采取何种措施和方法等说明。检查表。各种检查表是记录工程执行情况和进行分析的工具,既可以简单,也可以复杂,但需要工程小组形成一种较标准的体系。2023/9/1857.3.3软件工程质量保证〔1〕质量保证是所有方案和实施工作到达质量方案要求的根底。ISO9000-2000对质量保证的定义是:“质量管理的一局部,致力于提供能满足质量要求的信任〞。美国工程管理协会对工程质量保证的定义是“工程质量保证是一种有目的、有方案和有系统的活动〞。质量保证是在质量体系中实施的全部有方案的、有系统的活动,提供满足工程相关标准的措施,贯穿整个工程的实施全过程。2023/9/1867.3.3软件工程质量保证〔2〕质量保证的主要依据是:质量管理方案。质量控制度量结果。质量控制的度量是为了对质量控制测试记录和度量进行比较和分析。操作说明。在实施质量保证时,主要采取的工具和方法是:质量方案编制工具和技术。应用与质量方案制定过程的工具和方法也根本适用于质量保证过程。质量审核。也称为质量审计,这是对其他质量活动进行的结构性的审查活动,其主要目的是确定质量活动及其相关结果是否符合质量方案安排,以及这些方案安排是否有效地贯彻执行,并且是适合于到达工程目标的。2023/9/1877.3.3软件工程质量保证〔3〕通过质量审核,从而使:工程质量符合规定的要求;工程的设计、实施与组织过程符合规定的要求;质量体系有效地运行和完善,提高质量管理水平。质量审核主要包括:质量体系审核工程质量审核过程质量审核监督审核内部质量审核外部质量审核质量保证的输出主要是:质量改进2023/9/1887.3.3软件工程质量保证〔4〕?软件质量保证方案?:1.方案目的2.参考文献3.管理3.1组织3.2任务3.3责任4.文档4.1目的4.2要求的软件工程文档4.3其他文档5.标准和约定

5.1目的

5.2约定

6.评审和审计

6.1目的

6.2评审要求

6.2.1软件需求的评审

6.2.2设计评审

6.2.3软件验证和确认评审2023/9/1897.3.3软件工程质量保证〔5〕?软件质量保证方案?:6.2.4功能评审

6.2.5物理评审

6.2.6内部过程评审

6.2.7管理评审

7.测试8.问题报告和改正活动9.工具、技术和方法10.媒体控制11.供给者控制12.记录收集、维护保密13.培训14.风险管理2023/9/190检验在质量保证中的应注意的问题①用户要求的是产品所具有的功能——“真质量〞。②可以找出质量特性。但即使是全部检验,也只能代表产品的局部质量特性。③当开发阶段出现异常时,应该从质量特性方面进行检验,检查该异常是否会给后续阶段带来影响,并判断影响的程度。④如果软件产品不能满足用户要求的质量,可通过检验对该产品做出一定的评价,据此判断是否可以向用户提供该产品。2023/9/191各开发阶段中的检验①供货检验供货检验是指对委托外单位承担开发的任务、后买进或转让的构成软件产品的部件、规格说明、半成品或产品的检查。②中间检验/阶段评审中间检验〔或称阶段评审〕是在各阶段的中途或向下一阶段移交时进行的检查。2023/9/192各开发阶段中的检验〔续〕③验收检验验收检验是确认产品是否已到达可以进行“产品检验〞的质量要求的检查。④产品检验产品检验是软件产品交付使用前进行的检查。其目的是判定向用户提供的软件,作为产品是否到达了令人满意的程度。2023/9/1937.3.4软件工程质量控制〔1〕软件工程质量控制是指监督每个子工程的实施状况,以确定它们是否与相关的质量标准相符合,找出存在的偏差,分析产生偏差的原因,并根据质量管理方案提出的内容,寻找防止出现质量问题的方法,找出改进质量、组织验收和进行必要返工的解决方案。即:质量控制就是对工程实施全过程中的作业和活动进行持续不断的检查、度量、评价和调整的活动。质量控制应该贯穿于整个工程的实施全过程。2023/9/1947.3.4软件工程质量控制〔2〕实施工程质量控制的主要依据:工程的阶段工作成果。包括工程的实施结果和产品结果。工程质量管理方案。操作描述。检查表。2023/9/1957.3.4软件工程质量控制〔3〕进行工程质量控制时采取的方法和技术:检查。包括度量、考察、测试、比照等。控制图。监控工程的进度和费用变化、范围变化的幅度和频率、工程的其他管理结果等。统计样本。对工程实际执行情况的统计。流程图。包括原因结果图、系统流程图、处理流程图等。因此,流程图经常用于工程质量控制过程中,其主要目的是确定以及分析问题产生的原因。趋势分析。应用数学方法根据历史数据预测工程将来的开展趋势。可以用于监控工程的技术参数,例如,一般规模的软件存在多少个错误以及多少识别和修改,多少错误仍然未被发现等;也可以用于对费用和进度参数的预测。2023/9/1967.3.4软件工程质量控制〔4〕工程质量控制过程中,产生的工作成果:工程质量改进的措施。可接受的决定。每个工程的工作都有可能被接受或拒绝,不被接受的工作需要重新进行。返工。确定需要返工工作的方案,以确定最小的本钱和最少的返工工作量。检查表。进行工程质量检查时,需要随时完成对工程质量的纪录,完成相应的各种检查表。过程调整。包括了对质量控制度量结果的纠正以及采取预防工作等。2023/9/1977.3.5软件质量管理的实施定义过程开发产品评估产品质量改正过程过程标准化NY合格?图7.10软件质量管理贯穿产品生产的全过程2023/9/1987.3.5软件质量管理的实施为了控制工程全过在程中的质量,遵循以下一些根本原那么:控制工程所有过程的质量。过程控制的出发点是预防不合格。质量管理的中心任务是建立并实施文档化管理的质量体系。持续的质量改进。有效的质量体系应满足顾客和组织内部双方的需要和利益。定期评价质量体系。搞好质量管理的关键在于领导。2023/9/1997.4软件工程评审7.4.1软件工程评审的根本概念7.4.2软件工程评审阶段7.4.3软件工程评审的作用2023/9/11007.4.1软件工程评审的根本概念〔1〕评审是一种质量保证的机制:评审是借助一组人员来检查软件系统或相关文档并发现错误的一个过程。评审的结果都要记录下来并交给那些负责纠正软件错误的人员。评审不仅仅针对软件代码进行,各种文档〔如测试方案、配置管理程序、过程标准和用户手册等〕都应该进行评审。指出开发和管理人员或者软件产品所需改进的局部。确定软件产品中不需要或者不希望改进的局部。通过质量复审,得到更加一致的、更可预测的技术工作的质量,从而使得技术工作更加容易管理。2023/9/11017.4.1软件工程评审的根本概念〔2〕软件工程有以下几种类型的评审:设计或者程序检查。目的是发现设计或者代码中的详细错误,并且检查设计和代码是否遵循了标准。管理评审。目的是为软件工程的整个进度管理过程提供信息,它既是过程评审也是产品评审,主要关心工程的本钱、方案和进度。管理评审是重要的工程检查点,在这些检查点上,经常做一些关于工程将来开发方案或者产品生存能力的决策。质量评审。个人或者小组的工作由评审小组进行评审。这个专门的评审小组由工程组成员和技术管理人员组成。这种类型的评审和设计与代码检查不同,因为系统不可能被详细地描述。这个评审的目的是对产品组件或文档进行技术分析,从而发现需求、设计、编码和文档之间的错误或者不匹配之处,以及是否遵循了质量标准或质量方案中的其他质量属性等更广泛的质量问题。2023/9/11027.4.2软件工程评审阶段〔1〕选择评审小组安排地点时间分发文档评审通知和完成

评审表格图7.11评审过程2023/9/11037.4.2软件工程评审阶段〔2〕评审过程的第一个阶段:选择评审成员评审过程的第二个阶段:分发要评审的对象及其相关的文档完成评审,通知工程开发人员完成相应的评审表格一般,评审的评议划分为:不采取行动:不正常情况不是关键的修理:评审过程发现的错误是必须改进的重新考虑总体设计:设计与系统的其他局部冲突评审过程中做出的所有评议都应该与其他评审小组一起考虑,因为评议本身可能已过时或错误。2023/9/1104软件工程评审过程评审准备:主要是指评审负责人确定评审内容并向评审参与者发送评审内容及有关评审资料,评审参与者审阅评审内容及有关评审资料的过程。评审过程定期评审阶段评审〔里程碑评审〕事件评审评审报告2023/9/1105评审准备要素评审准备要素包括:评审目的;评审内容、文档或产品的名称;评审方式;评审依据的标准和标准;评审议程;评审负责人;评审进入条件和完成标志;评审参加人员的姓名、角色和责任;评审地点;评审时间安排;评审争议的解决方式;评审报告分发的对象〔包括人员、角色和职责〕等。2023/9/1106评审过程——定期评审定期评审主要是根据工程方案和跟踪采集的数据定期对工程执行的状态进行评审,跟踪工程的实际结果和执行情况,检查任务规模是否合理,工程进度是否得以保证,资源调配是否合理,责任是否落实等。2023/9/1107评审过程——阶段评审阶段评审〔里程碑评审〕主要是在工程方案中规定的阶段点〔里程碑〕,由工程管理者组织,根据工程方案、定期评审报告、技术评审报告和软件质量分析〔SQA〕评审报告对该阶段任务完成情况和产品进行评审。目的是检查当前方案执行情况,检查产品与方案的偏差,并对工程风险进行分析处理,判定是否可对产品进行基线冻结。阶段评审一般采用会议形式。2023/9/1108评审过程——事件评审事件评审主要是根据工程进行过程中相关人员提交的事件报告〔主要是指对工程进度和投入本钱产生影响的技术事件、质量保证事件、工程管理事件和工程支持事件〕,对该事件组织相关人员进行评审。目的是通过分析事件性质和影响范围,讨论事件处理方案,并判断该事件是否影响工程方案,必要时采取纠正措施,从而保证整个工程的顺利进行。2023/9/11097.4.3软件工程评审的作用〔1〕软件质量评审是软件工程管理过程中的“过滤器〞,评审被用于软件开发过程中的多个不同的点上,起到发现错误〔进而引发纠错活动〕的作用。评审起到的作用是“净化〞分析、设计和编码过程中所产生的软件工作产品。软件评审并不是在软件开发完毕后再进行的,而是在软件开发的各个阶段都要进行评审。2023/9/11107.4.3软件工程评审的作用〔2〕原始要求正确的规格说明错误的规格说明需求分析正确的设计错误的设计对错误说明的设计正确的编码错误的编码对错误说明的编码对错误设计的编码正确的功能可改正的错误潜伏的错误不可改正的错误不完善的产品设计编码测试图7.12错误“积累”及“放大”效应不符合需求的产品可行的产品2023/9/11117.4.3软件工程评审的作用〔3〕表7.2需求阶段错误对后期的影响阶

错误扩张倍数

需求分析阶段

1设计阶段(概要、详细)3~6倍

编码阶段

10倍

集成测试阶段

15~40倍

系统测试阶段

30~70倍

运行

40~100倍

2023/9/11127.5软件质量体系7.5.1ISO9000质量体系简介7.5.2ISO9000质量体系的原那么7.5.3贯彻质量体系的意义2023/9/1113质量体系的定义ISO8402-94对质量体系的定义是“为了实施质量管理的组织结构、职责、程序、过程和资源〞的一种特定体系。质量体系的要素可以分为两大类:一是质量体系的结构要素;二是质量体系的选择要素。结构要素是构成组织质量体系的根本要素。由职责和权限、组织结构、资源和人员、工作程序、技术状态管理等组成;选择要素是质量体系涉及产品生命周期的全部阶段,从最初需求识别到最终满足需要的所有过程的质量管理活动。主要包括:需求识别质量、标准和设计质量、采购质量、过程质量、产品检验、测试、纠正措施等方面的内容。2023/9/11147.5.1ISO9000质量体系简介〔1〕ISO9000标准系列,它由5个局部组成:(1)质量术语标准;(2)质量保证标准;(3)质量管理标准;(4)质量管理和质量保证标准的选用和实施指南;(5)支持性技术标准。如图7.13所示。2023/9/11157.5.1ISO9000质量体系简介〔2〕质量术语标准支持性标准质量保证标准ISO9001设计、开发、生产和服务ISO9002生产、安装和服务ISO9003最终检验和试验标准选用与实施指南ISO9000-1选择和使用指南ISO9000-2是ISO9001-ISO9003实施通用指南ISO9000-3计算机软件中的实施指南ISO9000-4可信性大纲指南质量管理标准ISO9004-1指南ISO9004-2服务指南ISO9004-3流程性材料ISO9004-4质量改进图7.13ISO9000标准系列框架2023/9/11167.5.2ISO9000质量体系的原那么质量管理八大原那么:(1)以客户为中心。(2)统一的宗旨、明确方向和建设良好的内部环境。(3)全员参与。(4)将相关的资源和活动作为过程来进行管理。(5)系统管理。(6)持续改正。(7)以事实为决策依据。(8)互利的供求关系。2023/9/1117

贯彻质量体系的意义意义有以下4个方面

:提高IT公司管理水平,增强公司抗风险能力。提高软件产品质量,增强企业市场竞争能力。树立公司的良好形象,稳固和不断扩大市场分额。与国际接轨,有利于国际市场的开拓。2023/9/11187.6软件过程能力成熟度模型(CMM)7.6.1软件过程能力成熟度模型概述7.6.2ISO9000与CMM2023/9/1119

软件过程能力成熟度模型概述表7.3CMM模型过程能力等级特点关键过程领域Ⅰ级—初始级软件开发过程是特定的,只有很少的工作过程是经过严格定义的,软件过程经常被改变,软件质量不稳定,进度、费用等难以预测Ⅱ级—可重复级建立了基本的项目管理过程,可进行软件开发以及跟踪成本、进度和性能等方面所必须的过程管理。能提供可重复以前成功项目管理的经验和环境,软件需求、软件开发过程及其相应的技术状态是受控的需求管理软件项目软件项目跟踪和监督软件分包合同管理软件质量保证软件配置管理2023/9/1120

软件过程能力成熟度模型概述表7.3CMM模型(续):过程能力等级特点关键过程领域Ⅲ级—已确定级软件开发活动的过程在管理活动、技术活动和支持活动等方面都已文档化、规范化。所有项目或产品的开发和维护都在这个规范化的体系基础上进行定制。软件项目的成本、进度、质量以及过程是受控的,软件质量具有可追溯性组织过程焦点组织过程定义培训大纲综合软件管理软件产品工程组织协调同行专家评审Ⅳ级—已管理级运用度量方法和数据,可以对软件产品和开发过程实施定量的分

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论