技术评审管理方案

news2025/1/16 1:12:21

技术评审(Technical Review, TR)的目的是尽早地发现工作成果中的缺陷,并帮助开发人员及时消除缺陷,从而有效地提高产品的质量。

技术评审过程域是SPP模型的重要组成部分。本规范阐述了技术评审过程域的三个主要规程:

  • 制定技术评审计划 [SPP-PROC-TR-PLANNING]
  • 正式技术评审 [SPP-PROC-TR-FTR]
  • 非正式技术评审[SPP-PROC-TR-ITR]

上述每个规程的“目标”、“角色与职责”、“启动准则”、“输入”、“主要步骤”、“输出”、“完成准则”和“度量”均已定义。

本规范适用于国内IT企业的软件研发项目。建议用户根据自身情况(如商业目标、研发实力等)适当地修改本规范,然后推广使用。

16.1 介绍

技术评审最初是由IBM公司为了提高软件质量和提高程序员生产率而倡导的。技术评审方法已经被业界广泛采用并收到了很好的效果,它被普遍认为是软件开发的最佳实践之一。

技术评审能够在任何开发阶段执行,它可以比测试更早地发现并消除工作成果中的缺陷。技术评审的主要好处有:

  • 通过消除工作成果的缺陷而提高产品的质量。
  • 越早消除缺陷就越能降低开发成本。
  • 开发人员能够及时地得到同行专家的帮助和指导,无疑会加深对工作成果的理解,更好地预防缺陷,一定程度上提高了开发生产率。

可见技术评审有助于“提高质量、提高生产率、降低成本”,符合软件过程改进的根本目的。

技术评审有两种基本类型:

  • 正规技术评审(FTR)。FTR比较严格,需要举行评审会议,参加评审会议的人员比较多。
  • 非正规技术评审(ITR)。ITR的形式比较灵活,通常在同伴之间开展,不必举行评审会议,评审人员比较少。

理论上讲,为了确保产品的质量,产品的所有工作成果都应当接受技术评审。现实中,为了节约时间,允许人们有选择地对工作成果进行技术评审。技术评审方式也视工作成果的重要性和复杂性而定。

技术评审过程域有三个主要规程:“制定技术评审计划”、“正规技术评审”和“非正规技术评审”,如图16-1所示。

 

技术评审的注意事项:

  • 评审人员的职责是发现工作成果中的缺陷,并帮助开发人员给出消除缺陷的办法,而不是替开发人员消除缺陷。
  • 技术评审应当“就是论事”,不要打击有失误的开发人员的工作积极性,更不准搞人身攻击(如挖苦、讽刺等)。
  • 在会议评审期间要限制过多的争论,以免浪费他人的时间。

技术评审过程域产生的主要文档有:

  • 整个项目的《技术评审计划》,模板见 [SPP-TEMP-TR-PLAN]
  • 《技术评审通知》,模板见 [SPP-TEMP-TR-NOTES]
  • 《技术评审报告》,模板见 [SPP-TEMP-TR-REPORT]
  • 常用的《技术评审检查表》见 [SPP-TEMP-TR-CHECKLIST]

16.2 制定技术评审计划

16.2.1 目的

  1. 确定需要评审的工作成果、评审方式,预定评审时间、地点以及相关人员。

16.2.2 角色与职责

  1. 项目的技术负责人(或技术骨干)制定《技术评审计划》。
  2. 项目经理审批《技术评审计划》。

16.2.3 启动准则

  1. 《项目计划》已经制定。

16.2.4 输入

  1. 《项目计划》

16.2.5 主要步骤

[Step1] 确定需要评审的工作成果

  1. 如果项目的时间充足,为了确保产品的质量,应当对产品的所有工作成果都进行技术评审。如果项目的时间不充足,为了节约时间,可以选择一些重要的工作成果对其进行技术评审。

[Step2] 确定技术评审方式

  1. 根据工作成果的重要性和复杂性确定技术评审方式。将重要性、复杂性各分“高、中、低”3个等级。重要性-复杂性组合与技术评审方式的对应关系见下表。

