The popular video game Minecraft is helping Maryville software development students to approximate in-person learning in a virtual world.
The popular video game Minecraft is helping Maryville software development students to approximate in-person learning in a virtual world.
Mike Lavella, adjunct professor of management information systems, has been teaching Agile Methodology online for two years. A key component of the agile approach is face-to-face collaboration.
“Obviously, in an online classroom, that’s a challenge,” Lavella said. To foster the feeling of an up-close experience, students meet up in Minecraft, a video game in which players use building blocks to create structures. “It just makes sense; it’s a good fit,” Lavella said.
Agile methodology is an iterative process, or one that repeats a sequence of operations. Using agile methodology, software developers divide bigger jobs into smaller tasks. “I can compare it to the Ford production line, which was used to help increase the efficiency of making automobiles,” Lavella said.
Tech giants Microsoft and Google use agile methodology, which Lavella says has many advantages over the older “waterfall” model. Through the waterfall model, software developers build applications with no client feedback for many months. Because stakeholders weigh in so late in the process, making adjustments can be difficult. But with the agile approach, developers work in two-week cycles, also known as sprints, soliciting input between each one. “If there are any changes needed, they can be adapted very easily,” Lavella said. “This can greatly reduce the amount of time it takes
to complete a successful product.”
In keeping with the agile process, Lavella’s class begins with a discussion of “user stories.” These stories include a specific goal such as “I want to exempt certain folders from backup so my backup drive isn’t filled with things I don’t need saved.” The class divides into four- or five-person teams to shepherd different user stories through four processes: design, development, testing and evaluation.
Minecraft comes into play during the last few weeks of class when students participate in a final, more practical project such as designing an office building or swimming pool. Teams define the tasks required for their projects and then come together in Minecraft to construct them in a three-dimensional space. “This is intended to be a fun team-building exercise where students can apply agile-based methodologies while collaborating within a virtual world,” Lavella said.
Lavella is a full-time software developer with PSI, a testing technology firm. He uses agile methodologies in his work and brings that knowledge into his classroom. In 2013, he learned agile on the job when his former employer, PNC Bank, switched from waterfall.
Maryville University prides itself on hiring instructors with real-world, professional experience, according to Lavella. “Students enjoy learning how companies manage their software development processes utilizing the agile methodology,” Lavella said. “This hands-on learning helps them be prepared to enter the field after graduation.”
Some of Lavella’s students already work in this professional arena using agile whereas others encounter it for the first time in his class. His students also vary greatly in their familiarity with Minecraft. This diversity of experience dovetails nicely with a core tenet of agile methodology in which more experienced developers help others become better acquainted with a concept. “So that’s really cool,” Lavella said.
When Lavella began teaching the Agile Methodology class, the previous instructor had already incorporated Minecraft into the curriculum. At the time, Lavella barely knew what it was. “My only other exposure to the game was that my son used to play it when he was a little younger,” Lavella said.
But Lavella was quickly sold on the idea of using Minecraft and believes the concept is unusual in teaching the agile process. “It’s really a fun and interactive way for students to engage with each other,” Lavella said.