您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > CH2软件质量保证概述
CH2软件质量保证概述课程目的能够了解基本的质量知识;能够理解一些质量名词,如:质量控制、质量保证等;能够理解质量保证的意义和重要性;能够了解软件质量保证的基本活动;能够编写质量保证计划书什么是质量质量的多种定义优越的程度-牛津词典零缺陷-Crosby对目标的适应性-Juran能持续一致且可靠地以低成本适应于市场的程度-Deming产品或服务的特性集使其能够满足特定和隐含需求的总和-ISO软件特性集能够行使其最终使用目的的程度-DOD软件的特殊性软件不是一个物质实体,存在依赖于环境软件需求很难明确客户需求随着开发的进展而不断变化组成软件环境的硬件和软件发展极其迅速(摩尔定律)客户对软件需求过高,如希望软件适应业务的变化软件开发与硬件制造体系的比较ProjectProduction123564从未做过的项目新开发的流程有成熟的流程模板以客户化为主的重复生产少量客户化的重复生产非客户化的重复生产效率不断提高风险不断增长软件质量的两个方面设计质量得到匹配客户需求的软件规约主观性较强,难于管理和控制制造质量生产符合规约的软件产品结构化方法、质量保障、测试传统软件工程的用武之地质量开发示意图需求分析系统和软件设计编码和实现测试操作和维护设计质量制造质量主观性强难于控制质量保障、测试结构化方法、构件质量的多种视角-客户方项目发起人软件产品在预算内及时交货软件产品的投入产出值得肯定一线经理(LineManager)软件产品符合工作人员的需求软件产品功能满足要求最终用户(工作人员)决定软件产品的长期使用和接受较少的技术要求、较少的工作改动、较轻的负担质量的多种视角-生产方业务顾问根据市场状况描述客户需求决定产品生产的充分性项目经理对项目全权负责在工期、预算和功能、质量间取得平衡程序员对自己的模块负责,忽视他人的模块质量监督(QA)员保证质量计划在项目中的实施在机构内维持质量原则质量的5个视角(1)传统视角质量=卓越性追求最佳用户视角质量=对使用目标的适应性确定正确的需求并予以满足产品视角质量=成本的优化使用追求最好的性能价格比质量的5个视角(2)制造视角质量=同规约一致的产品,0缺陷生产出准确的产品价值视角质量=售价前提下对客户需求的满足一分价钱一分货质量模型-GE模型软件质量的3个领域软件操作产品易于使用、有效工作、功能满足要求产品修正产品易于修改和维护产品安装产品易于在新环境中运行GE模型产品修正产品安装软件操作可移植性复用性互操作性正确性可靠性有效性完整性易用性可维护性灵活性可测试性质量模型-Boehm模型设备独立性自包含性准确性完备性健壮/完整性一致性可审计性设备有效性可访问性可交流性自描述性结构化性简洁性易读性扩展性可移植性可靠性有效性人机工程可测试性易理解性可修改性常规应用可维护性一般应用质量管理发展方向质量管理发展五个阶段质量管理发展方向质量管理发展五个阶段1900手工操作者专职检验员1920过程统计技术1931全面质量管理19602000以顾客为中心阶段时间质量管理历史质量就是产品、过程、系统符合标准要求的能力质量是生产出来的,不是检测出来的二次世界大战的美国DOD,过程控制质量存在于全部直接/间接相关的环节中Deming,日本的全面质量管理TQMQualityisFreeCrosby,预防为主,第一次就把事情做好是最经济的质量管理的灵魂在于持续改进PDCA质量管理发展趋势一个核心和两个基本改变核心:由对结果的检验转向对过程精细的控制改变:管理范围的改变–由针对以产品生产制造服务质量管理扩大到行政部门工作质量。关注焦点的转移–由面向以产品生存周期的服务质量管理转向顾客满意为中心质量管理。软件产业要经历三个不同时代•结构化生产时代(70年代中期至90年代中期):结构化分析;结构化设计;结构化程序设计;结构化测试;结构化审查与走查。•以过程为中心的时代(从80年代中期至2010年前后):寓质量和效率于生产过程之中;关于软件过程的主要流派(ISO9000,CMM/PSP/TSP)。软件产业要经历三个不同时代软件工业化生产时代(1995年开始):基础技术(软件过程技术,面向对象技术,基于构件的开发技术);主要问题(标准化,产业文化,政策法规);对前途的估计(我国2005年可以进入软件工业化生产时代)。软件质量有何特点?软硬件行业的分工不同,软件产品难以横向比较标准化程度低软件的故障曲线与硬件不同软件的维护方式与硬件不同软件是设计开发出来的,而不是制造出来的软件的技术与管理的客体合一度量困难软约束为主QC手段落后于软件的发展软件质量有何特点?软件质量问题的分类不同类型的软件其质量问题表现不同:大型软件与小型软件系统软件与应用软件专用软件与商用软件嵌入式软件ERP软件什么是软件质量保证?与硬件系统不同,软件不会磨损;因此在软件交付之后,其可用性不会随时间的推移而改变。软件质量保证就是一个系统性的工作以提高软件交付时的水平。---JamesDobbins什么是软件质量保证?软件质量保证是一种应用于整个软件开发过程的保护性活动,SQA包括:有效的软件工程技术(方法和工具),在整个软件过程中采用的正式技术复审,一种多层次的测试策略,对软件文档及其修改的控制,保证软件遵从软件开发标准的规程,度量和报告机制。什么是软件质量保证?为软件开发过程,及其产品和所使用的资源提供一个独立的视角。依据标准检查产品及其文档的符合性,软件开发所使用的流程的符合性。通过对需求、设计和编码进行评审,减少在测试和集成阶段修改缺陷的成本。什么是软件质量保证?是过程保证还是产品保证?是否贯穿于软件开发的全过程?是与开发活动同时实施还是事后的检验?是否仅仅是一些填写检查单的活动?什么是软件质量保证?软件质量保证是一系列系统性的活动,它提供开发出满足使用要求产品的软件过程的能力证据。为什么会有质量问题??为什么会有质量问题?ManMachineMaterialMethodEnvironmentMeasurement为什么会有质量问题?PEOPLEPROCESSTECHNOLOGY怎样提高软件质量?ISO9000CMM6sigmaPDCASPCQualitytools什么是软件质量体系?什么是质量体系?现在常称为“质量管理体系”管理体系:建立方针和目标并实现这些目标的体系。质量管理体系:在质量方面指挥和控制组织的管理体系。软件质量管理体系:应对于软件领域的质量管理体系。什么是软件质量体系?软件行业实践质量管理学的发展软件工程的提出基本QC活动的引入形成了完整的软件质量体系传统的质量管理体系也覆盖了软件研发活动什么是软件质量体系?质量管理的发展191019201930194019501960197019801990泰勒制独立检验SPC统计抽样战时标准质量改进TQM质量工程QualityisfreeISO90006σShewartDemingJuranFergenbaum田口CrosbyDOD什么是软件质量体系?软件工程实践质量焦点过程方法工具什么是软件质量体系?组织项目A项目B项目C其它活动其它活动项目X系统硬件软件TQMCMMCMM是全面质量管理中的过程管理概念在软件方面的应用。什么是软件质量体系?关于“过程”过程有技能、受过训练的,以及有积极性的人员工具和设备ABCD定义任务之间关系的规程和方法常见的软件质量体系模型简介ISO900087版SEI软件能力成熟度技术报告Baldrige198719931994CMMV1.1ISO900094版19992000ISO90002000版CMMV2.0CMMI1987软件质量管理相关标准和技术标准ISO9000族标准国际标准,ISO/TC176制订,适用于所有行业,其中9000-3针对软件开发行业SW-CMM标准行业标准,CMU-SEI制订和管理,针对软件开发行业TickIT标准行业标准,英国软件行业协会制定,针对软件开发行业ISO15504标准国际标准,试图结合ISO9000、CMM与软件工程概念BestPracticesRUP/XP/…项目管理技术项目:目标、起止时间、相关活动定义、计划、实施ISO9001ISO9000族标准一系列关于质量管理/质量保证/质量审核方面的国际标准,1983/1994/20009001/9002/9003/9004/9000-3是管理思想的精华,管理工作的指导原则,也是做事方式文档管理:写你要做的,做你所写的,记你所做的过程控制:PDCA---计划性及持续改进相关标准:QS9000等ISO9001原则•原则1:以顾客为中心组织依存于顾客。因此,组织应理解顾客当前和未来的需求,满足顾客要求并争取超越顾客期望•原则2:领导作用领导将本组织的宗旨、方向和内部环境统一起来,并创造使员工能够充分参与实现组织目标的环境ISO9001原则•原则3:全员参与各级人员是组织之本。只有他们的充分参与,才能使他们的才干为组织带来最大的收益•原则4:过程方法将相关的资源和活动作为过程进行管理,重视输入和输出,可以更高效地得到期望的结果ISO9001原则•原则5:管理的系统方法针对设定的目标,识别、理解并管理一个由相互关联的过程所组成的系统,有助于提高组织的有效性和效率•原则6:持续改进持续改进是组织的一个永恒目标ISO9001原则原则7:基于事实的决策方法对数据和信息的逻辑分析或直觉判断是有效决策的基础原则8:互利的供方关系通过互利的关系,增强组织及其供方创造价值的能力ISO9001在软件企业的实施案例原则:运用项目管理技术重视质量策划重视培训和工具支持框架:质量手册、规程文件、作业指导书开发管理、体系支持•在软件企业的实施案例•角色分工PM产品经理SA系统分析员DM开发经理其他角色QA(品质保证)、MA(市场分析)、Sales(销售)、Service(服务)...TE测试工程师SE高级软件工程师TE测试工程师ISO9001•在软件企业的实施案例•产品开发规程ISO9001•在软件企业的实施案例•定制项目开发规程ISO9001•在软件企业的实施案例体系支持规程1.管理评审规程2.质量体系文件控制规程3.内部质量体系审核规程4.纠正措施规程5.预防措施规程6.配置管理规程7.更改控制规程8.产品开发文档控制规程9.质量记录控制规程10.产品度量规程11.过程度量规程12.规则、惯例和约定控制规程13.工具和技术控制规程14.采购规程15.配套软件产品控制规程16.病毒防治规程17.产品加密规程18.培训规程ISO9001•在软件企业的实施案例ISO9001是品质保证标准,对过程管理提出最低要求质量保证体系根据软件工程原理自行设计和维持,满足ISO9001要求质量策划根据项目自身特点,对质量体系进行剪裁和补充CMM什么是CMM1980s,CMU-SEI的过程成熟度模型,针对软件企业,目前是CMMICMM与ISO9000采用与ISO9000一致的管理思想,针对知识密集型/系统复杂型过程,尤其是软件开发过程SW-CMMCMM初始级可重复级已管理级已定义级优化级成熟度风险作用:CPA与SPICMM在软件企业的实施案例历史1997-1998:iso9001证书1999-2000:关注CMM、RUP1999-2001:用CMM检查/补充iso90012000-2001:CMM观点CMM与iso9001不矛盾、并且可以互补不拘泥于形式,利用思想、关注目标和效益CMM在软件企业的实施案例实施原则1、改进的原则不要完全打破旧有体制和流程体系和流程需
本文标题:CH2软件质量保证概述
链接地址:https://www.777doc.com/doc-3611494 .html