3、软件质量因素
正确性:系统满足规格说明和用户目标的程度,即,在预定环境下能正确地完成预期功能的程度。
健壮性:在硬件发生故障、输入的数据无效或操作错误等意外环境下,系统能做出适当响应的程度。
效率:为了完成预定的功能,系统需要的计算资源的多少。
完整性(安全性):对未经授权的人使用软件或数据的企图,系统能过控制(禁止)的程度。
可用性:系统在完成预定应该完成的功能时另人满意的程度。
风险:按预定的成本和进度把系统开发出来,并且为用户所满意的概率。
可理解性:理解和使用该系统的容易程度。
可维修性:诊断和改正在运行现场发现的错误所需要的工作量的大小。
灵活性(适应性):修改或改进正在运行的系统需要的工作量的多少。
可测试性:软件容易测试的程度。
可移植性:把程序从一种硬件配置和(或)软件系统环境转移到另一种配置和环境时,需要的工作量多少。有一种定量度量的方法是:用原来程序设计和调试的成本除移植时需用的费用。
可再用性:再其他应用中该程序可以被再次使用的程度(或范围)。
互运行性:把该系统和另一个系统结合起来需要的工作量的多少。
4、软件评审
软件评审并不是在软件开发完毕后进行评审,而是在软件开发的各个阶段都要进行评审。因为在软件开发的各个阶段都可能产生错误,如果这些错误不及时发现并纠正,会不断地扩大,后可能导致开 发的失败。下面这组数据可以清楚的看出前期的错误对后期的影响。
软件评审是相当重要的工作,也是目前国内开发不重视的工作。
(1)评审目标
。发现任何形式表现的软件功能、逻辑或实现方面的错误;
。通过评审验证软件的需求;
。保证软件按预先定义的标准表示;
。已获得的软件是以统一的方式开发的;
。使项目更容易管理。
(2)评审过程
A、召开评审会议:一般应有3至5人参加,会前每个参加者做好准备,评审会每次一般不超过2小时。
B、会议结束使必须做出以下决策之一:接受该产品,不需做修改;由于错误严重,拒绝接受;暂时接受该产品。
C、评审报告与记录;所提出的问题都要进行记录,在评审会结束前产生一个评审问题表,另外必须完成评审简要报告。
(3)评审准则
。评审产品,而不是评审设计者(不能使设计者有任何压力);
。会场要有良好的气氛;
。建立议事日程并维持它(会议不能脱离主题);
。限制争论与反驳(评审会不是为了解决问题,而是为了发现问题;
。指明问题范围,而不是解决提到的问题;
。展示记录(好有黑板,将问题随时写在黑板上);
。限制会议人数和坚持会前准备工作;
。对每个被评审的产品要尽力评审清单(帮助评审人员思考);
。对每个正式技术评审分配资源和时间进度表;
。对全部评审人员进行必要的培训;
。及早地对自己地评审做评审(对评审准则的评审)。
5、ISO9000.3软件质量认证体系
ISO9000.3是ISO9000质量体系认证中关于计算机软件质量管理和质量保证标准部分。它从管理职责、质量体系、合同评审、设计控制、文件和资料控制、采购、顾客提供产品的控制、产品标识和可追溯性、过程控制、检验和试验、检验/测量和试验设备的控制、检验和试验状态、不合格品的控制、纠正和预防措施、搬运/贮存/包装/防护和交付、质量记录的控制、内部质量审核、培训、服务、统计系统等二个方面对软件质量进行了要求。
6、测试
软件测试是软件开发的一个重要环节,同时也是软件质量保证的一个重要环节。所谓测试是用已知的输入在已知环境中动态地执行系统(或系统的部件)。测试一般包括单元测试、模块测试、集成测试和系统测试。如果测试结果与预期结果不一致,则很可能是发现了系统中的错误,测试过程中将产生下述基本文档:
(1)测试计划:确定测试范围、方法、和需要的资源等。
(2)测试过程:详细描述和每个测试方案有关的测试步骤和数据(包括测试数据及预期的结果)。
(3)测试结果:把每次测试运行的结果归入文档,如果运行出错,则应产生问题报告,并且必须经过调试解决所发现的问题。测试结果:把每次测试运行的结果归入文档,如果运行出错,则应产生问题报告,并且必须经过调试解决所发现的问题。