Abstract
Code quality and maintainability are among under-emphasized and often neglected topics in the curriculum of software engineering (SE) in higher education.This neglect tends to overlook research findings that demonstrate SE students’ programming submissions most often exhibit severe code quality issues, which are frequently left unaddressed by the students.Furthermore, it can result in the software engineering curriculum becoming indifferent to the essential requirements of the software development industry, where code quality and maintainability play a crucial role in the software’s cost throughout its life cycle. Therefore, SE students in higher education should be trained to master the knowledge and skills of writing high-quality code. One possible approach to improving students’ understanding of code quality issues is to provide automatically generated formative feedback about the code quality aspects of their programming submissions throughout the code development process. However, while there are tools available for generating automated feedback on the code quality aspects of programming submissions, they often lack a set of theory-driven design principles to underpin the content and presentation of their provided feedback. This lack of theoretical foundation makes it difficult to follow a systematic approach to designing and developing such tools, reasoning about their quality, and evaluating the effectiveness of their generated feedback. To address this lack, this study provides nine contextualized design principles for generating automated formative feedback on code quality. These design principles are rooted in solid educational constructs about feedback and learning dashboards, and empirically validated and contextualized by two focus group sessions consisting of 8 senior SE students and 2 teachers. This approach has resulted in a set of contextualized design principles. These design principles can be used to guide the implementation of tools that provide automated feedback on code quality using software metrics.
Original language | English |
---|---|
Title of host publication | Proceedings - 2024 ACM/IEEE 46th International Conference on Software Engineering |
Subtitle of host publication | Software Engineering Education and Training, ICSE-SEET 2024 |
Publisher | IEEE Computer Society Press |
Pages | 139-150 |
Number of pages | 12 |
ISBN (Electronic) | 9798400704987 |
DOIs | |
Publication status | Published - 14 Apr 2024 |
Event | 46th International Conference on Software Engineering: Software Engineering Education and Training, ICSE-SEET 2024 - Lisbon, Portugal Duration: 14 Apr 2024 → 20 Apr 2024 Conference number: 46 https://conf.researchr.org/home/icse-2024 |
Publication series
Series | Proceedings - International Conference on Software Engineering |
---|---|
ISSN | 0270-5257 |
Conference
Conference | 46th International Conference on Software Engineering: Software Engineering Education and Training, ICSE-SEET 2024 |
---|---|
Abbreviated title | ICSE-SEET 2024 |
Country/Territory | Portugal |
City | Lisbon |
Period | 14/04/24 → 20/04/24 |
Internet address |
Keywords
- automated feedback
- code quality
- design principles
- formative feedback
- Programming education
- undergraduate education