Dyna ISSN: 0012-7353 dyna@unalmed.edu.co Universidad Nacional de Colombia Colombia

Similar documents
Dyna ISSN: Universidad Nacional de Colombia Colombia

A FIRST COURSE IN SOFTWARE ENGINEERING METHODS AND THEORY UN CURSO INICIAL SOBRE TEORÍA Y MÉTODOS DE LA INGENIERÍA DE SOFTWARE

Dyna ISSN: Universidad Nacional de Colombia Colombia

Riskware: A Game for Teaching Software Project Risk Management

Dyna ISSN: Universidad Nacional de Colombia Colombia

Learning about the influence of certain strategies and communication structures in the organizational effectiveness

Test effort: A pre-conceptual-schema-based representation

The UNC-method: a problem-based software development method

UNIVERSIDAD TÉCNICA DEL NORTE ARTÍCULO CIENTÍFICO (INGLÉS)

PMI: Introducción a la Gestión de Proyectos

Evaluation of an exercise for measuring impact in e-learning: Case study of learning a second language

AN ENVIRONMENT BASED ON PRE-CONCEPTUAL SCHEMAS FOR AUTOMATICALLY GENERATING SOURCE CODE UNDER THE MVC PATTERN

El Hombre y la Máquina ISSN: maquina@uao.edu.co Universidad Autónoma de Occidente Colombia

Using Social Networking Sites to Support Online Individual Health Behavior Change Projects

How To Teach A Security Manager

Zurich, 3-4 December 2010 ERES Education Seminar AUDIO-VISUAL TECHNIQUES APPLIED DISCIPLINE OF REAL

Discover Natural Science for ESO 1 and 2

PROBLEM-BASED LEARNING IN MATERIALS AND MANUFACTURING ENGINEERING EDUCATION ACCORDING TO THE ITESM-2015

THE STUDENT S PERSPECTIVE: TEACHING USAGES OF MOODLE AT UNIVERSITY

Foreign language teaching in Primary Education in Hungary

Requirements Game: Teaching Software Project Management

Organizational agility through project portfolio management. Dr Catherine P Killen University of Technology, Sydney (UTS)

Gaming the Law of Large Numbers

DIFFERENTIATIONS OF OBJECTS IN DIFFUSE DATABASES DIFERENCIACIONES DE OBJETOS EN BASES DE DATOS DIFUSAS

C. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering

Assessing the impacts of implementing lean construction. Evaluando los impactos de la implementación de lean construction

Dyna ISSN: Universidad Nacional de Colombia Colombia

Preparando a futuros profesores para integrar tecnología

How To Manage A Distributed Application

Analyzing lifelong learning student behavior in a progressive degree

the task- Based Approach: a way to improve the didactic competence of pre-service teachers in Colombia using technology

Sales Management Main Features

Susana Sanduvete-Chaves, Salvador Chacón-Moscoso, Milagrosa Sánchez- Martín y José Antonio Pérez-Gil ( )

Requirements Engineering: Elicitation Techniques

Curriculum Reform in Computing in Spain

Beck, L., L., Chizhik, A.W., and McElroy, A.C Cooperative learning

RELIEVE. Revista Electrónica de Investigación y Evaluación Educativa E-ISSN: relieve@uv.es Universitat de València España

INTELIGENCIA DE NEGOCIO CON SQL SERVER

Inclusion strategy for mobile technology in the classroom: experience at the Universidad de Tarapacá

REDWOOD CITY SCHOOL DISTRICT Educa&ng Every Child For Success. Local Control Funding Formula (LCFF) Community Engagement

CALIDAD TÉCNICA Y PEDAGÓGICA EN EL SERVICIO DE E-LEARNING. Chaminda Chiran Jayasundara (1) University of Colombo, Sri Lanka.

Adaptación de MoProSoft para la producción de software en instituciones académicas

How To Write A Book On The Digital Age Of Science

DOCUSCHEMAS: EXPERIENCING WITH A MULTIMEDIA TOOL FOR SUPPORTING HIGHER EDUCATION

50399AE Diseño de soluciones Business Intelligence con Microsoft SQL Server 2008

Information Technology Project Management, Sixth Edition. Note: See the text itself for full citations. More courses at cie-wc.edu

Facebook as a support tool in secondary education English classes

1.- NAME OF THE SUBJECT 2.- KEY OF MATTER. None 3.- PREREQUISITES. None 4.- SERIALIZATION. Particular compulsory 5.- TRAINING AREA.

