{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,7,8]],"date-time":"2025-07-08T13:47:29Z","timestamp":1751982449259},"reference-count":155,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2016,1,21]],"date-time":"2016-01-21T00:00:00Z","timestamp":1453334400000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Software Qual J"],"published-print":{"date-parts":[[2017,3]]},"DOI":"10.1007\/s11219-015-9301-7","type":"journal-article","created":{"date-parts":[[2016,1,21]],"date-time":"2016-01-21T16:08:10Z","timestamp":1453392490000},"page":"49-82","update-policy":"http:\/\/dx.doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":15,"title":["10 Years of research on debugging concurrent and multicore software: a systematic mapping study"],"prefix":"10.1007","volume":"25","author":[{"given":"Sara","family":"Abbaspour Asadollah","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Daniel","family":"Sundmark","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sigrid","family":"Eldh","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Hans","family":"Hansson","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Wasif","family":"Afzal","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2016,1,21]]},"reference":[{"key":"9301_CR1","unstructured":"Abbaspour A. S., Hansson, H., Sundmark, D., & Eldh, S. (2015). Towards classification of concurrency bugs based on Observable properties. In Proceedings of the 1st international workshop on complex faults and failures in large software systems. Italy. http:\/\/www.es.mdh.se\/pdf_publications\/3920.pdf ."},{"key":"9301_CR2","doi-asserted-by":"crossref","first-page":"61","DOI":"10.1016\/j.jss.2013.10.056","volume":"90","author":"D Adalid","year":"2014","unstructured":"Adalid, D., Salmern, A., del Mar Gallardo, M., & Merino, P. (2014). Using SPIN for automated debugging of infinite executions of Java programs. Journal of Systems and Software, 90, 61\u201375.","journal-title":"Journal of Systems and Software"},{"key":"9301_CR3","doi-asserted-by":"crossref","unstructured":"Agarwal, R., & Stoller, S. D. (2006). Run-time detection of potential deadlocks for programs with locks, semaphores, and condition variables. In Proceedings of the 2006 workshop on parallel and distributed systems: Testing and debugging, pp. 51\u201360. ACM.","DOI":"10.1145\/1147403.1147413"},{"key":"9301_CR4","doi-asserted-by":"crossref","unstructured":"Al-Shabibi, A., Gerlach, S., Hersch, R. D., & Schaeli, B. (2007). A debugger for flow graph based parallel applications. In Proceedings of the 2007 ACM workshop on parallel and distributed systems: Testing and debugging, pp. 14\u201320. ACM.","DOI":"10.1145\/1273647.1273651"},{"key":"9301_CR5","doi-asserted-by":"crossref","unstructured":"Altekar, G., & Stoica, I. (2009). ODR: Output-deterministic replay for multicore debugging. In Proceedings of the ACM SIGOPS 22nd symposium on operating systems principles, pp. 193\u2013206. ACM.","DOI":"10.1145\/1629575.1629594"},{"issue":"8","key":"9301_CR6","first-page":"34","volume":"24","author":"D Andersen","year":"2007","unstructured":"Andersen, D. (2007). Implementing a new application debugging framework for the multi-core age. Scientific Computing, 24(8), 34\u201335.","journal-title":"Scientific Computing"},{"key":"9301_CR7","doi-asserted-by":"crossref","unstructured":"Anvik, J., Hiew, L., & Murphy, G. C. (2006). Who should fix this bug? In Proceedings of the 28th international conference on software engineering, pp. 361\u2013370. ACM.","DOI":"10.1145\/1134285.1134336"},{"key":"9301_CR8","doi-asserted-by":"crossref","unstructured":"Arulraj, J., Chang, P.-C., Jin, G., & Lu, S. (2013). Production-run software failure diagnosis via hardware performance counters. In ACM SIGARCH Computer Architecture News, Vol. 41, pp. 101\u2013112. ACM.","DOI":"10.1145\/2451116.2451128"},{"key":"9301_CR10","doi-asserted-by":"crossref","unstructured":"Ball, T., Burckhardt, S., de Halleux, J., Musuvathi, M., & Qadeer, S. (2009). Deconstructing concurrency heisenbugs. In 31st international conference on software engineering-companion volume, 2009. ICSE-Companion 2009, pp. 403\u2013404. IEEE.","DOI":"10.1109\/ICSE-COMPANION.2009.5071033"},{"key":"9301_CR11","doi-asserted-by":"crossref","unstructured":"Berger, E. D., Yang, T., Liu, T., & Novark, G. (2009). Grace: Safe multithreaded programming for C\/C++. In ACM sigplan notices, Vol. 44, pp. 81\u201396. ACM.","DOI":"10.1145\/1639949.1640096"},{"key":"9301_CR12","doi-asserted-by":"crossref","unstructured":"Bond, M. D., Kulkarni, M., Cao, M., Zhang, M., Fathi Salmi, M., Biswas, S., Sengupta, A., & Huang, J. (2013). Octet: Capturing and controlling cross-thread dependences efficiently. In ACM SIGPLAN notices, Vol. 48, pp. 693\u2013712. ACM.","DOI":"10.1145\/2544173.2509519"},{"key":"9301_CR13","unstructured":"Brito, M., Felizardo, K. R., Souza, P., & Souza, S. (2010). Concurrent software testing: A systematic review. On testing software and systems: Short papers."},{"key":"9301_CR14","doi-asserted-by":"crossref","unstructured":"Buttigieg, V., & Briffa, J. A. (2011). Codebook and marker sequence design for synchronization-correcting codes. In 2011 IEEE international symposium on information theory proceedings (ISIT), pp. 1579\u20131583. IEEE.","DOI":"10.1109\/ISIT.2011.6033810"},{"key":"9301_CR15","doi-asserted-by":"crossref","unstructured":"Chen, F., Serbanuta, T.-F., & Rosu, G. (2008). jPredictor. In ACM\/IEEE 30th international conference on software engineering, 2008. ICSE\u201908, pp. 221\u2013230. IEEE.","DOI":"10.1145\/1368088.1368119"},{"key":"9301_CR16","doi-asserted-by":"crossref","unstructured":"Chen, H. Y. (2005). Analysis of potential deadlock in Java multithreaded object-oriented programs. In 2005 IEEE international conference on systems, man and cybernetics, Vol. 1, pp. 146\u2013150. IEEE.","DOI":"10.1109\/ICSMC.2005.1571136"},{"key":"9301_CR17","doi-asserted-by":"crossref","unstructured":"Chen, J., & MacDonald, S. (2007). Testing concurrent programs using value schedules. In Proceedings of the twenty-second IEEE\/ACM international conference on automated software engineering, pp. 313\u2013322. ACM.","DOI":"10.1145\/1321631.1321678"},{"key":"9301_CR18","doi-asserted-by":"crossref","unstructured":"Chen, Q., & Wang, L. (2009). An integrated framework for checking concurrency-related programming errors. In Computer software and applications conference, 2009. COMPSAC\u201909. 33rd annual IEEE international, Vol. 1, pp. 676\u2013679. IEEE.","DOI":"10.1109\/COMPSAC.2009.105"},{"key":"9301_CR19","unstructured":"Chen, S.-Y., Neng, C., Yang, G.-H., Jone, W.-B., & Chen, T.-F. (2012). IMITATOR: A deterministic multicore replay system with refining techniques. In 2012 international symposium on VLSI design, automation, and test (VLSI-DAT), pp. 1\u20134. IEEE."},{"key":"9301_CR20","doi-asserted-by":"crossref","unstructured":"Chen, Y., & Chen, H. (2013). Scalable deterministic replay in a parallel full-system emulator. In ACM SIGPLAN notices, Vol. 48, pp. 207\u2013218. ACM.","DOI":"10.1145\/2517327.2442537"},{"issue":"1","key":"9301_CR21","doi-asserted-by":"crossref","first-page":"11","DOI":"10.1016\/j.parco.2010.09.002","volume":"37","author":"Y-C Chiu","year":"2011","unstructured":"Chiu, Y.-C., Shieh, C.-K., Huang, T.-C., Liang, T.-Y., & Chu, K.-C. (2011). Data race avoidance and replay scheme for developing and debugging parallel programs on distributed shared memory systems. Parallel Computing, 37(1), 11\u201325.","journal-title":"Parallel Computing"},{"issue":"9","key":"9301_CR22","doi-asserted-by":"crossref","first-page":"151","DOI":"10.1016\/j.entcs.2007.04.001","volume":"174","author":"S Copty","year":"2007","unstructured":"Copty, S., & Ur, S. (2007). Toward automatic concurrent debugging via minimal program mutant generation with aspectJ. Electronic Notes in Theoretical Computer Science, 174(9), 151\u2013165.","journal-title":"Electronic Notes in Theoretical Computer Science"},{"key":"9301_CR23","doi-asserted-by":"crossref","unstructured":"Dantas, A., Brasileiro, F., & Cirne, W. (2008). Improving automated testing of multi-threaded software. In 2008 1st international conference on software testing, verification, and validation, pp. 521\u2013524. IEEE.","DOI":"10.1109\/ICST.2008.38"},{"issue":"4","key":"9301_CR24","first-page":"55","volume":"10","author":"M Mar Gallardo del","year":"2006","unstructured":"del Mar Gallardo, M., Martnez, J., Merino, P., & Pimentel, E. (2006). On the evolution of reliability methods for critical software. Journal of Integrated Design and Process Science, 10(4), 55\u201367.","journal-title":"Journal of Integrated Design and Process Science"},{"key":"9301_CR25","doi-asserted-by":"crossref","unstructured":"Desouza, J., Kuhn, B., De Supinski, B. R., Samofalov, V., Zheltov, S., & Bratanov, S. (2005). Automated, scalable debugging of MPI programs with Intel Message Checker. In Proceedings of the second international workshop on software engineering for high performance computing system applications, pp. 78\u201382. ACM.","DOI":"10.1145\/1145319.1145342"},{"issue":"1","key":"9301_CR26","doi-asserted-by":"crossref","first-page":"40","DOI":"10.1109\/MM.2010.14","volume":"30","author":"J Devietti","year":"2010","unstructured":"Devietti, J., Lucia, B., Ceze, L., & Oskin, M. (2010). DMP: Deterministic shared-memory multiprocessing. IEEE Micro, 30(1), 40\u201349.","journal-title":"IEEE Micro"},{"issue":"2","key":"9301_CR27","doi-asserted-by":"crossref","first-page":"126","DOI":"10.1016\/j.jocs.2013.12.002","volume":"5","author":"MN Dinh","year":"2014","unstructured":"Dinh, M. N., Abramson, D., & Jin, C. (2014). Statistical assertion: A more powerful method for debugging scientific applications. Journal of Computational Science, 5(2), 126\u2013134.","journal-title":"Journal of Computational Science"},{"issue":"1","key":"9301_CR28","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1002\/cpe.2918","volume":"26","author":"F Eichinger","year":"2014","unstructured":"Eichinger, F., Pankratius, V., & Bohm, K. (2014). Data mining for defects in multicore applications: An entropy-based call-graph technique. Concurrency and Computation: Practice and Experience, 26(1), 1\u201320.","journal-title":"Concurrency and Computation: Practice and Experience"},{"key":"9301_CR29","doi-asserted-by":"crossref","unstructured":"Eichinger, F., Pankratius, V., Gro $$\\backslash $$ \\ s se, P. W. L., & Bhm, K. (2010). Localizing defects in multithreaded programs by mining dynamic call graphs. In Testing practice and research techniques, pp. 56\u201371. Springer.","DOI":"10.1007\/978-3-642-15585-7_7"},{"key":"9301_CR30","doi-asserted-by":"crossref","unstructured":"Elmas, T., Sezgin, A., Tasiran, S., & Qadeer, S. (2009). An annotation assistant for interactive debugging of programs with common synchronization idioms. In Proceedings of the 7th workshop on parallel and distributed systems: Testing, analysis, and debugging, p. 10. ACM.","DOI":"10.1145\/1639622.1639632"},{"issue":"1","key":"9301_CR31","doi-asserted-by":"publisher","first-page":"2","DOI":"10.1016\/j.infsof.2010.05.011","volume":"53","author":"E Engstr\u00f6m","year":"2011","unstructured":"Engstr\u00f6m, E., & Runeson, P. (2011). Software product line testing\u2014A systematic mapping study. Information Software Technology, 53(1), 2\u201313. doi: 10.1016\/j.infsof.2010.05.011 .","journal-title":"Information Software Technology"},{"key":"9301_CR32","doi-asserted-by":"crossref","unstructured":"Flanagan, C., & Freund, S. N. (2010). Adversarial memory for detecting destructive races. In ACM sigplan notices, Vol. 45, pp. 244\u2013254. ACM.","DOI":"10.1145\/1809028.1806625"},{"issue":"4","key":"9301_CR33","doi-asserted-by":"crossref","first-page":"20","DOI":"10.1145\/1377492.1377495","volume":"30","author":"C Flanagan","year":"2008","unstructured":"Flanagan, C., Freund, S. N., Lifshin, M., & Qadeer, S. (2008). Types for atomicity: Static checking and inference for Java. ACM Transactions on Programming Languages and Systems (TOPLAS), 30(4), 20.","journal-title":"ACM Transactions on Programming Languages and Systems (TOPLAS)"},{"key":"9301_CR34","doi-asserted-by":"crossref","unstructured":"Fonseca, P., Li, C., & Rodrigues, R. (2011). Finding complex concurrency bugs in large multi-threaded applications. In Proceedings of the sixth conference on computer systems, pp. 215\u2013228. ACM.","DOI":"10.1145\/1966445.1966465"},{"key":"9301_CR35","doi-asserted-by":"crossref","unstructured":"Fonseca, P., Li, C., Singhal, V., & Rodrigues, R. (2010). A study of the internal and external effects of concurrency bugs. In 2010 IEEE\/IFIP international conference on dependable systems and networks (DSN), pp. 221\u2013230. IEEE.","DOI":"10.1109\/DSN.2010.5544315"},{"key":"9301_CR36","doi-asserted-by":"crossref","unstructured":"Francesca, G., Santone, A., Vaglini, G., & Villani, M. L. (2011). Ant colony optimization for deadlock detection in concurrent systems. In Computer software and applications conference (COMPSAC), 2011 IEEE 35th Annual, pp. 108\u2013117. IEEE.","DOI":"10.1109\/COMPSAC.2011.22"},{"issue":"1","key":"9301_CR37","doi-asserted-by":"crossref","first-page":"239","DOI":"10.1145\/1961295.1950394","volume":"39","author":"Q Gao","year":"2011","unstructured":"Gao, Q., Zhang, W., Chen, Z., Zheng, M., & Qin, F. (2011). 2ndstrike: Toward manifesting hidden concurrency typestate bugs. ACM SIGARCH Computer Architecture News, 39(1), 239\u2013250.","journal-title":"ACM SIGARCH Computer Architecture News"},{"key":"9301_CR38","doi-asserted-by":"crossref","unstructured":"Gesbert, L, Hu, Z, Loulergue, F, Matsuzaki, K, & Tesson, J (2010) Systematic development of correct bulk synchronous parallel programs. In 2010 international conference on parallel and distributed computing, applications and technologies (PDCAT), pp. 334\u2013340. IEEE.","DOI":"10.1109\/PDCAT.2010.86"},{"key":"9301_CR39","doi-asserted-by":"crossref","unstructured":"Godefroid, P. (1997). Model checking for programming languages using verisoft. In Proceedings of the 24th acm sigplan-sigact symposium on principles of programming languages (popl\u201997). New York, NY, USA: ACM.","DOI":"10.1145\/263699.263717"},{"key":"9301_CR40","doi-asserted-by":"crossref","unstructured":"Gottbrath, C. (2006). Eliminating parallel application memory bugs with totalview. In Proceedings of the 2006 ACM\/IEEE conference on supercomputing, p. 210. ACM.","DOI":"10.1145\/1188455.1188674"},{"key":"9301_CR41","unstructured":"Gottschlich, J. E., Pokam, G. A., Pereira, C. L., & Wu, Y. (2013). Concurrent predicates: A debugging technique for every parallel programmer. In Proceedings of the 22nd international conference on parallel architectures and compilation techniques, pp. 331\u2013340. IEEE Press."},{"key":"9301_CR42","doi-asserted-by":"crossref","unstructured":"Gupta, S., Sultan, F., Cadambi, S., Ivancic, F., & Rotteler, M. (2009). Using hardware transactional memory for data race detection. In IEEE international symposium on parallel & distributed processing, 2009. IPDPS 2009. pp. 1\u201311. IEEE.","DOI":"10.1109\/IPDPS.2009.5161006"},{"key":"9301_CR43","doi-asserted-by":"crossref","unstructured":"Ha, O.-K., Kuh, I.-B., Tchamgoue, G. M., & Jun, Y.-K. (2012). On-the-fly detection of data races in OpenMP programs. In Proceedings of the 2012 workshop on parallel and distributed systems: Testing, analysis, and debugging, pp. 1\u201310. ACM.","DOI":"10.1145\/2338967.2336808"},{"key":"9301_CR44","doi-asserted-by":"crossref","unstructured":"Hilbrich, T., Protze, J., Schulz, M., de Supinski, B. R., & Mller, M. S. (2012). MPI runtime error detection with MUST: Advances in deadlock detection. In Proceedings of the international conference on high performance computing, networking, storage and analysis, 30. IEEE Computer Society Press.","DOI":"10.1109\/SC.2012.79"},{"issue":"2","key":"9301_CR45","doi-asserted-by":"crossref","first-page":"377","DOI":"10.1016\/j.jss.2012.08.063","volume":"86","author":"S Hong","year":"2013","unstructured":"Hong, S., & Kim, M. (2013). Effective pattern-driven concurrency bug detection for operating systems. Journal of Systems and Software, 86(2), 377\u2013388.","journal-title":"Journal of Systems and Software"},{"key":"9301_CR46","doi-asserted-by":"crossref","unstructured":"Hower, D. R., & Hill, M. D. (2008). Rerun: Exploiting episodes for lightweight memory race recording. In ACM SIGARCH computer architecture news, Vol. 36, pp. 265\u2013276. IEEE computer society.","DOI":"10.1145\/1394608.1382144"},{"key":"9301_CR47","doi-asserted-by":"crossref","unstructured":"Huang, J., Meredith, P. O., & Rosu, G. (2014). Maximal sound predictive race detection with control flow abstraction. In Proceedings of the 35th ACM SIGPLAN conference on programming language design and implementation, p. 36. ACM.","DOI":"10.1145\/2666356.2594315"},{"key":"9301_CR48","doi-asserted-by":"crossref","unstructured":"Huang, J., & Bond, M. D. (2013). Efficient context sensitivity for dynamic analyses via calling context uptrees and customized memory management. In Proceedings of the 2013 ACM SIGPLAN international conference on object oriented programming systems languages & #38; applications. OOPSLA \u201913, pp. 53\u201372. New York, NY, USA: ACM. ISBN 978-1-4503-2374-1.","DOI":"10.1145\/2509136.2509510"},{"key":"9301_CR49","doi-asserted-by":"crossref","unstructured":"Huang, R., Halberg, E., & Suh, G. E. (2013). Non-race concurrency bug detection through order-sensitive critical sections. In ACM SIGARCH computer architecture news, Vol. 41, pp. 655\u2013666. ACM.","DOI":"10.1145\/2508148.2485978"},{"key":"9301_CR50","doi-asserted-by":"publisher","unstructured":"Jalali, S., & Wohlin, C. (2012). Systematic literature studies: Database searches versus backward snowballing. In 2012 ACM-IEEE International symposium on empirical software engineering and measurement (ESEM), pp. 29\u201338, doi: 10.1145\/2372251.2372257 .","DOI":"10.1145\/2372251.2372257"},{"key":"9301_CR51","unstructured":"Jannesari, A., & Tichy, W. F. (2008). On-the-fly race detection in multi-threaded programs. In Proceedings of the 6th workshop on parallel and distributed systems: Testing, analysis, and debugging, p. 6. ACM."},{"issue":"10","key":"9301_CR52","doi-asserted-by":"crossref","first-page":"2606","DOI":"10.1109\/TPDS.2013.209","volume":"25","author":"A Jannesari","year":"2014","unstructured":"Jannesari, A., & Tichy, W. F. (2014). Library-independent data race detection. Parallel and Distributed Systems, IEEE Transactions on, 25(10), 2606\u20132616.","journal-title":"Parallel and Distributed Systems, IEEE Transactions on"},{"issue":"6","key":"9301_CR53","doi-asserted-by":"crossref","first-page":"389","DOI":"10.1145\/1993316.1993544","volume":"46","author":"G Jin","year":"2011","unstructured":"Jin, G., Song, L., Zhang, W., Shan, L., & Liblit, B. (2011). Automated atomicity-violation fixing. ACM SIGPLAN Notices, 46(6), 389\u2013400.","journal-title":"ACM SIGPLAN Notices"},{"key":"9301_CR54","doi-asserted-by":"crossref","unstructured":"Joshi, P., & Sen, K. (2008). Predictive typestate checking of multithreaded java programs. In Proceedings of the 2008 23rd IEEE\/ACM international conference on automated software engineering, pp. 288\u2013296. IEEE computer society.","DOI":"10.1109\/ASE.2008.39"},{"key":"9301_CR55","doi-asserted-by":"crossref","unstructured":"Jyoti, A., & Arora, V. (2014). Debugging and visualization techniques for multithreaded programs: A survey. In Recent advances and innovations in engineering (ICRAIE), 2014, pp. 1\u20136. IEEE.","DOI":"10.1109\/ICRAIE.2014.6909202"},{"key":"9301_CR56","unstructured":"Kahlon, V. (2012). Automatic lock insertion in concurrent programs. In Formal methods in computer-aided design (FMCAD), 2012, pp. 16\u201323. IEEE."},{"issue":"4","key":"9301_CR57","doi-asserted-by":"crossref","first-page":"321","DOI":"10.1007\/s10009-013-0274-1","volume":"15","author":"V Kahlon","year":"2013","unstructured":"Kahlon, V., Sankaranarayanan, S., & Gupta, A. (2013). Static analysis for concurrent programs with applications to data race detection. International Journal on Software Tools for Technology Transfer, 15(4), 321\u2013336.","journal-title":"International Journal on Software Tools for Technology Transfer"},{"key":"9301_CR58","doi-asserted-by":"crossref","unstructured":"Kahlon, V., Yang, Y., Sankaranarayanan, S., & Gupta, A. (2007). Fast and accurate static data-race detection for concurrent programs. In Computer aided verification, pp. 226\u2013239. Springer.","DOI":"10.1007\/978-3-540-73368-3_26"},{"issue":"4","key":"9301_CR59","first-page":"157","volume":"8","author":"M-S Kang","year":"2014","unstructured":"Kang, M.-S., Ha, O.-K., & Jun, Y.-K. (2014). Visualization tool for debugging data races in structured fork-join parallel programs. International Journal of Software Engineering and Its Applications, 8(4), 157\u2013168.","journal-title":"International Journal of Software Engineering and Its Applications"},{"key":"9301_CR60","doi-asserted-by":"crossref","unstructured":"Kasikci, B., Zamfir, C., & Candea, G. (2013). RaceMob: Crowdsourced data race detection. In Proceedings of the twenty-fourth ACM symposium on operating systems principles, pp. 406\u2013422. ACM.","DOI":"10.1145\/2517349.2522736"},{"key":"9301_CR61","unstructured":"Keele, S. (2007). Guidelines for performing systematic literature reviews in software engineering, Technical report, Technical report, EBSE Technical Report EBSE-2007-01."},{"issue":"11","key":"9301_CR62","doi-asserted-by":"crossref","first-page":"52","DOI":"10.1109\/MC.2009.391","volume":"42","author":"T Kelly","year":"2009","unstructured":"Kelly, T., Wang, Y., Lafortune, S., & Mahlke, S. (2009). Eliminating concurrency bugs with control engineering. IEEE Computer, 42(11), 52\u201360.","journal-title":"IEEE Computer"},{"key":"9301_CR63","doi-asserted-by":"crossref","unstructured":"Khoshavi, N., Zarandi, H.R., & Maghsoudloo, M. (2012). Two control-flow error recovery methods for multithreaded programs running on multi-core processors. In Microelectronics (MIEL), 2012 28th international conference on, pp. 371\u2013374. IEEE.","DOI":"10.1109\/MIEL.2012.6222877"},{"issue":"11","key":"9301_CR64","first-page":"1261","volume":"43","author":"KE Kiefer","year":"2013","unstructured":"Kiefer, K. E., & Moser, L. E. (2013). Replay debugging of non-deterministic executions in the Kernel-based virtual machine. Software: Practice and Experience, 43(11), 1261\u20131281.","journal-title":"Software: Practice and Experience"},{"key":"9301_CR65","doi-asserted-by":"crossref","unstructured":"Kim, B.-C., & Jun, Y.-K. (2010). Program visualization for debugging deadlocks in multithreaded programs. In Advances in software engineering, pp. 228\u2013236. Springer.","DOI":"10.1007\/978-3-642-17578-7_23"},{"key":"9301_CR66","doi-asserted-by":"crossref","unstructured":"Kim, Y.-J., Lim, J.-S., & Jun, Y.-K. (2007a). Scalable thread visualization for debugging data races in OpenMP programs. In Advances in grid and pervasive computing, pp. 310\u2013321. Springer.","DOI":"10.1007\/978-3-540-72360-8_27"},{"key":"9301_CR67","doi-asserted-by":"crossref","unstructured":"Kim, Y.-J., Kang, M.-H., Ha, O.-K., & Jun, Y.-K. (2007b). Efficient race verification for debugging programs with openMP directives. In Parallel computing technologies, pp. 230\u2013239. Springer.","DOI":"10.1007\/978-3-540-73940-1_24"},{"key":"9301_CR68","doi-asserted-by":"crossref","unstructured":"Kistler, Michael, & Brokenshire, Daniel. (2011). Detecting race conditions in asynchronous DMA operations with full system simulation. In Performance analysis of systems and software (ISPASS), 2011 IEEE international symposium on, pp. 207\u2013215. IEEE.","DOI":"10.1109\/ISPASS.2011.5762737"},{"issue":"12","key":"9301_CR69","first-page":"1","volume":"57","author":"H Li","year":"2014","unstructured":"Li, H., Luo, J., & Li, W. (2014). A formal semantics for debugging synchronous message passing-based concurrent programs. Science China Information Sciences, 57(12), 1\u201318.","journal-title":"Science China Information Sciences"},{"key":"9301_CR70","doi-asserted-by":"crossref","unstructured":"Liu, P., & Zhang, C. (2012). Axis: Automatically fixing atomicity violations through solving control constraints. In Proceedings of the 34th international conference on software engineering, pp. 299\u2013309. IEEE Press.","DOI":"10.1109\/ICSE.2012.6227184"},{"key":"9301_CR71","doi-asserted-by":"crossref","unstructured":"Lonnberg, J., Ben-Ari, Mordechai, & Malmi, Lauri. (2011). Visualising concurrent programs with dynamic dependence graphs. In Visualizing software for understanding and analysis (VISSOFT), 2011 6th IEEE international workshop on, pp. 1\u20134. IEEE.","DOI":"10.1109\/VISSOF.2011.6069456"},{"key":"9301_CR72","doi-asserted-by":"crossref","unstructured":"Lu, K., Zhou, X., Wang, X., Zhang, W., & Li, G. (2013). RaceFree: An efficient multi-threading model for determinism. In ACM SIGPLAN notices, Vol. 48, pp. 297\u2013298. ACM.","DOI":"10.1145\/2517327.2442553"},{"key":"9301_CR73","doi-asserted-by":"crossref","unstructured":"Lu, L., Ji, W., & Scott, M. L. (2014). Dynamic enforcement of determinism in a parallel scripting language. In Proceedings of the 35th ACM SIGPLAN conference on programming language design and implementation, p. 53. ACM.","DOI":"10.1145\/2666356.2594300"},{"key":"9301_CR74","doi-asserted-by":"crossref","unstructured":"Lu, S., Jiang, W., & Zhou, Y. (2007). A study of interleaving coverage criteria. In The 6th joint meeting on European software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering: companion papers, pp. 533\u2013536. ACM.","DOI":"10.1145\/1287624.1287703"},{"key":"9301_CR75","doi-asserted-by":"crossref","unstructured":"Lu, S., Park, S., Seo, E., & Zhou, Y. (2008). Learning from mistakes: a comprehensive study on real world concurrency bug characteristics. In ACM Sigplan Notices, Vol. 43, pp. 329\u2013339. ACM.","DOI":"10.1145\/1353536.1346323"},{"key":"9301_CR76","doi-asserted-by":"crossref","unstructured":"Lucia, B., & Ceze, L. (2009). Finding concurrency bugs with context-aware communication graphs. In Proceedings of the 42nd annual IEEE\/ACM international symposium on microarchitecture, pp. 553\u2013563. ACM.","DOI":"10.1145\/1669112.1669181"},{"key":"9301_CR77","doi-asserted-by":"crossref","unstructured":"Lucia, B., Ceze, L., & Strauss, K. (2010). ColorSafe: Architectural support for debugging and dynamically avoiding multi-variable atomicity violations. In ACM SIGARCH computer architecture news, Vol. 38, pp. 222\u2013233. ACM.","DOI":"10.1145\/1816038.1815988"},{"key":"9301_CR78","doi-asserted-by":"crossref","unstructured":"Ma, H., Chen, Q., Wang, L., Liao, C., & Quinlan, D. (2012). An OpenMP analyzer for detecting concurrency errors. In Parallel processing workshops (ICPPW), 2012 41st international conference on, pp. 590\u2013591. IEEE.","DOI":"10.1109\/ICPPW.2012.83"},{"key":"9301_CR79","doi-asserted-by":"crossref","unstructured":"Machado, N., Romano, P., & Rodrigues, L. (2012). Lightweight cooperative logging for fault replication in concurrent programs. In 2012 42nd annual IEEE\/IFIP international conference on dependable systems and networks (DSN), pp. 1\u201312. IEEE.","DOI":"10.1109\/DSN.2012.6263953"},{"key":"9301_CR80","doi-asserted-by":"crossref","unstructured":"Maiya, P., Kanade, A., & Majumdar, R. (2014). Race detection for Android applications. In Proceedings of the 35th ACM SIGPLAN conference on programming language design and implementation, p. 34. ACM.","DOI":"10.1145\/2666356.2594311"},{"key":"9301_CR81","doi-asserted-by":"crossref","unstructured":"Makela, J.-M., Leppanen, V., & Forsell, M. (2013). Towards a parallel debugging framework for the massively multi-threaded, step-synchronous REPLICA architecture. In Proceedings of the 14th international conference on computer systems and technologies, pp. 153\u2013160. ACM.","DOI":"10.1145\/2516775.2516818"},{"key":"9301_CR82","doi-asserted-by":"crossref","unstructured":"Martin, J.-P., Hicks, M., Costa, M., Akritidis, P., & Castro, M. (2010). Dynamically checking ownership policies in concurrent C\/C++ programs. In ACM Sigplan Notices, Vol. 45, pp. 457\u2013470. ACM.","DOI":"10.1145\/1707801.1706351"},{"key":"9301_CR83","doi-asserted-by":"crossref","unstructured":"Moiseev, M., Glukhikh, M., Zakharov, A., & Richter, H. (2013). A static analysis approach to data race detection in systemic designs. In 2013 IEEE 16th international symposium on design and diagnostics of electronic circuits & systems (DDECS), pp. 54\u201359. IEEE.","DOI":"10.1109\/DDECS.2013.6549788"},{"key":"9301_CR84","doi-asserted-by":"crossref","unstructured":"Montesinos, P., Ceze, L., & Torrellas, J. (2008). Delorean: Recording and deterministically replaying shared-memory multiprocessor execution ef? ciently. In 35th International symposium on computer architecture, 2008. ISCA\u201908, pp. 289\u2013300. IEEE.","DOI":"10.1109\/ISCA.2008.36"},{"issue":"5","key":"9301_CR85","first-page":"995","volume":"22","author":"M Mozaffari-Kermani","year":"2014","unstructured":"Mozaffari-Kermani, M., Azarderakhsh, R., Lee, C.-Y., & Bayat-Sarmadi, S. (2014). Reliable concurrent error detection architectures for extended euclidean-based division over gf(m2). Very large scale integration (VLSI) systems. IEEE Transactions on, 22(5), 995\u20131003.","journal-title":"IEEE Transactions on"},{"issue":"7","key":"9301_CR86","doi-asserted-by":"crossref","first-page":"1304","DOI":"10.1016\/j.infsof.2012.08.013","volume":"55","author":"S Nanz","year":"2013","unstructured":"Nanz, S., Torshizi, F., Pedroni, M., & Meyer, B. (2013). Design of an empirical study for comparing the usability of concurrent programming languages. Information and Software Technology, 55(7), 1304\u20131315.","journal-title":"Information and Software Technology"},{"key":"9301_CR87","doi-asserted-by":"crossref","unstructured":"Negishi, Y., Murata, H., Cong, G., Wen, H.-F., Chung, I. et al. (2012). A static analysis tool using a three-step approach for data races in HPC programs. In Proceedings of the 2012 workshop on parallel and distributed systems: Testing, analysis, and debugging, pp. 11\u201317. ACM.","DOI":"10.1145\/2338967.2336809"},{"issue":"4","key":"9301_CR88","doi-asserted-by":"crossref","first-page":"570","DOI":"10.1007\/s10766-012-0237-2","volume":"41","author":"C O\u00dfner","year":"2013","unstructured":"O\u00dfner, C., & B\u00f6hm, K. (2013). Graphs for mining-based defect localization in multithreaded programs. International Journal of Parallel Programming, 41(4), 570\u2013593.","journal-title":"International Journal of Parallel Programming"},{"key":"9301_CR89","doi-asserted-by":"crossref","unstructured":"Park, C.-S., & Sen, K. (2008). Randomized active atomicity violation detection in concurrent programs. In Proceedings of the 16th ACM SIGSOFT international symposium on foundations of software engineering, pp. 135\u2013145. ACM.","DOI":"10.1145\/1453101.1453121"},{"key":"9301_CR90","doi-asserted-by":"crossref","unstructured":"Park, C.-S., & Sen, K. (2012). Concurrent breakpoints. In ACM SIGPLAN notices, Vol. 47, pp. 331\u2013332. ACM.","DOI":"10.1145\/2370036.2145880"},{"key":"9301_CR91","doi-asserted-by":"crossref","unstructured":"Park, H.-D., & Jun, Y.-K. (2012). Detecting first races in shared-memory parallel programs with random synchronization. In Computer applications for graphics, grid computing, and industrial environment, pp. 165\u2013169. Springer.","DOI":"10.1007\/978-3-642-35600-1_24"},{"key":"9301_CR92","doi-asserted-by":"crossref","unstructured":"Park, M.-Y., & Chung, S.-H. (2008). Detection of first races for debugging message-passing programs. In Computer and information technology, 2008. CIT 2008. 8th IEEE international conference on, pp. 261\u2013266. IEEE.","DOI":"10.1109\/CIT.2008.4594684"},{"key":"9301_CR93","doi-asserted-by":"crossref","unstructured":"Park, M.-Y., Kim, S. Y., & Park, H.-R. (2007). Visualization of affect-relations of message races for debugging MPI programs. In IEEE international conference on granular computing, 2007. GRC 2007. pp. 745\u2013745. IEEE.","DOI":"10.1109\/GrC.2007.120"},{"key":"9301_CR94","doi-asserted-by":"crossref","unstructured":"Park, S. (2013). Debugging non-deadlock concurrency bugs. In Proceedings of the 2013 international symposium on software testing and analysis, pp. 358\u2013361. ACM.","DOI":"10.1145\/2483760.2492395"},{"key":"9301_CR95","doi-asserted-by":"crossref","unstructured":"Park, S., Vuduc, R., & Harrold, M. J. (2012). A unified approach for localizing non-deadlock concurrency bugs. In 2012 IEEE Fifth International Conference on software testing, verification and validation (ICST), pp. 51\u201360. IEEE.","DOI":"10.1109\/ICST.2012.85"},{"key":"9301_CR96","doi-asserted-by":"crossref","unstructured":"Petersen, K., Feldt, R., Mujtaba, S., & Mattsson, M. (2008). Systematic mapping studies in software engineering. In 12th International conference on evaluation and assessment in software engineering, Vol. 17.","DOI":"10.14236\/ewic\/EASE2008.8"},{"key":"9301_CR97","doi-asserted-by":"crossref","unstructured":"Prvulovic, M. (2006). CORD: Cost-effective (and nearly overhead-free) order-recording and data race detection. In The twelfth international symposium on high-performance computer architecture, 2006, pp. 232\u2013243. IEEE.","DOI":"10.1109\/HPCA.2006.1598132"},{"issue":"5","key":"9301_CR98","doi-asserted-by":"crossref","first-page":"400","DOI":"10.1016\/j.jlamp.2014.07.003","volume":"83","author":"KI Pun","year":"2014","unstructured":"Pun, K. I., Steffen, M., & Stolz, V. (2014). Deadlock checking by data race detection. Journal of Logical and Algebraic Methods in Programming, 83(5), 400\u2013426.","journal-title":"Journal of Logical and Algebraic Methods in Programming"},{"key":"9301_CR99","doi-asserted-by":"crossref","unstructured":"Qi, S., Otsuki, N., Nogueira, L. O., Muzahid, A., & Torrellas, J. (2012). Pacman: Tolerating asymmetric data races with unintrusive hardware. In 2012 IEEE 18th International symposium on high performance computer architecture, pp. 1\u201312. IEEE.","DOI":"10.1109\/HPCA.2012.6169039"},{"key":"9301_CR100","doi-asserted-by":"crossref","unstructured":"Qi, Y., Das, R., Luo, Z. D., & Trotter, M. (2009). Multicoresdk: A practical and efficient data race detector for real-world applications. In Proceedings of the 7th workshop on parallel and distributed systems: Testing, analysis, and debugging, p. 5. ACM.","DOI":"10.1145\/1639622.1639627"},{"key":"9301_CR101","doi-asserted-by":"crossref","unstructured":"Raychev, V., Vechev, M., & Sridharan, M. (2013). Effective race detection for event-driven programs. In ACM SIGPLAN notices, Vol. 48, pp. 151\u2013166. ACM.","DOI":"10.1145\/2544173.2509538"},{"key":"9301_CR102","doi-asserted-by":"crossref","unstructured":"Rister, B. D., Campbell, J., Pillai, P., & Mowry, T. C. (2007). Integrated debugging of large modular robot ensembles. In 2007 IEEE international conference on robotics and automation, pp. 2227\u20132234. IEEE.","DOI":"10.1109\/ROBOT.2007.363651"},{"issue":"3","key":"9301_CR103","doi-asserted-by":"crossref","first-page":"401","DOI":"10.1007\/s10836-013-5355-2","volume":"29","author":"D Rossi","year":"2013","unstructured":"Rossi, D., Omaa, M., Garrammone, G., Metra, C., Jas, A., & Galivanche, R. (2013). Low cost concurrent error detection strategy for the control logic of high performance microprocessors and its application to the instruction decoder. Journal of Electronic Testing, 29(3), 401\u2013413.","journal-title":"Journal of Electronic Testing"},{"key":"9301_CR104","doi-asserted-by":"crossref","unstructured":"Sack, P., Bliss, B. E., Ma, Z., Petersen, P., & Torrellas, J. (2006). Accurate and efficient filtering for the intel thread checker race detector. In Proceedings of the 1st workshop on Architectural and system support for improving software dependability, pp. 34\u201341. ACM.","DOI":"10.1145\/1181309.1181315"},{"key":"9301_CR105","doi-asserted-by":"crossref","unstructured":"Sadowski, C., & Yi, J. (2009). Tiddle: A trace description language for generating concurrent benchmarks to test dynamic analyses. In Proceedings of the seventh international workshop on dynamic analysis, pp. 15\u201321. ACM.","DOI":"10.1145\/2134243.2134248"},{"key":"9301_CR106","doi-asserted-by":"crossref","unstructured":"Said, M., Wang, C., Yang, Z., & Sakallah, K. (2011). Generating data race witnesses by an SMT-based analysis. In NASA formal methods, pp. 313\u2013327. Springer.","DOI":"10.1007\/978-3-642-20398-5_23"},{"key":"9301_CR107","unstructured":"Schaeli, B., & Hersch, R. D. (2008). Dynamic testing of flow graph based parallel applications. In Proceedings of the 6th workshop on parallel and distributed systems: Testing, analysis, and debugging, p. 2. ACM."},{"key":"9301_CR109","doi-asserted-by":"crossref","unstructured":"Schneider, J. (2014). Tracking down root causes of defects in simulink models. In Proceedings of the 29th ACM\/IEEE international conference on Automated software engineering. ACM.","DOI":"10.1145\/2642937.2642943"},{"key":"9301_CR110","doi-asserted-by":"publisher","first-page":"85","DOI":"10.1016\/j.entcs.2004.01.032","volume":"113","author":"V Schuppan","year":"2005","unstructured":"Schuppan, V., Baur, M., & Biere, A. (2005). JVM independent replay in Java. Electronic Notes in Theoretical Computer Science, 113, 85\u2013104. doi: 10.1016\/j.entcs.2004.01.032 .","journal-title":"Electronic Notes in Theoretical Computer Science"},{"key":"9301_CR111","doi-asserted-by":"crossref","unstructured":"Sen, K. (2008). Race directed random testing of concurrent programs. In ACM SIGPLAN notices, Vol. 43, pp. 11\u201321. ACM.","DOI":"10.1145\/1379022.1375584"},{"key":"9301_CR112","doi-asserted-by":"crossref","unstructured":"Serebryany, K., & Iskhodzhanov, T. (2009). ThreadSanitizer: Data race detection in practice. In Proceedings of the workshop on binary instrumentation and applications, pp. 62\u201371. ACM.","DOI":"10.1145\/1791194.1791203"},{"key":"9301_CR113","unstructured":"Shimomura, T., & Ikeda, K. (2013). Waiting blocked-tree type deadlock detection. In Science and information conference (SAI), 2013, pp. 45\u201350. IEEE."},{"issue":"2","key":"9301_CR114","doi-asserted-by":"crossref","first-page":"354","DOI":"10.1109\/TSE.2010.107","volume":"38","author":"M Shousha","year":"2012","unstructured":"Shousha, M., Briand, L., & Labiche, Y. (2012). A uml\/marte model analysis method for uncovering scenarios leading to starvation and deadlocks in concurrent systems. Software Engineering, IEEE Transactions on, 38(2), 354\u2013374.","journal-title":"Software Engineering, IEEE Transactions on"},{"key":"9301_CR115","doi-asserted-by":"crossref","unstructured":"Shousha, M., B., Lionel C., & Labiche, Y. (2009). A uml\/marte model analysis method for detection of data races in concurrent systems. In Model driven engineering languages and systems, pp. 47\u201361. Springer.","DOI":"10.1007\/978-3-642-04425-0_5"},{"key":"9301_CR116","doi-asserted-by":"crossref","unstructured":"Song, Y. W., & Lee, Y.-H. (2014). Efficient data race detection for C\/C++ programs using dynamic granularity. In Parallel and distributed processing symposium, 2014 IEEE 28th international, pp. 679\u2013688. IEEE.","DOI":"10.1109\/IPDPS.2014.76"},{"key":"9301_CR117","doi-asserted-by":"crossref","unstructured":"Tallam, S., Tian, C., & Gupta, R. (2008). Dynamic slicing of multithreaded programs for race detection. In IEEE International conference on software maintenance, 2008. ICSM 2008, pp. 97\u2013106. IEEE.","DOI":"10.1109\/ICSM.2008.4658058"},{"key":"9301_CR118","unstructured":"Tan, L., Feng, M., & Gupta, R. (2013). Lightweight fault detection in parallelized programs. In 2013 IEEE\/ACM International symposium on code generation and optimization (CGO), pp. 1\u201311. IEEE."},{"key":"9301_CR119","unstructured":"Tchamgoue, G.M., Gan, L., Ha, O.-K., Yang, S.-W., & Jun, Y.-K. (2012). Visualizing concurrency faults in ARINC-653 real-time applications. In Digital avionics systems conference (DASC), 2012 IEEE\/AIAA 31st, pp. 9\u201361. IEEE."},{"key":"9301_CR120","doi-asserted-by":"crossref","unstructured":"Tchamgoue, G. M., Kuh, I.-B., Ha, O.-K., Kim, K.-H., & Jun, Y.-K. (2010). A race healing framework in simulated ARINC-653. In Communication and networking, pp. 238\u2013246. Springer.","DOI":"10.1007\/978-3-642-17604-3_28"},{"key":"9301_CR121","doi-asserted-by":"crossref","unstructured":"Teixeira, B., Loureno, J., Farchi, E., Dias, R., & Sousa, D. (2010). Detection of transactional memory anomalies using static analysis. In Proceedings of the 8th workshop on parallel and distributed systems: Testing, analysis, and debugging, pp. 26\u201336. ACM.","DOI":"10.1145\/1866210.1866213"},{"issue":"11","key":"9301_CR122","first-page":"947","volume":"39","author":"C Tian","year":"2009","unstructured":"Tian, C., Nagarajan, V., Gupta, R., & Tallam, S. (2009). Automated dynamic detection of busywait synchronizations. Software: Practice and Experience, 39(11), 947\u2013972.","journal-title":"Software: Practice and Experience"},{"issue":"12","key":"9301_CR123","doi-asserted-by":"crossref","first-page":"58","DOI":"10.1145\/1610252.1610271","volume":"52","author":"J Torrellas","year":"2009","unstructured":"Torrellas, J., Ceze, L., Tuck, J., Cascaval, C., Montesinos, P., Ahn, W., et al. (2009). The Bulk Multicore architecture for improved programmability. Communications of the ACM, 52(12), 58\u201365.","journal-title":"Communications of the ACM"},{"key":"9301_CR124","doi-asserted-by":"crossref","unstructured":"Trainin, E., Nir-Buchbinder, Y., Tzoref-Brill, R., Zlotnick, A., Ur, S., & Farchi, E. (2009). Forcing small models of conditions on program interleaving for detection of concurrent bugs. In Proceedings of the 7th workshop on parallel and distributed systems: Testing, analysis, and debugging, p. 7. ACM.","DOI":"10.1145\/1639622.1639629"},{"key":"9301_CR125","doi-asserted-by":"crossref","unstructured":"Tzoref, R., Ur, S., & Yom-Tov, E., (2007). Instrumenting where it hurts: An automatic concurrent debugging technique. In Proceedings of the 2007 international symposium on software testing and analysis, pp. 27\u201338. ACM.","DOI":"10.1145\/1273463.1273469"},{"key":"9301_CR126","doi-asserted-by":"crossref","unstructured":"Uhrig, S. (2011). Tracing static fields of embedded parallel Java applications. In Computer software and applications conference workshops (COMPSACW), 2011 IEEE 35th annual, pp. 516\u2013519. IEEE.","DOI":"10.1109\/COMPSACW.2011.94"},{"key":"9301_CR127","doi-asserted-by":"crossref","unstructured":"Vasudevan, N., Edwards, S. A., & Singh, S., (2008). A deterministic multi-way rendezvous library for Haskell. In IPDPS 2008. IEEE international symposium on parallel and distributed processing, 2008, pp. 1\u201312. IEEE.","DOI":"10.1109\/IPDPS.2008.4536312"},{"key":"9301_CR128","doi-asserted-by":"crossref","unstructured":"Veeraraghavan, K., Chen, P. M., Flinn, J., & Narayanasamy, S. (2011). Detecting and surviving data races using complementary schedules. In Proceedings of the twenty-third ACM symposium on operating systems principles, pp. 369\u2013384. ACM.","DOI":"10.1145\/2043556.2043590"},{"key":"9301_CR129","doi-asserted-by":"crossref","unstructured":"Viennot, N., Nair, S., & Nieh, J. (2013). Transparent mutable replay for multicore debugging and patch validation. In ACM SIGARCH computer architecture news, Vol. 41, pp. 127\u2013138. ACM.","DOI":"10.1145\/2451116.2451130"},{"key":"9301_CR130","doi-asserted-by":"crossref","unstructured":"Vo, A., & Gopalakrishnan, G. (2010). Scalable verification of MPI programs. In2010 IEEE international symposium on parallel & distributed processing, workshops and Phd forum (IPDPSW), pp. 1\u20134. IEEE.","DOI":"10.1109\/IPDPSW.2010.5470683"},{"key":"9301_CR131","unstructured":"Wang, J.-Y., Shue, Y.-S., & Bagchi, S. (2007). Pesticide: Using SMT to improve performance of pointer-bug detection. In International conference on computer design, 2006. ICCD 2006, pp. 514\u2013521. IEEE."},{"key":"9301_CR132","doi-asserted-by":"crossref","unstructured":"Wang, L., & Stoller, S. D. (2006a). Accurate and efficient runtime detection of atomicity errors in concurrent programs. In Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming, pp. 137\u2013146. ACM.","DOI":"10.1145\/1122971.1122993"},{"issue":"2","key":"9301_CR133","doi-asserted-by":"crossref","first-page":"93","DOI":"10.1109\/TSE.2006.1599419","volume":"32","author":"L Wang","year":"2006","unstructured":"Wang, L., & Stoller, S. D. (2006b). Runtime analysis of atomicity for multithreaded programs. Software Engineering, IEEE Transactions on, 32(2), 93\u2013110.","journal-title":"Software Engineering, IEEE Transactions on"},{"key":"9301_CR134","doi-asserted-by":"crossref","unstructured":"Wang, N., Han, J., & Fang, J. (2012a). A transparent control-flow based approach to record-replay non-deterministic bugs. In 2012 IEEE 7th international conference on networking, architecture and storage (NAS), pp. 189\u2013198. IEEE.","DOI":"10.1109\/NAS.2012.28"},{"key":"9301_CR135","unstructured":"Wang, P., Zhang, X., Hao, P., & Zhang, Y. (2012b). Towards the multithreaded deterministic replay in program debugging. In 2012 8th international conference on information science and digital content technology (ICIDT), Vol. 1, pp. 139\u2013144. IEEE."},{"issue":"3","key":"9301_CR136","doi-asserted-by":"crossref","first-page":"965","DOI":"10.3837\/tiis.2014.03.014","volume":"8","author":"T Wang","year":"2014","unstructured":"Wang, T., Shen, L., & Ma, C. (2014). A process algebra-based detection model for multithreaded programs in communication system. KSII Transactions on Internet and Information Systems (TIIS), 8(3), 965\u2013983.","journal-title":"KSII Transactions on Internet and Information Systems (TIIS)"},{"issue":"7","key":"9301_CR137","first-page":"750","volume":"4","author":"W Wang","year":"2005","unstructured":"Wang, W., & Fang, B. (2005). Replaying message-passing programs with an efficient logical clock. WSEAS Transactions on Computers, 4(7), 750\u2013757.","journal-title":"WSEAS Transactions on Computers"},{"key":"9301_CR138","doi-asserted-by":"crossref","unstructured":"Wang, W., Wang, Z., Wu, C., Yew, P.-C., Shen, X., Yuan, X., Li, J., Feng, X., & Guan, Y. (2014). Localization of concurrency bugs using shared memory access pairs. In Proceedings of the 29th ACM\/IEEE international conference on Automated software engineering, pp. 611\u2013622. ACM.","DOI":"10.1145\/2642937.2642972"},{"key":"9301_CR139","doi-asserted-by":"crossref","unstructured":"Wang, Y., Liu, P., Kelly, T., Lafortune, S., Reveliotis, S. A., & Zhang, C. (2012). On atomicity enforcement in concurrent software via discrete event systems theory. In CDC, pp. 7230\u20137237.","DOI":"10.1109\/CDC.2012.6426112"},{"key":"9301_CR140","doi-asserted-by":"crossref","unstructured":"Watson, G. R., Rasmussen, C. E., Tibbitts, B. R. (2009). An integrated approach to improving the parallel application development process. In IEEE International Symposium on parallel & distributed processing, 2009. IPDPS 2009, pp. 1\u20138. IEEE.","DOI":"10.1109\/IPDPS.2009.5160941"},{"issue":"3","key":"9301_CR141","doi-asserted-by":"crossref","first-page":"155","DOI":"10.1145\/1735971.1736039","volume":"45","author":"D Weeratunge","year":"2010","unstructured":"Weeratunge, D., Zhang, X., & Jagannathan, S. (2010a). Analyzing multicore dumps to facilitate concurrency bug reproduction. ACM Sigplan Notices, 45(3), 155\u2013166.","journal-title":"ACM Sigplan Notices"},{"key":"9301_CR142","doi-asserted-by":"crossref","unstructured":"Weeratunge, D., Zhang, X., Sumner, W. N., & Jagannathan, S. (2010b). Analyzing concurrency bugs using dual slicing. In Proceedings of the 19th international symposium on Software testing and analysis, pp. 253\u2013264. ACM.","DOI":"10.1145\/1831708.1831740"},{"key":"9301_CR143","doi-asserted-by":"crossref","unstructured":"Wen, C.-N., Chou, S.-H., & Chen, T.-F. (2009). dIP: A non-intrusive debugging IP for dynamic data race detection in many-core. In 2009 10th International symposium on pervasive systems, algorithms, and networks (ISPAN), pp. 86\u201391. IEEE.","DOI":"10.1109\/I-SPAN.2009.123"},{"issue":"2","key":"9301_CR144","doi-asserted-by":"crossref","first-page":"199","DOI":"10.1109\/TC.2010.254","volume":"61","author":"C-N Wen","year":"2012","unstructured":"Wen, C.-N., Chou, S.-H., Chen, C.-C., & Chen, T.-F. (2012). NUDA: A non-uniform debugging architecture and nonintrusive race detection for many-core systems. Computers, IEEE Transactions on, 61(2), 199\u2013212.","journal-title":"Computers, IEEE Transactions on"},{"key":"9301_CR145","doi-asserted-by":"crossref","unstructured":"Wen, Y., Zhao, J., Huang, M., & Chen, H. (2011). Towards detecting thread deadlock in java programs with jvm introspection. In Trust, security and privacy in computing and communications (TrustCom), 2011 IEEE 10th International conference on, pp. 1600\u20131607. IEEE.","DOI":"10.1109\/TrustCom.2011.222"},{"key":"9301_CR146","doi-asserted-by":"crossref","unstructured":"Wester, B., Devecsery, D., Chen, P. M., Flinn, J., & Narayanasamy, S. (2013). Parallelizing data race detection. In ACM SIGARCH computer architecture news, Vol. 41, pp. 27\u201338. ACM.","DOI":"10.1145\/2451116.2451120"},{"issue":"1","key":"9301_CR147","doi-asserted-by":"crossref","first-page":"102","DOI":"10.1007\/s00766-005-0021-6","volume":"11","author":"R Wieringa","year":"2005","unstructured":"Wieringa, R., Maiden, N., Mead, N., & Rolland, C. (2005). Requirements engineering paper classification and evaluation criteria: A proposal and a discussion. Requirements Engineering, 11(1), 102\u2013107.","journal-title":"Requirements Engineering"},{"key":"9301_CR148","doi-asserted-by":"crossref","unstructured":"Wu, X., Wei, J., & Wang, X. (2012). Debug concurrent programs with visualization and inference of event structure. In Software engineering conference (APSEC), 2012 19th Asia-Pacific, Vol. 1, pp. 683\u2013692. IEEE.","DOI":"10.1109\/APSEC.2012.134"},{"key":"9301_CR149","doi-asserted-by":"crossref","unstructured":"Wu, X., Wen, Y., Chen, L., Dong, W., & Wang, J., (2013). Data race detection for interrupt-driven Programs via bounded model checking. In Software security and reliability-companion (SERE-C), 2013 IEEE 7th international conference on, pp. 204\u2013210. IEEE.","DOI":"10.1109\/SERE-C.2013.33"},{"key":"9301_CR150","doi-asserted-by":"crossref","unstructured":"Yoshiura, N., & Wei, W. (2014). Static data race detection for Java programs with dynamic class loading. In Internet and distributed computing systems, pp. 161\u2013173. Springer.","DOI":"10.1007\/978-3-319-11692-1_14"},{"key":"9301_CR151","doi-asserted-by":"crossref","unstructured":"Yu, J., Ci, Y., Zhou, P., Wu, Y., & Zhao, C. (2012). Deterministic replay of multithread applications using virtual machine. In Advanced information networking and applications workshops (WAINA), 2012 26th International conference on, pp. 429\u2013434. IEEE.","DOI":"10.1109\/WAINA.2012.124"},{"key":"9301_CR152","doi-asserted-by":"crossref","unstructured":"Yuan, D., Mai, H., Xiong, W., Tan, L., Zhou, Y., & Pasupathy, S., (2010). SherLog: Error diagnosis by connecting clues from run-time logs. In ACM SIGARCH computer architecture news, Vol. 38, pp. 143\u2013154. ACM.","DOI":"10.1145\/1735970.1736038"},{"key":"9301_CR153","unstructured":"Zaineb, G., & Manarvi, I. A. (2011). Identification and analysis of causes for software bug rejection with their impact over testing efficiency. International journal of software engineering & applications (IJSEA) 2 (4). http:\/\/airccse.org\/journal\/ijsea\/papers\/1011ijsea07.pdf ."},{"key":"9301_CR154","volume-title":"Why programs fail: A guide to systematic debugging","author":"A Zeller","year":"2009","unstructured":"Zeller, A. (2009). Why programs fail: A guide to systematic debugging. Amsterdam: Elsevier."},{"issue":"1","key":"9301_CR155","doi-asserted-by":"crossref","first-page":"113","DOI":"10.1145\/2490301.2451129","volume":"41","author":"W Zhang","year":"2013","unstructured":"Zhang, W., De Kruijf, M., Li, A., Shan, L., & Sankaralingam, Karthikeyan. (2013). ConAir: Featherweight concurrency bug recovery via single-threaded idempotent execution. ACM SIGARCH Computer Architecture News, 41(1), 113\u2013126.","journal-title":"ACM SIGARCH Computer Architecture News"},{"key":"9301_CR156","doi-asserted-by":"crossref","unstructured":"Zhou, P., Teodorescu, R., & Zhou, Y. (2007). HARD: Hardware-assisted lockset-based race detection. In IEEE 13th International symposium on high performance computer architecture, 2007. HPCA 2007, pp. 121\u2013132. IEEE.","DOI":"10.1109\/HPCA.2007.346191"},{"key":"9301_CR157","doi-asserted-by":"crossref","unstructured":"Zyulkyarov, F., Harris, T., Unsal, O. S., Cristal, A., & Valero, M. (2010). Debugging programs that use atomic blocks and transactional memory. In ACM sigplan notices, Vol. 45, pp. 57\u201366. ACM.","DOI":"10.1145\/1837853.1693463"}],"container-title":["Software Quality Journal"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11219-015-9301-7.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s11219-015-9301-7\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11219-015-9301-7","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11219-015-9301-7.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,6,2]],"date-time":"2022-06-02T03:24:16Z","timestamp":1654140256000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s11219-015-9301-7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016,1,21]]},"references-count":155,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2017,3]]}},"alternative-id":["9301"],"URL":"https:\/\/doi.org\/10.1007\/s11219-015-9301-7","relation":{},"ISSN":["0963-9314","1573-1367"],"issn-type":[{"value":"0963-9314","type":"print"},{"value":"1573-1367","type":"electronic"}],"subject":[],"published":{"date-parts":[[2016,1,21]]}}}