TEACHING DEVOPS AND SOFTWARE ENGINEERING PRACTICES USING AN AUTOMATED PROGRAMMING ASSESSMENT SYSTEM
TEACHING DEVOPS AND SOFTWARE ENGINEERING PRACTICES USING AN AUTOMATED PROGRAMMING ASSESSMENT SYSTEM
Andy Nguyen,Vi Thi Thuy Ha
TLDR
The research proposed a new approach to bridge the gap between in-class exercises and industrial practices by introducing an automated programming assessment system, ProgEdu, which simulates the continuous integration pipeline of DevOps, incorporating unit testing and code quality assessment.
Abstract
The software industry has seen a shift in recent years, with the adoption of agile development practices, the deployment of cloud-based, and service-oriented applications using DevOps. This has led to increased pressure on educators in higher education institutions to provide students with the best possible preparation for their careers, based on industry best practices. The research proposed a new approach to bridge the gap between in-class exercises and industrial practices by introducing an automated programming assessment system, ProgEdu. ProgEdu simulates the continuous integration pipeline of DevOps, incorporating unit testing and code quality assessment. It is deployed as a service-oriented application on Docker, allowing students to gain practical experience in a real-world setting. Our approach goes beyond simply assessing code, as we have also incorporated the service-oriented architecture, continuous integration pipeline, and Docker of the system to illustrate various DevOps practices in our software engineering classes. By providing hands-on exercises that utilize industry-standard tools and techniques, we can bridge the gap between theoretical knowledge and practical application, helping students to extensively understand fundamental concepts and prepare for the demands of the modern workforce.