LINIO COLOMBIA. Starting-Up & Leading E-Commerce. Luca Ranaldi, CEO. Pedro Freire, VP Marketing and Business Development

Definition of a Technological Ecosystem for Scientific Knowledge Management in a PhD Programme

Sympa, un gestor de listas de distribución para las universidades

Software Architecture, Process and Management Project Management

A comparative study of two models for the seismic analysis of buildings

L2 SKILLS AND THE USE OF COMPENSATION STRATEGIES: THE CASE OF ADULT LEARNERS

Online assessment and self-assessment with itest: experiences in higher education Mathematics

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Profile Issues in Teachers' Professional Development ISSN: Universidad Nacional de Colombia Colombia

INGENIERíA. Scada System for a Power Electronics Laboratory. Sistema SCADA para un laboratorio de electrónica de potencia Y D E S A R R O L L O

5.2 A Software Process Improvement Solution for Small and Medium-Size Enterprises

The Advantages of Online Language Learning

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

IN SEARCH OF ELEMENTS FOR A COMPETENCE MODEL IN SOLID GEOMETRY TEACHING. ESTABLISHMENT OF RELATIONSHIPS

ENVIRONMENT: Collaborative Learning Environment

La educación virtual como herramienta en la orientación educativa

Cambridge IGCSE.

SUPERINTENDENCIA DE VALORES DE COLOMBIA THE REFORM IN THE COLLECTIVE INVESTMENT INDUSTRY IN COLOMBIA

IMEO International Mass Event Organization based on Recent Experience of Euro 2012

Experience Report: Using Internal CMMI Appraisals to Institutionalize Software Development Performance Improvement

Visión general de la integración con asanetwork

Software Development Emphasis in Informatics Engineering Curriculum

Curriculum Vitae: Maria-Jose Vieira

AGILE IMPLEMENTATION OF A PROCESS MATURITY MODEL IN HIGHER EDUCATION

A METHODOLOGY FOR KNOWLEDGE MODELING OF FAULT DIAGNOSIS BASED ON PETRI NETS

Physics demonstration of sound waves using Visual Analyser

Software: Driving Innovation for Engineered Products

This section looks at useful on-line resources for foreign language

A research experience using portfolios for assessing college teaching

DYNA

Finally, Article 4, Creating the Project Plan describes how to use your insight into project cost and schedule to create a complete project plan.

NEW TOOLS FOR THE SELECTION OF TECHNOLOGIES; APPLICATION TO SHEET METAL FORMING

Diploma course ICT and informational advanced competences for in-service primary and secondary teachers in Mexico

Learning Objectives. Learning Objectives (continued) Importance of Project Schedules

Chapter 12 Intellectual Development from One One to Three to Three

PREDICTING THE INTENTION OF USING A TECHNOLOGY PRODUCT OR SERVICE THROUGH A FUZZY CONTROLLER

EVALUATING A FOREIGN LANGUAGE IN PRIMARY EDUCATION

DESCRIPTION OF COURSES

University of Calgary Schulich School of Engineering Department of Electrical and Computer Engineering

Lecture 6: Project Time Management By: Prof. Lili Saghafi. Information Technology Project Management, Fifth Edition

Equity and Fixed Income

Toward Quantitative Process Management With Exploratory Data Analysis

Memorial Health Care System Catholic Health Initiatives Financial Assistance Application Form

Green Project Management

Inteligencia Artificial Representación del conocimiento a través de restricciones (continuación)

Week 1: Introduction. Transcript of Week 1 Podcast

Module 11. Software Project Planning. Version 2 CSE IIT, Kharagpur

How To Assess A Very Young Learner

Software Engineering: Reflections on an Evolving Discipline

Keywords document, agile documentation, documentation, Techno functional expert, Team Collaboration, document selection;

GLAS: framework to improve assessment in educational videogames

Term Project: Roulette

Transcription:

Dyna ISSN: 0012-7353 dyna@unalmed.edu.co Universidad Nacional de Colombia Colombia ZAPATA, CARLOS M. A CLASSROOM GAME FOR TEACHING MANAGEMENT OF SOFTWARE COMPANIES Dyna, vol. 77, núm. 163, septiembre, 2010, pp. 290-299 Universidad Nacional de Colombia Medellín, Colombia Disponible en: http://www.redalyc.org/articulo.oa?id=49615099031 Cómo citar el artículo Número completo Más información del artículo Página de la revista en redalyc.org Sistema de Información Científica Red de Revistas Científicas de América Latina, el Caribe, España y Portugal Proyecto académico sin fines de lucro, desarrollado bajo la iniciativa de acceso abierto

