Understanding user understanding: determining correctness of generated program invariants
Understanding user understanding: determining correctness of generated program invariants
复制标题
了解用户理解:确定生成的程序不变量的正确性
DOI:
--
复制
发表时间:
2012
期刊:
影响因子:
--
通讯作者:
G. Rothermel
中科院分区:
文献类型:
--
作者:
Matthew Staats;Shin Hong;Moonzoo Kim;G. Rothermel
Recently, work has begun on automating the generation of test oracles, which are necessary to fully automate the testing process. One approach to such automation involves dynamic invariant generation which extracts invariants from program executions. To use such invariants as test oracles, however, it is necessary to distinguish correct from incorrect invariants, a process that currently requires human intervention. In this work we examine this process. In particular, we examine the ability of 30 users, across two empirical studies, to classify invariants generated from three Java programs. Our results indicate that users struggle to classify generated invariants: on average, they misclassify 9.1% to 31.7% of correct invariants and 26.1%-58.6% of incorrect invariants. These results contradict prior studies that suggest that classification by users is easy, and indicate that further work needs to be done to bridge the gap between the effectiveness of dynamic invariant generation in theory, and the ability of users to apply it in practice. Along these lines, we suggest several areas for future work.