An Alliance-Based Term Project in Software Quality Courses: a Lesson Learned - Hsueh, Nien-Lin (International Journal of Informatics and Information Systems, 2018)
Software testing education has become important in the field of software engineering education. In the previous software quality assurance course, students were asked to form teams to complete a term project. By working on term projects, students can learn programming skills and test skills in a practical way. However, from the experience of the last 3 years, we found that students only did unit testing and system performance testing well but did poorly in integration testing. In addition, students do not yet have the concept of system decomposition and integration, even though it is important during software development. In this paper we report our improvements to software testing course design - an alliance-based approach. In the term project, students are organized into teams and many teams are grouped into alliances. Each alliance has a team of masters building game platforms for others. The master team must define the application interface to interact with other gaming teams, and they must perform integration tests based on the defined interface. In this paper we report our experiences and student feedback on the educational approach.