{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,18]],"date-time":"2026-03-18T11:42:57Z","timestamp":1773834177428,"version":"3.50.1"},"reference-count":48,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2017,12,12]],"date-time":"2017-12-12T00:00:00Z","timestamp":1513036800000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Sci. China Inf. Sci."],"published-print":{"date-parts":[[2018,1]]},"DOI":"10.1007\/s11432-017-9153-3","type":"journal-article","created":{"date-parts":[[2017,12,16]],"date-time":"2017-12-16T03:37:06Z","timestamp":1513395426000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":14,"title":["A study on the changes of dynamic feature code when fixing bugs: towards the benefits and costs of Python dynamic features"],"prefix":"10.1007","volume":"61","author":[{"given":"Zhifei","family":"Chen","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Wanwangying","family":"Ma","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Wei","family":"Lin","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Lin","family":"Chen","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yanhui","family":"Li","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Baowen","family":"Xu","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2017,12,12]]},"reference":[{"key":"9153_CR1","doi-asserted-by":"crossref","first-page":"292","DOI":"10.1145\/2597073.2597103","volume-title":"Proceedings of the 11th Working Conference on Mining Software Repositories, Hyderabad","author":"B Akerblom","year":"2014","unstructured":"Akerblom B, Stendahl J, Tumlin M, et al. Tracing dynamic features in Python programs. In: Proceedings of the 11th Working Conference on Mining Software Repositories, Hyderabad, 2014. 292\u2013295"},{"key":"9153_CR2","first-page":"19","volume-title":"Proceedings of the 32nd Australasian Conference on Computer Science, Wellington","author":"A Holkner","year":"2009","unstructured":"Holkner A, Harland J. Evaluating the dynamic behaviour of Python applications. In: Proceedings of the 32nd Australasian Conference on Computer Science, Wellington, 2009. 19\u201328"},{"key":"9153_CR3","first-page":"241","volume-title":"Proceedings of the 33rd International Conference on Software Engineering, Waikiki","author":"E Bodden","year":"2011","unstructured":"Bodden E, Sewe A, Sinschek J, et al. Taming reflection: aiding static analysis in the presence of reflection and custom class loaders categories and subject descriptors. In: Proceedings of the 33rd International Conference on Software Engineering, Waikiki, 2011. 241\u2013250"},{"key":"9153_CR4","first-page":"52","volume-title":"Proceedings of the 25th European Conference on Object-oriented Programming, Lancaster","author":"G Richards","year":"2011","unstructured":"Richards G, Hammer C, Burg B. The eval that men do: a large-scale study of the use of eval in JavaScript applications. In: Proceedings of the 25th European Conference on Object-oriented Programming, Lancaster, 2011. 52\u201378"},{"key":"9153_CR5","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/1809028.1806598","volume":"45","author":"G Richards","year":"2010","unstructured":"Richards G, Lebresne S, Burg B, et al. An analysis of the dynamic behavior of JavaScript programs. ACM SIGPLAN Notices, 2010, 45: 1\u201312","journal-title":"ACM SIGPLAN Notices"},{"key":"9153_CR6","doi-asserted-by":"crossref","first-page":"23","DOI":"10.1145\/1985441.1985448","volume-title":"Proceedings of the 8th Working Conference on Mining Software Repositories, Waikiki","author":"O Calla\u00b4u","year":"2011","unstructured":"Calla\u00b4u O, Robbes R, Tanter E, et al. How developers use the dynamic features of programming languages: the case of Smalltalk. In: Proceedings of the 8th Working Conference on Mining Software Repositories, Waikiki, 2011. 23\u201332"},{"key":"9153_CR7","first-page":"150","volume-title":"Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-oriented Programming","author":"B Dufour","year":"2004","unstructured":"Dufour B, Goard C, Hendren L, et al. Measuring the dynamic behaviour of AspectJ programs. In: Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, Vancouver, 2004. 150\u2013169"},{"key":"9153_CR8","first-page":"134","volume-title":"Proceedings of the 27th International Conference on Software Engineering and Knowledge Engineering, Pittsburgh","author":"B B Wang","year":"2015","unstructured":"Wang B B, Chen L, Ma W W Y, et al. An empirical study on the impact of Python dynamic features on changeproneness. In: Proceedings of the 27th International Conference on Software Engineering and Knowledge Engineering, Pittsburgh, 2015. 134\u2013139"},{"key":"9153_CR9","first-page":"61","volume-title":"Proceedings of the 38th International Conference on Software Engineering Companion, Austin","author":"J Park","year":"2016","unstructured":"Park J, Lim I, Ryu S. Battles with false positives in static analysis of JavaScript web applications in the wild. In: Proceedings of the 38th International Conference on Software Engineering Companion, Austin, 2016. 61\u201370"},{"key":"9153_CR10","first-page":"57","volume":"17","author":"M F Sanner","year":"1999","unstructured":"Sanner M F. Python: a programming language for software integration and development. J Mol Graph Model, 1999, 17: 57\u201361","journal-title":"J Mol Graph Model"},{"key":"9153_CR11","first-page":"54","volume-title":"Proceedings of the 3rd International Conference on Trustworthy Systems and Their Applications, Wuhan","author":"Z F Chen","year":"2016","unstructured":"Chen Z F, Ma W W Y, Lin W, et al. Tracking down dynamic feature code changes against Python software evolution. In: Proceedings of the 3rd International Conference on Trustworthy Systems and Their Applications, Wuhan, 2016. 54\u201363"},{"key":"9153_CR12","doi-asserted-by":"crossref","first-page":"012106","DOI":"10.1007\/s11432-012-4743-z","volume":"56","author":"J Qian","year":"2013","unstructured":"Qian J, Chen L, Xu B W. Finding shrink critical section refactoring opportunities for the evolution of concurrent code in trustworthy software. Sci China Inf Sci, 2013, 56: 012106","journal-title":"Sci China Inf Sci"},{"key":"9153_CR13","first-page":"072103","volume":"57","author":"L Chen","year":"2014","unstructured":"Chen L, Qian J, Zhou Y M, et al. Identifying extract class refactoring opportunities for internetware. Sci China Inf Sci, 2014, 57: 072103","journal-title":"Sci China Inf Sci"},{"key":"9153_CR14","first-page":"013101","volume":"59","author":"Y Feng","year":"2016","unstructured":"Feng Y, Liu Q, Dou M Y, et al. Mubug: a mobile service for rapid bug tracking. Sci China Inf Sci, 2016, 59: 013101","journal-title":"Sci China Inf Sci"},{"key":"9153_CR15","first-page":"021101","volume":"58","author":"J Zhang","year":"2015","unstructured":"Zhang J, Wang X, Hao D, et al. A survey on bug-report analysis. Sci China Inf Sci, 2015, 58: 021101","journal-title":"Sci China Inf Sci"},{"key":"9153_CR16","doi-asserted-by":"crossref","first-page":"122901","DOI":"10.1007\/s11432-015-5426-3","volume":"59","author":"L Chen","year":"2016","unstructured":"Chen L, Ma W W Y, Zhou Y M, et al. Empirical analysis of network measures for predicting high severity software faults. Sci China Inf Sci, 2016, 59: 122901","journal-title":"Sci China Inf Sci"},{"key":"9153_CR17","first-page":"489","volume-title":"Proceedings of the 29th International Conference on Software Engineering, Minneapolis","author":"S Kim","year":"2007","unstructured":"Kim S, Zimmermann T, Whitehead E J. Predicting faults from cached history. In: Proceedings of the 29th International Conference on Software Engineering, Minneapolis, 2007. 489\u2013498"},{"key":"9153_CR18","first-page":"23","volume-title":"Proceedings of the International Conference on Software Maintenance, Amsterdam","author":"M Fischer","year":"2003","unstructured":"Fischer M, Pinzger M, Gall H. Populating a release history database from version control and bug tracking systems. In: Proceedings of the International Conference on Software Maintenance, Amsterdam, 2003. 23\u201332"},{"key":"9153_CR19","doi-asserted-by":"crossref","first-page":"33","DOI":"10.1145\/2629648","volume":"23","author":"T Hall","year":"2014","unstructured":"Hall T. Some code smells have a significant but small effect on faults. ACM Trans Softw Eng Methodol, 2014, 23: 33","journal-title":"ACM Trans Softw Eng Methodol"},{"key":"9153_CR20","doi-asserted-by":"crossref","first-page":"243","DOI":"10.1007\/s10664-011-9171-y","volume":"17","author":"F Khomh","year":"2012","unstructured":"Khomh F, Penta M D, G\u00faeh\u00e9neuc Y G, et al. An exploratory study of the impact of antipatterns on class changeand fault-proneness. Empir Softw Eng, 2012, 17: 243\u2013275","journal-title":"Empir Softw Eng"},{"key":"9153_CR21","first-page":"913","volume-title":"Proceedings of the 37th International Conference on Software Engineering, Florence","author":"H Zhong","year":"2015","unstructured":"Zhong H, Su Z D. An empirical study on real bug fixes. In: Proceedings of the 37th International Conference on Software Engineering, Florence, 2015. 913\u2013923"},{"key":"9153_CR22","first-page":"66","volume-title":"Breakthroughs in Statistics","author":"B Monographs","year":"1992","unstructured":"Monographs B. Statistical methods for research workers. In: Breakthroughs in Statistics. Berlin: Springer-Verlag, 1992. 66\u201370"},{"key":"9153_CR23","first-page":"121","volume-title":"Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, Seattle","author":"Z G Xu","year":"2016","unstructured":"Xu Z G, Liu P, Zhang X Y, et al. Python predictive analysis for bug detection. In: Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, Seattle, 2016. 121\u2013132"},{"key":"9153_CR24","first-page":"219","volume-title":"Proceedings of the 38th Computer Software and Applications Conference, Vasteras","author":"Z F Chen","year":"2014","unstructured":"Chen Z F, Chen L, Zhou Y M, et al. Dynamic slicing of Python programs. In: Proceedings of the 38th Computer Software and Applications Conference, Vasteras, 2014. 219\u2013228"},{"key":"9153_CR25","first-page":"117","volume-title":"Proceedings of the 13th International Conference on Quality Software, Najing","author":"Z G Xu","year":"2013","unstructured":"Xu Z G, Qian J, Chen L, et al. Static slicing for Python first-class objects. In: Proceedings of the 13th International Conference on Quality Software, Najing, 2013. 117\u2013124"},{"key":"9153_CR26","first-page":"95","volume-title":"Proceedings of the 11th Web Information System and Application Conference, Tianjin","author":"Z F Chen","year":"2014","unstructured":"Chen Z F, Chen L, Xu B W. Hybrid information flow analysis for Python bytecode. In: Proceedings of the 11th Web Information System and Application Conference, Tianjin, 2014. 95\u2013100"},{"key":"9153_CR27","first-page":"306","volume-title":"Proceedings of the 33rd Computer Software and Applications Conference","author":"L Chen","year":"2009","unstructured":"Chen L, Xu B W, Zhou T L, et al. A constraint based bug checking approach for Python. In: Proceedings of the 33rd Computer Software and Applications Conference, Seattle, 2009. 306\u2013311"},{"key":"9153_CR28","doi-asserted-by":"crossref","first-page":"45","DOI":"10.1145\/2661088.2661101","volume-title":"Proceedings of the 10th ACM Symposium on Dynamic Languages, Portland","author":"M M Vitousek","year":"2014","unstructured":"Vitousek M M, Kent A M, Siek J G, et al. Design and evaluation of gradual typing for Python. In: Proceedings of the 10th ACM Symposium on Dynamic Languages, Portland, 2014. 45\u201356"},{"key":"9153_CR29","first-page":"607","volume-title":"Proceedings of the 24th^ACM SIGSOFT International Symposium on Foundations of Software Engineering, Seattle","author":"Z G Xu","year":"2016","unstructured":"Xu Z G, Zhang X Y, Chen L, et al. Python probabilistic type inference with natural language support. In: Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, Seattle, 2016. 607\u2013618"},{"key":"9153_CR30","doi-asserted-by":"crossref","first-page":"114","DOI":"10.1145\/2816707.2816717","volume-title":"Proceedings of the 11th Symposium on Dynamic Languages, Pittsburgh","author":"B Akerblom","year":"2015","unstructured":"Akerblom B, Wrigstad T. Measuring polymorphism in Python programs. In: Proceedings of the 11th Symposium on Dynamic Languages, Pittsburgh, 2015. 114\u2013128"},{"key":"9153_CR31","doi-asserted-by":"crossref","first-page":"27","DOI":"10.1145\/1869631.1869635","volume-title":"Proceedings of the 6th Symposium on Dynamic Languages, Reno\/Tahoe","author":"M Gorbovitski","year":"2010","unstructured":"Gorbovitski M, Stoller S D. Alias analysis for optimization of dynamic languages. In: Proceedings of the 6th Symposium on Dynamic Languages, Reno\/Tahoe, 2010. 27\u201342"},{"key":"9153_CR32","first-page":"188","volume-title":"Proceedings of the 32nd International Conference on Software Maintenance and Evolution, Raleigh","author":"W Lin","year":"2016","unstructured":"Lin W, Chen Z F, Ma W W Y, et al. An empirical study on the characteristics of Python fine-grained source code change types. In: Proceedings of the 32nd International Conference on Software Maintenance and Evolution, Raleigh, 2016. 188\u2013199"},{"key":"9153_CR33","doi-asserted-by":"crossref","first-page":"725","DOI":"10.1109\/TSE.2007.70731","volume":"33","author":"S Member","year":"2007","unstructured":"Member S. Change distilling: tree differencing for fine-grained source code change extraction. IEEE Trans Softw Eng, 2007, 33: 725\u2013743","journal-title":"IEEE Trans Softw Eng"},{"key":"9153_CR34","first-page":"1","volume-title":"Proceedings of the 2005 International Workshop on Mining Software Repositories, St. Louis","author":"I Neamtiu","year":"2005","unstructured":"Neamtiu I, Foster J S, Hicks M. Understanding source code evolution using abstract syntax tree matching. In: Proceedings of the 2005 International Workshop on Mining Software Repositories, St. Louis, 2005. 1\u20135"},{"key":"9153_CR35","doi-asserted-by":"crossref","first-page":"65","DOI":"10.1145\/1137983.1138000","volume-title":"Proceedings of the 2006 International Workshop on Mining Software Repositories, Shanghai","author":"T Sager","year":"2006","unstructured":"Sager T, Bernstein A, Pinzger M, et al. Detecting similar Java classes using tree algorithms. In: Proceedings of the 2006 International Workshop on Mining Software Repositories, Shanghai, 2006. 65\u201371"},{"key":"9153_CR36","first-page":"2","volume-title":"Proceedings of the 19th IEEE International Conference on Automated Software Engineering","author":"T Apiwattanapong","year":"2004","unstructured":"Apiwattanapong T, Orso A, Harrold M J. A differencing algorithm for object-oriented programs. In: Proceedings of the 19th IEEE International Conference on Automated Software Engineering, Linz, 2004. 2\u201313"},{"key":"9153_CR37","doi-asserted-by":"crossref","first-page":"234","DOI":"10.1145\/93542.93574","volume-title":"Proceedings of the ACM SIGPLAN 1990 Conference on Programming Language Design and Implementation, White Plains","author":"S Howitz","year":"1990","unstructured":"Howitz S. Identifying the semantic and textual differences between two versions of a program. In: Proceedings of the ACM SIGPLAN 1990 Conference on Programming Language Design and Implementation, White Plains, 1990. 234\u2013245"},{"key":"9153_CR38","first-page":"188","volume-title":"Proceedings of the 20th IEEE International Conference on Software Maintenance, Chicago","author":"S Raghavan","year":"2004","unstructured":"Raghavan S, Rohana R, Leon D, et al. Dex: a semantic-graph differencing tool for studying changes in large code bases. In: Proceedings of the 20th IEEE International Conference on Software Maintenance, Chicago, 2004. 188\u2013197"},{"key":"9153_CR39","doi-asserted-by":"crossref","first-page":"58","DOI":"10.1145\/1137983.1137999","volume-title":"Proceedings of the 2006 International Workshop on Mining Software Repositories, Shanghai","author":"M Kim","year":"2006","unstructured":"Kim M, Notkin D. Program element matching for multi-version program analyses. In: Proceedings of the 2006 International Workshop on Mining Software Repositories, Shanghai, 2006. 58\u201364"},{"key":"9153_CR40","doi-asserted-by":"crossref","first-page":"511","DOI":"10.1109\/TSE.2005.74","volume":"31","author":"R Purushothaman","year":"2005","unstructured":"Purushothaman R, Perry D E. Toward understanding the rhetoric of small source code changes. IEEE Trans Softw Eng, 2005, 31: 511\u2013526","journal-title":"IEEE Trans Softw Eng"},{"key":"9153_CR41","doi-asserted-by":"crossref","first-page":"47","DOI":"10.1145\/1056018.1056025","volume-title":"Proceedings of the 2005 ACM Symposium on Software Visualization, St. Louis","author":"L Voinea","year":"2005","unstructured":"Voinea L, Telea A. CVSscan: visualization of code evolution. In: Proceedings of the 2005 ACM Symposium on Software Visualization, St. Louis, 2005. 47\u201356"},{"key":"9153_CR42","doi-asserted-by":"crossref","first-page":"31","DOI":"10.1145\/1370750.1370758","volume-title":"Proceedings of the 2008 International Working Conference on Mining Software Repositories","author":"T Omori","year":"2008","unstructured":"Omori T, Maruyama K. A change-aware development environment by recording editing operations of source code. In: Proceedings of the 2008 International Working Conference on Mining Software Repositories, Leipzig, 2008. 31\u201334"},{"key":"9153_CR43","first-page":"1193","volume-title":"Proceedings of the 2013 International Conference on Software Engineering","author":"S Rastkar","year":"2013","unstructured":"Rastkar S, Murphy G C. Why did this code change? In: Proceedings of the 2013 International Conference on Software Engineering, San Francisco, 2013. 1193\u20131196"},{"key":"9153_CR44","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1007\/s10664-012-9214-z","volume":"19","author":"G Canfora","year":"2014","unstructured":"Canfora G, Cerulo L, Cimitile M, et al. How changes affect software entropy: an empirical study. Empir Softw Eng, 2014, 19: 1\u201338","journal-title":"Empir Softw Eng"},{"key":"9153_CR45","doi-asserted-by":"crossref","first-page":"757","DOI":"10.1109\/TSE.2012.70","volume":"39","author":"Y Kamei","year":"2013","unstructured":"Kamei Y, Shihab E, Adams B, et al. A large-scale empirical study of just-in-time quality assurance. IEEE Trans Softw Eng, 2013, 39: 757\u2013773","journal-title":"IEEE Trans Softw Eng"},{"key":"9153_CR46","first-page":"262","volume-title":"Proceedings of the 31st IEEE\/ACM International Conference on Automated Software Engineering, Singapore","author":"M Wen","year":"2016","unstructured":"Wen M, Wu R X, Cheung S C. Locus: locating bugs from software changes. In: Proceedings of the 31st IEEE\/ACM International Conference on Automated Software Engineering, Singapore, 2016. 262\u2013273"},{"key":"9153_CR47","doi-asserted-by":"crossref","first-page":"37","DOI":"10.1016\/j.infsof.2017.02.003","volume":"86","author":"Y Y Zhao","year":"2017","unstructured":"Zhao Y Y, Leung H, Yang Y B, et al. Towards an understanding of change types in bug fixing code. Inform Softw Tech, 2017, 86: 37\u201353","journal-title":"Inform Softw Tech"},{"key":"9153_CR48","doi-asserted-by":"crossref","first-page":"286","DOI":"10.1007\/s10664-008-9077-5","volume":"14","author":"K Pan","year":"2009","unstructured":"Pan K, Kim S, Whitehead E J Jr. Toward an understanding of bug fix patterns. Empir Softw Eng, 2009, 14: 286\u2013315","journal-title":"Empir Softw Eng"}],"container-title":["Science China Information Sciences"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11432-017-9153-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s11432-017-9153-3\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11432-017-9153-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,8,10]],"date-time":"2022-08-10T18:04:33Z","timestamp":1660154673000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s11432-017-9153-3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,12,12]]},"references-count":48,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2018,1]]}},"alternative-id":["9153"],"URL":"https:\/\/doi.org\/10.1007\/s11432-017-9153-3","relation":{},"ISSN":["1674-733X","1869-1919"],"issn-type":[{"value":"1674-733X","type":"print"},{"value":"1869-1919","type":"electronic"}],"subject":[],"published":{"date-parts":[[2017,12,12]]},"article-number":"012107"}}