Like building a house, designing software requires a great deal of technical knowledge as well as the support of a solid foundation. But with SmartDecisions, gaining that expertise does not have to be an uphill battle.
Designed in partnership with Rick Kazman, a professor at the University of Hawaii, and Humberto Cervantes, a professor from Universidad Autónoma Metropolitana in Mexico City, the SmartDecisions game simulates the software architecture design process in a format that makes the learning process more enjoyable for students.
SmartDecisions is now a component of the flagship Software Architecture Design and Analysis course at the Software Engineering Institute (SEI) at Carnegie Mellon University, which is taught to experienced technical professionals and, occasionally, software development teams at large corporations. The game involves a board and two sets of playing cards and typically lasts about an hour and a half.
“It’s difficult to provide objective feedback when teaching design. It is challenging to determine what is right or wrong in an architecture. So we wanted to find a way to assign a score to a student’s thought process, to give them guidance,” Kazman says. Kazman is also a research scientist at SEI. “Our ultimate goal is to inspire a conversation about design, to make students consider the practice as much as the outcome. We’ve used the game as part of the SEI course several times now, and students seem very engaged. In a few cases, the noise in the room was almost deafening.”
The game is based on SEI’s Attribute-Driven Design (ADD) method, the latest version of which was developed by Cervantes and Kazman. ADD is a systematic method that simplifies and accelerates the design process for complex software systems. Game play currently explores software architecture concepts using a Big Data analytics application, but the creators plan to create new versions using more technology domains, like IoT.
“Rick and I worked on the game’s mechanics while the SoftServe team worked on building questions and challenges for game play. They chose to focus on Big Data, and students have told us the case study makes the game feel realistic,” says Cervantes. “In the real world, software architecture design takes a considerable amount of time. We wanted to simulate this process quickly while grounding academic theory in a real-world application.”
The SmartDecisions game is free and open source, and the creators welcome and appreciate feedback. Download and start playing at smartdecisionsgame.com.