LEGO-based Active Learning Exercises for Teaching Software Development: (Abstract Only)

LEGO is a construction toy familiar to many students. Creating software, regardless of scale, is often similar to building with tangible objects, such as houses or bridges--an analogy that is often used in the classroom. In this workshop, we will show how to use LEGO bricks as a surrogate representing the lines of code, software objects, or other artifacts in the process of constructing software systems. LEGO-based analogies and case studies enacted as hands-on exercises for student teams help develop a better understanding of the underlying concepts, while keeping students deeply engaged in the course material. This workshop is intended for faculty teaching undergraduate and graduate courses focusing on software development, software engineering, and related concepts. This workshop will also benefit other educators looking for ways to supplement their courses with engaging and playful hands-on activities aimed to strengthen the teamwork, oral communication, problem solving, and design skills of students. We will practice several hands-on LEGO-based activities during the workshop. Specific topics of these activities will include change management and object-oriented interfaces, as well as activities specific to the phases of software development. Workshop participants will learn about other LEGO-based activities that focus on a broad range of topics including requirements engineering, architectural design, and software dependability. A laptop is not required for this workshop. This work is supported in part by the National Science Foundation Awards 1611905, 1709244 and a 2015 ACM SIGCSE Special Project grant. For more information visit http://www.cs.ccsu.edu/~stan/sigcse2018/