Skip to main content
Erschienen in: Empirical Software Engineering 6/2016

19.12.2015

An exploratory study of api changes and usages based on apache and eclipse ecosystems

verfasst von: Wei Wu, Foutse Khomh, Bram Adams, Yann-Gaël Guéhéneuc, Giuliano Antoniol

Erschienen in: Empirical Software Engineering | Ausgabe 6/2016

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Frameworks are widely used in modern software development to reduce development costs. They are accessed through their Application Programming Interfaces (APIs), which specify the contracts with client programs. When frameworks evolve, API backward-compatibility cannot always be guaranteed and client programs must upgrade to use the new releases. Because framework upgrades are not cost-free, observing API changes and usages together at fine-grained levels is necessary to help developers understand, assess, and forecast the cost of each framework upgrade. Whereas previous work studied API changes in frameworks and API usages in client programs separately, we analyse and classify API changes and usages together in 22 framework releases from the Apache and Eclipse ecosystems and their client programs. We find that (1) missing classes and methods happen more often in frameworks and affect client programs more often than the other API change types do, (2) missing interfaces occur rarely in frameworks but affect client programs often, (3) framework APIs are used on average in 35 % of client classes and interfaces, (4) most of such usages could be encapsulated locally and reduced in number, and (5) about 11 % of APIs usages could cause ripple effects in client programs when these APIs change. Based on these findings, we provide suggestions for developers and researchers to reduce the impact of API evolution through language mechanisms and design strategies.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Fußnoten
Literatur
Zurück zum Zitat Ali N, Sharafi Z, Guéhéneuc 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 Ali N, Sharafi Z, Guéhéneuc 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
Zurück zum Zitat 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 ’13. Washington, DC, USA: IEEE Computer Society, pp 280–289 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 ’13. Washington, DC, USA: IEEE Computer Society, pp 280–289
Zurück zum Zitat Bloch J (2008) Effective Java (2nd Edition) (The Java Series), 2nd ed. Upper Saddle River, NJ. Prentice Hall PTR Bloch J (2008) Effective Java (2nd Edition) (The Java Series), 2nd ed. Upper Saddle River, NJ. Prentice Hall PTR
Zurück zum Zitat 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–311. [Online]. Available. doi:10.1145/97945.97982 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–311. [Online]. Available. doi:10.​1145/​97945.​97982
Zurück zum Zitat Businge J, Serebrenik A, van den Brand M (2013) Eclipse api usage: the good and the bad. Softw Qual J 1–35 Businge J, Serebrenik A, van den Brand M (2013) Eclipse api usage: the good and the bad. Softw Qual J 1–35
Zurück zum Zitat 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 ’10. New York, NY, USA: ACM, pp 63–72 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 ’10. New York, NY, USA: ACM, pp 63–72
Zurück zum Zitat 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 ’12. New York, NY, USA: ACM, pp 55:1–55:11 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 ’12. New York, NY, USA: ACM, pp 55:1–55:11
Zurück zum Zitat Dagenais B, Robillard MP (2011) Recommending adaptive changes for framework evolution. ACM Trans Softw Eng Methodol 20(4):19:1–19:35CrossRef Dagenais B, Robillard MP (2011) Recommending adaptive changes for framework evolution. ACM Trans Softw Eng Methodol 20(4):19:1–19:35CrossRef
Zurück zum Zitat De Roover C, Lämmel R, Pek E (2013) Multi-dimensional exploration of api usage. In: ICPC, pp 152–161 De Roover C, Lämmel R, Pek E (2013) Multi-dimensional exploration of api usage. In: ICPC, pp 152–161
Zurück zum Zitat Dig D, Comertoglu C, Marinov D, Johnson R (2006) Automated detection of refactorings in evolving components. In: ECOOP ’06: Proceedings of the 20th European Conference on Object-Oriented Programming. Springer Berlin / Heidelberg Dig D, Comertoglu C, Marinov D, Johnson R (2006) Automated detection of refactorings in evolving components. In: ECOOP ’06: Proceedings of the 20th European Conference on Object-Oriented Programming. Springer Berlin / Heidelberg
Zurück zum Zitat 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–73 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–73
Zurück zum Zitat Dig D, Johnson R (2006) How do apis evolve? A story of refactoring: Research articles. J Softw Maint Evol 18(2):83–107CrossRef Dig D, Johnson R (2006) How do apis evolve? A story of refactoring: Research articles. J Softw Maint Evol 18(2):83–107CrossRef
Zurück zum Zitat Dig D, Manzoor K, Johnson R, Nguyen TN (2007) Refactoring-aware configuration management for object-oriented programs. In: ICSE ’07: Proceedings of the 29th international conference on Software Engineering. Washington, DC, USA: IEEE Computer Society, pp 427–436 Dig D, Manzoor K, Johnson R, Nguyen TN (2007) Refactoring-aware configuration management for object-oriented programs. In: ICSE ’07: Proceedings of the 29th international conference on Software Engineering. Washington, DC, USA: IEEE Computer Society, pp 427–436
Zurück zum Zitat Espinha T, Zaidman A, Gross H-G (2014) Web api growing pains: stories from client developers and their code. In: CSMR-WCRE, pp 84–93 Espinha T, Zaidman A, Gross H-G (2014) Web api growing pains: stories from client developers and their code. In: CSMR-WCRE, pp 84–93
Zurück zum Zitat Fisher RA (1922) On the interpretation of χ 2 from contingency tables, and the calculation of p. J R Stat Soc 85(1):87–94CrossRef Fisher RA (1922) On the interpretation of χ 2 from contingency tables, and the calculation of p. J R Stat Soc 85(1):87–94CrossRef
Zurück zum Zitat 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–1039 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–1039
Zurück zum Zitat Fowler M, Beck K, Brant J, Opdyke W, Roberts D (1999) Refactoring: Improving the Design of Existing Code. Addison-Wesley Fowler M, Beck K, Brant J, Opdyke W, Roberts D (1999) Refactoring: Improving the Design of Existing Code. Addison-Wesley
Zurück zum Zitat Gamma E, Helm R, Johnson RE, Vlissides J (1995) Design patterns: elements of reusable object-oriented software. Addison-Wesley Gamma E, Helm R, Johnson RE, Vlissides J (1995) Design patterns: elements of reusable object-oriented software. Addison-Wesley
Zurück zum Zitat Godfrey MW, Zou L (2005) Using origin analysis to detect merging and splitting of source code entities. IEEE Trans Softw Eng 31(2):166–181CrossRef Godfrey MW, Zou L (2005) Using origin analysis to detect merging and splitting of source code entities. IEEE Trans Softw Eng 31(2):166–181CrossRef
Zurück zum Zitat Hou D, Mo L (2013) Content categorization of api discussions. In: ICSM, pp 60–69 Hou D, Mo L (2013) Content categorization of api discussions. In: ICSM, pp 60–69
Zurück zum Zitat Hou D, Yao X (2011) Exploring the intent behind api evolution: a case study. In: WCRE, pp 131–140 Hou D, Yao X (2011) Exploring the intent behind api evolution: a case study. In: WCRE, pp 131–140
Zurück zum Zitat 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 ’09. Washington, DC, USA: IEEE Computer Society, pp 111–122 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 ’09. Washington, DC, USA: IEEE Computer Society, pp 111–122
Zurück zum Zitat 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 ’11. New York, NY, USA: ACM, pp 151–160 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 ’11. New York, NY, USA: ACM, pp 151–160
Zurück zum Zitat Kim M, Notkin D, Grossman D (2007) Automatic inference of structural changes for matching across program versions. In: ICSE ’07: Proceedings of the 29th international conference on Software Engineering.Washington, DC, USA: IEEE Computer Society, pp 333–343 Kim M, Notkin D, Grossman D (2007) Automatic inference of structural changes for matching across program versions. In: ICSE ’07: Proceedings of the 29th international conference on Software Engineering.Washington, DC, USA: IEEE Computer Society, pp 333–343
Zurück zum Zitat Kpodjedo S, Ricca F, Galinier P, Antoniol G, Guéhéneuc Y-G (2013) Madmatch: Many-to-many approximate diagram matching for design comparison. IEEE Trans Softw Eng 39(8):1090–1111CrossRef Kpodjedo S, Ricca F, Galinier P, Antoniol G, Guéhéneuc Y-G (2013) Madmatch: Many-to-many approximate diagram matching for design comparison. IEEE Trans Softw Eng 39(8):1090–1111CrossRef
Zurück zum Zitat Lämmel 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 ’11. New York, NY, USA: ACM, pp 1317–1324 Lämmel 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 ’11. New York, NY, USA: ACM, pp 1317–1324
Zurück zum Zitat Linares-Vásquez 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–94 Linares-Vásquez 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–94
Zurück zum Zitat Maalej W, Robillard MP (2013) Patterns of knowledge in api reference documentation. IEEE Trans Softw Eng 39(9):1264–1282CrossRef Maalej W, Robillard MP (2013) Patterns of knowledge in api reference documentation. IEEE Trans Softw Eng 39(9):1264–1282CrossRef
Zurück zum Zitat 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 ’13. Washington, DC, USA: IEEE Computer Society, pp 70–79 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 ’13. Washington, DC, USA: IEEE Computer Society, pp 70–79
Zurück zum Zitat 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–363 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–363
Zurück zum Zitat Mikhajlov L., Sekerinski E (1998) A study of the fragile base class problem. In: EUROPEAN CONFERENCE ON OBJECT-ORIENTED PROGRAMMING, ser. ECOOP’98. Springer, pp 355–382 Mikhajlov L., Sekerinski E (1998) A study of the fragile base class problem. In: EUROPEAN CONFERENCE ON OBJECT-ORIENTED PROGRAMMING, ser. ECOOP’98. Springer, pp 355–382
Zurück zum Zitat Montandon JE, Borges H, Felix D, Valente MT (2013) Documenting apis with examples: Lessons learned with the apiminer platform. In: WCRE, IEEE, pp 401–408 Montandon JE, Borges H, Felix D, Valente MT (2013) Documenting apis with examples: Lessons learned with the apiminer platform. In: WCRE, IEEE, pp 401–408
Zurück zum Zitat Moritz E, Vásquez 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–651 Moritz E, Vásquez 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–651
Zurück zum Zitat 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 ’10. New York, NY, USA: ACM, pp 302–321 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 ’10. New York, NY, USA: ACM, pp 302–321
Zurück zum Zitat 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–175CrossRefMATH 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–175CrossRefMATH
Zurück zum Zitat 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 ’12. Washington, DC, USA: IEEE Computer Society, pp 378–387 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 ’12. Washington, DC, USA: IEEE Computer Society, pp 378–387
Zurück zum Zitat 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 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
Zurück zum Zitat Robbes R, Lungu M, Röthlisberger 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 ’12. New York, NY, USA: ACM, pp 56:1–56:11 Robbes R, Lungu M, Röthlisberger 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 ’12. New York, NY, USA: ACM, pp 56:1–56:11
Zurück zum Zitat Robillard MP, DeLine R (2011) A field study of api learning obstacles. Empir Softw Eng 16(6):703–732CrossRef Robillard MP, DeLine R (2011) A field study of api learning obstacles. Empir Softw Eng 16(6):703–732CrossRef
Zurück zum Zitat 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–345 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–345
Zurück zum Zitat Schärli 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–274 Schärli 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–274
Zurück zum Zitat Schäfer T, Jonas J, Mezini M (2008) Mining framework usage changes from instantiation code. In: ICSE ’08: Proceedings of the 30th international conference on Software engineering. New York, NY, USA: ACM, pp 471–480 Schäfer T, Jonas J, Mezini M (2008) Mining framework usage changes from instantiation code. In: ICSE ’08: Proceedings of the 30th international conference on Software engineering. New York, NY, USA: ACM, pp 471–480
Zurück zum Zitat 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 ’13. Washington, DC, USA: IEEE Computer Society, pp 160–169 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 ’13. Washington, DC, USA: IEEE Computer Society, pp 160–169
Zurück zum Zitat Sheskin DJ (2007) Handbook of parametric and nonparametric statistical procedures, 4th edn. Chapman & All Sheskin DJ (2007) Handbook of parametric and nonparametric statistical procedures, 4th edn. Chapman & All
Zurück zum Zitat 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–431 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–431
Zurück zum Zitat 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 ’08. Washington, DC, USA: IEEE Computer Society, pp 327–336 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 ’08. Washington, DC, USA: IEEE Computer Society, pp 327–336
Zurück zum Zitat Tonelli T, Czarnecki K, Lämmel 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–10 Tonelli T, Czarnecki K, Lämmel 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–10
Zurück zum Zitat Wohlin C, Runeson P, Höst M (1999) Experimentation in software engineering: an introduction. Springer Wohlin C, Runeson P, Höst M (1999) Experimentation in software engineering: an introduction. Springer
Zurück zum Zitat Wu W, Adams B, Guéhéneuc 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’14 Wu W, Adams B, Guéhéneuc 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’14
Zurück zum Zitat Wu W, Guéhéneuc 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 ’10. New York, NY, USA: ACM, pp 325–334 Wu W, Guéhéneuc 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 ’10. New York, NY, USA: ACM, pp 325–334
Zurück zum Zitat Wu W, Serveaux A, Guéhéneuc 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 Wu W, Serveaux A, Guéhéneuc 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
Zurück zum Zitat Xing Z, Stroulia E (2007) Differencing logical uml models. Autom Softw Eng 14(2):215–259CrossRef Xing Z, Stroulia E (2007) Differencing logical uml models. Autom Softw Eng 14(2):215–259CrossRef
Zurück zum Zitat Xing Z, Stroulia E (2007) API-evolution support with diff-CatchUp. IEEE Trans Softw Eng 33(12):818–836CrossRef Xing Z, Stroulia E (2007) API-evolution support with diff-CatchUp. IEEE Trans Softw Eng 33(12):818–836CrossRef
Zurück zum Zitat 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 ’10. New York, NY, USA: ACM, pp 195–204 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 ’10. New York, NY, USA: ACM, pp 195–204
Metadaten
Titel
An exploratory study of api changes and usages based on apache and eclipse ecosystems
verfasst von
Wei Wu
Foutse Khomh
Bram Adams
Yann-Gaël Guéhéneuc
Giuliano Antoniol
Publikationsdatum
19.12.2015
Verlag
Springer US
Erschienen in
Empirical Software Engineering / Ausgabe 6/2016
Print ISSN: 1382-3256
Elektronische ISSN: 1573-7616
DOI
https://doi.org/10.1007/s10664-015-9411-7

Weitere Artikel der Ausgabe 6/2016

Empirical Software Engineering 6/2016 Zur Ausgabe

Premium Partner