[Step3] 预定评审时间、地点以及相关人员

  1. 根据《项目计划》中的进度表,预定评审时间和地点。
  2. 根据工作成果的特征预定评审主持人和其他评审员。

[Step4] 审批计划

  1. 项目经理根据《项目计划》以及现实情况(如可以支配的人力资源),审批《技术评审计划》。
  2. 项目的技术负责人(或技术骨干)应根据项目经理的批示修正《技术评审计划》。

16.2.6 输出

  1. 《技术评审计划》

16.2.7 结束准则

  1. 《技术评审计划》已经制定并被项目经理批准。

16.2.8 度量

  1. 技术负责人(或技术骨干)统计工作量和上述文档的规模,汇报给项目经理。

16.3 正式技术评审

16.3.1 目的

  1. 对工作成果进行正式技术评审,尽早地发现工作成果中的缺陷,并帮助开发人员及时消除缺陷。

16.3.2 角色与职责

  1. 作者:是指待评审的工作成果的开发者,可能是一个人也可能是个小组。在评审会议期间,作者答复评审小组的问题,并与评审小组共同查找缺陷、商讨缺陷解决方案。评审会议结束后,作者应当及时消除工作成果中的缺陷。
  2. 评审小组
    • 评审主持人是应当具备比较高的技术水平和比较丰富的评审经验,能够控制评审会议的进程。评审主持人可以是项目内的技术骨干也可以是项目外的技术专家。评审主持人本身是一名评审员,评审结论必须有评审主持人的签字才能生效。
    • 评审员主要来源于项目内和项目外的技术人员,必要时还应当邀请客户和质量保证人员担任评审员。工作成果的作者不能担任评审员。评审员的人选以及分工都由评审主持人来确定。评审员应当根据“检查表”认真地查找工作成果中的缺陷,并和作者共同商讨缺陷解决方案。
    • 评审小组的总人数一般在3~7人之间。
  1. 记录员:由评审主持人指定一位评审员来担任记录员。记录员如实地将评审过程记录在指定的文档中。

16.3.3 启动准则

  1. 作者已经按照指定的格式(如模板)完成了工作成果,对工作成果进行了内部检查,消除了拼写、排版等初级错误。
  2. 根据《技术评审计划》,该工作成果进行正式技术评审的时间已到。

16.3.4 输入

  1. 待评审的工作成果。
  1. 与该工作成果评审相关的一些材料,如检查表。

16.3.5 主要步骤

        正式技术评审的流程如图16-2所示。

 

[Step1] 准备评审

  1. 评审主持人首先确定评审会议的时间、地点、设备和参加会议的人员名单(包括评审员、记录员、作者、旁听者等),然后起草《技术评审通知》,并告知所有相关人员。
  2. 评审主持人把工作成果及相关材料、技术评审规程、检查表等发给评审员。
  3. 评审员阅读(了解)工作成果及相关材料。

[Step2] 举行评审会议

  1. [Step2.1] 主持人宣讲
    • 主持人宣讲本次评审会议的议程、重点、原则、时间限制等。
  2. [Step2.2] 作者介绍工作成果
    • 作者扼要地介绍工作成果。
  3. [Step2.3] 识别缺陷和答辩
    • 评审员根据“检查表”认真查找工作成果的缺陷。
    • 作者回答评审员的问题,双方要对每个缺陷达成共识(避免误解)。
  4. [Step2.4] 讨论缺陷解决方案
    • 作者和评审员共同讨论缺陷的解决方案。
    • 对于当场难以解决的问题,由主持人决定“是否有必要继续讨论”或者“另定时间再讨论”。
  5. [Step2.5] 会议结束决议
    • 评审小组给出评审结论和意见,主持人签字后本次会议结束。评审结论有三种:
  1. 工作成果合格,“无需修改”或者“需要轻微修改但不必再审核”。
  2. 工作成果基本合格,需要作少量的修改,之后通过审核即可。
  3. 工作成果不合格,需要作比较大的修改,之后必须重新对其评审。

