V. Sharma, Vikrant S. Kaulgud, Pradeepkumar Duraisamy
Large organizations need to be nimble in delivering software solutions for meeting rapidly changing business requirements and technology landscape. Following Agile principles of software development is a natural choice. However, to truly leverage the power of Agile, big organizations need to be able to utilize distributed teams effectively. Agile relies hugely on shared context and awareness among team members and this can become a stumbling block among such geographically dispersed teams. Moreover, in such large projects there is a need for incentivizing quick delivery of user stories so that the teams have a constructive sense of competition and are recognized in-process. Here, we describe a gamification based approach which promotes quicker completion and acceptance of user stories in such distributed Agile projects. Our approach captures important events from the development environment and then helps create project-wide awareness regarding the progress of different teams. A model of earning revenue for faster delivery of user stories is used to determine the leading team at the end of each sprint. This approach has been implemented in an Agile process guidance and awareness workbench that we are piloting within our organization.
{"title":"A Gamification Approach for Distributed Agile Delivery","authors":"V. Sharma, Vikrant S. Kaulgud, Pradeepkumar Duraisamy","doi":"10.1145/2896958.2896966","DOIUrl":"https://doi.org/10.1145/2896958.2896966","url":null,"abstract":"Large organizations need to be nimble in delivering software solutions for meeting rapidly changing business requirements and technology landscape. Following Agile principles of software development is a natural choice. However, to truly leverage the power of Agile, big organizations need to be able to utilize distributed teams effectively. Agile relies hugely on shared context and awareness among team members and this can become a stumbling block among such geographically dispersed teams. Moreover, in such large projects there is a need for incentivizing quick delivery of user stories so that the teams have a constructive sense of competition and are recognized in-process. Here, we describe a gamification based approach which promotes quicker completion and acceptance of user stories in such distributed Agile projects. Our approach captures important events from the development environment and then helps create project-wide awareness regarding the progress of different teams. A model of earning revenue for faster delivery of user stories is used to determine the leading team at the end of each sprint. This approach has been implemented in an Agile process guidance and awareness workbench that we are piloting within our organization.","PeriodicalId":339009,"journal":{"name":"2016 IEEE/ACM 5th International Workshop on Games and Software Engineering (GAS)","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-05-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122064001","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A number of educational games have been created to help students programming. Many of these games focus on problem solving and the actual act of writing programs, while very few focus on programming comprehension. We introduce a serious game called Robot ON! aimed at players who have never programmed before. Unlike other serious programming games, Robot ON! focuses on comprehension rather than problem-solving challenges; players do not actually write any programs, but are instead given the task of demonstrating their knowledge and understanding of a program's behavior. Robot ON! includes tools that allow players to demonstrate understanding of variable values, data types, program statements, and control flow. We include an evaluation plan to assess Robot ON!'s playability, enjoyment, and benefits to program comprehension.
{"title":"Robot ON!: A Serious Game for Improving Programming Comprehension","authors":"Michael A. Miljanovic, J. S. Bradbury","doi":"10.1145/2896958.2896962","DOIUrl":"https://doi.org/10.1145/2896958.2896962","url":null,"abstract":"A number of educational games have been created to help students programming. Many of these games focus on problem solving and the actual act of writing programs, while very few focus on programming comprehension. We introduce a serious game called Robot ON! aimed at players who have never programmed before. Unlike other serious programming games, Robot ON! focuses on comprehension rather than problem-solving challenges; players do not actually write any programs, but are instead given the task of demonstrating their knowledge and understanding of a program's behavior. Robot ON! includes tools that allow players to demonstrate understanding of variable values, data types, program statements, and control flow. We include an evaluation plan to assess Robot ON!'s playability, enjoyment, and benefits to program comprehension.","PeriodicalId":339009,"journal":{"name":"2016 IEEE/ACM 5th International Workshop on Games and Software Engineering (GAS)","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-05-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125683563","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
This report describes a case study of small-scale effort in employing game playtesting as a starting point for learning about mainstream issues and challenges found in modern software engineering projects and practices. The goal is to be descriptive and informing through a qualitative rendering, rather than prescriptive and quantitative analysis. This study draws attention to the case of where a student with no prior experience in software development or programming must take on the task of learning how to make a game, and along the way learn about many common challenges in modern SE practice through personal discovery and experience. The game itself also imposes challenges in that we have chosen a new, unfamiliar game genre and domain that emphasizes science learning as its purpose for play. Along the way, we discuss issues in requirements, design, prototyping, testing, user experience assessment, and evolutionary software extension, all prior to a formal education in coding or introductory level Computer Science or SE. Though our efforts may seem unusual or anomalous, we believe our methods are open for adoption and reuse by those interested in lowering the barriers to entry into game software development in specific, and into SE more generally.
{"title":"Learning Game Design and Software Engineering through a Game Prototyping Experience: A Case Study","authors":"Mark Yampolsky, W. Scacchi","doi":"10.1145/2896958.2896965","DOIUrl":"https://doi.org/10.1145/2896958.2896965","url":null,"abstract":"This report describes a case study of small-scale effort in employing game playtesting as a starting point for learning about mainstream issues and challenges found in modern software engineering projects and practices. The goal is to be descriptive and informing through a qualitative rendering, rather than prescriptive and quantitative analysis. This study draws attention to the case of where a student with no prior experience in software development or programming must take on the task of learning how to make a game, and along the way learn about many common challenges in modern SE practice through personal discovery and experience. The game itself also imposes challenges in that we have chosen a new, unfamiliar game genre and domain that emphasizes science learning as its purpose for play. Along the way, we discuss issues in requirements, design, prototyping, testing, user experience assessment, and evolutionary software extension, all prior to a formal education in coding or introductory level Computer Science or SE. Though our efforts may seem unusual or anomalous, we believe our methods are open for adoption and reuse by those interested in lowering the barriers to entry into game software development in specific, and into SE more generally.","PeriodicalId":339009,"journal":{"name":"2016 IEEE/ACM 5th International Workshop on Games and Software Engineering (GAS)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-05-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128436139","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Novice programmers often struggle with many concepts underlying computer programming. The concept of a program variable--that is, a named storage location--is a centerpiece of the programming languages typically taught in introductory computer science courses including C, Java, JavaScript, Python, and C++. However, to date empirical studies suggest that misinterpretation of the state of a program remains a primary source of errors by novice programmers. We address this challenge by defining a game-based approach to interactive program debugging and by emphasizing the concept of program state in our approach. We specifically chose the metaphor of the popular ``Space Invaders'' videogame to provide a visual interpretation that reinforces the notion of program state in a way likely to be attractive to college students majoring in computer science. Our visualization technique and the resulting toolset are intended to steer students toward a debugging mindset centered on read and write operations of program variables. Here we discuss the key aspects of our game-based debugging approach. We also report preliminary results from field studies with actual college students who used our toolset to debug simple programs in which we injected faults.
{"title":"From Video Games to Debugging Code","authors":"S. Deitz, U. Buy","doi":"10.1145/2896958.2896964","DOIUrl":"https://doi.org/10.1145/2896958.2896964","url":null,"abstract":"Novice programmers often struggle with many concepts underlying computer programming. The concept of a program variable--that is, a named storage location--is a centerpiece of the programming languages typically taught in introductory computer science courses including C, Java, JavaScript, Python, and C++. However, to date empirical studies suggest that misinterpretation of the state of a program remains a primary source of errors by novice programmers. We address this challenge by defining a game-based approach to interactive program debugging and by emphasizing the concept of program state in our approach. We specifically chose the metaphor of the popular ``Space Invaders'' videogame to provide a visual interpretation that reinforces the notion of program state in a way likely to be attractive to college students majoring in computer science. Our visualization technique and the resulting toolset are intended to steer students toward a debugging mindset centered on read and write operations of program variables. Here we discuss the key aspects of our game-based debugging approach. We also report preliminary results from field studies with actual college students who used our toolset to debug simple programs in which we injected faults.","PeriodicalId":339009,"journal":{"name":"2016 IEEE/ACM 5th International Workshop on Games and Software Engineering (GAS)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-05-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114233004","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Christina Chung, Asako Matsuoka, Yueti Yang, J. Rubin, M. Chechik
This paper describes the on-going work of developing a serious game (a.k.a “game with a purpose”) to solve the NP-hard problem of n-way merging. We outline the challenges that were encountered while designing the game, steps that we took to overcome these challenges and results of the preliminary evaluation of our current game design. We hope our experience will be useful for those developing serious games to solve other computationally expensive problems.
{"title":"Serious Games for NP-hard Problems: Challenges and Insights","authors":"Christina Chung, Asako Matsuoka, Yueti Yang, J. Rubin, M. Chechik","doi":"10.1145/2896958.2896963","DOIUrl":"https://doi.org/10.1145/2896958.2896963","url":null,"abstract":"This paper describes the on-going work of developing a serious game (a.k.a “game with a purpose”) to solve the NP-hard problem of n-way merging. We outline the challenges that were encountered while designing the game, steps that we took to overcome these challenges and results of the preliminary evaluation of our current game design. We hope our experience will be useful for those developing serious games to solve other computationally expensive problems.","PeriodicalId":339009,"journal":{"name":"2016 IEEE/ACM 5th International Workshop on Games and Software Engineering (GAS)","volume":"385 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-05-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122816891","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Simulation games are a well-known concept for teaching in a practical way. Especially for project management training, simulation games are helpful. Students can try out different management strategies and gain experience without endangering real projects. To provide a good learning environment, it is important to simulate the employees managed by the player as realistically as possible. However, existing approaches only use simple models to simulate human behavior, missing psychological aspects like motivation and interpersonal interaction, and therefore are not detailed enough for leadership and project management training. We present a new decision-making model based on findings of psychology, which can be used for simulating a more realistic human behavior. We use heuristics for calculating the motivational force of all potential actions an employee has, in order to decide which he will choose. This calculation is not only based on the project's state and schedule, but also on emotional factors like the preferences and aversions of the employee. Within our approach, we implemented a decision-making model, which is not limited to our game concept and can also be adapted for other simulation games.
{"title":"Modeling Human Behavior for Software Engineering Simulation Games","authors":"Alexander Nassal, M. Tichy","doi":"10.1145/2896958.2896961","DOIUrl":"https://doi.org/10.1145/2896958.2896961","url":null,"abstract":"Simulation games are a well-known concept for teaching in a practical way. Especially for project management training, simulation games are helpful. Students can try out different management strategies and gain experience without endangering real projects. To provide a good learning environment, it is important to simulate the employees managed by the player as realistically as possible. However, existing approaches only use simple models to simulate human behavior, missing psychological aspects like motivation and interpersonal interaction, and therefore are not detailed enough for leadership and project management training. We present a new decision-making model based on findings of psychology, which can be used for simulating a more realistic human behavior. We use heuristics for calculating the motivational force of all potential actions an employee has, in order to decide which he will choose. This calculation is not only based on the project's state and schedule, but also on emotional factors like the preferences and aversions of the employee. Within our approach, we implemented a decision-making model, which is not limited to our game concept and can also be adapted for other simulation games.","PeriodicalId":339009,"journal":{"name":"2016 IEEE/ACM 5th International Workshop on Games and Software Engineering (GAS)","volume":"20 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-05-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133247167","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Cristiano Politowski, L. Fontoura, Fábio Petrillo, Yann-Gaël Guéhéneuc
In the past 10 years, several researches studied video game development process who proposed approaches to improve the way how games are developed. These approaches usually adopt agile methodologies because of claims that traditional practices and the waterfall process are gone. However, are the ``old days" really gone in the game industry? In this paper, we present a survey of software engineering processes in video game industry from postmortem project analyses. We analyzed 20 postmortems from Gamasutra Portal. We extracted their processes and modelled them through using the Business Process Model and Notation (BPMN). This work presents three main contributions. First, a postmortem analysis methodology to identify and extract project processes. Second, the study main result: the ``old days" are gone, but not completely. Iterative practices are increasing and are applied to at least 65% of projects in which 45% of this projects explicitly adopted Agile practices. However, waterfall process is still applied at least 30% of projects. Finally, we discuss some implications, directions and opportunities for video game development community.
{"title":"Are the Old Days Gone? A Survey on Actual Software Engineering Processes in Video Game Industry","authors":"Cristiano Politowski, L. Fontoura, Fábio Petrillo, Yann-Gaël Guéhéneuc","doi":"10.1145/2896958.2896960","DOIUrl":"https://doi.org/10.1145/2896958.2896960","url":null,"abstract":"In the past 10 years, several researches studied video game development process who proposed approaches to improve the way how games are developed. These approaches usually adopt agile methodologies because of claims that traditional practices and the waterfall process are gone. However, are the ``old days\" really gone in the game industry? In this paper, we present a survey of software engineering processes in video game industry from postmortem project analyses. We analyzed 20 postmortems from Gamasutra Portal. We extracted their processes and modelled them through using the Business Process Model and Notation (BPMN). This work presents three main contributions. First, a postmortem analysis methodology to identify and extract project processes. Second, the study main result: the ``old days\" are gone, but not completely. Iterative practices are increasing and are applied to at least 65% of projects in which 45% of this projects explicitly adopted Agile practices. However, waterfall process is still applied at least 30% of projects. Finally, we discuss some implications, directions and opportunities for video game development community.","PeriodicalId":339009,"journal":{"name":"2016 IEEE/ACM 5th International Workshop on Games and Software Engineering (GAS)","volume":"345 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-05-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132097145","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Exergames are video games that encourage players to do physical exercises (e.g. yoga, aerobics). While exergames provide some motivational and fitness benefits, they are limited by shallow gameplay and low-intensity exercise. This occurs because, in most existing exergames (e.g. Wii Fit), the user plays the game and exercises simultaneously. By developing exergames where gameplay and exercise occur at separate times, we can motivate high-intensity exercise with high-immersion gameplay. We therefore developed such an asynchronous exergaming by modifying the popular game Skyrim to use exercise data from the fitness tracking website Exercise.com. This paper describes the design and implementation of the Skyrim exergaming mod.
{"title":"Blending Immersive Gameplay with Intense Exercise Using Asynchronous Exergaming","authors":"Jak Tan, Rahul Kumar, P. Ralph","doi":"10.1145/2896958.2896959","DOIUrl":"https://doi.org/10.1145/2896958.2896959","url":null,"abstract":"Exergames are video games that encourage players to do physical exercises (e.g. yoga, aerobics). While exergames provide some motivational and fitness benefits, they are limited by shallow gameplay and low-intensity exercise. This occurs because, in most existing exergames (e.g. Wii Fit), the user plays the game and exercises simultaneously. By developing exergames where gameplay and exercise occur at separate times, we can motivate high-intensity exercise with high-immersion gameplay. We therefore developed such an asynchronous exergaming by modifying the popular game Skyrim to use exercise data from the fitness tracking website Exercise.com. This paper describes the design and implementation of the Skyrim exergaming mod.","PeriodicalId":339009,"journal":{"name":"2016 IEEE/ACM 5th International Workshop on Games and Software Engineering (GAS)","volume":"89 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-05-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115577704","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}