SEMAT GAME: Applying a Project Management Practice Page 133 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 ABSTRACT Semat is an initiative that supports the creation of a kernel of essential and universal elements for all software development endeavor and a simple language to describe methods and practices. Project management is the application of knowledge, skills and techniques to project activities as a way to satisfy its requirements. PMBOK is a guide for defining the life cycle of a project by considering knowledge areas and process groups. Some games oriented to teach the Semat kernel elements and the way to use them to measure the progress of a project were discovered in the state of the art. However, practices outside the software engineering context are not the focus of such games. In this paper we propose a game for teaching the Semat kernel elements and their relationships with project management practices. INTRODUCTION Semat (an acronym for Software Engineering Methods and Theory) is an initiative founded by Ivar Jacobson, Bertrand Meyer and Richard Soley in order to support a process for redefining software engineering based on a solid theory, proven principles, and best practices (Jacobson et al., 2012). Unlike other attempts to create a general theory of software engineering, Semat generalizes the software engineering by identifying actions and universal elements. Such elements are described by using a simple language allowing for the description of the common practices belonging to existing methods. Such initiative can be used to evaluate, compare, and measure the health and progress of an endeavor (Essence, 2014). The Semat kernel includes a group of essential elements common to any software development endeavor. The Semat kernel is extensible for specific uses. Any method can be represented by the kernel elements (Zapata-Jaramillo & Jacobson, 2014). In the Semat kernel we can identify “the things you need to do” and “the things we work with” when developing software systems. This is done by tracking the states of the different dimensions of a software endeavor (Stakeholder, Opportunity, System software, Requirements, Work, Way of working, and Team), and their states, which they have a guide on how to work with them (Jacobson et al, 2014). Project management is achieved by means of process groups: initiating, planning, executing, monitoring and controlling, and closing (See Exhibit 1). Some tasks should be completed (PMBOK, 2013):  Identify requirements  Establish clear goals and make possible to do them  Balancing the competing demands for quality, scope, time, and cost  Adapting the specifications, plans and approach to the different concerns and expectations of the different stakeholders. PMBOK is a standard created by PMI (Project Management Institute) to “identify a subset generally recognized as a good practice.” In this context, “identify” means providing an overview as opposed to an exhaustive description. "Generally recognized" means the knowledge and practices described are applicable to many projects most of the time. Also, widespread consensus about the project value and utility is reached. Finally, “Best practice” means a general agreement about the correct application of the skills, tools, and techniques for increasing the chances of success of different projects. “Best Practice” does not mean the knowledge SEMAT GAME: APPLYING A PROJECT MANAGEMENT PRACTICE Carlos Mario Zapata-Jaramillo Universidad Nacional de Colombia cmzapata@unal.edu.co Miguel David Rojas-López Universidad Nacional de Colombia mdrojas@unal.edu.co Rafael Esteban Arango Sánchez Universidad Nacional de Colombia raearangosa@unal.edu.co Leidy Diana Jiménez Pinzón Universidad Nacional de Colombia ldjimenezp@unal.edu.co Page 134 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 described should always be applied uniformly on all projects; the project team is responsible for determining what is appropriate for each particular project" (PMBOK, 2013). Some strategies have been used for teaching the Semat kernel—e.g. games. The aim of some of such games is teaching the Semat kernel elements (Zapata-Jaramillo & Jacobson, 2014), making the player aware about the definition of each element, the form to use the elements established in Semat and the importance of representing the best practices of software engineering. The reminder of this paper is organized as follows: in Section 2 we present some background related to Semat and the PMBOK guide to project management. Current state-of-the-art Semat games are presented in Section 3. Then, in Section 4 we propose a Semat game, and we describe the rules and conditions of the game and the results of the game application. Finally, we present the conclusions and future work. SEMAT (SOFTWARE ENGINEERING METHOD AND THEORY) Semat has two main objectives; the first is finding a widely- accepted kernel of elements, a common ground for the software engineering with the "things to work with," the "things to do," and the "Competencies". The second objective is defining a theoretical basis to redefine the way people work with software development methods, the definition of measures independent of the software quality assessment and the methods used to produce it, the composition and comparison of practices to be defined and implemented independently from various sources to fit the needs of either organization, project or team (Jacobson et al., 2012). The Semat kernel is described by using a small set of elements, which are grouped into three areas of concern: customer, solution and effort. Each concern area is focused on a specific aspect of software engineering and is distinguished by a color, getting to group the elements of the Semat kernel. The Customer area, identified by the green color, contains everything that has to do with the effective use and exploitation of the software system to be produced. The solution area, identified by the yellow color, contains everything related to the specification and development of the software system to produce and the Endeavor area, identified by the blue color, has everything to do with the team and the way they approach to the work (Zapata-Jaramillo, 2011). The elements comprising each one of the concern areas are: alphas, activity spaces, and competencies (See Exhibits 3, 5 and 7) (Essence, 2014). The graphical syntax of Semat provides a visual way to understand a specific aspect of a method. The kernel elements (Essence, 2014) are described as follows:  Method. A set of practices for descr ibing the endeavor made in a company.  Practice. A repeated effor t to be per formed with a specific purpose in mind. EXHIBIT 1 PHASES OF THE MANAGEMENT PROJECT Source: (PMBOK, 2013) EXHIBIT 2 ELEMENTS OF THE SEMAT KERNEL Source: (Essence, 2014) Page 135 - Developments in Business Simulation and Experiential Learning, volume 42, 2015  Work Product. Device used or generated by a practice.  Activity. Definition of one or more kinds of work products and guidance on how to use them.  Pattern. A descr iption of a structure in practice.  Alphas. Representation of the " essential things to work with." An alpha provides a description of the kind of things a team should manage, use and produce in any software development endeavor. An alpha is a critical indicator to monitor and follow a line of progress for measuring the health of the project (See Exhibit 2). This measure is possible because an alpha is characterized by a set of states, where each state has a checklist for specifying the criteria to reach a state (Essence, 2014). The alphas established in the Semat kernel (Jacobson et al., 2014) are defined as follows: ○ Opportunity. The r ight set of circumstances to develop or modify a software system. Opportunity articulates the reason for creating the new or modified software system. ○ Stakeholders. Individuals, groups or organizations that affect or are affected by a software system. Stakeholders provide the opportunity and are the source of requirements and funding for the software system. ○ Requirements. What the software system should do to treat and meet the opportunity of interested parties. ○ Software System. A system compr ising software, hardware, and data. A software system provides the primary value for the implementation of the software. ○ Work. Activity involving mental or physical effort done in order to achieve a result. In the context of software engineering, the work is all that makes the team meet the goals of producing a software system to match the requirements. ○ Team. a group of people actively involved in the development, maintenance, and delivery of a software system. ○ Way of working. The set of practices and tools adapted to use a computer in order to guide and support their work.  State. A situation where some conditions are proposed (see Exhibit 4).  Checklist. A list to be ver ified for accomplishing a state (See Exhibit 5).  Activity spaces. Complementing the alphas, activity spaces provide all the essential activities normally done in a software engineering endeavor (See Exhibit 6) (Essence, 2014).  Competencies: they represent the key skills required for software development (Essence, 2014) and shown in Exhibit 7. Six competencies are included in the Semat kernel (Jacobson et al, 2014): ○ Stakeholder representation is the ability to gather and communicate the needs of stakeholders. ○ Analysis is the ability to identify opportunities, needs, and requests of the stakeholders in search for agreement of the requirements related to the software EXHIBIT 3 SEMAT KERNEL ALPHAS Source: (Jacobson et al, 2012) Page 136 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 system. ○ Development is the ability to implement software systems based on the requirements. ○ Testing is the ability to verify the developed software system meets the requirements given. ○ Leadership is the ability to lead a team to a successful conclusion for satisfying the stakeholders. PMBOK (PROJECT MANAGEMENT BODY OF KNOWLEDGE) Project management is the application of knowledge, competencies, tools, and techniques for performing project activities as a way to meet all the project requirements (Pereira et al., 2013). A project is a collection of activities, including a temporary endeavor to create a unique product, service or result (PMBOK, 2013). PMBOK is a guide for organizing best practices in project management. One of the main concepts in the area is stakeholder, EXHIBIT 4 ALPHA “WAY OF WORKING” AND ITS STATES EXHIBIT 5 ALPHA “WAY OF WORKING,” STATE “WORKING GOOD” WITH ITS CHECKLIST Source: (Jacobson et al, 2012) EXHIBIT 6 ACTIVITY SPACES Source: (Jacobson et al, 2012) Page 137 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 EXHIBIT 7 COMPETENCIES Source: (Essence, 2014) EXHIBIT 8 PROCESS OF THREE KNOWLEDGE AREAS (SCOPE, TIME AND COST) IN THE GROUP PROCESS (PLANNING AND MONITORING & CONTROLLING) Source: (PMBOK, 2013) Knowledge Areas Process Groups Planning Monitoring & Controlling Scope 5.1. Plan Scope Management 5.2. Collect Requirements 5.3. Define Scope 5.4. Create WBS 5.5. Validate Scope 5.6. Control Scope Time 6.1. Plan Schedule Management 6.2. Define Activities 6.3. Sequence Activities 6.4. Estimate Activity Resources 6.5. Estimate Activity Durations 6.6. Develop Schedule 6.7. Control Schedule Cost 7.1. Plan Cost Management 7.2. Estimate Costs 7.3. Determine Budget 7.4. Control Costs Page 138 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 which corresponds to individuals or organizations with some kind of relationship with the project (PMBOK, 2013). Stakeholders are involved in processes, which are classified into several knowledge areas and produce the required work products. Implementation of the work products requires different tools and techniques (Callegari & Bastos, 2007). PMBOK defines five process groups belonging to the life cycle of a project (Zwikael, 2009):  Initiating. Per formed to star t a new project or phase and obtain approval from stakeholders for implementation.  Planning. Per formed to deter mine the objectives and scope of the project and to define actions needed to ensure the project meets its objectives.  Execution. Establishes the project implementation processes in which the work is performed to complete the planned activities.  Monitoring and control. Car r ied out to monitor , review, and adjust the project performance and progress, taking corrective actions.  Closing. Per formed to formally finalize all activities of the project. A process is a set of actions and activities performed to achieve a pre-specified set of products, results, or services. The project team is in charge of executing the project management processes (Callegari & Bastos, 2007). The project management processes are divided into ten areas of knowledge (PMBOK, 2013): integration, scope, time, cost, quality, human resources, communication, risk, procurement, and stakeholders. PMBOK defines inputs, tools and outputs for describing the structure of their activities (PMBOK, 2013). A set of 47 processes are distributed among the knowledge areas and within each process group of the project life cycle (see Exhibit 8) as shown in Table 1. This table sets out some of the processes from three knowledge areas (Scope, Time, and Cost), which was held during the "Planning" and "Monitoring and control" of the project. Groups of project management processes are related to the results or work products generated. The output of one process generally becomes an input to another process or is a required deliverable for the stakeholder (PMBOK, 2013). In Exhibit 9, we show the "plan scope management," which takes place in the process group called "Planning" and belongs to the knowledge area "Scope." The PMBOK Guide defines the process for the following inputs, tools and outputs: BACKGROUND In the state of the art, some Semat games are used to teach the kernel elements. For example, Zapata and Jacobson (Jacobson & Zapata-Jaramillo, 2014) propose some games as a strategy for promoting the theory and practice of the Semat ideas—e.g., SemCards, MetricC, and the Semat board-crossing. These games help to teach concepts about Semat, how to use the elements, and the relationship between them. The SemCards game (see Exhibit 10) presents to the player a card in turn with the name and the description of a concept of the Semat kernel (Alpha, activity space or competency). The player then should identify the type of element and the area of concern associated with the element (Client, solution or endeavor). EXHIBIT 9 INPUTS AND OUTPUTS OF A PROCESS OF PMBOK Source: (PMBOK, 2013) Process: Plan Scope Management Inputs 1. Project management plan 2. Project charter 3. Enterprise environmental factors 4. Organizational process assets Outputs 1. Scope management plan 2. Requirements management plan EXHIBIT 10 SEMCARDS GAME Source: (Zapata-Jaramillo & Jacobson, 2014) EXHIBIT 11 METRICC GAME Source: (Zapata-Jaramillo & Jacobson, 2014) Page 139 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 By playing MetricC (see Exhibit 11), players can understand the basic ideas related to activity spaces for developing a software project and identifying the criteria and metrics that complement each other to ensure the quality of an activity space (Jacobson & Zapata-Jaramillo, 2014). Board-crossing Semat game (see Exhibit 12) aims to teach the theory of Semat by using questions and clues. The player should cross the board by selecting letters—acting as clues, since each one is the first letter of the answer—and then answering related to the Semat kernel. Whether the answer is right or wrong, the right answer is displayed on the screen, giving the players an opportunity to learn about the concepts involved. However, no games were detected in the state of the art for teaching the use of administrative practices as the object of applicability to the Semat concepts. In this paper, we propose a game for the players to learn the concepts of the Semat kernel elements by representing a practice related to the PMBOK. GAME APPROACH Gomez (Gomez , 2010) identifies 10 steps for creating an experience-based game. They are specified as follows: 1. Identifying the topic of the game 2. Establishing the purpose of the game 3. Establishing the instructional goals of the game 4. Identifying and defining the general concepts of the topic 5. Selecting candidate techniques 6. Selecting the most appropriate technique or techniques according to the characterization of the topic 7. Incorporating specific knowledge in the game 8. Developing pilot gaming sessions 9. Consolidating the game 10. Developing an evaluation survey of the game The topic of the game is Semat and how some of its kernel elements—such as activities, competencies, practices, alphas, work products, and activity spaces—are used. The object of the game proposed in this paper is teaching the Semat kernel elements and showing how to use them when a particular practice—in this case, a PMBOK practice—is represented. For the planning game, it should be noted that PMBOK is a practice and its processes are represented in the Semat kernel as activities. The inputs of the processes are the required work products and the outputs of the processes are the generated work products when a member team performs an activity. The “plan scope management” activity described above represents the Semat kernel elements. This activity has work products related to the alpha requirements. This activity affects directly one of its states, which is called "dimensions" and the person who performs this activity should have the competency called Analysis in the Semat kernel, as shown in Exhibit 13. This association is performed for each of the processes defined in the PMBOK guide. The main interface of the game is displayed in Exhibit 14. The PMBOK practice is represented by the hexagonal board— EXHIBIT 12 SEMAT BOARD-CROSSING GAME Source: (Zapata-Jaramillo & Jacobson, 2014) EXHIBIT 13 PHASES OF THE MANAGEMENT PROJECT . Activity Work products Competency Alpha (State) Work products Plan Scope Management 1. Project management plan 2. Project charter 3. Enterprise environmental factors 4. Organizational process assets Analysis Requirements (Bounded) 1. Scope management plan 2. Requirements management plan EXHIBIT 14 BOARD GAME Page 140 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 the symbol for practices in the context of the Semat kernel. PMBOK has associated activities made by team members whom, in turn, need some competencies. Each square on the board corresponds to an activity or competence, both elements differenced with a color (green, yellow or blue) according to the Semat area of concern linked to it. An activity space is a set of activities. In the main interface, a dotted-line symbol resembles the graphical syntax of an activity space in the Semat kernel; inside this symbol, the activity cards are categorized in concern areas. An activity card (see Exhibit 15) includes the specific work products and alphas required for doing the activity and the resulting work products the team generate when they do the activity. On the other hand, a competency card (see Exhibit 16) shows to the player the competency needed by the team in order to complete the activity. Five players, which are represented by the symbol of the Alpha Team, can participate in the game. Each one of the teams have three interfaces to control and they can identify the work products, competencies, and states of alphas (see Exhibits 17, 18 and 19) they are affecting when the team perform different activities of the PMBOK practice. The winner of this game is the team that more states of the alphas has attained at a given time or the first team that meets all states of the Semat kernel. The game was applied to a 45-student group belonging to the course “programming foundations,” from the Universidad Nacional de Colombia. The Semat game was practiced in 15-student heterogeneous groups—inside the groups, students belonged to several engineering programs, like systems, electricity, and physics. After the game, we applied a 3-question survey with the aim of gathering some information from the players. The results are summarized as follows. 1. Did you understand the difference between competency, activity, and work product after the game? 98% of the surveyed students answered yes (see Exhibit 20). This means the maximum of the students learned about the three elements of Semat by practicing the game. The result shows this strategy as accomplishing the goal for which the game was created. EXHIBIT 15 ACTIVITY CARD EXHIBIT 16 COMPETENCE CARD Page 141 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 EXHIBIT 17 INTERFACE FOR CONTROLLING WORK PRODUCTS EXHIBIT 18 INTERFACE FOR CONTROLLING COMPETENCIES EXHIBIT 19 INTERFACE FOR CONTROLLING THE ALPHA STATES Page 142 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 2. Did you identify the symbol of a competency, an activity, and a work product in Semat after the game? 87% of the surveyed students answered yes (see Exhibit 21). This means the vast majority of the students knew the graphical syntax of the three elements studied: competency, activity and work product. 3. Did you think that the alpha states represent progress in a project after the game? 96% of the surveyed students answered yes (see Exhibit 22). This means the maximum of the students recognized that the alpha states represent progress through a project. CONCLUSIONS AND FUTURE WORK Semat is an initiative for gathering together the core elements essential to the development of software projects. However, its elements are universal to represent practices pertaining to any area. PMBOK activities—performed by teams—generate and require work products for achieving the progress of the project. Alpha states act as indicators of such progress. Semat game is a strategy for teaching the Semat kernel elements. Players are encouraged to understand the concepts of the topic proposed by the game, in this case the main features of a PMBOK process. Results are provided showing the effectiveness of the game about the goals proposed. Some lines of future work can be defined: i) practicing the game with other audiences, like graduate students and professionals; ii) improving the game by including other Semat elements, like patterns and resources; and iii) simulating other fields of knowledge oriented to the use of practices, like hardware engineering and enterprise engineering. REFERENCES Callegari, D. A., & Bastos, R. M. (2007). Project Management and Software Development Processes: Integrating RUP and PMBOK. 2007 International Conference on Systems Engineering & Modeling, 1. Essence – Kernel and Language for Software Engineering Methods. (2014). Beta 2 version. Gomez Alvarez M. C. (2010). Definición de un método para el diseño de juegos orientados al desarrollo de habilidades gerenciales como estrategia de entrenamiento empresarial. Tesis de maestría, Medellín. A guide to the project management body of knowledge (PMBOK® guide) fifth edition. 2013 Project Management Institute, Four Campus Boulevard, Newtown Square, PA 19073-3299 EE.UU. Jacobson I., Ng P., McMahon P.E., Spence I. and Lidman S. (2012). The Essence of Software Engineering: The SEMAT Núcleo. Communications of the ACM, vol. 55 (12), pp. 42-49. Jacobson I., Ng P., McMahon P.E., Spence I. and Lidman S. (2014). La esencia de la ingeniería de software: Aplicando el núcleo de Semat. Argentina: Nueva librería S.R.L. Jacobson, I., Spence, I., & Pan-Wei, N. (2013). Agile and Semat- Perfect Partners. Communications of the ACM, 56(11), 53-59. Kinsella, S. M. (2002). Activity-Based Costing: Does It Warrant Inclusion in A Guide to the Project Management Body of Knowledge (PMBOK Guide)?. Project Management Journal, 33(2), 49. Ng P. (2014). Software Process Improvement and Gaming using Essence: An Industrial Experience. Journal of Industrial and Intelligent Information, vol. 2 (1). Ojeda, O., & Reusch, P. (2013). Sustainable procurement - Extending project procurement concepts and processes based on PMBOK. 2013 IEEE 7Th International Conference On Intelligent Data Acquisition & Advanced Computing Systems (IDAACS), 530. Pereira, A., Goncalves, R., Von Wangenheim, C., & Buglione, L. (n.d). (2013). Comparison of Open Source Tools for Project Management. International Journal of Software Engineering and Knowledge Engineering, 23(2), 189- 209. Software Engineering: Methods, Modeling, and Teaching Vol. 3. (2011). Medellín: Centro Editorial de la Facultad de Minas. Zapata-Jaramillo C.M., Arango-Sanchez R. E. and Jiménez- Pinzón L.D. (2014). Mejoramiento de la consistencia entre la sintaxis textual y gráfica del lenguaje de Semat. Polibits, vol. (49), pp. 83–89. EXHIBIT 20 QUESTION 1 EXHIBIT 21 QUESTION 2 EXHIBIT 22 QUESTION 3 Page 143 - Developments in Business Simulation and Experiential Learning, volume 42, 2015 Zapata-Jaramillo C. M., Maturana G., and Castro L. (2013). Tutorial sobre la iniciativa SEMAT y el juego MetricC, en Congreso Colombiano de Computación 8th. Zapata-Jaramillo C. M. and Jacobson, I. (2014). A first course in software engineering methods and theory. DYNA, Vol. 81, no. 183. Zwikael, O. (2009). The relative importance of the PMBOK® Guide's nine Knowledge Areas during project planning. Project Management Journal, 40(4), 94-103.