Teaching ISO/IEC 12207 software lifecycle processes: A serious game approach

Ufuk Aydan, Murat Yilmaz, Paul M. Clarke, Rory V. O'Connor
2017 Computer Standards & Interfaces  
Serious games involve applying game design techniques to tasks of a serious nature. In particular, serious games can be used as informative tools and can be embedded in formal education. Although there are some studies related to the application of serious games for the software development process, there is no serious game that teaches the fundamentals of the ISO/IEC 12207:1995 Systems and software engineering -Software life cycle processes, which is an international standard for software
more » ... ycle processes that aims to be 'the' standard that defines all the tasks required for developing and maintaining software. "Floors" is a serious game that proposes an interactive learning experience to introduce ISO/IEC 12207:1995 by creating different floors of a virtual environment where various processes of the standard are discussed and implemented. Inherently, it follows an iterative process based on interactive technical dialogues in a 3D computer simulated office. The tool is designed to assess the novice engineering practitioners knowledge and provide preliminary training for ISO/IEC 12207:1995 processes. By playing such a game, participants are able to learn about the details of this standard. The present study provides a framework for the exploration of research data obtained from computer engineering students. Results suggest that there is a significant difference between the knowledge gained among the students who have played Floors and those who have only participated in paper-based learning sessions. Our findings indicate that participants who played Floors tend to have greater knowledge of the ISO/IEC 12207:1995 standard, and as a result, we recommend the use of serious games that seem to be superior to traditional paper based approach. Correspondingly, the successful implementation of customer requirements brings challenges, not least because software systems are abstract and intangible [41] . Furthermore, each project may vary in its software process [71] as software development settings are of a richly varying nature [72] . In certain domains, governmental laws and physical materials may act to complicate software development, for example in areas such as medical device and automotive software development. In addition, there is also an absence of clear physical borders for software products. However, with this absence, the complexity of software systems and their development procedures can reach extreme points. Because of the difficulties of understanding customer requirements, project costs and development expenses, the entire process is beset with challenges. Moreover, rapid differentiation of operational environments necessitates the usage of adoptable and versatile software product [24] . Developing from a simple program to a large-scale information system, there is a need for a software development methodology [26] . Moreover, software engineers are always in pursuit of developing new software techniques to make the development processes easier to build in accordance with the satisfaction basic demands and procedures as well as desired requirements of complicated and larger systems. As a consequence of these remarks, using a disciplined approach, software engineering standards should be able to provide for more effective development, especially for larger software product development initiatives. Moreover, using such techniques and methodologies creates an essential approach to reaching high quality products. Without such techniques, development progress may likely to be interrupted with unwanted errors or defects. However, some companies may still rely on undisciplined approaches and ultimately produce defective software products. At the end of the process, their software product may be excessively expensive, and unfit for purpose. To solve this issue, there is a crucial need for better training concerning software development processes [38] . According to Calderon et al. [10], despite the general importance and urgency of this issue there is an increasing demand for qualified personnel to empirically manage software deliverables. However, software engineering lectures are usually populated with theoretical knowledge which students are not able to observe empirically during their education. Boehm [8] states that there is a need for novel frameworks to bridge the gap between software engineering education and best practices. In addition, software engineering education requires more interactive approaches to teach how to improve the software product while preserving customer requirements [37] . Kling and Scacchi [31] agree that there is a need for clear definitions of techniques in order to foster links between social prospects and software attributes. Furthermore, without clarifying understandings from a managerial perspective, it may be problematic to make further predictions about project trade-offs. All of these observations suggest that there may be considerable importance associated with finding interactive ways of teaching software development standards. Games have started to play an important role in individual's training and development. As the notion of games evolve, it becomes easier to provide training and simulation of real-world software development issues to novice practitioners. This study set out to investigate the usefulness of serious games for teaching the basic content of ISO/IEC 12207. It provides an exciting opportunity to advance our understanding for adopting interactive methods that are offered to train novice practitioners. This paper considers the implications of serious games in software process training particularly for ISO/IEC 12207 Software Life Cycle Processes. Consequently, the primary hypothesis of the study was that interactive approaches like serious games are more suitable for novice software practitioners than traditional paper based learning approaches. To assess this proposition, a serious game was developed, and the two different style of training sessions were conducted. To revisit the outcomes of our proposal, we conducted a set of interviews and discuss the findings with a serious game
doi:10.1016/j.csi.2016.11.014 fatcat:4cgdquzw7bemxdj33sp4oi7kxq