AGILE GAMES

Logo Maze (Why We Test First)

AGILE GAMES

Logo Maze (Why We Test First)

Timing

20-30 minutes

Materials

  • 1-pack of sticky notes
  • pens for each group of 3-5 people
  • dry erase board, table, window, or wall to set up the maze

Instructions

Explain to the audience that we’re going to play a game that allows them to program a robotic turtle to navigate through a maze, as pictured below. There are four simple commands in our programming language: forward, forward until it hits a wall, right 90 degrees, and left 90 degrees. You will use the arrows as pictured as symbols in writing your program. We’ll need at least two groups of 3 – 5 people, so please pick your group.

Group Instructions

  • The picture is to-scale, with a turtle being one post-it note tall. I’m also creating the same maze out of Post-it notes here (you’ll do this as they write their code).
  • Each team must pick some programmers and an artist.
  • Artist: please draw a turtle on a Post-it note. Put your team’s name on the turtle.
  • Programmers: select and write down each of the symbols required to get the turtle pictured here to the exit at the top left of the maze. We also need someone from each group to draw a turtle on a post-it note.

Facilitator says

  • What questions do you have?
  • OK, go!
  • Once you’re finished making the maze out of post-its, ask who’s ready. Groups often need a few more minutes–announce that they can have up to five more minutes and set a timer.

Running the simulation

  • For any team that is ready, collect their turtle.
  • Once you have ALL the turtles, ask the programmers to write their team name on their program, and pass their code to another team.
  • Meanwhile, line up the turtles at the front of the maze.
  • SPOILER ALERT–Now explain the algorithm by which you’ll test the teams. Every team is responsible for giving you, the CPU, one symbol at a time from the code they have in front of them. You’ll point to a turtle and the team with the corresponding code must give you the next symbol.  Since most (or all) teams wrote with the assumption they’d be the only turtle in the environment, the turtles would crash into one another. Turtles cannot pass through one another, so if a turtle hits another turtle, the command is aborted. Execute the directions as well as any three-dimensional physical robot would under the same circumstances.

Debrief

  • What happened here?
  • Why were there so many crashes?
  • What could you change to get your robot through the maze?
  • If you could add one or two commands to the language, what would they be?
  • Does anyone want to try again? (If so, see me after class!)

Learning Points

  • There are some environmental factors you cannot predict until you test in a realistic environment
  • Testing first leads to the discovery of these issues sooner, and leads to more robust code.

Facilitator Notes

Why is this called Logo Maze? It’s inspired by the plotters that were programmed in the Logo programming language, which was one of my first programming languages.
Can I use a more complex maze? Surprisingly enough, this is complex enough. Anything tougher would distract people from the lesson.

About Tasty Cupcakes

This content was originally published on Tasty Cupcakes, a community-run website founded by Michael McCullough and Don McGreal after they presented a series of games at Agile2008 in Toronto. The site’s tagline was “fuel for invention and learning.” After 15 years at TastyCupcakes.org, the content has found a new permanent home here at Agile Alliance.

The games, techniques, and approaches presented are here to use and explore. All we ask is that you tell others about us and give us some feedback on the games themselves. All of this work is licensed under a Creative Commons Attribution 4.0 International License.

Got feedback? Join the conversation!

Explore additional Agile Games

Introduction Good workshop planning is key when facilitating workshops, training, and events. Often details of your workshop planning might be scattered across several mediums but this canvas brings it all together in a workshop template. Im…
Timing: 5 minutes plus 15-30 minutes for debriefing Materials: 2 balloons per 4 people Water (Optional) Instructions The "goal" is for teams (of 3-5 people) to compete to blow up the largest balloon. The team with the largest (unburst & tied) bal…
Timing Up to 60 minutes. Materials Room with flipchart or whiteboard, red, green, yellow, and one more color sticky notes, markers/sharpies. Instructions This approach to Retrospective is most effective when you look back at a longer period of time, …
Timing: 60-90 minutes Materials: Play-doh, rubber bands, golf balls, golf tees and rulers Instructions: I need a new product for my unique company called “Movements of a Hypnotic Nature.” You have been selected as a participant because of your skill …

Ready to join Agile Alliance?

Unlock members-only access to online learning sessions, Agile resources, annual conference discounts, and more! And when you join, you’ll be supporting our member initiatives, regional events, and global community groups.

Privacy Preference Center

IMPORTANT: We have transitioned to a new membership platform. If you have not already done so, you will need to SET UP AN ACCOUNT on the new platform to establish your user profile. Your previous login credentials will not work until you do this set up.

When you see the login screen, choose “Set up Account” and follow the prompts to create your new account. You can choose to log in using your social credentials for either Google or Linkedin (recommended), or you can set up your account using an email address.