(See background post “Manipulatives“)
When it comes to relational databases I find that almost all of my students, at some point, really struggle to understand how a database management system works. How does it look up the needed information across all those connected tables? What’s really going on under the hood?
I came up with the idea to use manipulatives. After the usual teacher centered introduction to the topic I wanted to provide a more playful, exploratory learning experience for my students. So I used a given relational database for a car pool and prepared playing cards representing several entries of the four connected tables plus some extra cards to define the table relationships.
The students got together in groups of 5. Each group was given a set of cards. The first task was to sort the cards by finding similarities (employees, rented cars, available cars, models, relationship cards) and to display the underlying data model on their desks (Fig. 1). While the groups engaged in discussing a solution I had time to go around and provide a little help where needed. Communication was easy because of the visuals on the desk. You could literally point a finger to a problem as well as point out a solution.
After each group had a working data model on their desk I told the class that they would be my database management system now and would act as the user who needed to find specific information. I asked them to answer questions like “Which car from the car pool is Mr Äckermann currently driving?”. After a short time everybody got the idea how to get this sort of information from the paper database. In the final round I had the groups challenging each other. We were simulating a digital database with laminated cardboard pieces.
Teaching relational databases is still a challenge. However, I believe that this enjoyable activity really helps my students to reach a deeper understanding. Teaching databases with manipulatives even works in my computer science teacher training courses.