{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,25]],"date-time":"2026-04-25T17:27:26Z","timestamp":1777138046711,"version":"3.51.4"},"publisher-location":"Berlin, Heidelberg","reference-count":51,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642390371","type":"print"},{"value":"9783642390388","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2013]]},"DOI":"10.1007\/978-3-642-39038-8_26","type":"book-chapter","created":{"date-parts":[[2013,6,25]],"date-time":"2013-06-25T10:29:00Z","timestamp":1372156140000},"page":"629-653","source":"Crossref","is-referenced-by-count":26,"title":["Systematic Testing of Refactoring Engines on Real Software Projects"],"prefix":"10.1007","author":[{"given":"Milos","family":"Gligoric","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Farnaz","family":"Behrang","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yilong","family":"Li","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jeffrey","family":"Overbey","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Munawar","family":"Hafiz","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Darko","family":"Marinov","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"26_CR1","doi-asserted-by":"crossref","unstructured":"Bettenburg, N., Premraj, R., Zimmermann, T., Kim, S.: Duplicate bug reports considered harmful... really? In: ICSM, pp. 337\u2013345 (2008)","DOI":"10.1109\/ICSM.2008.4658082"},{"key":"26_CR2","doi-asserted-by":"crossref","unstructured":"Boyapati, C., Khurshid, S., Marinov, D.: Korat: Automated testing based on Java predicates. In: ISSTA, pp. 123\u2013133 (2002)","DOI":"10.1145\/566171.566191"},{"key":"26_CR3","unstructured":"CDT home page, \n                    \n                      http:\/\/www.eclipse.org\/cdt"},{"key":"26_CR4","doi-asserted-by":"crossref","unstructured":"Cinn\u00e9ide, M.\u00d3., Tratt, L., Harman, M., Counsell, S., Moghadam, I.H.: Experimental assessment of software metrics using automated refactoring. In: ESEM, pp. 49\u201358 (2012)","DOI":"10.1145\/2372251.2372260"},{"key":"26_CR5","doi-asserted-by":"crossref","unstructured":"Coker, Z., Hafiz, M.: Program transformations to fix C integers. In: ICSE, pp. 792\u2013801 (2013)","DOI":"10.1109\/ICSE.2013.6606625"},{"key":"26_CR6","doi-asserted-by":"crossref","unstructured":"Counsell, S., Hassoun, Y., Loizou, G., Najjar, R.: Common refactorings, a dependency graph and some code smells: an empirical study of Java OSS. In: ISESE, pp. 288\u2013296 (2006)","DOI":"10.1145\/1159733.1159777"},{"key":"26_CR7","doi-asserted-by":"crossref","unstructured":"Daniel, B., Dig, D., Garcia, K., Marinov, D.: Automated testing of refactoring engines. In: FSE, pp. 185\u2013194 (2007)","DOI":"10.1145\/1287624.1287651"},{"issue":"2","key":"26_CR8","doi-asserted-by":"publisher","first-page":"83","DOI":"10.1002\/smr.328","volume":"18","author":"D. Dig","year":"2006","unstructured":"Dig, D., Johnson, R.: How do APIs evolve? A story of refactoring. J. Softw. Maint. Evol.\u00a018(2), 83\u2013107 (2006)","journal-title":"J. Softw. Maint. Evol."},{"key":"26_CR9","doi-asserted-by":"crossref","unstructured":"Dig, D., Marrero, J., Ernst, M.D.: Refactoring sequential Java code for concurrency via concurrent libraries. In: ICSE, pp. 397\u2013407 (2009)","DOI":"10.1109\/ICSE.2009.5070539"},{"key":"26_CR10","unstructured":"Ebraert, P., D\u2019Hondt, T.: Dynamic refactorings: Improving the program structure at run-time. In: RAM-SE, pp. 101\u2013110 (2006)"},{"key":"26_CR11","volume-title":"Refactoring: Improving the Design of Existing Code","author":"M. Fowler","year":"1999","unstructured":"Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston (1999)"},{"key":"26_CR12","doi-asserted-by":"crossref","unstructured":"Gligoric, M., Gvero, T., Jagannath, V., Khurshid, S., Kuncak, V., Marinov, D.: Test generation through programming in UDITA. In: ICSE, pp. 225\u2013234 (2010)","DOI":"10.1145\/1806799.1806835"},{"key":"26_CR13","unstructured":"GMP home page, \n                    \n                      http:\/\/gmplib.org"},{"key":"26_CR14","doi-asserted-by":"crossref","unstructured":"Godefroid, P., Kiezun, A., Levin, M.Y.: Grammar-based whitebox fuzzing. In: PLDI, pp. 206\u2013215 (2008)","DOI":"10.1145\/1379022.1375607"},{"key":"26_CR15","doi-asserted-by":"crossref","unstructured":"Hafiz, M., Overbey, J.: OpenRefactory\/C: An infrastructure for developing program transformations for C programs. In: SPLASH, pp. 27\u201328 (2012)","DOI":"10.1145\/2384716.2384730"},{"key":"26_CR16","unstructured":"Han, J.: Data Mining: Concepts and Techniques. Morgan Kaufmann Publishers Inc. (2005)"},{"key":"26_CR17","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"171","DOI":"10.1007\/978-3-642-00593-0_12","volume-title":"Fundamental Approaches to Software Engineering","author":"V. Jagannath","year":"2009","unstructured":"Jagannath, V., Lee, Y.Y., Daniel, B., Marinov, D.: Reducing the costs of bounded-exhaustive testing. In: Chechik, M., Wirsing, M. (eds.) FASE 2009. LNCS, vol.\u00a05503, pp. 171\u2013185. Springer, Heidelberg (2009)"},{"key":"26_CR18","unstructured":"JDT home page, \n                    \n                      http:\/\/www.eclipse.org\/jdt"},{"key":"26_CR19","unstructured":"JPF home page, \n                    \n                      http:\/\/babelfish.arc.nasa.gov\/trac\/jpf"},{"key":"26_CR20","unstructured":"JUnit home page, \n                    \n                      http:\/\/junit.org"},{"key":"26_CR21","unstructured":"Eclipse Juno home page, \n                    \n                      http:\/\/www.eclipse.org\/juno"},{"key":"26_CR22","unstructured":"libpng home page, \n                    \n                      http:\/\/www.libpng.org\/pub\/png\/libpng.html"},{"key":"26_CR23","unstructured":"Apache log4j home page, \n                    \n                      http:\/\/logging.apache.org\/log4j\/2.x"},{"key":"26_CR24","unstructured":"Lucene home page, \n                    \n                      http:\/\/lucene.apache.org"},{"key":"26_CR25","unstructured":"Marinov, D., Khurshid, S.: TestEra: A novel framework for testing Java programs. In: ASE, pp. 22\u201331 (2001)"},{"key":"26_CR26","unstructured":"Commons Math home page, \n                    \n                      http:\/\/commons.apache.org\/math"},{"key":"26_CR27","doi-asserted-by":"crossref","unstructured":"Misherghi, G., Su, Z.: HDD: Hierarchical delta debugging. In: ICSE, pp. 142\u2013151 (2006)","DOI":"10.1145\/1134285.1134307"},{"key":"26_CR28","doi-asserted-by":"crossref","unstructured":"Murphy-Hill, E., Parnin, C., Black, A.P.: How we refactor, and how we know it. In: ICSE, pp. 287\u2013297 (2009)","DOI":"10.1109\/ICSE.2009.5070529"},{"key":"26_CR29","series-title":"LNCS","first-page":"552","volume-title":"ECOOP 2013","author":"S. Negara","year":"2013","unstructured":"Negara, S., Chen, N., Vakilian, M., Johnson, R.E., Dig, D.: A comparative study of manual and automated refactorings. In: Castagna, G. (ed.) ECOOP 2013. LNCS, vol.\u00a07920, pp. 552\u2013576. Springer, Heidelberg (2013)"},{"key":"26_CR30","unstructured":"OpenRefactory\/C - A refactoring infrastructure for C, \n                    \n                      http:\/\/openrefactory.org"},{"key":"26_CR31","unstructured":"Overbey, J.L.: A Toolkit For Constructing Refactoring Engines. PhD thesis, University of Illinois at Urbana Champaign (2011)"},{"key":"26_CR32","unstructured":"Refactoring actions home page, \n                    \n                      http:\/\/help.eclipse.org\/juno\/topic\/org.eclipse.jdt.doc.user\/concepts\/concept-refactoring.htm"},{"key":"26_CR33","doi-asserted-by":"crossref","unstructured":"Regehr, J., Chen, Y., Cuoq, P., Eide, E., Ellison, C., Yang, X.: Test-case reduction for C compiler bugs. In: PLDI, pp. 335\u2013346 (2012)","DOI":"10.1145\/2345156.2254104"},{"key":"26_CR34","unstructured":"Sch\u00e4fer, M.: Specification, Implementation and Verification of Refactorings. PhD thesis, Oxford University Computing Laboratory (2010)"},{"key":"26_CR35","doi-asserted-by":"crossref","unstructured":"Sch\u00e4fer, M., Ekman, T., de Moor, O.: Sound and extensible renaming for Java. In: OOPSLA, pp. 277\u2013294 (2008)","DOI":"10.1145\/1449955.1449787"},{"key":"26_CR36","doi-asserted-by":"crossref","unstructured":"Sch\u00e4fer, M., Sridharan, M., Dolby, J., Tip, F.: Refactoring Java programs for flexible locking. In: ICSE, pp. 71\u201380 (2011)","DOI":"10.1145\/1985793.1985804"},{"issue":"6","key":"26_CR37","doi-asserted-by":"publisher","first-page":"1233","DOI":"10.1109\/TSE.2012.13","volume":"38","author":"M. Sch\u00e4fer","year":"2012","unstructured":"Sch\u00e4fer, M., Thies, A., Steimann, F., Tip, F.: A comprehensive approach to naming and accessibility in refactoring Java programs. IEEE Trans. Soft. Eng.\u00a038(6), 1233\u20131257 (2012)","journal-title":"IEEE Trans. Soft. Eng."},{"key":"26_CR38","doi-asserted-by":"crossref","unstructured":"Soares, G.: Making program refactoring safer. In: ICSE, pp. 521\u2013522 (2010)","DOI":"10.1145\/1810295.1810461"},{"key":"26_CR39","doi-asserted-by":"crossref","unstructured":"Soares, G., Catao, B., Varjao, C., Aguiar, S., Gheyi, R., Massoni, T.: Analyzing refactorings on software repositories. In: SBES, pp. 164\u2013173 (2011)","DOI":"10.1109\/SBES.2011.21"},{"key":"26_CR40","doi-asserted-by":"crossref","unstructured":"Song, Y., Wang, X., Xie, T., Zhang, L., Mei, H.: JDF: Detecting duplicate bug reports in Jazz. In: ICSE, pp. 315\u2013316 (2010)","DOI":"10.1145\/1810295.1810368"},{"issue":"4","key":"26_CR41","doi-asserted-by":"publisher","first-page":"216","DOI":"10.1016\/j.scico.2009.09.003","volume":"75","author":"D. Spinellis","year":"2010","unstructured":"Spinellis, D.: CScout: A refactoring browser for C. Sci. of Comp. Prog.\u00a075(4), 216\u2013231 (2010)","journal-title":"Sci. of Comp. Prog."},{"key":"26_CR42","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"255","DOI":"10.1007\/978-3-642-22655-7_13","volume-title":"ECOOP 2011 \u2013 Object-Oriented Programming","author":"F. Steimann","year":"2011","unstructured":"Steimann, F., Kollee, C., von Pilgrim, J.: A refactoring constraint language and its application to eiffel. In: Mezini, M. (ed.) ECOOP 2011. LNCS, vol.\u00a06813, pp. 255\u2013280. Springer, Heidelberg (2011)"},{"key":"26_CR43","doi-asserted-by":"crossref","unstructured":"Sun, B., Shu, G., Podgurski, A., Ray, S.: CARIAL: Cost-aware software reliability improvement with active learning. In: ICST, pp. 360\u2013369 (2012)","DOI":"10.1109\/ICST.2012.116"},{"key":"26_CR44","unstructured":"Thies, A., Steimann, F.: Systematic testing of refactoring tools. In: AST (poster) (2010), \n                    \n                      http:\/\/www.fernuni-hagen.de\/ps\/prjs\/rtt\/rtt_poster.pdf"},{"key":"26_CR45","doi-asserted-by":"crossref","unstructured":"Vakilian, M., Chen, N., Negara, S., Rajkumar, B.A., Bailey, B.P., Johnson, R.E.: Use, disuse, and misuse of automated refactorings. In: ICSE, pp. 233\u2013243 (2012)","DOI":"10.1109\/ICSE.2012.6227190"},{"key":"26_CR46","unstructured":"Visual Assist X home page, \n                    \n                      http:\/\/www.wholetomato.com"},{"key":"26_CR47","doi-asserted-by":"crossref","unstructured":"Wang, X., Zhang, L., Xie, T., Anvik, J., Sun, J.: An approach to detecting duplicate bug reports using natural language and execution information. In: ICSE, pp. 461\u2013470 (2008)","DOI":"10.1145\/1368088.1368151"},{"key":"26_CR48","doi-asserted-by":"crossref","unstructured":"Wloka, J., Hirschfeld, R., H\u00e4nsel, J.: Tool-supported refactoring of aspect-oriented programs. In: AOSD, pp. 132\u2013143 (2008)","DOI":"10.1145\/1353482.1353499"},{"key":"26_CR49","unstructured":"XRefactory home page, \n                    \n                      http:\/\/www.xref.sk\/xrefactory\/main.html"},{"issue":"2","key":"26_CR50","doi-asserted-by":"publisher","first-page":"183","DOI":"10.1109\/32.988498","volume":"28","author":"A. Zeller","year":"2002","unstructured":"Zeller, A., Hildebrandt, R.: Simplifying and isolating failure-inducing input. IEEE Trans. Soft. Eng.\u00a028(2), 183\u2013200 (2002)","journal-title":"IEEE Trans. Soft. Eng."},{"key":"26_CR51","unstructured":"zlib home page, \n                    \n                      http:\/\/www.zlib.net"}],"container-title":["Lecture Notes in Computer Science","ECOOP 2013 \u2013 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-39038-8_26","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,14]],"date-time":"2019-05-14T14:56:48Z","timestamp":1557845808000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-39038-8_26"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013]]},"ISBN":["9783642390371","9783642390388"],"references-count":51,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-39038-8_26","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2013]]}}}