软件质量保证的主要任务:为了提高软件的质量和软件的生产率,软件质量保证的主要任务大致可归结为八点:
① 用户要求定义
② 力争不重复劳动
③ 掌握开发新软件的方法
④ 组织外部力量协作的方法
⑤ 排除无效劳动
⑥ 发挥每个开发者的能力
⑦ 提高软件开发的工程能力
⑧ 提高计划和管理质量能力
质量检验的原则:
用户要求的是产品所具有的功能,这是“真质量”。靠质量检验,一般检查的是“真质量”的质量特性
能靠质量检验的质量特性,即使全检验,也只是代表产品的部分质量特性
软件质量保证体系:软件的质量保证活动,是涉及各个部门的部门间的活动
软件质量保证规程和技术准则:
规定在项目的哪个阶段进行评审以及如何评审
规定在项目的哪个阶段应当产生哪些报告和计划
规定产品各方面测试应达到的水平。
在每次评审和测试中发现的错误如何修正
质量保证的实施:软件质量保证的实施需要从纵向和横向两个方面展开:
要求所有与软件生存期有关的人员都要参加
要求对产品形成的全过程进行质量管理
质量目标与度量:
为了开发高质量的软件,需要明确软件的功能,明确软件应达到什么样的质量标准,即质量目标
为了达到这个目标,在开发过程中的各个阶段进行检查和评价。
在做质量评价时,需要有对质量进行度量的准则和方法
软件质量度量和保证的条件:
适应性、易学性、可靠性、针对性、客观性、质量经济性
保证活动的实施步骤:
Target:以用户要求和开发方针为依据,对质量需求准则、质量设计准则的各个质量特性设定质量目标
Plan:设定适合于被开发软件的评测检查项目(质量评价准则)。研讨实现质量目标的方法或手段
Do:制作高质量的规格说明和程序。在接受质量检查前先做自我检查
Check:以Plan阶段设定的质量评价准则进行评价。计算结果用质量图的形式表示出来
Action:对评价发现的问题进行改进活动,如果实现并达到了质量目标就转入下一个工程阶段。这样重复“Plan”到“Action”的过程,直到整个开发项目完成
软件可靠性:
软件生存期与软件寿命的关系
在软件工程中常用的定义
软件可靠性定义
测试中的可靠性分析
测试精确度和测试覆盖度的评价
软件生存期与软件寿命的关系:
一切有生命的东西有一个“寿命”
从软件工程的角度来说,软件产品的寿命是指软件的整个生存期
从软件用户的角度来看,关心的是软件在交付使用后的情况如何。
希望用一个指标平均失效间隔时间MTBF(MeanTime Between Failure)来表明,在规定的要求和条件下,能在多大的程度上依赖这个软件来完成任务
我们把在使用期间软件能够正常工作的持续时间叫做软件的使用寿命
在软件工程中常用的定义:
故障(fault):
错误(error):
失效(failure):
软件故障产生的原因:
支持软件工作的基本条件(除硬件外的操作系统、数据库管理系统、编译程序、微代码等)的缺陷
软件设计不当
加入了允许范围之外的输入