EDITOR'S PAGE A CLASSROOM GAME FOR TEACHING MANAGEMENT OF SOFTWARE COMPANIES UN JUEGO DE CLASE PARA LA ENSEÑANZA DE LA GESTIÓN DE COMPAÑÍAS DE SOFTWARE CARLOS M. ZAPATA Escuela de Sistemas. Facultad de Minas.Universidad Nacional de Colombia, sede Medellín. cmzapata@unal.edu.co Received for review August 3 th, 2009, accepted March 4 th, 2010, final version April, 29 th, 2010 ABSTRACT: Software Engineering management requires some special skills. Often, these skills are left behind by well known teaching methods. Other management disciplines use active learning (v.g. learning by games) for generating such skills, but some similar experiences has not been conducted by software engineering teachers. In this paper we propose a classroom game for simulating the behaviour of several roles belonging to a software company. Our goal is practicing, in a real world like environment, the needed skills of software development team members. We also summarize the results of playing the game with two groups of students. KEYWORDS: Learning by games, Management games, software companies, development team roles. RESUMEN: La gestión en ingeniería de software necesita algunas destrezas especiales. A menudo, esas destrezas no se pueden desarrollar a partir de los métodos tradicionales de enseñanza. Otras disciplinas administrativas usan aprendizaje activo (v. g. aprendizaje mediante juegos) para desarrollar esas destrezas, pero los profesores en ingeniería de software no suelen conducir experiencias similares. En este artículo se propone un juego de clase para simular el comportamiento de varios roles pertenecientes a una compañía de software. Nuestra meta es la práctica, en un ambiente similar al entorno real, de las destrezas que requieren los miembros de los equipos de desarrollo de software. Además, se compendian los resultados de la práctica del juego con dos grupos de estudiantes. PALABRAS CLAVE: aprendizaje mediante juegos, juegos de gestión, compañías de software, roles de los equipos dedesarrollo 1. INTRODUCTION Suwanya and Kurutach [1] made an analysis of the software industry in Thailand by means of a survey. The resulting problem certainly will not differ in other countries in the world: a low usage of software product development process.this problem can be caused by the special features of the software industry (as compared against other manufacturing supply chains) [2] and the special managerial skills needed by software development teams in this field [3].Often, well known teaching methods in software engineering (namely lectures and toy practical projects) fail in developing such needed skills [4]. Management teaching, in other fields of knowledge, has been conducted by active learning experiences such as learning by games. There are examples in several industries as packaged detergent [5 7], building construction [8], petroleum [9], aerospace [10], and insurance [11]. In addition, there are some cross industry examples related to system dynamics and game theory for decision making [12 16] and supply chain [17 and 18]. Software engineering teachers have used games Dyna, year 77, Nro. 163, pp. 290 299. Medellin, September, 2010. ISSN 0012 7353

