Keywords

1 Introduction

The software development industry is fierce. Nowadays, companies require to innovate and adapt their practices. Scrum, as a software development framework has proven its effectiveness in these conditions. Many companies around the world are trying to introduce agile, and Scrum principles in their processes. Therefore, they are training their personnel.

Due to a requirement from a partner company to train over 240 employees, we decided to create a workshop in which theory and practice are combined to achieve a deep understanding of agile and scrum principles, techniques, sessions, and instruments. The workshop is focused on the Scrum Master perspective (i.e., team facilitation, coaching, and impediments removal). Also, we designed another training for Product Owners in a side by side and coexisting effort.

This paper describes our efforts in designing and testing a 16-h (two days) Scrum workshop that provides an overview of Scrum´s core concepts and evidence the context conditions that force companies to implement agile practices. The workshop is intended for participants with little or no background in Scrum. However, we have tested it with experienced participants and the results have been positive.

The two-day training has four large timeboxes in which theory and activities are imparted. The first timebox combines ice-breaking activities with core theory (i.e., Agile Manifesto and Scrum Guide). This first timebox uses traditional education mechanisms such as association and completion of sentences. The most important lesson of this timebox is the value of iterative work, inspection, and adaptation. These lessons are gamified.

The second timebox focuses on the main problems solved using Scrum. Two group activities (involving all 15 participants) and one exemplification of these problems are used as educational methods.

In the second day, the third timebox describes the contexts in which agile practices are applicable, explained, and exemplified. Moreover, estimation techniques are introduced and practiced. This estimation will be also used in the last activity of the workshop.

The final timebox is called “applying what I learned,” and it is a continuation of the estimation done in the third timebox. This last section of the workshop replicates an iterative construction of a product using a series of user stories previously defined, estimated and prioritized.

The workshop described in this paper was conducted with five different groups of 15 participants during the past two years. Feedback from participants and improvements proposed by instructors were incorporated. We only describe the final version of the workshop, but the paper also includes lessons learned from the design and grooming process.

2 Workshop Design

The workshop described in this paper was designed iteratively. From the first version of the workshop, five implementations provided feedback and improvement opportunities. At the end of each implementation, trainees evaluated the workshop, and we adapted the materials and contents accordingly.

The materials of the workshop were a handbook and a workbook. The handbook condenses all the theory taught in the workshop. There, we describe Scrum events with their respective goals and timeboxes (e.g., Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective, and Sprint Grooming).

Furthermore, Scrum Roles with their respective characteristics and responsibilities are described (e.g., Scrum Team, Scrum Master, Scrum Product Owner, Development Team, and Stakeholders), Scrum artifacts (e.g., Product Backlog, Sprint Backlog, product increment, and the Definition of Done). Finally, the handbook explains Scrum fundaments, user stories, burn-down-chart, Cynefin Framework and some useful tips.

The workbook is a tool used by the trainees in some activities during the workshop. Trainees can find the agenda for the two days, visual material, activities, instructions, and some extra pages for notes. Each trainer has their way to teach, and the trainer must guide trainees through the workbook, clear doubts and explain the goal and lesson of each activity.

During the workshop, each activity is a mix of theory and practice using the gamification as a learning method. Mandatory attendance is required to complete the training.

2.1 Collaborators

Five Certified Scrum Masters designed the workshop described in this paper. The first Scrum Master is a project manager with more than 12 years of experience. Before becoming a project manager, he was a full-time professor at a university in the department of Computer Science. He holds a Certified Scrum Master (CSM), a Certified Scrum Product Owner (CSPO), and a Certified Scrum Professional (CSP) certifications from the Scrum Alliance. Furthermore, he holds a Project Management Professional Certification (PMP).

The second Scrum Master is a senior software engineer and professional developer. He has extensive management experience and has been the lead developer of different projects for the past 20 years. He holds the CSM and CSPO certifications.

The third Scrum Master is a professional in computer science with two years of experience. He holds a CSM certification. Moreover, he has worked as in IT support for the past 10 years. The fourth Scrum Master is a researcher with three years of experience. She holds a CSM and CSPO certifications.

Finally, the fifth Scrum Master is a full-time researcher and professor at a University. He holds a CSM and CSPO certifications. Moreover, he has 5 years of experience as an agile consultor and seven years of experience as a professor.

2.2 Topics, Timeboxes and Activities