[Step3] 修正、跟踪与审核

  1. [Step3.1] 修正与跟踪
  • 作者修正工作成果,消除已发现的缺陷。
  • 评审主持人(或者指定审查员)跟踪每个缺陷的状态。
  1. [Step3.2] 提交审核
  • 作者消除所有已发现的缺陷后,再将修正后的工作成果递交给评审主持人(或者指定审查员)审核。
  1. [Step3.2] 审核工作成果
  • 评审主持人(或者指定审查员)审核修正后的工作成果。审核结论有两种:
  1. 修正后的工作成果合格。
  2. 修正后的工作成果仍然不合格,需重新修改,重复[Step3]

16.3.6 输出

  1. 该工作成果的《技术评审报告》。
  2. 根据评审报告修正后的工作成果。

16.3.7 结束准则

  1. 工作成果中所有已识别的缺陷都已经被消除。

16.3.8 度量

  1. 评审主持人统计工作量和上述文档的规模,汇报给项目经理。

16.4 非正式技术评审

16.4.1 目的

  1. 对工作成果进行快速、灵活地评审,及早地识别和消除工作成果中存在的缺陷。

16.4.2 角色与职责

  1. 作者:是指待评审的工作成果的开发者,可能是一个人也可能是个小组。作者答复评审员的问题,并与评审员共同查找缺陷、商讨缺陷解决方案。评审结束后,作者应当及时消除工作成果中的缺陷。
  2. 评审员:由作者的同伴或者同行专家担任评审员,通常一两个人即可。评审员应当根据“检查表”认真地查找工作成果中的缺陷,并和作者共同商讨缺陷解决方案。由于参加非正规评审的人员比较少,由评审员兼做记录员即可。

16.4.3 启动准则

  1. 作者已经按照指定的格式(如模板)完成了工作成果,对工作成果进行了内部检查,消除了拼写、排版等初级错误。
  2. 根据《技术评审计划》,该工作成果进行非正式技术评审的时间已到。

16.4.4 输入

  1. 待评审的工作成果。
  1. 与该工作成果评审相关的一些材料,如检查表。

16.4.5 主要步骤

[Step1] 准备评审

  1. 审员与作者共同确定评审的时间、地点、设备、人员等。起草并将《技术评审通知》发布给相关人员。
  2. 评审员阅读(了解)工作成果及相关材料、评审规程、检查表等。

[Step2] 评审

  1. [Step2.1] 介绍
    • 评审员介绍本次评审的议程、重点、原则、时间限制等。
    • 作者扼要地介绍工作成果。
  2. [Step2.2] 识别缺陷和问答
    • 评审员根据“检查表”认真查找工作成果的缺陷。
    • 作者回答评审员的问题,双方要对每个缺陷达成共识(避免误解)。
  3. [Step2.3] 讨论缺陷解决方案
    • 作者和评审员共同讨论缺陷的解决方案。
    • 对于当场难以解决的问题,由双方商定“是否有必要继续讨论”或者“另定时间再讨论”。
  4. [Step2.4] 给出评审结论

评审员给出评审结论和意见。评审结论有三种:

  1. 工作成果合格,“无需修改”或者“需要轻微修改但不必再审核”。
  2. 工作成果基本合格,需要作少量的修改,之后通过审核即可。
  3. 工作成果不合格,需要作比较大的修改,之后必须重新对其评审。

[Step3] 修正、跟踪与审核

  1. [Step3.1] 修正与跟踪
  • 作者修正工作成果,消除已发现的缺陷。
  • 审查员跟踪每个缺陷的状态。
  1. [Step3.2] 提交审核

作者消除所有已发现的缺陷后,再将修正后的工作成果递交给审查员审核。

  1. [Step3.2] 审核工作成果

审查员审核修正后的工作成果。审核结论有两种:

(1)修正后的工作成果合格。

(2)修正后的工作成果仍然不合格,需重新修改,重复[Step3]

16.4.6 输出

  1. 该工作成果的《技术评审报告》。
  2. 根据评审报告修正后的工作成果。

16.4.7 结束准则

  1. 工作成果中所有已识别的缺陷都已经被消除。

