The links between human error diversity and software diversity: Implications for fault diversity seeking

The links between human error diversity and software diversity: Implications for fault diversity seeking
复制标题

DOI:
10.1016/j.scico.2014.03.004
复制
发表时间:
2014-09
期刊:
Sci. Comput. Program.
影响因子:
--
通讯作者:
Fuqun Huang;Bin Liu-;You Song;Shreya Keyal
Fuqun Huang;Bin Liu-;You Song;Shreya Keyal
中科院分区:
其他
文献类型:
--
作者:
Fuqun Huang;Bin Liu-;You Song;Shreya Keyal

文献摘要

被引文献

相似文献

软件多样性可以通过独立开发提高N版本软件系统的容错能力。人为错误作为软件故障的主要原因,被认为是多样性寻求中的一个重要因素。然而,很少有科学研究集中在如何寻求软件故障多样性的基础上的人误机制。进行了文献综述,以提取可能区分人与人的错误倾向的因素。此外,我们构建了一个概念模型的人误多样性和软件多样性之间的联系。一个实验的目的是验证的假设,在编程比赛的形式,伴随着认知风格和人格特质的调查。一百九十二个程序提交了相同的问题,并收集了70份调查。代码检查发现23个故障,其中10个是重合故障。结果表明,人格特质似乎没有有效的预测故障多样性作为一个整体模型,而认知风格和程序测量适度解释故障密度的变化。结果还表明,性能水平和重合故障之间的因果关系:重合故障是不太可能发生在技能为基础的性能水平;重合故障介绍了基于规则的性能表现出很高的发生概率,和重合故障介绍了基于知识的性能是由任务本身的内容和格式的形状。基于这些结果,我们提出了一个模型,以寻求软件的多样性和防止重合故障。
Software diversity is known to improve fault tolerance in N-version software systems by independent development. As the leading cause of software faults, human error is considered an important factor in diversity seeking. However, there is little scientific research focusing on how to seek software fault diversity based on human error mechanisms. A literature review was conducted to extract factors that may differentiate people with respect to human error-proneness. In addition, we constructed a conceptual model of the links between human error diversity and software diversity. An experiment was designed to validate the hypotheses, in the form of a programming contest, accompanied by a survey of cognitive styles and personality traits. One hundred ninety-two programs were submitted for the identical problem, and 70 surveys were collected. Code inspection revealed 23 faults, of which 10 were coincident faults. The results show that personality traits seems not effective predictors for fault diversity as a whole model, whereas cognitive styles and program measurements moderately account for the variation of fault density. The results also show causal relations between performance levels and coincident faults: coincident faults are unlikely to occur at skill-based performance level; the coincident faults introduced in rule-based performances show a high probability of occurrence, and the coincident faults introduced in knowledge-based performances are shaped by the content and formats of the task itself. Based on these results, we have proposed a model to seek software diversity and prevent coincident faults.