The first timebox of the day focuses on the value of iterative work, inspection, and adaptation. We started address trainee’s doubts, for that we used a Parking Lot space. The concept of a parking lot refers to a question that needs to be parked (saved) until the end of the presentation or activity.

First day, in the all trainees get together in a daily standup meeting where all the participants respond three questions: What is my name? What did I do yesterday? What are my expectations of the workshop? This exercise allows the trainer to introduce one session of Scrum and to learn about participants.

Our socialization activity is a clock. Each participant is provided with a drawing of a date clock, and they have to arrange six meetings with other participants. Each date corresponds to a coffee break or lunch.

In the second timebox, trainers explain theory including the Agile Manifesto, Scrum Roles, Scrum events, Scrum artifacts, and the value of iterative work. With all this knowledge in mind, trainees participate in the styrofoam balls scrum simulation. In this activity trainees create a circle; they try to pass the maximum number of little styrofoam balls hand-by-hand in one minute and thirty seconds. To pass a ball, each participant must drop the ball at shoulder height, and the next participant receives the ball at the height of the hip. Before participants start, they must estimate how many balls will go around the circle. After each sprint, trainees have one minute to make retrospective, evaluate the context and adapt their practices to achieve a better result. This activity is conducted in three sprints and it is a variation of the ball point game [1].

In the third timebox, trainers introduce concepts as empiricism, the complexity of group collaboration, product vision, and minimum viable product (MVP).

To exemplify the complexity of group collaboration and communication an activity called communication lines is used. In this activity, a group passes a thread between them until everyone is connected to each other. Then a group of eight performs the same activity. This exercise allows participants to understand that large groups are not able to communicate effectively. Empiricism and MVP are described using examples.

In the last timebox, trainees complete one activity where they learn the value of teamwork. In groups, they must travel an obstacle course using one marker and cardboard with threads as Fig. 2 shows. The instructions are straightforward, in silent; every trainee must hold one thread from the end, and they have three minutes for complete the track. Every time, the line drawn by the marker gets out of the track or bump an obstacle, the team must start again. This activity is a variation of the team drawer game [2].

The end of the first day is another daily standup meeting. In this case, trainees provide feedback of the day. They answer: What is your key takeaway from this day? What are you going to do with the knowledge you gained? Which impediments do you foresee to apply Scrum in your context?

The second day starts with the trainer’s answers doubts stick in the Parking Lot. Then, trainees review and update their team’s rules. Also, Cynefin is explained, and one activity is conducted (Fig. 1).

Fig. 1.
figure 1

Workshop schedule

In the Cynefin activity, participants are asked to simulate contexts. To exemplify the simple/obvious context participants are arranged in a straight line, and they are asked to raise their right hand sequentially. This exercise is a simple exercise that provides evidence of a “follow instructions” scenario. To exemplify the complicated context participants are asked to arrange themselves in order by height. In this activity, they use the practice they want possibly following “good practices”. In the complex scenario each participant is asked to triangulate their position in a room with other two participants without them knowing. We give them 5 min to try and create perfect equilateral triangles. In this exercise, they move randomly, and every movement has a repercussion in the system. The final context (chaotic) is not simulated since it would require an emergency scenario.

The morning continues with the Pareto Principle, estimation techniques, and the fallacy of multi-tasking. The fallacy of multi-tasking is explained using a dynamic activity. First, trainees in pairs are asked to sing a famous song (one word at a time intercalated) the time of this activity is recorded. Then participants are asked to play a hand game and the time is also recorded. Finally, participants are asked to count from one to ten interleaved and the time is recorded. Then these three activities are conducted simultaneously; participants have to switch from one to another when the trainer gives them a cue. When they return to a previous activity, participants have to recall their status and continue from there.

The third timebox of the second day starts with the penny game [3].

Then an activity called “Applying what I learned” is conducted. The objective of this activity is condensing estimation, prioritization, and an iterative work. The idea of the activity is simulate the creation of one Recreation Center. The trainees, in their groups, receive a set of user histories. First, they should estimate the effort required for each user history using an estimation technique. Then, they receive the priority given by the Product Owner, in this case, the trainer. They have 7 min for planning, 15 min to build the product, 4 min of review with the Product Owner, and 3 min for retrospective, this along 3 iterations. All the user histories are described in the Table 1.

Table 1. User Stories developed in the activity “Applying what I learned”.

The priority in the first iteration for the user histories is Recreation Center Name, Logo, Chromatic Palette, Slogan, Souvenir, Domain Name, Waiting Call, Restaurants Identity, Video, Agenda, Brochure, Map, and Intern Transport.

