121,168 research outputs found

    Scrum Game: An Agile Software Management Game

    No full text
    For the past few years, in their attempt to avoid the heavyweight bureaucracy of traditional project management methods such as the Waterfall model, companies have started incorporating agile methods (e.g. Extreme Programming, Scrum, Crystal) for their project development. These methods are characterised by their incremental and iterative delivery, their ability to incorporate change at any stage of the project lifecycle, as well as their small and co-located teams. Even though these methods are included in the syllabus of many software engineering modules at university level, many students currently feel more confident with traditional, rather than agile methods. Many employers find that recent graduates are not equipped with the desired skills of a software engineer because, even though they are knowledgeable in the different software engineering practices, they lack practical experience of these methods. The combination of these two factors show that the university’s approach to teaching software management methods is only theoretical and it does not give students the opportunity to apply them to their projects so they can get a better understanding of their use. The project developed the prototype of a computer game that simulates the use of the Scrum method within different projects, named Scrum Game. The game is supplementary material for a lecture course, and its purpose is to guide students through the Scrum lifecycle. Students can thereby get a small glimpse of the different phases of Scrum, the way that the different Scrum roles interact with each other, and the way that Scrum is used to implement real projects. In addition, the Scrum Game has an administrator mode enabling lecturers to view a log of the progress of all their students in the game. They can use this mode to create new projects or to alter existing ones by adding new tasks or problems, thereby adjusting the level of difficulty to the level of their students, or so that it fits their teaching. The web-based system was developed using PHP, MySQL, HTML, CSS, JavaScript, AJAX (jQuery) and Google Charts API. The system was thoroughly tested against the initial requirements and other system tests. The Scrum Game was evaluated by 22 peer colleagues reading for an MSc in Software Engineering at the University of Southampton, to identify whether the system achieved its goal of introducing students to the Scrum methodology and reaching a deeper understanding of its practical use during project implementation. The results of a questionnaire showed that little prior knowledge was assumed during the game, and that 86% of the participants felt that the game helped them learn more about Scrum. When asked, “Do you think that if this game was part of your Project Management module, would you get a better understanding about Scrum?” an impressive 95% (21 out of 22 participants) agreed that the game would be helpful, and rated the system 8 out of 10 on average

    Shall we play a game?

    Get PDF
    In response to real and perceived short-comings in the quality and productivity of software engineering practices and projects, professionally-endorsed graduate and post-graduate curriculum guides have been developed to meet evolving technical developments and industry demands. Each of these curriculum guidelines identifies better software engineering management skills and soft, peopleware skills as critical for all graduating students, but they provide little guidance on how to achieve this. One possible way is to use a serious game — a game designed to educate players about some of the dynamic complexities of the field in a safe and inexpensive environment. This thesis presents the results of a qualitative research project that used a simple game of a software project to see if and how games could contribute to better software project management education; and if they could, then what features and attributes made them most efficacious. That is, shall we— should we— play games in software engineering management? The primary research tool for this project was a game called Simsoft. Physically, Simsoft comes in two pieces. There is an A0-sized printed game board around which the players gather to discuss the current state of their project and to consider their next move. The board shows the flow of the game while plastic counters are used to represent the staff of the project. Poker chips represent the team’s budget, with which they can purchase more staff, and from which certain game events may draw or reimburse amounts depending on decisions made during the course of the game. There is also a simple Java-based dashboard, through which the players can see the current and historical state of the project in a series of reports and messages; and they can adjust the project’s settings. The engine behind Simsoft is a system dynamics model which embodies the fundamental causal relationships of simple software development projects. In Simsoft game sessions, teams of students, and practicing project managers and software engineers managed a hypothetical software development project with the aim of completing the project on time and within budget (with poker chips left over). Based on the starting scenario of the game, information provided during the game, and their own real-world experience, the players made decisions about how to proceed— whether to hire more staff or reduce the number, what hours should be worked, and so on. After each decision set had been entered, the game was run for another next time period, (a week, a month, or a quarter). The game was now in a new state which the players had to interpret from the game board and decide how to proceed. The findings showed that games can contribute to better software engineering management education and help bridge the pedagogical gaps in current curriculum guidelines. However, they can’t do this by themselves and for best effect they should be used in conjunction with other pedagogical tools. The findings also showed that simple games and games in which the players are able to relate the game world to an external context are the most efficacious

    An Alliance-Based Term Project in Software Quality Courses: a Lesson Learned

    Get PDF
    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

    Unifying an Introduction to Artificial Intelligence Course through Machine Learning Laboratory Experiences

    Full text link
    This paper presents work on a collaborative project funded by the National Science Foundation that incorporates machine learning as a unifying theme to teach fundamental concepts typically covered in the introductory Artificial Intelligence courses. The project involves the development of an adaptable framework for the presentation of core AI topics. This is accomplished through the development, implementation, and testing of a suite of adaptable, hands-on laboratory projects that can be closely integrated into the AI course. Through the design and implementation of learning systems that enhance commonly-deployed applications, our model acknowledges that intelligent systems are best taught through their application to challenging problems. The goals of the project are to (1) enhance the student learning experience in the AI course, (2) increase student interest and motivation to learn AI by providing a framework for the presentation of the major AI topics that emphasizes the strong connection between AI and computer science and engineering, and (3) highlight the bridge that machine learning provides between AI technology and modern software engineering

    Holistic analysis of the effectiveness of a software engineering teaching approach

    Get PDF
    To provide the best training in software engineering, several approaches and strategies are carried out. Some of them are more theoretical, learned through books and manuals, while others have a practical focus and often done in collaboration with companies. In this paper, we share an approach based on a balanced mix to foster the assimilation of knowledge, the approximation with what is done in software companies and student motivation. Two questionnaires were also carried out, one involving students, who had successfully completed the subject in past academic years (some had already graduated, and others are still students), and other questionnaire involving companies, in the field of software development, which employ students from our school. The analysis of the perspectives of the different stakeholders allows an overall and holistic) view, and a general understanding, of the effectiveness of the software engineering teaching approach. We analyse the results of the questionnaires and share some of the experiences and lessons learned.info:eu-repo/semantics/publishedVersio

    Maintaining an ethical balance in the curriculum design of games-based degrees.

    Get PDF
    In February 2011, games-based degrees were subjected to the scrutiny of the Livingstone- Hope report into the future of education in the fields of video games and visual effects. The report delivers a damning appraisal of the education system’s ability to fulfil skills shortages in these creative industries, and makes a range of proposals for changing education in both schools and universities to meet the needs of these sectors. This paper discusses the findings of this report from the perspective of higher education, with particular emphasis on the complex ethical considerations of designing a curriculum for games-based degrees. The argument for taking a broader perspective on this issue is illustrated through discussion of Games Software Development degrees at Sheffield Hallam University

    The Abertay Code Bar – unlocking access to university-generated computer games intellectual poperty

    Get PDF
    Progress report on a digital platform and dual licensing model developed to unlock access to a University repository of new and legacy computer games based Intellectual Property (IP) assets for educational and commercial use. The digital creative industries have been identified by a number of governments as a priority area in delivering sustainable economic growth. Code Bar is an innovation that allows digital products to be commercially successful beyond the end of the Dare competition or coursework submission. To be selected for Code Bar, game products must be well designed for both player and market; technically robust (i.e. operating consistently and reliably on a single/multiple platforms), and be free from ambiguity around 3rd party IP. We describe various technical, pedagogic and legal challenges in developing the digital platform, licensing model and packaging of computer games products for release through the platform. The model is extendable beyond computer games to other software products

    (MU-CTL-01-12) Towards Model Driven Game Engineering in SimSYS: Requirements for the Agile Software Development Process Game

    Get PDF
    Software Engineering (SE) and Systems Engineering (Sys) are knowledge intensive, specialized, rapidly changing disciplines; their educational infrastructure faces significant challenges including the need to rapidly, widely, and cost effectively introduce new or revised course material; encourage the broad participation of students; address changing student motivations and attitudes; support undergraduate, graduate and lifelong learning; and incorporate the skills needed by industry. Games have a reputation for being fun and engaging; more importantly immersive, requiring deep thinking and complex problem solving. We believe educational games are essential in the next generation of e-learning tools. An extensible, freely available, engaging, problem-based game platform that provides students with an interactive simulated experience closely resembling the activities performed in a (real) industry development project would transform the SE/Sys education infrastructure. Our goal is to extend the state-of-the-art research in SE/Sys education by investigating a game development platform (GDP) from an interdisciplinary perspective (education, game research, and software/systems engineering). A meta-model has been proposed to provide a rigourous foundation that integrates the three disciplines. The GDP is intended to support the semi-automated development of collections of scripted games and their execution, where each game embodies a specific set of learning objectives. The games are scripted using a template based approach. The templates integrate three approaches: use cases; storyboards; and state machines (timed, concurrent, hierarchical state machines). The specification templates capture the structure of the game (Game, Acts, Scenes, Screens, Challenges), storyline, characters (player, non-player, external), graphics, music/sound effects, rules, and so on. The instantiated templates are (manually) transformed into XML game scripts that can be loaded into the SimSYS Game Play Engine. As a game is played, the game play events are logged; they are analyzed to automatically assess a player’s accomplishments and automatically adapt the game play script. Currently, we are manually defining a collection of games. The games are being used to ensure the GDP is flexible and reliable (i.e., the prototype can load and correctly run a variety of game scripts), the ontology is comprehensive, and the templates assist in defining well-organized, modular game scripts. In this report, we present the initial part of an Agile Software Development Process game (Act I, Scenes 1 and 2) that embodies learning objectives related to SE fundamentals (requirements, architecture, testing, process); planning with Gantt charts; working with budgets; and selecting a team for an agile development project. A student player is rewarded in the game by getting hired, scoring points, or getting promoted to lead a project. The game has a variety of settings including a classroom, job fair, and a work environment with meeting rooms, cubicles, and a water cooler station. The main non-player characters include a teacher, boss, and an evil peer. In the future, semi-automated support for creating new game scripts will be explored using a wizard interface. The templates will be formally defined, supporting automated transformation into XML game scripts that can be loaded into the SimSYS Game Engine. We also plan to explore transforming the requirements into a notation that can be imported into a commercial tool that supports Statechart simulation
    • …
    corecore