CAS静态工具方法

CAS Static Analysis Tool Study Methodology

2.2.2 Scoring Results
CAS静态工具方法
CAS静态工具方法
文章把报出的类型和实际的类型不一样的这种情况归结为blank
思考:如何确定出报出的类型不是实际的类型呢

2.3 Metrics
CAS静态工具方法

CAS静态工具方法
CAS静态工具方法

CAS静态工具方法

思考:他的那个discrimination到底指的是什么

3.1.3
每个工具是通过CAS自己写的脚本通过命令行运行的
因为每个工具的结果不一样,所以CAS开发了自己的数据格式

3.1.4
CAS静态工具方法
结果通过CAS自己给的工具进行评分的
任务:查看这个工具是什么,可不可以利用

4.2.1 Precision
重复的true positive去掉
重复的false positive保留
bad-only的测试集会影响结果,计算Precision的时候不考虑这种测试集
思考:如何确定bad-only测试集

4.2.2 Recall
重复的true positive去掉

4.2.3 F-Score
bad-only的测试集会影响结果,计算Precision的时候不考虑这种测试集

4.2.4 Weighting
不包含数据流和控制流的测试集称为baseline
以前,所有的测试集权重都是一样的
经过一些反馈和研究,发现baseline的权重应该高一些
In general, if a tool is able to find
a given flaw then it should be able to at least find it in the baseline test case.

对于一些特定的flaw,所有测试集的权重为1,其中baseline占0.5,其他的所有含控制流和数据流的测试集总共占0.5,平均分配
CAS静态工具方法

CAS静态工具方法
不考虑是因为会发生除0错

5.1 Results by tool
先列举了一个工具对所有类别的Presicion、Recall、F-Score 如下表
然后针对于这个表画了几个折线图
CAS静态工具方法
平均值指的是所有工具的平均值

然后列了这个,不知道这个是怎么统计的
CAS静态工具方法

5.2 Results by Weakness Class
这个列的是五个工具对某个类别的统计
CAS静态工具方法