{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,21]],"date-time":"2026-05-21T19:51:21Z","timestamp":1779393081795,"version":"3.53.1"},"reference-count":54,"publisher":"Springer Science and Business Media LLC","issue":"6","license":[{"start":{"date-parts":[[2015,12,19]],"date-time":"2015-12-19T00:00:00Z","timestamp":1450483200000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"funder":[{"DOI":"10.13039\/501100003150","name":"Fonds Qu\u00e9b\u00e9cois de la Recherche sur la Nature et les Technologies (CA)","doi-asserted-by":"publisher","award":["149414"],"award-info":[{"award-number":["149414"]}],"id":[{"id":"10.13039\/501100003150","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100002790","name":"Canadian Network for Research and Innovation in Machining Technology, Natural Sciences and Engineering Research Council of Canada (CA)","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100002790","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2016,12]]},"DOI":"10.1007\/s10664-015-9411-7","type":"journal-article","created":{"date-parts":[[2015,12,19]],"date-time":"2015-12-19T02:55:50Z","timestamp":1450493750000},"page":"2366-2412","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":25,"title":["An exploratory study of api changes and usages based on apache and eclipse ecosystems"],"prefix":"10.1007","volume":"21","author":[{"given":"Wei","family":"Wu","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Foutse","family":"Khomh","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Bram","family":"Adams","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Yann-Ga\u00ebl","family":"Gu\u00e9h\u00e9neuc","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Giuliano","family":"Antoniol","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2015,12,19]]},"reference":[{"key":"9411_CR1","doi-asserted-by":"crossref","unstructured":"Ali N, Sharafi Z, Gu\u00e9h\u00e9neuc Y-G, Antoniol G (2012) An empirical study on requirements traceability using eye-tracking. In: Proceedings of the International Conference on Software Maintenance, ser. ICSM 2012","DOI":"10.1109\/ICSM.2012.6405271"},{"key":"9411_CR2","doi-asserted-by":"crossref","unstructured":"Bavota G, Canfora G, Penta MD, Oliveto R, Panichella S (2013) The evolution of project inter-dependencies in a software ecosystem: the case of apache. In: Proceedings of the 2013 IEEE International Conference on Software Maintenance, ser. ICSM \u201913. Washington, DC, USA: IEEE Computer Society, pp 280\u2013289","DOI":"10.1109\/ICSM.2013.39"},{"key":"9411_CR3","volume-title":"Effective Java (2nd Edition) (The Java Series)","author":"J Bloch","year":"2008","unstructured":"Bloch J (2008) Effective Java (2nd Edition) (The Java Series), 2nd ed. Upper Saddle River, NJ. Prentice Hall PTR","edition":"2nd ed"},{"key":"9411_CR4","doi-asserted-by":"publisher","unstructured":"Bracha G, Cook W (1990) Mixin-based inheritance. In: Proceedings of the European Conference on Object-oriented Programming and on Object-oriented Programming Systems, Languages, and Applications, ser. OOPSLA\/ECOOP. New York, NY, USA: ACM Press, 1990, pp. 303\u2013311. [Online]. Available. doi: 10.1145\/97945.97982","DOI":"10.1145\/97945.97982"},{"key":"9411_CR5","unstructured":"Businge J, Serebrenik A, van den Brand M (2013) Eclipse api usage: the good and the bad. Softw Qual J 1\u201335"},{"key":"9411_CR6","doi-asserted-by":"crossref","unstructured":"Businge J, Serebrenik A, van den Brand M (2010) An empirical study of the evolution of eclipse third-party plug-ins. In: Proceedings of the Joint ERCIM Workshop on Software Evolution (EVOL) and International Workshop on Principles of Software Evolution (IWPSE), ser. IWPSE-EVOL \u201910. New York, NY, USA: ACM, pp 63\u201372","DOI":"10.1145\/1862372.1862389"},{"key":"9411_CR7","doi-asserted-by":"crossref","unstructured":"Cossette BE, Walker RJ (2012) Seeking the ground truth: a retroactive study on the evolution and migration of software libraries. In: Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering, ser. FSE \u201912. New York, NY, USA: ACM, pp 55:1\u201355:11","DOI":"10.1145\/2393596.2393661"},{"issue":"4","key":"9411_CR8","doi-asserted-by":"crossref","first-page":"19:1","DOI":"10.1145\/2000799.2000805","volume":"20","author":"B Dagenais","year":"2011","unstructured":"Dagenais B, Robillard MP (2011) Recommending adaptive changes for framework evolution. ACM Trans Softw Eng Methodol 20(4):19:1\u201319:35","journal-title":"ACM Trans Softw Eng Methodol"},{"key":"9411_CR9","doi-asserted-by":"crossref","unstructured":"De Roover C, L\u00e4mmel R, Pek E (2013) Multi-dimensional exploration of api usage. In: ICPC, pp 152\u2013161","DOI":"10.1109\/ICPC.2013.6613843"},{"key":"9411_CR10","doi-asserted-by":"crossref","unstructured":"Dig D, Comertoglu C, Marinov D, Johnson R (2006) Automated detection of refactorings in evolving components. In: ECOOP \u201906: Proceedings of the 20th European Conference on Object-Oriented Programming. Springer Berlin \/ Heidelberg","DOI":"10.1007\/11785477_24"},{"key":"9411_CR11","doi-asserted-by":"crossref","unstructured":"Dietrich J, Jezek K, Brada P (2014) Broken promises: an empirical study into evolution problems in java programs caused by library upgrades. In: CSMR-WCRE, pp 64\u201373","DOI":"10.1109\/CSMR-WCRE.2014.6747226"},{"issue":"2","key":"9411_CR12","doi-asserted-by":"crossref","first-page":"83","DOI":"10.1002\/smr.328","volume":"18","author":"D Dig","year":"2006","unstructured":"Dig D, Johnson R (2006) How do apis evolve? A story of refactoring: Research articles. J Softw Maint Evol 18(2):83\u2013107","journal-title":"J Softw Maint Evol"},{"key":"9411_CR13","doi-asserted-by":"crossref","unstructured":"Dig D, Manzoor K, Johnson R, Nguyen TN (2007) Refactoring-aware configuration management for object-oriented programs. In: ICSE \u201907: Proceedings of the 29th international conference on Software Engineering. Washington, DC, USA: IEEE Computer Society, pp 427\u2013436","DOI":"10.1109\/ICSE.2007.71"},{"key":"9411_CR14","doi-asserted-by":"crossref","unstructured":"Espinha T, Zaidman A, Gross H-G (2014) Web api growing pains: stories from client developers and their code. In: CSMR-WCRE, pp 84\u201393","DOI":"10.1109\/CSMR-WCRE.2014.6747228"},{"issue":"1","key":"9411_CR15","doi-asserted-by":"crossref","first-page":"87","DOI":"10.2307\/2340521","volume":"85","author":"RA Fisher","year":"1922","unstructured":"Fisher RA (1922) On the interpretation of \u03c7 2 from contingency tables, and the calculation of p. J R Stat Soc 85(1):87\u201394","journal-title":"J R Stat Soc"},{"key":"9411_CR16","doi-asserted-by":"crossref","unstructured":"Fokaefs M, Tsantalis N, Stroulia E, Chatzigeorgiou A (2011) Jdeodorant: identification and application of extract class refactorings. In: Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, Waikiki, Honolulu, HI, USA, May 21-28, 2011, pp 1037\u20131039","DOI":"10.1145\/1985793.1985989"},{"key":"9411_CR17","unstructured":"Fowler M, Beck K, Brant J, Opdyke W, Roberts D (1999) Refactoring: Improving the Design of Existing Code. Addison-Wesley"},{"key":"9411_CR18","unstructured":"Gamma E, Helm R, Johnson RE, Vlissides J (1995) Design patterns: elements of reusable object-oriented software. Addison-Wesley"},{"issue":"2","key":"9411_CR19","doi-asserted-by":"crossref","first-page":"166","DOI":"10.1109\/TSE.2005.28","volume":"31","author":"MW Godfrey","year":"2005","unstructured":"Godfrey MW, Zou L (2005) Using origin analysis to detect merging and splitting of source code entities. IEEE Trans Softw Eng 31(2):166\u2013181","journal-title":"IEEE Trans Softw Eng"},{"key":"9411_CR20","doi-asserted-by":"crossref","unstructured":"Hou D, Mo L (2013) Content categorization of api discussions. In: ICSM, pp 60\u201369","DOI":"10.1109\/ICSM.2013.17"},{"key":"9411_CR21","doi-asserted-by":"crossref","unstructured":"Hou D, Yao X (2011) Exploring the intent behind api evolution: a case study. In: WCRE, pp 131\u2013140","DOI":"10.1109\/WCRE.2011.24"},{"key":"9411_CR22","doi-asserted-by":"crossref","unstructured":"Kawrykow D, Robillard MP (2009) Improving api usage through automatic detection of redundant code. In: Proceedings of the 2009 IEEE\/ACM International Conference on Automated Software Engineering, ser. ASE \u201909. Washington, DC, USA: IEEE Computer Society, pp 111\u2013122","DOI":"10.1109\/ASE.2009.62"},{"key":"9411_CR23","doi-asserted-by":"crossref","unstructured":"Kim M, Cai D, Kim S (2011) An empirical investigation into the role of api-level refactorings during software evolution. In: Proceedings of the 33rd International Conference on Software Engineering, ser. ICSE \u201911. New York, NY, USA: ACM, pp 151\u2013160","DOI":"10.1145\/1985793.1985815"},{"key":"9411_CR24","doi-asserted-by":"crossref","unstructured":"Kim M, Notkin D, Grossman D (2007) Automatic inference of structural changes for matching across program versions. In: ICSE \u201907: Proceedings of the 29th international conference on Software Engineering.Washington, DC, USA: IEEE Computer Society, pp 333\u2013343","DOI":"10.1109\/ICSE.2007.20"},{"issue":"8","key":"9411_CR25","doi-asserted-by":"crossref","first-page":"1090","DOI":"10.1109\/TSE.2013.9","volume":"39","author":"S Kpodjedo","year":"2013","unstructured":"Kpodjedo S, Ricca F, Galinier P, Antoniol G, Gu\u00e9h\u00e9neuc Y-G (2013) Madmatch: Many-to-many approximate diagram matching for design comparison. IEEE Trans Softw Eng 39(8):1090\u20131111","journal-title":"IEEE Trans Softw Eng"},{"key":"9411_CR26","doi-asserted-by":"crossref","unstructured":"L\u00e4mmel R, Pek E, Starek J (2011) Large-scale, ast-based api-usage analysis of open-source java projects. In: Proceedings of the 2011 ACM Symposium on Applied Computing, ser. SAC \u201911. New York, NY, USA: ACM, pp 1317\u20131324","DOI":"10.1145\/1982185.1982471"},{"key":"9411_CR27","doi-asserted-by":"crossref","unstructured":"Linares-V\u00e1squez M, Bavota G, Di Penta M, Oliveto R, Poshyvanyk D (2014) How do api changes trigger stack overflow discussions? A study on the android sdk. In: Proceedings of the 22Nd International Conference on Program Comprehension, ser. ICPC 2014. New York, NY, USA: ACM, pp 83\u201394","DOI":"10.1145\/2597008.2597155"},{"issue":"9","key":"9411_CR28","doi-asserted-by":"crossref","first-page":"1264","DOI":"10.1109\/TSE.2013.12","volume":"39","author":"W Maalej","year":"2013","unstructured":"Maalej W, Robillard MP (2013) Patterns of knowledge in api reference documentation. IEEE Trans Softw Eng 39(9):1264\u20131282","journal-title":"IEEE Trans Softw Eng"},{"key":"9411_CR29","doi-asserted-by":"crossref","unstructured":"McDonnell T, Ray B, Kim M (2013) An empirical study of api stability and adoption in the android ecosystem. In: Proceedings of the 2013 IEEE International Conference on Software Maintenance, ser. ICSM \u201913. Washington, DC, USA: IEEE Computer Society, pp 70\u201379","DOI":"10.1109\/ICSM.2013.18"},{"key":"9411_CR30","doi-asserted-by":"crossref","unstructured":"Meng S, Wang X, Zhang L, Mei H (2012) A history-based matching approach to identification of framework evolution. In: Proceedings of 34th International Conference on Software Engineering, ser. ICSE 2012, pp 353\u2013363","DOI":"10.1109\/ICSE.2012.6227179"},{"key":"9411_CR31","doi-asserted-by":"crossref","unstructured":"Mikhajlov L., Sekerinski E (1998) A study of the fragile base class problem. In: EUROPEAN CONFERENCE ON OBJECT-ORIENTED PROGRAMMING, ser. ECOOP\u201998. Springer, pp 355\u2013382","DOI":"10.1007\/BFb0054099"},{"key":"9411_CR32","doi-asserted-by":"crossref","unstructured":"Montandon JE, Borges H, Felix D, Valente MT (2013) Documenting apis with examples: Lessons learned with the apiminer platform. In: WCRE, IEEE, pp 401\u2013408","DOI":"10.1109\/WCRE.2013.6671315"},{"key":"9411_CR33","doi-asserted-by":"crossref","unstructured":"Moritz E, V\u00e1squez ML, Poshyvanyk D, Grechanik M, McMillan C, Gethers M (2013) Export: detecting and visualizing api usages in large source code repositories. In: ASE, pp 646\u2013651","DOI":"10.1109\/ASE.2013.6693127"},{"key":"9411_CR34","doi-asserted-by":"crossref","unstructured":"Nguyen HA, Nguyen TT, Wilson Jr.G., Nguyen AT, Kim M, Nguyen TN (2010) A graph-based approach to api usage adaptation. In: Proceedings of the ACM international conference on Object oriented programming systems languages and applications, ser. OOPSLA \u201910. New York, NY, USA: ACM, pp 302\u2013321","DOI":"10.1145\/1869459.1869486"},{"issue":"302","key":"9411_CR35","doi-asserted-by":"crossref","first-page":"157","DOI":"10.1080\/14786440009463897","volume":"50","author":"K Pearson","year":"1922","unstructured":"Pearson K (1922) On the criterion that a given system of deviations from the probable in the case of a correlated system of variables is such that it can be reasonably supposed to have arisen from random sampling. Philosophical Magazine Series 5 50 (302):157\u2013175","journal-title":"Philosophical Magazine Series 5"},{"key":"9411_CR36","doi-asserted-by":"crossref","unstructured":"Raemaekers S, van Deursen A, Visser J (2012) Measuring software library stability through historical version analysis. In: Proceedings of the, 2012, IEEE International Conference on Software Maintenance (ICSM), ser. ICSM \u201912. Washington, DC, USA: IEEE Computer Society, pp 378\u2013387","DOI":"10.1109\/ICSM.2012.6405296"},{"key":"9411_CR37","doi-asserted-by":"crossref","unstructured":"Raemaekers S, van Deursen A, Visser J (2014) Semantic versioning versus breaking changes: a study of the maven repository. In: 14th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2014). Victoria (Canada), 28-29 Sept. 2014 IEEE Computer Society","DOI":"10.1109\/SCAM.2014.30"},{"key":"9411_CR38","doi-asserted-by":"crossref","unstructured":"Robbes R, Lungu M, R\u00f6thlisberger D (2012) How do developers react to api deprecation?: The case of a smalltalk ecosystem. In: Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering, ser. FSE \u201912. New York, NY, USA: ACM, pp 56:1\u201356:11","DOI":"10.1145\/2393596.2393662"},{"issue":"6","key":"9411_CR39","doi-asserted-by":"crossref","first-page":"703","DOI":"10.1007\/s10664-010-9150-8","volume":"16","author":"MP Robillard","year":"2011","unstructured":"Robillard MP, DeLine R (2011) A field study of api learning obstacles. Empir Softw Eng 16(6):703\u2013732","journal-title":"Empir Softw Eng"},{"key":"9411_CR40","doi-asserted-by":"crossref","unstructured":"Tempero E, Anslow C, Dietrich J, Han T, Li J, Lumpe M, Melton H, Noble J (2010) Qualitas corpus: a curated collection of java code for empirical studies. In: 2010 Asia Pacific Software Engineering Conference (APSEC2010), pp 336\u2013345","DOI":"10.1109\/APSEC.2010.46"},{"key":"9411_CR41","doi-asserted-by":"publisher","unstructured":"Sch\u00e4rli N, Ducasse S, Nierstrasz O, Black A (2003) Traits: Composable units of behaviour. In: CardellLucai L (ed) Proceedings of the European Conference on Object-oriented Programming. [Online]. Available. doi: 10.1007\/978-3-540-45070-2_12 . Springer, pp 248\u2013274","DOI":"10.1007\/978-3-540-45070-2_12"},{"key":"9411_CR42","doi-asserted-by":"crossref","unstructured":"Sch\u00e4fer T, Jonas J, Mezini M (2008) Mining framework usage changes from instantiation code. In: ICSE \u201908: Proceedings of the 30th international conference on Software engineering. New York, NY, USA: ACM, pp 471\u2013480","DOI":"10.1145\/1368088.1368153"},{"key":"9411_CR43","doi-asserted-by":"crossref","unstructured":"Shah SMA, Dietrich J, McCartin C (2013) On the automation of dependency-breaking refactorings in java. In: Proceedings of the 2013 IEEE International Conference on Software Maintenance, ser. ICSM \u201913. Washington, DC, USA: IEEE Computer Society, pp 160\u2013169","DOI":"10.1109\/ICSM.2013.27"},{"key":"9411_CR44","unstructured":"Sheskin DJ (2007) Handbook of parametric and nonparametric statistical procedures, 4th edn. Chapman & All"},{"key":"9411_CR45","doi-asserted-by":"crossref","unstructured":"Shi L, Zhong H, Xie T, Li M (2011) An empirical study on evolution of API documentation. In: Proceedings International Conference on Fundamental Approaches to Software Engineering (FASE 2011), pp 416\u2013431","DOI":"10.1007\/978-3-642-19811-3_29"},{"key":"9411_CR46","doi-asserted-by":"crossref","unstructured":"Thummalapenta S, Xie T (2008) Spotweb: Detecting framework hotspots and coldspots via mining open source code on the web. In: Proceedings of the 2008 23rd IEEE\/ACM International Conference on Automated Software Engineering, ser. ASE \u201908. Washington, DC, USA: IEEE Computer Society, pp 327\u2013336","DOI":"10.1109\/ASE.2008.43"},{"key":"9411_CR47","doi-asserted-by":"crossref","unstructured":"Tonelli T, Czarnecki K, L\u00e4mmel R (2010) Swing to SWT and back: Patterns for API migration by wrapping. In: 26th IEEE International Conference on Software Maintenance (ICSM 2010), September 12-18, 2010, Timisoara, Romania. IEEE Computer Society, pp 1\u201310","DOI":"10.1109\/ICSM.2010.5610429"},{"key":"9411_CR48","doi-asserted-by":"crossref","unstructured":"Wohlin C, Runeson P, H\u00f6st M (1999) Experimentation in software engineering: an introduction. Springer","DOI":"10.1007\/978-1-4615-4625-2_1"},{"key":"9411_CR49","doi-asserted-by":"crossref","unstructured":"Wu W, Adams B, Gu\u00e9h\u00e9neuc Y-G, Antoniol G (2014) Acua: Api change and usage auditor. In: 4th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM), ser. SCAM\u201914","DOI":"10.1109\/SCAM.2014.33"},{"key":"9411_CR50","doi-asserted-by":"crossref","unstructured":"Wu W, Gu\u00e9h\u00e9neuc Y-G, Antoniol G, Kim M (2010) Aura: a hybrid approach to identify framework evolution. In: Proceedings of the 32nd ACM\/IEEE International Conference on Software Engineering - Volume 1, ser. ICSE \u201910. New York, NY, USA: ACM, pp 325\u2013334","DOI":"10.1145\/1806799.1806848"},{"key":"9411_CR51","doi-asserted-by":"crossref","unstructured":"Wu W, Serveaux A, Gu\u00e9h\u00e9neuc Y-G, Antoniol G (2014) The impact of imperfect change rules on framework api evolution identi cation:an empirical study, Empirical Software Engineering, vol. In Press","DOI":"10.1007\/s10664-014-9317-9"},{"issue":"2","key":"9411_CR52","doi-asserted-by":"crossref","first-page":"215","DOI":"10.1007\/s10515-007-0007-3","volume":"14","author":"Z Xing","year":"2007","unstructured":"Xing Z, Stroulia E (2007) Differencing logical uml models. Autom Softw Eng 14(2):215\u2013259","journal-title":"Autom Softw Eng"},{"issue":"12","key":"9411_CR53","doi-asserted-by":"crossref","first-page":"818","DOI":"10.1109\/TSE.2007.70747","volume":"33","author":"Z Xing","year":"2007","unstructured":"Xing Z, Stroulia E (2007) API-evolution support with diff-CatchUp. IEEE Trans Softw Eng 33(12):818\u2013836","journal-title":"IEEE Trans Softw Eng"},{"key":"9411_CR54","doi-asserted-by":"crossref","unstructured":"Zhong H, Thummalapenta S, Xie T, Zhang L, Wang Q (2010) Mining api mapping for language migration. In: Proceedings of the 32nd ACM\/IEEE International Conference on Software Engineering - Volume 1, ser. ICSE \u201910. New York, NY, USA: ACM, pp 195\u2013204","DOI":"10.1145\/1806799.1806831"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-015-9411-7.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10664-015-9411-7\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-015-9411-7","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-015-9411-7.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,9,2]],"date-time":"2019-09-02T15:05:03Z","timestamp":1567436703000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10664-015-9411-7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,12,19]]},"references-count":54,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2016,12]]}},"alternative-id":["9411"],"URL":"https:\/\/doi.org\/10.1007\/s10664-015-9411-7","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2015,12,19]]}}}