16.4.8 度量

  1. 评审员统计工作量和上述文档的规模,汇报给项目经理。

16.5 实施建议

  1. 对于重要性和复杂性都很高的工作成果,建议先在项目内部进行“非正式技术评审”,然后再进行“正式技术评审”。
  2. 技术评审应当与质量保证有机地结合起来,请质量保证人员参加并监督正规技术评审是很好的方式。
  3. 技术评审应当与配置管理有机地结合起来,规定没有通过技术评审的工作成果不允许成为基准文件(Baselined)。
  4. 建议机构采用统一的缺陷跟踪工具,使得技术评审所发现的缺陷能被及时地消除,不被遗漏。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/117484.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Java(SSM+SpringBoot+Thymeleaf)+MySQL 开发的论坛社区网站【100010072】

基于 SSM Spring Boot Thymeleaf 开发的论坛社区网站 项目概述 本项目是依据 2019 年牛客项目,基于 SSM Spring Boot Thymeleaf 开发的论坛社区网站,网站实现了如下功能: 使用 Spring Email Interceptor Spring Security 等实现网站…

unity组件介绍

所有物体都是一个空物体,加上一些组件才形成了所需要的GameObject。 这是一个空物体,在Scene场景中没有任何外在表现,因为它只有Transform这个组件,表示它仅仅只有位置,旋转和缩放。 Mesh组件 Mesh Filter mesh filt…

【聆思CSK6 视觉AI开发套件试用】(有彩蛋)AI头肩手势检测

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:Tony_c217AK 牛逼的AI套件 如何3分钟体验AI功能(windows系统 ) 插入上图左边的USB(上图中靠近左边的USB接口),给设备上…

锁,CAS,Synchronized 原理

作者:~小明学编程 文章专栏:JavaEE 格言:热爱编程的,终将被编程所厚爱。 目录 常见的锁 悲观锁与乐观锁 悲观锁 乐观锁 读写锁 重量级锁 vs 轻量级锁 挂起等待锁和自旋锁 公平锁和非公平锁 可重入锁与不可重入锁 CAS …

JavaDS4-链表

目录 1.定义 2.结构 2.1.类似火车 2.2.分类 2.2.1.按方向分 2.2.2.按是否带头节点分 2.2.3.按是否循环分 3.重点掌握 3.1.无头单向非循环链表 3.1.1.在链表的头部添加节点 3.1.2.在链表的任意位置index处添加节点 3.1.3.在链表的尾部添加节点 3.1.4.查询链表的任意…

如何使用单总线?

如何使用单总线?一、什么叫单总线?二、单总线协议?三、怎么使用单总线来做开发?IBUTTON 钥匙读取复制设备项目一、什么叫单总线? 1.如下图,使用单总线的传感器DS18B20 2.使用单总线的储物柜钥匙 3.定义&…

元素偏移量 offset、元素可视区 client和元素滚动 scroll