Dyna 163, 2010 291 for teaching some issues like programming [4], requirements engineering [19], and software development [20]. Since managerial skills often emerge in these games, the focus of these games is not management itself. One approach claims the use of games for management teaching in software engineering, but only an experimental case study isconducted in this job [21]. The above reasons lead us to propose, in this paper, a special classroom game for simulating the behaviour of the several roles linked to software companies. In this game, players act as managers, analysts, and developers, in order to complete a set of projects in the software industry. This paper is organized as follows: in section 2 we discuss the importance of management in software engineering; in section 3 we review previous efforts in teaching management by games in several industries; in section 4 we propose a game for teaching management in software engineering; in section 5 we present the results of playing the game with two groups of students. Finally, section 6 is devoted to conclusions and future work. 2. THE IMPORTANCE OF MANAGEMENT IN SOFTWARE ENGINEERING A survey conducted in Thailand over 1200 software companies have shown, among other issues, the lower usage of software product development process [1]. Not surprisingly, the results could be generalized to many other countries, because management skills are needed by the software industry for promoting better practices. Similarly, Ahonen and Junttila [3] conducted a survey to find the major problems in software engineering projects. They found that a vast majority of problems are related to people management and estimation of the required amount of work and time. These problems are commonly related to management skills. Even though management skills are common to many product supply chains, software industry exhibit special features [2]. Software project complexity, evidenced by a survey [22], contains many factors such as: nature of the project, project size, team size, number of stakeholders, location of stakeholders, experience of project manager, requirements flexibility, understanding of the customer, customer's availability, budget, time, risks, iterativeness of the development process, team skill level, and team type. Many of such factors require management skills to be adequately developed. For example, the dynamics of the software process (an aspect that gathers many of the above factors) is poorly understood by students in classrooms. Boehm and Turner [23] analyze the environment for implementing agile processes in software companies and suggest changes in the way organizations improve communication, management, and techniques. In the second issue, they suggest planning games. This point of view is supported by Baker et al. [4] who criticized the traditional way software engineering is taught, by means of lectures and toy practical projects. These two methods often fail in generating management skills in students, as Baker et al. mention when they say the time and scope constraints inherent in an academic setting prohibit the project from being of a sufficient size to exhibit most of the phenomena present in real world software engineering processes those that involve large, complex systems, large teams of people, and other factors such as management, workplace issues, and corporate culture [4]. 3. PREVIOUS EXPERIENCES IN MANAGEMENT TEACHING Early work about this special issue is devoted to Carnegie Tech management game [5 7], a good game applied to packaged detergent industry. In this game, students, acting as managers of several detergent firms, are encouraged to manage raw materials and other resources in order to practice decision making for improving business in this field.

292 Zapata Similarly, other authors exhibit examples in several industries. Hornibrook [8] shows the experience in using two versions of the game Committed, a special game released by the Queensland University of Technology for teaching management in the building construction industry. Avittathur and Banergee [9] propose a software based game for developing managerial skills in students inside the petroleum industry. McGregor and Baker [10] present a game for simulating the management of an orbiting optical observatory of NASA (National Aeronautics and Space Administration). Qureshi and David [11] show the use of a change management game in the context of insurance companies. Despite the emphasis on management issues, these games are focused on industries completely different from software industry, which exhibit additional complexity, as reported by a survey [22]. By this reason, games for practicing management issues in the software industry must face such complexity. Both system dynamics models and game theory have been used to simulate decision making process in several industries. Klee [12] and Torabkhani et al. [13], for instance, present a management game for decision making in environmental contexts. Bayraktutar [14] and Barlas and Bayraktutar [15] propose a system dynamics model for making decisions in software project management; the model is focused on the main features of software project management, but it fails in simulating the specific features of the roles inside a software team. Yan et al. [16] use game theory for analyzing channel conflict process of a software company; in this case, even though software industry is involved in the game, only one corelated issue of management is analyzed in the game. However, the games proposed by system dynamics and game theory are only focused on decision making, and this is merely an aspect of the management theory. Also, the complexity of software industry requires other skills than decision making. The cross industry supply chain is simulated by means of two games: the trading agent competition supply chain management game [17], where software agents are players, and the distributor game [18], a simulation game for supply chain challenges. Software industry, specifically, is simulated by problems and programmers [4], a card game focused on the role and dilemmas of programmers, requirements game [19], a twohour classroom simulation of software development, and software development game [20], an origami oriented game for practicing module based development of software applications. Even though these games are directed to isolated issues of software engineering, managerial skills arise as a collateral result of the games. Drawbacks of the above jobs can be summarized in two facts: (1) games are used in management teaching in many industries (excluding software industry), and (2) when used games in software industry, they are focused on other issues than management. Nonetheless, there is one project that apparently shows the use of games for management teaching in software industry: the business game for a Masters course in Management Information and Managerial Accounting Systems (MIMAS) [21]. In this game, students simulate a business experience in the context of software companies. However, if we carefully review the game itself, we discover that, more than a game, the project itself is both a case study and a toy project. In fact, students are invited to develop a tender for a software application belonging to a fictitious company. 4. MANAGEMENT IN SOFTWARE COMPANIES: A CLASSROOM GAME Managerial skills are needed by software development team members and the well known teaching methods are not enough for such training. Researchers around the world have developed management games for several industries, but software industry has even not used experiences like these. Thus, we propose a special game for simulating three main functions of management in software companies: estimation of cost and time, clear definition of roles inside a software company, and general

