Skip to main content

2021 | OriginalPaper | Buchkapitel

Analysis of Bug Types of Textbook Code with Open-Source Software

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

search-config
loading …

Abstract

This study aims to analyze the code examples of two widely adopted collegiate level programming textbooks using static analysis tools and compared them with the bugs found in real-world Open-Source Projects. Overall, 42.6% of the bugs found in the Texts relate to Internationalization, while the Open-Source Software (OSS) has 39.8% of their source code associated with Dodgy Code. Bad Practice issues consistently present in both Texts (18.0%) and OSS (26.4%) groups. DM_DEFAULT_ENCODING violation type ranked first in Texts. SE_NO_SERIALVERSIONID ranked first in OSS. DLS_DEAD_LOCAL_STORE in a Dodge Code category ranked fourth in both Texts and OSS. Textbooks are missing certain code examples that are related to the high-ranked bug types in OSS.

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

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!

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!

Literatur
1.
Zurück zum Zitat E. Lahtinen, K. Ala-Mutka, H. Järvinen. A study of the difficulties of novice programmers, in Proceedings of the 10th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (2005), p. 14–18 E. Lahtinen, K. Ala-Mutka, H. Järvinen. A study of the difficulties of novice programmers, in Proceedings of the 10th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (2005), p. 14–18
2.
Zurück zum Zitat P. Reimann, T.J. Schult, Turning examples into cases: Acquiring knowledge structures for analogical problem solving. Educ. Psychol. 31(2), 123–132 (1996)CrossRef P. Reimann, T.J. Schult, Turning examples into cases: Acquiring knowledge structures for analogical problem solving. Educ. Psychol. 31(2), 123–132 (1996)CrossRef
3.
Zurück zum Zitat J. Mason, D. Pimm, Generic examples: Seeing the general in the particular. Educ. Stud. Math. 15(3), 277–289 (1984)CrossRef J. Mason, D. Pimm, Generic examples: Seeing the general in the particular. Educ. Stud. Math. 15(3), 277–289 (1984)CrossRef
4.
Zurück zum Zitat M. Nordström, J. Börstler, Improving OO example programs. Submitted to IEEE Transactions on Education (2011), vol. 54 M. Nordström, J. Börstler, Improving OO example programs. Submitted to IEEE Transactions on Education (2011), vol. 54
5.
Zurück zum Zitat J. Sajaniemi, M. Kuittinen, From procedures to objects: A research agenda for the psychology of object-oriented programming education. Hum. Technol. 4(1), 75–91 (2008)CrossRef J. Sajaniemi, M. Kuittinen, From procedures to objects: A research agenda for the psychology of object-oriented programming education. Hum. Technol. 4(1), 75–91 (2008)CrossRef
6.
Zurück zum Zitat D.B. Bois, S. Demeyer, J. Verelst, T.M.M. Temmerman, Does god class decomposition affect comprehensibility? ed. by P. Kokol, in SE 2006 International Multi-Conference on Software Engineering (2006), pp. 346–355. IASTED D.B. Bois, S. Demeyer, J. Verelst, T.M.M. Temmerman, Does god class decomposition affect comprehensibility? ed. by P. Kokol, in SE 2006 International Multi-Conference on Software Engineering (2006), pp. 346–355. IASTED
7.
Zurück zum Zitat M.E. Caspersen, Educating Novices in The Skills of Programming. PhD thesis, University of Aarhus, Denmark, 2007 M.E. Caspersen, Educating Novices in The Skills of Programming. PhD thesis, University of Aarhus, Denmark, 2007
8.
Zurück zum Zitat R. Westfall, ‘hello, world’ considered harmful. Commun. ACM 44(10), 129–130 (2001)CrossRef R. Westfall, ‘hello, world’ considered harmful. Commun. ACM 44(10), 129–130 (2001)CrossRef
9.
Zurück zum Zitat CACM, Hello, world gets mixed greetings. Commun. ACM 45(2), 11–15 (2002)CrossRef CACM, Hello, world gets mixed greetings. Commun. ACM 45(2), 11–15 (2002)CrossRef
10.
Zurück zum Zitat M.H. Dodani, Hello world! goodbye skills! J. Object Technol. 2(1), 23–28 (2003)CrossRef M.H. Dodani, Hello world! goodbye skills! J. Object Technol. 2(1), 23–28 (2003)CrossRef
11.
Zurück zum Zitat CACM Forum, For programmers, objects are not the only tools. Commun. ACM 48(4), 11–12 (2005)CrossRef CACM Forum, For programmers, objects are not the only tools. Commun. ACM 48(4), 11–12 (2005)CrossRef
12.
Zurück zum Zitat J. Börstler, H.B. Christensen, J. Bennedsen, M. Nordström, L. Kallin Westin, J.-E. Moström, M.E. Caspersen, Evaluating OO example programs for CS1, in ITiCSE ’08: Proceedings of the 13th Annual Conference on Innovation and Technology in Computer Science Education, (ACM, New York), pp. 47–52 J. Börstler, H.B. Christensen, J. Bennedsen, M. Nordström, L. Kallin Westin, J.-E. Moström, M.E. Caspersen, Evaluating OO example programs for CS1, in ITiCSE ’08: Proceedings of the 13th Annual Conference on Innovation and Technology in Computer Science Education, (ACM, New York), pp. 47–52
13.
Zurück zum Zitat M. Nordström, J. Börstler, Heuristics for designing object-oriented examples for novices. Submitted to ACM transactions on computing education (TOCE) (2010) M. Nordström, J. Börstler, Heuristics for designing object-oriented examples for novices. Submitted to ACM transactions on computing education (TOCE) (2010)
15.
Zurück zum Zitat T. Gaddis, Starting out with Java: From Control Structures through Objects, 7th edn. (Pearson Education, New York, 2019) T. Gaddis, Starting out with Java: From Control Structures through Objects, 7th edn. (Pearson Education, New York, 2019)
16.
Zurück zum Zitat Y.D. Liang, Introduction to Java Programming and Data Structures, Comprehensive Version, 11th edn. (Pearson Education, New York, 2019) Y.D. Liang, Introduction to Java Programming and Data Structures, Comprehensive Version, 11th edn. (Pearson Education, New York, 2019)
17.
Zurück zum Zitat K. Liu, D. Kim, T.F. Bissyandé, S. Yoo, Y. Le Traon, Mining fix patterns for findbugs violations. IEEE Trans. Softw. Eng. 47(1), 165--188 (2018) K. Liu, D. Kim, T.F. Bissyandé, S. Yoo, Y. Le Traon, Mining fix patterns for findbugs violations. IEEE Trans. Softw. Eng. 47(1), 165--188 (2018)
Metadaten
Titel
Analysis of Bug Types of Textbook Code with Open-Source Software
verfasst von
Young Lee
Jeong Yang
Copyright-Jahr
2021
DOI
https://doi.org/10.1007/978-3-030-70873-3_44

Neuer Inhalt