Article ID Journal Published Year Pages File Type
459237 Journal of Systems and Software 2016 17 Pages PDF
Abstract

•Not all bugs are equal; different surfacing patterns make some harder to expose.•Environment plays a key role on how bugs manifest themselves as failure.•Trigger analysis helps selecting the best V&V and fault tolerance actions to take.

The impact of software bugs on today’s system failures is of primary concern. Many bugs are detected and removed during testing, while others do not show up easily at development time and manifest themselves only as operational failures. Besides the importance of understanding the bug features from the programmer perspective (i.e., what is wrong in the code), a key role in counteracting bugs is played by the chain that from the bug activation leads to failure.This article investigates the characteristics of the bug manifestation process. Through an extensive empirical study, a set of failure-exposing conditions is first identified as bug manifestation characteristics; 666 bug reports from two applications are then analyzed with respect to these characteristics under several perspectives. Findings highlight: (i) the main occurrence patterns of bug triggering conditions in the selected case studies and the role played by the workload, the application and the environment where it runs; (ii) how such conditions evolve over time; (iii) how they relate to bug exposure and fixing difficulty; (iv) how they impact the user. Results provide a fine-grain characterization of bug manifestation that is expected to increase the perceived importance of this dimension in testing, debugging, and fault tolerance strategies.

Keywords
Related Topics
Physical Sciences and Engineering Computer Science Computer Networks and Communications
Authors
, , , ,