Dyna 163, 2010 293 knowledge about management issues. The game employs different methods for every task to be simulated. Firstly, estimation of cost and time is simulated by a bidding process, in which players in the role of managers must guess the cost and time of software projects; in this process, they discover the need to know historical data in order to improve the bidding process. Secondly, the clear definition of roles inside a software company is provided by the role definition in the game; tasks are separated into the three roles and manager activities are clearly distinguished by the players, because they do not play until the bidding process is completed, and this is an activity commonly assigned to managers in real companies. Finally, the general knowledge about management issues is simulated by a questionnaire in which we gather several issues on management techniques (planning, estimation, software project management, etc.). In the use of questionnaires, we also have a collateral benefit of the game, because we have questionnaires for both analysts and developers, and players can gain some knowledge in these roles also. The rest of this section is devoted to explain the design of this game, including a detailed description of roles, procedure, and materials. 4.1 Goal of the game By playing this game, we aim to improve some managerial skills of software development teams. Players are immersed in a software company simulation in what they must bid, analyze, and develop software applications. To achieve this goal, some questions about software engineering in several roles replace the common software tasks. 4.2 Game materials Dices: for randomly selecting questions we need a pair of physical or virtual dices. We use virtual dices with the 00 29 range. Every single number corresponds to a question. Questionnaires: we need three different questionnaires, including questions with a number in the 00 29 range and a difficulty level in the 1 3 range. Every questionnaire is devoted to a special software issue: project management, requirement analysis, or software development. Also, every questionnaire can be only answered by one single role (manager, analyst, or developer, respectively). Table 1 shows examples of questions and answers from questionnaires. We show more questions of the project management issue of the game, in order to show the information we can provide to our players, acting like simulated managers. Bidding information: we need a spreadsheet file with information about several projects and pre programmed for comparing the values of time and cost of the projects. The three used examples can be seen in table 2. (Note that you can create your own projects when playing again the game).

294 Zapata Table 1. Examples of questions and answers in questionnaires # Question Answer Diff. level ISSUE: PROJECT MANAGEMENT 00 Who writes The mythical man month? Frederick Brooks 3 01 What is the name of the bar diagram for representing temporal planning? Gantt chart 3 02 What the name of the process in which managers judge tentatively the cost and the Estimation 2 effort of a software application is? 03 What the SEI acronym means? Software Engineering Institute 2 04 What the CMMI acronym means? Capability and Maturity Model 1 Integration 05 What the last name of the creator of the function point metric is? Albretch 3 06 What method employs use cases in order to estimate size and effort of a software Use Case Points 1 project? 07 How can we name the time an activity can be delayed? Slack time 3 ISSUE: REQUIREMENT ANALYSIS 00 What construct is located in the second box of a class? Attributes 1 01 What kind of element can be located in the terminal node of a goal diagram? Requirements or expectations 2 02 Who creates the use case diagram? Ivar Jacobson 3 03 What is the name of a whole part relationship in the class diagram? Aggregation or composition 2 ISSUE: SOFTWARE DEVELOPMENT 00 Please mention two reserved words for expressing cycles. Do while, loop, for, etc. 1 01 What the GNU acronym means? GNU is Not Unix. 3 02 What kind of language is MAUDE? Declarative language 3 03 What is the name of the JDK file for compiling java code? Javac 1 Table 2. Bidding information about a project Name: Software for managing a small library with no branches. Size (Lines of code LOC): 1983 Experience units for delivering to 10 software company Analyst points to complete project 4 Developer points to complete 4 project Name: Software for controlling production process in a manufacturing company. Size (Lines of code LOC): 2615 Experience units for delivering to 13 software company Analyst points to complete project 5 Developer points to complete 5 project Name: Software for incoming calls in a call center. Size (Lines of code LOC): 4632 Experience units for delivering to 23 software company Analyst points to complete project 9 Developer points to complete 9 project 4.3 Procedure 4.3.1. Players are grouped in 3 to 6 member teams Inside the team, every player must select one role (manager, analyst, or developer). We need, at least, one person per role in every team. 4.3.2. Game director randomly assign an order to the teams The first team begin followed orderly by the others. 4.3.3. Managers of the first team roll the dice for selecting a question At this moment, only management issue questionnaire is available for playing the game. 4.3.4. Game director ask the question identified by the dice number If managers positively answer the question, game director assign to that team as many turns as the difficulty level of the question. One computer and one LCD projector.

