Teaching Programming through incremental iterations: An Agile Education Approach

In the software industry, agility has become an essential approach to address the growing demand for adaptation to constant changes. The speed at which high-quality software products and services are developed and delivered has become crucial for organizational success. However, there is a significa...

Full description

Saved in:
Bibliographic Details
Published in:2023 IEEE Colombian Caribbean Conference (C3) pp. 1 - 4
Main Author: Teran, Hector
Format: Conference Proceeding
Language:English
Published: IEEE 22-11-2023
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:In the software industry, agility has become an essential approach to address the growing demand for adaptation to constant changes. The speed at which high-quality software products and services are developed and delivered has become crucial for organizational success. However, there is a significant gap between how programming is taught in traditional educational settings and the skills required in the industry, this paper is based on the Incremental Case Development component of Team Programming.To address this gap, we have implemented an incremental teaching approach in the "Object-Oriented Programming" course. This approach combines agile principles with an adaptation of Xtreme Programming (XP) practices. Students work in teams to develop increments in the project, following a three-week iteration cycle. This approach promotes continuous value delivery, gradual learning, and the development of teamwork and communication skills.The results of our study support the effectiveness of this educational approach. Students experienced a significant improvement in their programming skills and demonstrated a high level of motivation. An increase in the quality of their work was observed compared to traditional teaching methods.In conclusion, the implementation of the "Teaching Programming through Incremental Iterations: An Agile Education Approach" in programming education is an ever-evolving field that can greatly enhance students' learning experiences. Not only do their technical programming skills improve, but their teamwork and communication skills also develop, better preparing them for success in their future careers
DOI:10.1109/C358072.2023.10436321