Skip to main content
Erschienen in: Software Quality Journal 4/2019

03.07.2019

Pieces of contextual information suitable for predicting co-changes? An empirical study

verfasst von: Igor Scaliante Wiese, Rodrigo Takashi Kuroda, Igor Steinmacher, Gustavo Ansaldi Oliva, Reginaldo Ré, Christoph Treude, Marco Aurelio Gerosa

Erschienen in: Software Quality Journal | Ausgabe 4/2019

Einloggen

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

search-config
loading …

Abstract

Models that predict software artifact co-changes have been proposed to assist developers in altering a software system and they often rely on coupling. However, developers have not yet widely adopted these approaches, presumably because of the high number of false recommendations. In this work, we conjecture that the contextual information related to software changes, which is collected from issues (e.g., issue type and reporter), developers’ communication (e.g., number of issue comments, issue discussants and words in the discussion), and commit metadata (e.g., number of lines added, removed, and modified), improves the accuracy of co-change prediction. We built customized prediction models for each co-change and evaluated the approach on 129 releases from a curated set of 10 Apache Software Foundation projects. Comparing our approach with the widely used association rules as a baseline, we found that contextual information models and association rules provide a similar number of co-change recommendations, but our models achieved a significantly higher F-measure. In particular, we found that contextual information significantly reduces the number of false recommendations compared to the baseline model. We conclude that contextual information is an important source for supporting change prediction and may be used to warn developers when they are about to miss relevant artifacts while performing a software change.

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 "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!

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!