Dyna 163, 2010 295 4.3.5. Based on the software size, managers must estimate a value for effort (expressed in manmonth, the result of multiply number of team members by number of months of a project) and cost of the project Game director compares the values assigned by team managers with the actual values of the project. We must note that only game director knows the actual relationship between size and effort cost values (in this case, he/she can obtain effort by dividing size by 863 LOC/man month, and cost by multiplying the former result by 5,37 KUS$/man month; this values are supposed, and will be the same for every project in the game, but players do not know this information). If the values estimated by managers are within 90% to 110% of the actual values, game director declare the values as right. Elsewhere, declare the values as wrong. The entire bidding process (assigning effort and cost values) is completely open to all the players. One wrong value diminishes the turns in one. When turns are diminished to zero, team managers have no option to bid the current project. 4.3.6. The process is repeated until one of the teams obtains right values for effort and cost This team will be ready for analysis phase of the project. In other words, next time they will roll the dice game director will ask questions from requirement analysis questionnaire. 4.3.7. Team analysts roll the dice for selecting a question. If analysts positively answer the question, game director assign to the team as many analyst points as difficulty level of the question. 4.3.8. The process is repeated until one of the teams obtains at least the minimum number of analyst points established by bidding information This team will be ready for the development phase of the project. 4.3.9. Team developers roll the dice for selecting a question from the software development questionnaire If developers positively answer the question, game director assign to the team as many developer points as difficulty level of the question. 4.3.10. The process is repeated until one of the teams obtains at least the minimum number of developer points established by bidding information At this moment, game director assign to the team the experience units established by bidding information. 4.4 Special conditions about procedure 4.4.1. If we take a snapshot of the game in one moment, teams can be in different phases of project development For instance, one team can be in the bidding process while other can be in the requirement analysis process. In addition, the first team in positively assign effort and cost values gives this information to the others (since bidding process is completely open); then, the rest of the teams must, at least, positively answer the questions for reaching the next phase. 4.4.2. The questionnaires have a limited number of questions (30, in this case) and the selection of the questions is randomly made The only goal of this special feature of the game is the need to be aware of unknown answers, in an effort to gain enough knowledge to reach the next phase. 4.4.3. The winner of the game is determined by some factors: firstly, the amount of experience units of the team; secondly, the amount of analyst points of the team; thirdly, the amount of developer points of the team. Finally, if two or more teams are tied in the former factors, the dices will decide the winner.

296 Zapata 4.5 Learning aspects of the game This game is intended to share knowledge about software development in two ways: reminding concepts and experiencing some software development processes. Repetition is the key for reminding concepts. When dices recall the number of a question previously asked, this is a chance for the player to use the right answer (even if he/she did not ask the same question before). Again and again, we are repeating the same questions and their answers. But, what happen when nobody knows the answer of any question? We used to employ a device for this situation: an amnesty round. For instance, if we detect that in the same round all of the teams wrongly answered their questions, we propose a round in which game director give the right answer only by rolling the dices. Consequently, these answers are filling the knowledge gaps of the teams. Experiences of software development process come true from the game practice itself. Bidding is a common process in software companies. All of the time, this kind of companies are struggling for winning contracts, and they are estimating effort and cost to achieve this goal. The game is designed to create awareness of the difficulties associated to bidding process. At the beginning, teams do not have any other tool than guessing. But, as the game goes on, teams are gaining some understanding of the process, and they discover the secret relationship between LOC and the required values (effort and cost). The bidding process of the second project is easy, because the teams have the previous results to compare. This situation is an image of what happen in real life: statistical data of previous projects feed the estimation of future projects. In order to accelerate the simulation, we make an open bidding process, in which every proposed value can be seen by all of the teams. Another experience of real software development process is related to the fact that there is a sequence in the tasks to be completed in a project. Requirement analysis process only starts when bidding process is finished, and software development process requires the completeness of the two previous phases. Even though this sequence is not used by many companies, we need conscious players about this situation. Finally, dices play a crucial role in the game: they simulate randomness and luck. Sometimes, luck is a decisive factor in real software development process. We strongly believe that this game generate awareness of the importance of luck in real projects. 5. RESULTS OF PLAYING THE GAME This game has been played by two 20 player groups belonging to courses about requirements engineering and software project management. The first group had students in the range of 8 th to 9 th semester, while the second group had students in the range of 4 th to 7 th semester. The students of the two groups belong to systems engineering program. Validation was conducted by means of a survey with three open questions: (1) what did you learn from game?, (2) what do you think you need to win the game?, and (3) what would you change to the game? We use open questions as an effort to avoid biases in the answers. Sometimes, multi choices can be selected by someone, even if he/she does not believe in the importance of the choice itself. The answers can contain many choices. By this reason, if we summarize the percentages related to the answers, the result will be greater than 100%. Related to the first question, table 3 shows the resulting aspects voted by the players about learning in the game. Table 3. Results of the learning aspects in the game LEARNING % Reminding of software engineering 73 concepts Roles in software engineering 23 Estimation of cost and time 13 Software engineering lifecycle 10 Work under pressure 5 Games are useful learning tools 3 Nothing 3

