软件质量保证复审研究

Aure ·
更新时间:2024-11-14
· 817 次阅读

  软件质量保证是软件开发的重要内容。软件质量保证复审则是软件质量保证的重要组成。本文软件质量保证复审系统性和应用性做些探讨。

  一、软件质量

  软件质量是“与软件产品满足规定和隐含需求的能力有关的全体特征(或特性)”。为满足软件的各项规定的或隐含的功能、性能需求,符合文档化开发标准,需要相应地设计出一些质量特性及其组合,质量目标,作为在软件开发与维护中的重要考虑因素。如果这些质量特性及其组合都能在产品中得到满足,则这个软件产品的质量是高的。这些被定义出来的特性及其组合称之为软件“质量目标”。软件质量是各种特性的复杂组合,它随着应用的不同而不同,随着用户提出的量要求不同而不同。承担保证软件质量的任。包括软件工程师、项目管理者、客户、销售人员和SQA(Software Quality Assurance)小组的人员。

  二、软件复审

  (1)软件复审:软件复审是软件工程过程中滤除缺陷的“过滤器”。在软件项目开发过程中的多个不同点上,软件复审活动能够起到及早发现错误进而引发排错活动的作用。软件复审目的是尽可能多地发现被复审对象中的缺陷,起到“净化”工作产品作用。由于发现别人生产工作产品中的缺陷比发现自己的缺陷要易,所以复审应在不同的工程师之间进行。任何一次复审都是借助人的差异性达到目标活动,目标包括:①指出一个人或一个小组生产的产品所需进行的改进。②确定被审核产品中不需要或者不希望改进的部分。

  (2)软件缺陷对成本的影响:在软件工程活动中,“缺陷”是指在软件交付给终用户后发现的质量问题;而“错误”描述在软件交付前由软件工程师发现的质量问题。很明显,缺陷带来的危害远大于“错误”带来的影响。因此,正式技术复审的主要目标是在复审过程中发现错误,以便潜在的缺陷在交付之前变成“错误”并得到纠正。正式技术复审的明显优点是能够较早发现错误,防止错误传播到软件过程的后继阶段。“尽早”发现错误是我们的追求,因为同样的错误对成本和工期产生的影响与发现错误、改正错误的时间是密切相关的。

  (3)缺陷的放大和消除:可以用“缺陷放大模型”来说明及时的复审在软件工程中的作用。复审过程可能没有完全发现来自此步骤之前的和新发生的所有错误。从而可能在本阶段“继承”了一些错误,并将一部分错误引入下一阶段。其中,一部分来自前一阶段的错误可能会误导本阶段的工作,导致在错误的基础上产生更多的错误,形成错误的“放大”效应。

  三、正式的技术复审

  正式技术复审(FTR)是一种由技术工程师进行的软件质量保证活动。FTR的目标是:①在软件的任何一种表示形式中发现功能、逻辑或实现上的错误。②证实经过复审的软件的确满足需求。③保证软件的表示符合预定义的标准。④得到一种以一致的方式开发的软件。FTR是一类复审方式,包括“走查”、“审查”、“轮查”以及其他软件小组的技术评估。每次FTR都以会议形式进行,经过适当地计划、控制和相关人员参与,FTR才能获得成功。

  (1)复审会议的组织:从保证会议效果出发,不论进行什么形式的FTR活动,会议的规模都不宜过大,控制在3~5人较好;每个参会人员都要提前进行准备,但是复审准备工作占用的工作时间应当少于两小时;会议的时间不宜长,控制在两个小时之内。

  FTR的焦点是某个工作产品,比如一部分需求规约,一个模块的详细设计,一个模块的源代码清单等等。负责生产这个产品的人通知“复审责任人”产品已经完成,需要复审。复审责任人对工作产品的完成情况进行评估,当确认已经具备复审条件后,准备产品副本,发放给预定要参加复审的复审者。当发现错误和问题时,记录员将逐一进行记录。在复审结束时,必须做出复审结论。结论只能是下列三种之一:①工作产品可以不经修改地被接收。②由于存在严重错误,产品被否决。③暂时接收工作产品(发现了轻微错误需要改正,但改正后无需再次评审)。

  (2)复审报告和记录保存:在FTR期间,一名复审者(记录员)主动记录所有被提出来的问题。在会议结束时对这些问题进行小结,并形成一份“复审问题列表”。此外还要形成一份简单的“复审总结报告”。复审总结报告中将阐明如下问题:复审对象是什么;有哪些人参与复审;发现了什么,结论是什么。复审报告是项目历史记录的一部分,可以分发给项目负责人和其他感兴趣的复审参与方。复审问题列表有两个作用,首先是标识产品中的问题区域,其次将被用作指导生产者对产品进行改进的“行动条目”。 在复审总结报告中,复审问题列表应当作为附件。

  (3)复审指南:不受控制的错误的复审,比没有复审更加糟糕。所以在进行正式的复审之前必须制定复审指南并分发给所有的复审参加者,得到大家的认可后,才能依照指南进行复审。正式技术复审指南的小集合如下:①复审对象是产品,而不是产品生产者。复审会议的气氛应当是轻松的和建设性的,不要试图贬低或者羞辱别人。通常,有管理职权的成员不宜作为复审者参加会议。②制订并严格遵守议程。FTR会议必须保证按照计划进行,不要离题。③鼓励复审者提出问题,但限制争论和辩驳。有争议的问题记录在案,事后解决。④复审是以“发现问题”为宗旨的。问题的解决通常由生产者自己或者在别人的帮助下解决。所以不要试图在FTR会议上解决所有问题。

  复审是贯穿于整个软件工程始终的保护性活动。目的是通过对工作过程和阶段工作产品的审查与审核,尽量地预防错误,及早地发现和纠正错误,防患于未然。对生产过程的审核将及时发现和纠正违背已定义的工程过程规范和组织标准的行为,防止因过程的偏离导致产品中出现错误。复审活动还包括对各类工作产品的复审与检查,以便及早发现和纠正已经发生的错误,避免错误放大效应的发生。历史缺陷数据的积累、统计和分析有助于开展基于统计规律的SQA任务,能够帮助我们集中力量去解决导致发生错误和缺陷的重要的问题,取得事半功倍的效果。通过复审,我们能够基于统计规律,在度量基线的支持下,定量地评述软件的可靠性指标,从而满足用户提出的量化的可靠性性能需求。



软件质量保证 软件质量 质量保证 软件

需要 登录 后方可回复, 如果你还没有账号请 注册新账号