@conference {MTMT:35073962,
	title = {Context Switch Sensitive Fault Localization},
	booktitle = {Proceedings of the 28th International Conference on Evaluation and Assessment in Software Engineering},
	year = {2024},
	pages = {110-119},
	abstract = {Spectrum-Based Fault Localization (SBFL) is a popular technique to assist developers in pinpointing faulty elements within their code based on test outcomes and code coverage. In this paper, we examine the impact of context switching, i.e., when developers must frequently shift their attention between different code parts (such as methods and classes) while going down the SBFL ranked list to find the faulty statement. The basis of our study is the observation that it requires less effort to investigate statements that are next to each other rather than those in different methods and classes. In particular, we analyse the number of visited methods and classes, as well as the frequency of switches between them during the fault localization process. We found that, in programs from the Defects4J benchmark, developers need to explore 40 methods and 12 classes on average, before finding the faulty statement, leading to 53 method- and 40 class switches, respectively. We introduce a novel context-aware metric that better approximates the total cost of finding a bug than traditional metrics that solely count the number of statements. Our metric considers both the statement number and the added cost of context switches. We also propose a new strategy for reducing the cost by optimizing the traversal of the elements in the ranked list based on the new context-aware metric. The algorithm not only lowers the number of statements that need to be investigated by 12\% but also significantly reduces the number of class and method switches by 52\%.},
	doi = {10.1145/3661167.3661181},
	url = {https://m2.mtmt.hu/api/publication/35073962},
	author = {Horv{\'a}th, Ferenc and Aszmann, Roland and Soha, P{\'e}ter Attila and Besz{\'e}des, {\'A}rp{\'a}d and Tibor Gyim{\'o}thy}
}
@article {MTMT:3289296,
	title = {Code Coverage Differences of Java Bytecode and Source Code Instrumentation Tools},
	journal = {SOFTWARE QUALITY JOURNAL},
	volume = {27},
	year = {2019},
	pages = {79-123},
	issn = {0963-9314},
	doi = {10.1007/s11219-017-9389-z},
	url = {https://m2.mtmt.hu/api/publication/3289296},
	author = {Horv{\'a}th, Ferenc and Gergely, Tam{\'a}s and Besz{\'e}des, {\'A}rp{\'a}d and Tengeri, D{\'a}vid and Balogh, Gerg{\H o} and Tibor Gyim{\'o}thy}
}
@article {HGB17,
	title = {Code Coverage Differences of {Java} Bytecode and Source Code Instrumentation Tools},
	journal = {Software Quality Journal},
	year = {2017},
	publisher = {Springer US},
	doi = {http://dx.doi.org/10.1007/s11219-017-9389-z},
	author = {Horv{\'a}th, Ferenc and Tam{\'a}s Gergely and {\'A}rp{\'a}d Besz{\'e}des and Tengeri, D{\'a}vid and Gerg{\H o} Balogh and Tibor Gyim{\'o}thy}
}
@article {HBG14,
	title = {Code Coverage Measurement Framework for {Android} Devices},
	journal = {Acta Cybernetica},
	volume = {21},
	number = {3},
	year = {2014},
	note = {Special Issue on SPLST{\textquoteright}13},
	pages = {439-458},
	publisher = {Institute of Informatics, University of Szeged, Szeged, Hungary},
	author = {Horv{\'a}th, Ferenc and Bogn{\'a}r, Szabolcs and Tam{\'a}s Gergely and R{\'a}cz, R{\'o}bert and {\'A}rp{\'a}d Besz{\'e}des and Marinkovi{\'c}, Vladimir}
}
