软件质量.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件质量.ppt》由用户(saw518)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 质量
- 资源描述:
-
1、 Hands-On实训教程系列实训教程系列软件质量保证和管理-Ch.2 软件质量 Hands-On实训教程系列实训教程系列 回顾回顾1.1 质量质量 概念,质量属性1.2 客户客户 内部客户,外部客户,客户识别,户与质量的关系1.3 不同的质量观点不同的质量观点1.4 质量概念的发展质量概念的发展1.5 质量形成过程质量形成过程1.6 质量管理的发展历程质量管理的发展历程 Hands-On实训教程系列实训教程系列第第 2章章 软件质量软件质量 2.1 软件特点软件特点 2.2 软件过程软件过程 2.3 软件缺陷软件缺陷 2.4 软件质量软件质量 2.5 软件质量的内容软件质量的内容 Hands
2、-On实训教程系列实训教程系列软硬件特征比较特征特征软件软件硬件硬件存在形式存在形式虚拟、动态虚拟、动态固化、稳定固化、稳定客户需求客户需求不确定性不确定性相对清楚相对清楚度量性度量性非常困难非常困难正常正常生产过程生产过程逻辑性强逻辑性强流水线、工序流水线、工序逻辑关系逻辑关系复杂复杂清楚清楚接口接口复杂复杂多数简单、适中多数简单、适中维护维护复杂、新的需求、可复杂、新的需求、可以不断打补丁以不断打补丁多数简单、适中、没有新多数简单、适中、没有新的需求的需求 Hands-On实训教程系列实训教程系列软、硬件开发过程比较 软件软件硬件硬件54-56%质量缺陷来自需求不清楚需求分析需求分析调研分
3、析调研分析质量控制的主要阶段之一25%质量缺陷来自设计和编程设计、编程设计、编程设计阶段设计阶段质量控制的主要阶段之一测测 试试设计审查设计审查发发 布布设计完成设计完成这里不是软件质量管理的主要阶段软件拷贝软件拷贝制造、检验制造、检验生产的主要过程,质量控制的重点不仅支持原有功能,解决以前就存在的问题,而且增加新特性、加强新功能维维 护护维维 修修支持原有功能,解决运行中出现的问题,一般比较容易预测 Hands-On实训教程系列实训教程系列2.2 软件过程软件过程 Hands-On实训教程系列实训教程系列2.2.1 软件开发的基本过程软件开发的基本过程 需求分析需求分析:根据客户的要求,清楚
4、了解客户需求中的产品功能、特性、性能、界面和具体规格等,然后进行分析,确定软件产品所能达到的目标。设计设计:根据需求分析的结果,考虑如何在逻辑、程序上去实现所定义的产品功能、特性等,可以分为概要设计和详细设计,也可分为数据结构设计、软件体系结构设计、应用接口设计、模块设计、界面设计等。编程编程:将设计转换成计算机可读的形式。测试测试:对设计、编程进行验证和用户需求确认的过程 维护:维护:维持软件运行,修改软件缺陷、增强已有功能、增加新功能、升级等。Hands-On实训教程系列实训教程系列2.2.2 软件开发过程模型软件开发过程模型p 瀑布模型瀑布模型p 原型模型原型模型p 快速应用开发快速应用
5、开发(RAD)模型模型p 改进的改进的V模型模型p 螺旋模型螺旋模型p 增量模型和迭代模型增量模型和迭代模型p 构件组装模型构件组装模型p 并发模型并发模型pRational统一过程模型和统一过程模型和UMLp XP模型模型p协议开发协议开发 形式描述技术形式描述技术FDT Hands-On实训教程系列实训教程系列软件开发模式软件开发模式1、大棒开发法、大棒开发法l源于能量爆发创造宇宙,万物都由能量和物质积聚而成源于能量爆发创造宇宙,万物都由能量和物质积聚而成的理论,但如果不是遵循某种正确的排列和组合,形成的理论,但如果不是遵循某种正确的排列和组合,形成的将不是预先期望的事物。大棒模式与上述理
6、论一样:的将不是预先期望的事物。大棒模式与上述理论一样:一大堆能量(这里指开发软件所需的人力和物力)放在一大堆能量(这里指开发软件所需的人力和物力)放在一起,巨大的能量进行释放,通常的结果可能是产生了一起,巨大的能量进行释放,通常的结果可能是产生了优秀的软件产品或成为一堆优秀的软件产品或成为一堆“废品废品”(不成功的软件)(不成功的软件)。l优点:思路简单,优点:思路简单,通常可能是开发者的通常可能是开发者的“突发奇想突发奇想”l缺点:开发过程是非工程化的,随意性大缺点:开发过程是非工程化的,随意性大l关于测试:有的较简单,有的则非常困难关于测试:有的较简单,有的则非常困难 Hands-On实
7、训教程系列实训教程系列软件开发模式软件开发模式(续)(续)2、边写边改法、边写边改法l采用边写边改法的软件开发通常只是有了比较粗略的想采用边写边改法的软件开发通常只是有了比较粗略的想法就开始进行简单的设计、然后进行较长的反复编写、法就开始进行简单的设计、然后进行较长的反复编写、测试与修复这样一个循环的过程。在认为无法更精细的测试与修复这样一个循环的过程。在认为无法更精细的描述软件产品要求时,就发布产品。描述软件产品要求时,就发布产品。l优点:能够较为迅速的展现成果,适合需要快速制作而优点:能够较为迅速的展现成果,适合需要快速制作而且用完就扔的小项目,如示范程序、演示程序等。且用完就扔的小项目,
8、如示范程序、演示程序等。l缺点:其编码和测试可能将是长期的循环往复的过程。缺点:其编码和测试可能将是长期的循环往复的过程。Hands-On实训教程系列实训教程系列软件开发模式软件开发模式(续)(续)产品说明书代码编制、测试、修复代码编制、测试、修复 最终产品 Hands-On实训教程系列实训教程系列软件开发模式软件开发模式(续)(续)3、瀑布法、瀑布法l瀑布模式是将软件生命周期的各项活动,规定为按照固定瀑布模式是将软件生命周期的各项活动,规定为按照固定顺序相连的若干个阶段性工作,形如瀑布流水,最终得到顺序相连的若干个阶段性工作,形如瀑布流水,最终得到软件产品。软件产品。l优点:优点:易于理解;
9、调研开发的阶段性;强调早期计划及需易于理解;调研开发的阶段性;强调早期计划及需求调查;确定何时能够交付产品及何时进行评审与测试。求调查;确定何时能够交付产品及何时进行评审与测试。l缺点:缺点:需求调查分析只进行一次,不能适应需求变化;顺需求调查分析只进行一次,不能适应需求变化;顺序的开发流程,使得开发中的经验教训不能反馈到该项目序的开发流程,使得开发中的经验教训不能反馈到该项目的开发中去;不能反映出软件开发过程的反复与迭代性;的开发中去;不能反映出软件开发过程的反复与迭代性;没有包含任何类型的风险评估;开发中出现的问题直到开没有包含任何类型的风险评估;开发中出现的问题直到开发后期才能够显露,因
10、此失去及早纠正的机会。发后期才能够显露,因此失去及早纠正的机会。Hands-On实训教程系列实训教程系列软件开发模式软件开发模式(续)(续)问题定义分析研究需求分析软件设计编码测试维护定义阶段开发阶段维护阶段 Hands-On实训教程系列实训教程系列软件开发模式软件开发模式(续)(续)4、快速原型法、快速原型法 根据客户需求在较短的时间内解决用户最迫切解决的根据客户需求在较短的时间内解决用户最迫切解决的问题,完成可演示的产品。这个产品只实现最重要功能,问题,完成可演示的产品。这个产品只实现最重要功能,在得到用户的更加明确的需求之后,原型将丢弃。在得到用户的更加明确的需求之后,原型将丢弃。需求分
11、析原型开发原型评价最终设计系统实现用户反馈图1-8 快速原型开发模式 Hands-On实训教程系列实训教程系列软件开发模式软件开发模式(续)(续)5、螺旋模式法、螺旋模式法l螺旋模式是瀑布模式与边写边改演化模式相结合,并加螺旋模式是瀑布模式与边写边改演化模式相结合,并加入风险评估所建立的软件开发模式。入风险评估所建立的软件开发模式。l主要思想是在开始时不必详细定义所有细节,而是从小主要思想是在开始时不必详细定义所有细节,而是从小开始,定义重要功能,尽量实现,接受客户反馈,进入开始,定义重要功能,尽量实现,接受客户反馈,进入下一阶段,并重复上述过程,直到获得最终产品。下一阶段,并重复上述过程,直
12、到获得最终产品。l每一螺旋(开发阶段)包括每一螺旋(开发阶段)包括5个步骤:确定目标,选择个步骤:确定目标,选择方案和限制条件。方案和限制条件。对方案风险进行评估,并能解决风对方案风险进行评估,并能解决风险。险。进行本阶段的开发和测试。进行本阶段的开发和测试。计划下一阶段。计划下一阶段。确定进入下阶段的方法。确定进入下阶段的方法。l优点:严格的全过程风险管理;强调各开发阶段的质量优点:严格的全过程风险管理;强调各开发阶段的质量;提供机会评估项目是否有价值继续下去。;提供机会评估项目是否有价值继续下去。Hands-On实训教程系列实训教程系列软件开发模式软件开发模式(续)(续)图1-9 螺旋开发
13、模式详细设计风险分析评估方案累计成本提交线制定计划原型1原型2原型3可运行原型风险分析风险分析需求计划开发计划集成与测试软件需求软件产品设计需求确定设计确定实现编码单元测试集成测试验收测试 Hands-On实训教程系列实训教程系列2.2.3 V模型的完整诠释模型的完整诠释分析/设计复审(静态测试)检验、动态测试黑盒方法测试黑盒方法测试白盒方法测试测试目标 测试计划系统测试设计和环境功能测试用例设计工程师、技术人员客户、市场、产品人员需求分析定义系统、结构设计详细或程序设计编码单元测试功能测试系统测试验收测试确认需求技术实现 Hands-On实训教程系列实训教程系列2.2.4 敏捷方法之极限编程
展开阅读全文