Impact of modular programming practices on software maintainability in student projects
Abstract
Modular programming is widely promoted in software engineering education as a means to improve code quality, readability, and long-term maintainability. Student software projects, however, often exhibit tightly coupled logic, limited abstraction, and inconsistent structure, which can hinder maintenance activities such as debugging, enhancement, and reuse. This research examines the impact of adopting modular programming practices on the maintainability of student-developed software systems. Using a practical research design, multiple student projects developed under comparable academic conditions were analyzed based on modularity indicators including module size, cohesion, coupling, and interface clarity. Maintainability was evaluated through a combination of quantitative software metrics and qualitative assessments of code comprehension and modification effort. The findings demonstrate that projects employing well-defined modules with clear responsibilities show significantly improved maintainability outcomes, including reduced defect localization time, lower change impact, and higher readability scores. Students who applied modular design principles were also better able to extend functionality without introducing regressions. The research further highlights common challenges faced by learners, such as improper decomposition and over-fragmentation, which can negatively affect maintainability when modularity is poorly implemented. By empirically linking modular programming practices to measurable maintainability improvements, this research provides evidence supporting the inclusion of structured modular design instruction in undergraduate curricula. The results contribute to software engineering education by clarifying how specific modular practices influence maintenance-related attributes in novice-developed systems. Overall, the research reinforces modular programming as a critical pedagogical tool for cultivating sustainable software development skills and preparing students for real-world software maintenance demands. Implications for instructors, curriculum designers, and assessment strategies are discussed, emphasizing alignment between theory and practice, iterative feedback, and early exposure to refactoring activities that help students internalize modular thinking while balancing simplicity, performance, and maintainability constraints in academic development environments across varied project scales and collaborative team settings typical of undergraduate courses worldwide.
Fields of Study & Subjects
Software Engineering Research
Software Engineering Techniques and Practices
Teaching and Learning Programming
Publication details
- Journal / source
- International Journal of Computing Programming and Database Management
- Volume
- 7
- Issue
- 1
- Pages
- 16–20
- Publication date
- 1 January 2026