1、元素偏移量 offset 系列 1.1、offset 概述 offset 翻译过来就是偏移量, 我们使用 offset系列相关属性可以动态的得到该元素的位置(偏移)、大小等。 获得元素距离带有定位父元素的位置获得元素自身的大小(宽度高度&#xff09…

【java】static关键字

static可以修饰的内容如下: ● 变量 ● 方法 ● 代码块 ● 内部类 那就有一个问题,为什么static不能修饰外部类? 我们首先看一下static的作用是什么? 先看看其他人怎么解释的: A static method can be accessed with…

RK3588平台开发系列讲解(进程篇)进程的简介

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、进程的四要素二、进程的三种状态三、task_struct数据结构四、进程优先级五、进程系统调用沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍进程的相关知识。 一、进程的四要素 1、有一段程序供其…

Axure 原型适应到不同平台的方法

“老师,公司要求我做一个不同机型的原型,不想重新做,可以适配吗?” “老师,手机有那么多类型,我难道要做那么多的原型吗?” “老师,axure中怎么进行原型的适配呢?应该怎…

云服务器搭建网站(初学)

第一步:来到/var/www/目录下 第二步:在www目录下创建web1文件夹 第三步:来到root目录 第四步:在root目录上传所需要的压缩包 第五步:解压刚刚上传的压缩包到指定的目录(我们刚刚所创建的web1目录&#xff…

HTML5 文件操作

文章目录HTML5 文件操作file元素选择单个文件选择多个文件美化file元素File对象获取文件信息转化单位FileReader对象读取txt文本在线预览图片拖拽文件并读取拖拽图片并预览Blob对象创建并下载txt文件将Canvas下载为一张图片HTML5 文件操作 file元素 语法 <input type&quo…

SpringIOC流程以及Mybatis架构

1、Spring IOC 流程图 ![在这里插入图片描述](https://img-blog.csdnimg.cn/626a8582f4b14ac3983567a85bce1d4d.png IOC 依赖注入整体流程 1、环境初始化 2、Bean工厂初始化 3、读取项目配置 4、定义解析Bean-->BeanDefintion 5、将BeanDefinition存储工厂类的Map 6、通过…

Golang 将视频按照时间维度剪切 | Golang工具

目录 前言 环境依赖 代码 总结 前言 本文提供将视频按照时间维度进行剪切的工具方法&#xff0c;一如既往的实用主义。 主要也是学习一下golang使用ffmpeg工具的方式。 环境依赖 ffmpeg环境安装&#xff0c;可以参考我的另一篇文章&#xff1a;windows ffmpeg安装部署_阿…

2022 IoTDB Summit:IoTDB PMC 乔嘉林《端边云协同:Apache IoTDB 全新单机分布式架构》...

12 月 3 日、4日&#xff0c;2022 Apache IoTDB 物联网生态大会在线上圆满落幕。大会上发布 Apache IoTDB 的分布式 1.0 版本&#xff0c;并分享 Apache IoTDB 实现的数据管理技术与物联网场景实践案例&#xff0c;深入探讨了 Apache IoTDB 与物联网企业如何共建活跃生态&#…

具有循环条件gan的实值(医疗)时间序列生成-2017

REAL-VALUED (MEDICAL) TIME SERIES GENERATION WITH RECURRENT CONDITIONAL GANS ABSTRACT 生成对抗网络(GANs)作为一种训练模型以产生逼真数据的框架已经取得了显著的成功。在这项工作中&#xff0c;我们提出了循环GAN (RGAN)和循环条件GAN (RCGAN)来生成真实的实值多维时间…

canal实战问题汇总分析

canal在实战过程经常会遇到这样或者那样的问题&#xff0c;今天我们专门用一篇文章来列举分析一下&#xff0c;比如、JDK版meta.dat 中保存的位点信息和数据库的位点信息不一致本不匹配、bin-log信息消费失败等问题&#xff0c;下面我们开始一一分析&#xff1a; 1、数据库数据…

数据可视化软件有哪些?

随着大数据概念的普及与业务数据的爆炸式增长&#xff0c;越来越多的企业已经不满足于Excel的常规操作。 因为相较于以往PPT/Word/Excel数据汇报的形式而言&#xff0c;数据可视化平台包含了丰富的图表、组件信息&#xff0c;仅用一张屏幕就能够囊括诸多讯息&#xff0c;画面色…

2022全年度休闲食品(零食)十大热门品牌销量榜单

随着经济的发展及人们消费水平的提高&#xff0c;休闲食品作为居家出游的快消品&#xff0c;逐渐成为了人们生活中必不可少的一部分&#xff0c;同时&#xff0c;消费者对于休闲食品的数量和品质的需求也正不断增长。并且&#xff0c;在休闲食品的消费群体中&#xff0c;年轻群…

Eclipse插件之Tomcat Plugin 介绍、安装与使用

Tomcat Plugin 介绍 Eclipse Tomcat 插件为开发Java Web应用程序提供了Tomcat容器的简单集成。所谓的集成其实主要是以下功能&#xff1a; 在Eclispe中启动和关闭Tomcat启动后的应用可以很容易的打断点进行调试&#xff0c; 这一点应该是该插件最大的优势。 Tomcat 插件是Ec…