It is important to notice that user histories Isotype, Imagotype, and Restaurants Identity are not part of this iteration. It is because stories Logo and Restaurants Identity are traps. Most of the trainees make a draw in the Logo user story. That is a mistake because a Logo is an identifying symbol, not a draw. Also, the Restaurants Identity is an epic user story, and the team should try to negotiate that user story with the Product Owner.

After the first iteration, the priorities changes, also changing the scope of some teams. The new priority for the second and third iteration is Name, Logo, Chromatic Palette, Slogan, Souvenir, Domain Name, Waiting Call, Video, Agenda, Brochure, Map, Intern Transport, Italian Restaurant Identity, Japanese Restaurant Identity, Meat Restaurant Identity, Isotype and, an Imagotype. In these iterations, Product Owner add new user stories in order to help the trainees throw the activity.

That change helps trainees to understand the possibility of changing the scope of a project and how Scrum allows changes in the plans. The activity ends with a general review where a team shows their products to the rest of the trainees.

The design of this workshop is modular (i.e., it can be easily changed depending on the participant needs). Activities are designed to be developed with 15 participants and a high degree of rotation in enforced.

3 Implementation

Two implementations of 15 people each were conducted in November 2016, 15 people were trained in December 2017 and other two implementations were conducted in January 2018 (i.e., 75 participants in total). Figure 2 shows some pictures of the main activities conducted in the workshop.

Fig. 2.
figure 2

Activities performed during the workshop.

3.1 Trainers Profile

This workshop can be imparted by Certified Scrum Masters who combines different practices gathered from a series of training and day to day applications of Scrum. It is required have experience teaching and explaining the benefits of agile. Trainers use the workshop as material support. The workshop combines theoretical knowledge and practical activities to help participants interiorize the theory. So the trainer is a dynamic person who can attract the attention of the participants through the entire workshop.

3.2 Trainees Profile

Trainee’s profiles are diverse. We can say most everybody can take the workshop. Usually, our trainees’ work is related to IT departments, which includes developing software, project managers, business strategies, human resources, QA, and others. All trainees come from the same large multi-industry state-owned company.

Participants in all the implementations of the training had little or no experience with Scrum. However, some participants had background in project management.

4 Findings and Discussion

In most cases, others trainers used more than two days to teach agile framework. It is normal to try to teach Scrum in a software engineering course [4] or at least in a week [5]. Our approach was condensing all what a potential Scrum Master needs to know using a gamification technique. Even though some trainees express their desire to participate in longer workshops, we understand how difficult is for many workers participate in a workshop for two days and the impact on their company.

We applied an iterative perspective to improve. The first time we impart the workshop, we count with 30 trainees split into two groups. One month after, we made a retrospective session with all participants using the agile principle of inspection. The trainees expressed some disappoint because the workshop was too theoretical. So, we took the findings and redesigned the workshop repeating the process. The second time that we gave the workshop to another to other group of 30 trainees, the result was very dynamic but unbalanced, so it was necessary to increase the theoretical base. One more time, we made a retrospective to raise the level of the workshop.

The third and fourth time we teach the course, it was a resounding success. In this paper, we only describe the final version of the workshop, but all the learned lessons for us were valuable.

We aimed to create a workshop where the theory and practice come together using gamification as a standard base. Consequently, best strategy for us was found the correct balance to warranty the best exploitation by part of the trainees.

5 Conclusions

The workshop is proof itself of the effectiveness of iterative work. It would not have been possible to perform without the feedback of the trainees.

The use of agile frameworks, as Scrum, demands a cultural change that is not always easy to accomplish. Here is where gamification is useful to break the traditional teaching way and trying to change the culture too. Also, the type of activities requires trainees’ participation, so that minimize the resistance to learn, especially when all trainees work together.

As we said in the trainees’ profile, software engineer background is not a requirement, neither in agile nor Scrum to participate in the workshop, and this makes it possible have types of trainees enriching the discussion. When the trainees came from different areas, the debates were better and more in-depth about how to apply Scrum.

Few trainees came with expertise in agile frameworks, but their expectative were surpassed what allowed them to discover new dimensions of the agile framework. Moreover, the expectations of the trainees in the usage of Scrum in their jobs context change after they participate the workshop. We genuinely believe in this methodology of teaching, and we want to continue inspecting and adapting this workshop for the sake of improving. We have another workshop, develop with the same strategy, for the Scrum role of Product Owner, work that will be present in future investigations.