skip to main content
10.1145/3383923.3383957acmotherconferencesArticle/Chapter ViewAbstractPublication PagesiceitConference Proceedingsconference-collections
research-article

Does Static Analysis Help Software Engineering Students?

Published: 23 April 2020 Publication History

Abstract

Research on the impact of static analysis tools on software quality is often targeted towards practitioners or open source projects in general. Research in the field of software education concentrates on the usefulness of static analysis in introductory courses to programming. Contrary, we want to find out, whether students doing their first larger programming project (projects of 3000 to 5000 LOC) can benefit from applying static analysis tools. We therefore prepared a SonarQube based quality profile with 448 coding best practices and set up an environment that helped us to analyze code submitted by the students throughout a semester. Students were asked to frequently have a look at the provided data (using the SonarQube dashboard) and to fix those violations of best practices where they thought it makes sense. There were no incentives or penalties for fixing or not fixing these violations of best practices. The case study shows that there are substantially different kinds of violations of best practices depending on the experience level of the student teams. Additionally, while high experience and moderate experience student teams learn quickly and substantially during a semester, students with low experience have difficulties in understanding the underlying problems of the reported violations of best practices.

References

[1]
Wagner S., Lochmann K., Heinemann L., Kläs M., Trendowicz A., Plösch R., Seidl A., Göb A. and Streit J. 2012, The Quamoco product quality modelling and assessment approach, Proceedings of the 34th International Conference on Software Engineering (ICSE 2012), Zurich, 2012, S. 1133--1142.
[2]
Al-Kilidar H., Cox K., and Kitchenham B. 2005, The use and usefulness of the ISO/IEC 9126 quality standard, 2005 International Symposium on Empirical Software Engineering, 2005., 2005, S. 7 pp.-.
[3]
Halstead M. H. 1977. Elements of Software Science (Operating and Programming Systems Series). Elsevier Science Inc., New York, NY, USA.
[4]
Wagner S., Lochmann K., Heinemann L., Kläs M., Trendowicz A., Plösch R., Seidl A., Göb A. and Streit J. 2015, Operationalised Product Quality Models and Assessment: The Quamoco Approach, Journal of Information and Software Technology (IST), Elsevier, Volume 62, pp 101--123, 2015.
[5]
Mayr A., Plösch R., and Saft M. 2014, Objective Safety Compliance Checks for Source Code, in Companion Proceedings of the 36th International Conference on Software Engineering (ICSE 2014), New York, NY, USA, 2014, S. 115--124.
[6]
Plösch R., Bräuer J., Körner C., and Saft M., MUSE -Framework for Measuring Object-Oriented Design, Journal of Object Technology., Vol. 15, Nr. 4, S. 2:1--29, Aug. 2016.
[7]
Ayewah N., Hovemeyer D., Morgenthaler J. D., Penix J., and Pugh W. 2008, Using static analysis to find bugs, IEEE Software., Vol. 25, pp. 22--29, Sept. 2008.
[8]
Denny P., Luxton-Reilly A., and Carpenter D. 2014, Enhancing syntax error messages appears ineffectual, in Proceedings of the 2014 Conference on Innovation; Technology in Computer Science Education, ITiCSE '14, (New York, NY, USA), pp. 273--278, ACM, 2014.
[9]
Pettit R. S., Homer J., and Gee R. 2017, Do enhanced compiler error messages help students?: Results inconclusive., in Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education, SIGCSE '17, (New York, NY, USA), pp. 465--470, ACM, 2017.
[10]
Edwards., Kandru N., and Rajagopal M. B. 2017, Investigating static analysis errors in student java programs, in Proceedings of the 2017 ACM Conference on International Computing Education Research, ICER '17, (New York, NY, USA), pp. 65--73, ACM, 2017.
[11]
Edwards S. H, Spacco J., und Hovemeyer D. 2019, Can Industrial-Strength Static Analysis Be Used to Help Students Who Are Struggling to Complete Programming Activities?, Hawaii International Conference on System Sciences, 2019.
[12]
Wohlin C., Runeson P., Höst M., Ohlsson M., Regnell B, Wesslén A. 2012, Experimentation inSoftware Engineering, Springer Berlin Heidelberg, 2012.

Cited By

View all
  • (2023)Training Bachelor Students to Design Better Quality Web Apps: Preliminary Results from a Prospective Empirical InvestigationProceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering10.1145/3593434.3593957(465-469)Online publication date: 14-Jun-2023

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ICEIT 2020: Proceedings of the 2020 9th International Conference on Educational and Information Technology
February 2020
268 pages
ISBN:9781450375085
DOI:10.1145/3383923
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

In-Cooperation

  • University of Thessaly: University of Thessaly, Volos, Greece

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 April 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. SonarQube
  2. learning programming
  3. software quality improvements
  4. static analysis
  5. static analysis and student experience

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

ICEIT 2020

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)16
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Training Bachelor Students to Design Better Quality Web Apps: Preliminary Results from a Prospective Empirical InvestigationProceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering10.1145/3593434.3593957(465-469)Online publication date: 14-Jun-2023

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media