Abstract

"Static code analyzer tools can detect several programming mistakes, that would lead to run-time errors. Such tools can also detect violations of the conventions and guidelines of the given programming language. Thus, the feedback provided by these tools can be valuable for both students and instructors in computer science education. In our paper, we evaluated over 5000 student submissions from the last two years written in C++ and C# programming languages at Eotvos Lorand University Faculty of Informatics (Budapest, Hungary), by executing various static code analyzers on them. From the findings of the analyzers, we highlight some of the most typical and serious issues. Based on these results, we argue to include static analysis of programming submissions in automated and assisted semi-automatic evaluating and grading systems at universities, as these could increase the quality of programming assignments and raise the attention of students on various otherwise missed bugs and other programming errors. 2010 Mathematics Subject Classification. 68U99, 68Q55, 97Q70. 1998 CR Categories and Descriptors. F.3.2 [Theory of Computation]: Logics and Meanings of Programs – Semantics of Programming Languages; D.3.4 [Software]: Programming Languages – Processors; K.3.2 [Computing Milieux]: Computers and Education – Computer and Information Science Education. Key words and phrases. static code analysis, C++, C#, student submission, computer science education, programming flaw."

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.