Literatur
Zurück zum Zitat Ball, T., Kim, J., & Siy, H. P. (1997). If your version control system could talk. ICSE Work Process Model Empir Stud Softw Eng.. Ball, T., Kim, J., & Siy, H. P. (1997). If your version control system could talk. ICSE Work Process Model Empir Stud Softw Eng..
Zurück zum Zitat Beyer D, Noack A (2005) Clustering software artifacts based on frequent common changes. In: 13th International Workshop on Program Comprehension (IWPC’05). pp 259–268. Beyer D, Noack A (2005) Clustering software artifacts based on frequent common changes. In: 13th International Workshop on Program Comprehension (IWPC’05). pp 259–268.
Zurück zum Zitat Bird, C., Nagappan, N., Murphy, B., Gall, H., Devanbu, P., 2009. Putting it all together: using socio-technical networks to predict failures. In: Proceedings - International Symposium on Software Reliability Engineering, ISSRE. pp. 109–119. Bird, C., Nagappan, N., Murphy, B., Gall, H., Devanbu, P., 2009. Putting it all together: using socio-technical networks to predict failures. In: Proceedings - International Symposium on Software Reliability Engineering, ISSRE. pp. 109–119.
Zurück zum Zitat Bohner, S. A., & Arnold, R. S. (1996). Software change impact analysis. IEEE Computer Society Press. Bohner, S. A., & Arnold, R. S. (1996). Software change impact analysis. IEEE Computer Society Press.
Zurück zum Zitat Conway, M. E. (1968). How do committees invent. Datamation, 14, 28–31. Conway, M. E. (1968). How do committees invent. Datamation, 14, 28–31.
Zurück zum Zitat Powers, D. M. (2011). Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation. Journal of Machine Learning Technologies, 2, 37–63. Powers, D. M. (2011). Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation. Journal of Machine Learning Technologies, 2, 37–63.
Zurück zum Zitat Dias M, Bacchelli A, Gousios G, et al (2015) Untangling fine-grained code changes. In: 2015 IEEE 22nd international conference on software analysis, evolution, and reengineering, SANER 2015 - proceedings. pp 341–350. Dias M, Bacchelli A, Gousios G, et al (2015) Untangling fine-grained code changes. In: 2015 IEEE 22nd international conference on software analysis, evolution, and reengineering, SANER 2015 - proceedings. pp 341–350.
Zurück zum Zitat Dit B., Wagner M., Wen S., et al (2014) ImpactMiner: a tool for change impact analysis. In: 36th international conference on software engineering, ICSE companion 2014 - proceedings. pp 540–543. Dit B., Wagner M., Wen S., et al (2014) ImpactMiner: a tool for change impact analysis. In: 36th international conference on software engineering, ICSE companion 2014 - proceedings. pp 540–543.
Zurück zum Zitat Gethers M, Dit B, Kagdi H, Poshyvanyk D (2012) Integrated impact analysis for managing software changes. In: Proceedings - International Conference on Software Engineering pp 430–440. Gethers M, Dit B, Kagdi H, Poshyvanyk D (2012) Integrated impact analysis for managing software changes. In: Proceedings - International Conference on Software Engineering pp 430–440.
Zurück zum Zitat Gethers, M., & Poshyvanyk, D. (2010). Using relational topic models to capture coupling among classes in object-oriented software systems. IEEE International Conference on Software Maintenance, ICSM. Gethers, M., & Poshyvanyk, D. (2010). Using relational topic models to capture coupling among classes in object-oriented software systems. IEEE International Conference on Software Maintenance, ICSM.
Zurück zum Zitat Hassan, A. E. (2009). Predicting faults using the complexity of code changes. Proceedings - International Conference on Software Engineering., 78–88. Hassan, A. E. (2009). Predicting faults using the complexity of code changes. Proceedings - International Conference on Software Engineering., 78–88.
Zurück zum Zitat Hassan, A. E., & Holt, R. C. (2004). Predicting change propagation in software systems. IEEE International Conference on Software Maintenance, ICSM., 284–293. Hassan, A. E., & Holt, R. C. (2004). Predicting change propagation in software systems. IEEE International Conference on Software Maintenance, ICSM., 284–293.
Zurück zum Zitat Herzig, K., & Zeller, A. (2013). The impact of tangled code changes. IEEE International Working Conference on Mining Software Repositories., 121–130. Herzig, K., & Zeller, A. (2013). The impact of tangled code changes. IEEE International Working Conference on Mining Software Repositories., 121–130.
Zurück zum Zitat Kuhn, M. (2008). Building predictive models in R using the caret package. Journal of Statistical Software, 28, 1–26.CrossRef Kuhn, M. (2008). Building predictive models in R using the caret package. Journal of Statistical Software, 28, 1–26.CrossRef
Zurück zum Zitat Macho, C., McIntosh, S., & Pinzger, M. (2016). Predicting build co-changes with source code change and commit categories. Proc. of the International Conference on Software Analysis, Evolution, and Reengineering (SANER)., 541–551. Macho, C., McIntosh, S., & Pinzger, M. (2016). Predicting build co-changes with source code change and commit categories. Proc. of the International Conference on Software Analysis, Evolution, and Reengineering (SANER)., 541–551.
Zurück zum Zitat McIntosh, S., Adams, B., Nagappan, M., & Hassan, A. E. (2014). Mining co-change information to understand when build changes are necessary. Proc. of the 30th Int’l Conf. on Software Maintenance and Evolution (ICSME)., 241–250. McIntosh, S., Adams, B., Nagappan, M., & Hassan, A. E. (2014). Mining co-change information to understand when build changes are necessary. Proc. of the 30th Int’l Conf. on Software Maintenance and Evolution (ICSME)., 241–250.
Zurück zum Zitat Moonen L, Di Alesio S, Binkley D, Rolfsnes T (2016) Practical guidelines for change recommendation using association rule mining. In: International Conference on Automated Software Engineering (ASE). p 11. Moonen L, Di Alesio S, Binkley D, Rolfsnes T (2016) Practical guidelines for change recommendation using association rule mining. In: International Conference on Automated Software Engineering (ASE). p 11.
Zurück zum Zitat Oliva GA, Gerosa MA (2015a) Experience report: how do structural dependencies influence change propagation? An empirical study. In: Proceedings of the 26th IEEE International Symposium on Software Reliability Engineering. Oliva GA, Gerosa MA (2015a) Experience report: how do structural dependencies influence change propagation? An empirical study. In: Proceedings of the 26th IEEE International Symposium on Software Reliability Engineering.
Zurück zum Zitat Oliva, G. A., & Gerosa, M. A. (2015b). Change coupling between software artifacts: learning from past changes. In C. Bird, T. Menzies, & T. Zimmermann (Eds.), The art and science of analyzing software data (pp. 285–324). Morgan Kaufmann. Oliva, G. A., & Gerosa, M. A. (2015b). Change coupling between software artifacts: learning from past changes. In C. Bird, T. Menzies, & T. Zimmermann (Eds.), The art and science of analyzing software data (pp. 285–324). Morgan Kaufmann.
Zurück zum Zitat Oliva, G. A., Steinmacher, I., Wiese, I., & Gerosa, M. A. (2013). What can commit metadata tell us about design degradation? In Proceedings of the 2013 international workshop on principles of software evolution - IWPSE 2013 (p. 18). ACM Press. Oliva, G. A., Steinmacher, I., Wiese, I., & Gerosa, M. A. (2013). What can commit metadata tell us about design degradation? In Proceedings of the 2013 international workshop on principles of software evolution - IWPSE 2013 (p. 18). ACM Press.
Zurück zum Zitat Steinmacher I, Treude C, Conte T, Gerosa MA (2016) Overcoming open source project entry barriers with a portal for newcomers". In: 38th International Conference on Software Engineering. pp 1–12. Steinmacher I, Treude C, Conte T, Gerosa MA (2016) Overcoming open source project entry barriers with a portal for newcomers". In: 38th International Conference on Software Engineering. pp 1–12.
Zurück zum Zitat Wiese IS, Côgo FR, Ré R, et al (2014a) Social metrics included in prediction models on software engineering: a mapping study. In: Wagner S, Penta M Di (eds) The 10th International Conference on Predictive Models in Software Engineering, {PROMISE} ‘14, Torino, Italy, September 17, 2014. ACM, pp 72–81. Wiese IS, Côgo FR, Ré R, et al (2014a) Social metrics included in prediction models on software engineering: a mapping study. In: Wagner S, Penta M Di (eds) The 10th International Conference on Predictive Models in Software Engineering, {PROMISE} ‘14, Torino, Italy, September 17, 2014. ACM, pp 72–81.
Zurück zum Zitat Wiese, I. S., Kuroda, R. T., Junior, D. N. R., et al. (2014b). Using structural holes metrics from communication networks to predict change dependencies. In N. Baloian, F. Burstein, H. Ogata, et al. (Eds.), Collaboration and Technology - 20th International Conference, {CRIWG} 2014, Santiago, Chile, September 7–10, 2014. Proceedings. Springer (pp. 294–310). Wiese, I. S., Kuroda, R. T., Junior, D. N. R., et al. (2014b). Using structural holes metrics from communication networks to predict change dependencies. In N. Baloian, F. Burstein, H. Ogata, et al. (Eds.), Collaboration and Technology - 20th International Conference, {CRIWG} 2014, Santiago, Chile, September 7–10, 2014. Proceedings. Springer (pp. 294–310).
Zurück zum Zitat Wiese IS, Ré R, Steinmacher I, et al (2015) Predicting change propagation from repository information. In: Proceedings - 29th Brazilian symposium on software engineering, SBES 2015. pp 100–109. Wiese IS, Ré R, Steinmacher I, et al (2015) Predicting change propagation from repository information. In: Proceedings - 29th Brazilian symposium on software engineering, SBES 2015. pp 100–109.
Zurück zum Zitat Zhou, Y., Wursch, M., Giger, E., et al. (2008). A Bayesian network based approach for change coupling prediction. Fifteenth Work Conf Reverse Eng Proc, 27–36\r348. Zhou, Y., Wursch, M., Giger, E., et al. (2008). A Bayesian network based approach for change coupling prediction. Fifteenth Work Conf Reverse Eng Proc, 27–36\r348.
Metadaten
Titel
Pieces of contextual information suitable for predicting co-changes? An empirical study
verfasst von
Igor Scaliante Wiese
Rodrigo Takashi Kuroda
Igor Steinmacher
Gustavo Ansaldi Oliva
Reginaldo Ré
Christoph Treude
Marco Aurelio Gerosa
Publikationsdatum
03.07.2019
Verlag
Springer US
Erschienen in
Software Quality Journal / Ausgabe 4/2019
Print ISSN: 0963-9314
Elektronische ISSN: 1573-1367
DOI
https://doi.org/10.1007/s11219-019-09456-3

Weitere Artikel der Ausgabe 4/2019

Software Quality Journal 4/2019 Zur Ausgabe

EditorialNotes

In this issue

Premium Partner