Dyna 163, 2010 297 In opinion of 73% of the players, concepts about software engineering are the most important aspect learnt by means of the game. We previously expected such a result, because the questionnaires are continually used in the game, and repetition of the answers is a common situation. Also, we must remember that questions about software project management are important issues of the questionnaire, and one of the goals of the game. Other learning aspects voted by players (with fewer comparative percentages) are related to software development processes. Only one player (3%) said nothing about learning in this game. Related to the second question, table 4 summarizes the needs acknowledged by players for winning the game. Table 4. Results of the needs for winning the game NEEDS FOR WINNING THE GAME % Knowledge about software engineering 95 Watchfulness 23 Luck 15 Good estimation skills 13 Skills for choosing roles 13 Memory 8 A good strategy 3 Similarly to the first question, opinions in the second question are unbalanced. A vast majority of opinions was devoted to knowledge about software engineering (95%), reinforcing the fact that repetition of questions is the most experienced device in this game. Watchfulness, as expressed by 23% of the players, is also important in the process of asking questions. Also, can be a useful tool in the bidding process. The next three issues, with comparative similar values in opinion percentage (13 15%), reveal environment conditions of the game (luck) and previous knowledge in management. Related to the third question, table 5 summarizes the changes to the game suggested by the players. Table 5. Opinions about the changes to the game CHANGES TO BE MADE % Nothing 25 Multi choice for answers 20 Hide bidding information to other teams 18 Help for the bidding process 15 Lower pressure 10 Hide the answers to other teams 5 Rules for selecting the winner 5 Increase the number of questions 5 Bigger teams 3 Reduce question complexity 3 Help among roles 3 In this case, there is no majority in the opinions of the players. 25% of the players suggest make no changes to the game. Some of the remaining suggestions can not be realized because of the learning process (as explained in section 4.5). For example, if we hide the answers or the bidding process to other teams (as claimed by 5% and 18% of the players, respectively), learning process could not be achieved by players. One possible suggestion is the use of multi choice answers (as claimed by 20% of the players), but trying to avoid biases in the answer. This strategy is repeatedly used in question games as Jeopardy and Who wants to be a millionaire. At this moment, we are carefully reviewing these suggestions for creating an improved version of the game. 6. CONCLUSIONS Management is a difficult matter for teaching when well known teaching methods are used. In the case of software engineering teaching, some methods like lectures and practical toy projects have been used, but they fail in generating managerial skills in students. The usage of collaborative learning (and strategies like learning by games) is common in teaching management when it is related to some industries (building construction, aerospace, manufacturing, etc.). Experiences like this and some other related to software engineering in

