该【软件测试技术与质量保证 软件质量保证 】是由【endfrs】上传分享,文档一共【34】页,该文档可以免费在线阅读,需要了解更多关于【软件测试技术与质量保证 软件质量保证 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。软件测试技术与质量保证
主讲人:徐丽
第三章软件质量保证
ANSI/IEEE定义软件质量为“与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体〞和定义软件质量为“所有描述计算机软件优秀程度的特性的组合〞。也就是说,为满足软件的各项精确定义的功能、性能需求,符合文档化的开发标准,需要相应地给出或设计一些质量特性及其组合,作为在软件开发与维护中的重要考虑因素。
软件质量反映了以下三方面的问题:
⑴软件需求是度量软件质量的根底。不符合需求的软件就不具备质量。
⑵在各种标准中定义了一些开发准那么,用来指导软件人员用工程化的方法来开发软件。如果不遵守这些开发准那么,软件质量就得不到保证。
⑶往往会有一些隐含的需求没有明确地提出来。例如,软件应具备良好的可维护性。如果软件只满足那些定义了的需求而没有满足这些隐含的需求,软件质量也不能保证。
软件质量是各种特性的复杂组合。它随着应用的不同而不同,随着用户提出的质量要求不同而不同。因此,有必要讨论各种质量特性,以及评价质量的准那么。
虽然软件质量是难于定量的软件属性,但是仍然能够提出许多重要的软件质量指标。从管理角度对软件质量进行度量,可以把影响软件质量的主要因素分成以下几类:
⑴正确性:系统满足规格说明和用户目标的程度,即在预定环境下能正确地完成预期功能的程度。
⑵健壮性:在硬件发生故障、输入的数据无效或操作错误等意外环境下,系统能做出适当响应的程度。
⑶效率:为了完成预定的功能,系统需要的计算资源的多少。
⑷完整性〔平安性〕:对未经授权的人使用软件或数据的企图,系统能够控制〔禁止〕的程度。
⑸可用性:系统在完成预定应该完成的功能时令人满意的程度。
⑹风险:按预定的本钱和进度把系统开发出来,并且为用户所满意的概率。
⑺可理解性:理解和使用该系统的容易程度。
⑻可维修性:诊断和改正在运行现场发现的错误所需要的工作量的大小。
⑼灵活性〔适应性〕:修改或改进正在运行的系统需要的工作量的多少。
⑽可测试性:软件容易测试的程度。
⑾可移植性:把程序从一种硬件配置和〔或〕软件系统环境转移到另一种配置和环境时,需要的工作量的多少。
⑿可复用性:在其他应用中该程序可以被再次使用的程度〔或范围〕。
⒀互运行性:把该系统和另一个系统结合起来的工作量的多少。
人们在考虑做一件事的时候,总是习惯地先回想一下这件事以前做过没有,是如何做的。如果没有,那么从头开始,否那么就会沿用已有的经验和方法,提高做事的效率和准确度。这些经验和方法不断地总结和推广,就形成了解决新问题时常见的复用思想。在计算机程序设计中调用标准函数库中的函数,可以视为软件复用的早期的例子。
可扩充性问题是一个与规模有关的问题。通常的情况是:一个大型软件系统就像是一个宏伟但又很脆弱的大厦,只要抽出其中的一块砖头,都会使这座巨大的建筑物倒塌。
对改善可扩充性来说,主要应遵循两条原那么:
⑴设计简单:简单的系统结构总是比复杂的系统结构更容易适应修改。
⑵控制分解:在软件系统结构中模块的独立性愈强,一个简单的修改只影响一个模块或只影响很少几个模块的可能性也就愈大,也就愈不致引起整个系统都需要修改那种连锁反响。
健壮性讨论的是异常条件下软件的行为。它与正确性不同,正确性讨论的是在需求规格说明中明确陈述的软件行为。
健壮性在本质上是比正确性更为模糊的观念,它讨论的并不是在需求规格说明中明确陈述的问题,而是在某种情况下可能发生的问题。健壮性需求的作用在于保证:如果情况一旦发生,它应使系统的执行终止,或进入“降级运行〞模式,而不致使系统发生灾难性事件。
软件测试技术与质量保证 软件质量保证 来自淘豆网m.daumloan.com转载请标明出处.