Testbed报告不是把扫描结果导出来就完事了,评审人员真正看的不单单是有没有违规项、覆盖率是多少,他们还会看这份报告能不能把问题来源、分析范围、规则口径和处理结论都说明白,所以我们在调整报告模板的时候,重点应该放在“证据能不能复查”上面,而不是只把版式做得更整齐,毕竟LDRA工具链本身就覆盖了静态分析、动态分析、单元测试和需求追踪这些内容,而Testbed与TBvision也都是用来进行静态、动态分析以及查看标准符合性结果的。
一、Testbed报告模板怎么调整
我们在调整Testbed报告模板的时候,首先要确定报告是给谁看的,因为给开发看的报告可以多保留一些代码行、规则编号和函数位置,但是给质量评审看的报告就要更关注版本、范围、结论和偏离说明了,这两类报告不能完全混着角色的用,不然开发人员觉得信息不够,评审人员又觉得内容太零散。
1、先固定报告基本信息
我们要在报告开头把项目名称、软件版本、代码分支、分析日期、工具版本、规则集版本、分析人员等信息保留下来,这个地方虽然看着挺普通的,但是其实挺重要,要是后面代码更新了、规则换了或者工具版本变了,没有这些信息的话,我们很难把报告和具体版本对应起来。
2、调整规则和结果字段
在规则报告里,我们建议把【规则编号】、【严重等级】、【文件路径】、【函数名称】、【代码行号】、【问题描述】、【处理状态】和【备注说明】都留着,大家不要只保留问题描述,也不要只往里面放截图,因为评审的时候老师经常会追问某个问题到底在哪一行、为什么没有修改、由谁进行了确认,要是字段太少的话,我们后面就得不停地补材料。
3、区分汇总页和明细页
为了让报告读起来不那么乱,我们可以把页面分开,汇总页主要用来给评审人员快速看结果,比如总问题数、严重问题数量、已关闭数量、遗留数量、误报或偏离数量,然后明细页再用来放具体的规则、代码位置和处理说明,另外TBpublish可以把当前的活动报告保存下来,还能生成方便浏览和共享的HTML索引,这种输出更适合我们在团队内部进行查阅和留档。
二、Testbed报告内容怎么满足评审要求
因为评审要求一般不会只看工具导出的结果,他们更关心报告能不能闭环,也就是说,问题从哪里来,怎么判断的,谁处理了,哪些还保留着,后续怎么跟踪,我们要把这些内容都串起来。
1、分析范围要说清楚
分析人员要在报告里写明本次分析包含了哪些模块,不包含哪些目录,比如第三方库、自动生成代码、芯片SDK、编译器库文件,要是这些不在整改范围内,我们应该提前说明,否则评审人员看到大量外部代码带来的问题,会误以为我们的项目代码质量很差。
2、分析配置要能复现
我们不要把Include路径、宏定义、编译器模型、语言标准、规则集选择这些配置只存在工具工程里,报告中至少要有一个简要的说明,因为同一份代码在不同的宏定义下走的分支可能不一样,报告结果也会跟着变,要是没有配置记录,别人很难复现出同一份结果。
3、问题处理状态要闭环
我们最好把每条问题分成几类,像待整改、已整改、确认误报、合理偏离、暂不处理,这里我们不追求写得多么好看,关键是状态要明确,已整改的问题要能对应到代码修改或复查记录,偏离项要写理由,遗留项要有后续计划,像TBmanager支持把需求、设计、源代码、测试、分析结果等工件建立双向追踪关系,我们把这种追踪思路放到评审报告里,也能让证据链显得更清楚一些。
三、报告提交前还需要检查什么
很多Testbed报告其实不是内容不够,而是大家在提交前没有好好整理,报告里如果有些旧日期、旧版本、重复规则、无效路径,或者截图和明细对不上,这些小问题都会直接影响到评审的印象。
1、检查版本和报告口径
我们在提交前要确认好代码版本、规则集版本、工具版本和报告日期是一致的,尤其是基线更新了以后,千万不要把上一轮报告里的截图给混进来,这个错误虽然改起来不难,但要是被评审发现了,就会让整份报告显得很不稳。
2、检查遗留问题有没有说明
历史问题我们可以暂时保留,但是不能没有交代,报告里应该说明哪些问题属于历史遗留,哪些是本次新增的,哪些已经计划在后续版本里处理,这样评审人员看的是我们的风险管理,而不是单纯数问题数量。
3、检查报告能不能追到代码
如果评审人员拿到一条问题,他们应该能从报告追到对应的文件、函数、代码行,然后看到处理结论,要是大家只能让人看到一个统计数字,那这就不算完整的证据,在需求追踪场景下,RTM通常会把高层需求与软件产品、开发和验证工件关联起来,这也是用来说明结果不是孤立存在的。
总结
Testbed报告模板怎么调整,Testbed报告内容怎么满足评审要求,核心其实不是把报告做得多复杂,而是我们要把该交代的信息交代清楚,在模板上我们要固定项目版本、工具版本、规则集、问题字段、汇总结果和偏离说明;在内容上我们要说明分析范围、配置口径、处理状态和遗留风险,评审真正需要的并不是一份很厚的报告,而是一份能让我们复查、能追踪、能解释问题处理过程的质量证据。