298 Zapata non management issues, led us to propose in this paper a game for teaching management of software companies. The game, played by two groups of students, revealed its usefulness for sharing knowledge about software engineering and for practicing some of the common functions of roles linked to software companies (managers, analysts, and developers, particularly). Future work about this research can be devoted to: Play the game with several non student groups, as a way to validate the obtained results. Generate some features of the game if future practices reveal some trend (for example, multichoice can represent an improvement to be validated in the future of the game). Change the way the game is played: why if the game is not a classroom practice? Why if we can create a similar asynchronous game, in which players can gain access everywhere? Games like Ages of Empires or Dark throne can be useful mirrors for creating such a game. Create other games with similar goals in management, but differing in the specific topic: for example, we need games for simulating aspects like quality assurance, risk management, detailed planning, and so on. ACKNOWLEDGMENT This work was supported by Vicerrectoría de Investigación, Universidad Nacional de Colombia as part of the project Software Boulevar: un juego de estrategia en web para la enseñanza de competencias de gestión en Ingeniería de Software. REFERENCES [1] SUWANYA, S. and KURUTACH, W. An analysis of software process improvement for sustainable development in Thailand. Proceedings of the 8 th IEEE International Conference on Computer and Information Technology CIT 2008, Sydney, Australia, 724 729, 2008. [2] CHOU, M. and RUCHIKA, A. An indepth study of the software supply chain. Proceedings of the 4 th IEEE International Conference on Industrial Informatics, Singapore, 753 758, 2006. [3] AHONEN, J. and JUNTTILA, T. A case study on quality affecting problems in software engineering projects. Proceedings of the IEEE International Conference on Software Science, Technology & Engineering, Hertseliyah, Israel, 2003. [4] BAKER, A., NAVARRO, E., and VAN DER HOEK, A. An experimental card game for teaching software engineering processes. The Journal of Systems and Software, (75), 3 16, 2005. [5] COHEN, K., CYERT, R., DILL, W., KUEHN, A., MILLER, M., VAN WORMER, T., and WINTERS, P. The Carnegie Tech management game. The Journal of Business, 33(4), 303 321, 1960. [6] DILL, W. and DOPPELT, N. The acquisition of experience in a complex management game. Management Science, 10(1), 30 46, 1963. [7] LEWIN, A. and WEBER, W. Management game teams in education and organization research: an experiment on risk. The Academy of Management Journal, 12(1), 49 58, 1969. [8] HORNIBROOK, J. Further development of the construction management game Committed. Proceedings of the IEEE International Conference on Multimedia Engineering Education, Melbourne, Australia, 71 76, 1996. [9] AVITTATHUR, B. and BANERJEE, A. Design of a oil management game software. Proceedings of the International Conference on Service Systems and Service Management, Melbourne, Australia, 1 6, 2008. [10] McGREGOR, E. and BAKER, R. GREMEX a management game for the new public administration. Public Administration Review, 32(1), 24 32, 1972.

Dyna 163, 2010 299 [11] KLEE, A. DISCUS a solid waste management game. IEEE Transactions on Geoscience Electronics, GE 8(3), 125 129, 1970. [12] QURESHI, S. and DAVIS, A. Managing resistance to organizational change: how GSS can reveal role related resistance behaviors. Proceedings of the 40 th Hawaii International Conference on System Sciences, Hawaii, USA, 2007. [13] TORABKHANI, A., ISAACS, J. and BENNEYAN, J. Embedded simulation models in educational games on environmental issues for engineering students. Proceedings of the IEEE International Symposium on Electronics & the Environment, Orlando, USA, 61 66, 2007. [14] BAYRAKTUTAR, I. A simulation game for software project management [M. Sc. Thesis]. Miami University, Miami, USA, 1992. [15] BARLAS, Y. and BAYRAKTUTAR, I. An interactive simulation game for software project management (SOFTSIM). Proceedings of the Proceedings of the International System Dynamics Conference, Utrecht, The Netherlands, 59 68, 1992. [16] YAN, J., WU, Y. and QI, H. Using game strategy to manage channel conflict dilemmas. Proceedings of the International Conference on Service Systems and Service Management, Melbourne, Australia, 2008. [17] MACÍAS, D., VILARIÑO, D., and LÓPEZ, F. Agents development for a supply chain management game. Proceedings of the 2005 International Conference on Computational Intelligence for Modelling, Control and Automation, and International Conference on Intelligent Agents, Web Technologies and Internet Commerce (CIMCA IAWTIC 05), Vienna, Austria, 968 975, 2005. [18] VAN HOUTEN, S. and BOYSON, S. Training for today s supply chains: an introduction to the distributor game. Proceedings of the 2005 Winter Simulation Conference, Orlando, USA, 2338 2345, 2005. [19] ZAPATA, C. M. and AWAD, G. Requirements Game: Teaching Software Project Management. CLEI Electronic Journal, 10(1), 2007. [20] ZAPATA, C. M. Teaching Software development by means of a classroom game: the software development game. Proceedings of the 36th annual ABSEL conference, Seattle, USA, 2009. [21] NEVILLE, K. and ADAM, F. Integrating theory and practice in education with business games. Informing Science, 6, 61 73, 2003. [22] CHEEMA, A. and SHAHID, A. Customizing project management methodology. Proceedings of the 9 th IEEE International Multitopic Conference INMIC, Karachi, Pakistan, 2005. [23] BOEHM, B. and TURNER, R. Management challenges to implementing agile processes in traditional development organizations. IEEE Software, Sept Oct, 30 39, 2005.