Saturday, October 24, 2015

A Formal Lesson Plan for the Scratch Food Chain

Here is a formal lesson plan that I designed for our Grade 5 students, to create an animated representation of a food chain. I have previously published a Scratch project for a food chain: A Food Chain in the Northern Temperate ForestThe lesson plan below is intended to help the instructor introduce the project in the classroom step by step, so that the students can learn the logic involved and gain familiarity with the Scratch instruction set. Food chains are part of the Grade 5 Science Standards, and this project could easily evolve into a presentation by the students at the end of the session.

We use the Scratch for Arduino (S4A) platform at the school. Hence, using the same for this project, even though it does not involve the use of the Arduino board.


Design an interdisciplinary project that takes the students’ understanding of a food chain from their Science class and present it as an animated story.
Allow the students to gain familiarity with the Scratch software platform and apply their programming knowledge to science from the classroom.  


Using the Scratch platform, the students design a background to represent the ecosystem of their choice and sprites to represent the various components of a food chain in that ecosystem: producers, consumers and decomposers. The sprites are then programmed to depict the workings of the food chain.

Computer Science Concepts

Creating visual effects

Common Core Standards

Food Chains (NGSS Grade 5)
- Coordinate geometry - 2D planes 
- Use of Variables


Upto 2 hours - could be split into two one-hour sessions

Programming Assignment

Create an animated version of a food chain, with the following requirements:
  1. The components of the food chain shall appear on screen in the right order:  Producer → Consumer#1 → Consumer#2 → ……  → Consumer#n  → Decomposer.
  2. Each member gets consumed by the next member in the chain.
  3. Once consumed, that member shall disappear from the screen.
  4. There should be at least 3 components in your food chain.
  5. Make your presentation interesting: add animations, speech bubbles, etc.

The Lesson Plan

Part 1: 
Before the Lesson: 
Consult with the classroom teacher to make sure that the concept of food chains has been covered in the classroom. Expect this project to take up to 2 hours, depending on the number of components in the food chain. Split the project into 2 sessions, if needed. The students can possibly present their projects to the entire class at the end of the session. 

Two to three days before the programming class, ask the students to choose an ecosystem they would like to work with & a food chain in that ecosystem. They should identify the producers, consumers, decomposers, etc. in the food chain and line them up in order:  Producer → Consumer#1 → Consumer#2 → ……  → Consumer#n  → Decomposers.
Part 2: 
On the day of the programming class, ask the students to keep the above list ready. Use the attached set of slides (or make your own) to help the students understand the requirements for the program, and the basic set of instructions to use. The slides provided here use the example of a simple food chain in the ocean, with only 3 sprites. The script for each sprite is built up step by step.
Screen Shot 2015-10-17 at 7.21.19 am.png 
Let the students tag you through the initial steps, by programming on their laptops. Once they get the basic idea about the design, let the students tap into their creativity & program the rest on their own.
  1. Ask the students to open the Scratch or S4A application on the laptop.
  2. Create a new project:  Go to File →  New →  Save the Project with a name
  3. Use the scissors button on the top of the screen to delete the Arduino sprite. We shall not be using the Arduino for this project.

Part 3: 
Go through the attached slides, and let the students tag along on each step. Given below are a few pointers to accompany each slide.


Slides 1, 2, 3:
Introduce the programming assignment & the requirements.

Slides 4, 5:  
Go through the list of available backgrounds & choose the one that fits best. Check the list of available sprites to see if the components of the food chain can be found in there. If the students are not able to find the required sprites or background in the list, they can create their own.
  • Keep the number of sprites to 2 or 3 to start off with. The students can always add in more as we progress through the chain.
  • If the students would like to draw their own sprites, suggest that they draw an outline of the figure, and add in the details after going through the lecture/slides.
  • If the students would like to draw their own backgrounds, suggest that they do so after programming the sprites, as it can be a bit time consuming.
  • Point out that the color of the each Blockly instruction makes it easy to figure out which group it belongs to.

Slides 6, 7:   “Hide”, “Wait” & “Show”
Choose the sprites in the order they appear in the foodchain. We start off with the kelp, the producer. The first instruction of the script for each sprite is to keep them hidden till they are required to show up in the food chain. The students use the “hide” instruction followed by the “wait” instruction, which tells the sprite the number of seconds to stay hidden. The number of seconds to wait for each sprite will be decided as the program builds up. In the sample program, the kelp stays hidden for 1 second and then shows up on screen. The other sprites show up on the screen only when their turn in the food chain comes up.

Slide 8:   “Set size” & “Go to XY”
The size of the sprite can be set to a suitable amount via the “set size” instruction. The students can experiment with different numbers here. The position on the screen where the sprite makes its appearance can be set via the “go to x__ y__” instruction. Hover the cursor on different positions of the screen to demonstrate how the XY positions can be read off the bottom right corner of the screen. This is where the students shall get the XY coordinate values to be used throughout their program.

Slide 9:   “Say”
To make the presentation interesting, the sprites that show up on screen can say something about themselves in a speech bubble via the “say” instruction. For example, the producer can say “I make food using the sun’s energy.” Preferable to use the “say ___ for __ seconds” instruction.

Slides 10, 11:   
Now that the producer has introduced itself, it’s time for consumer#1 (the fish in our example) to show up on screen. Count the number of seconds that the producer has used up so far. That’s the amount of time consumer#1 (the fish) has to hide and wait. The number of seconds in the “wait” instruction for consumer#1 can now be set.

Slide 12:
Use the “show”, “set size” and “go to x__ y__” instructions for consumer#1 to appear on screen. Make this sprite introduce itself via the “say ___ for __ seconds” instruction.

Slide 13:   Animation time!
Make consumer#1 glide towards the producer to eat it up. Use the “glide __ seconds to x__ y__” instruction. You can make the sprite move as slowly or as quickly as you want using the number of seconds in the glide. The XY coordinates correspond to the location of the producer; it could be either a point close to the producer’s location or the exact same point, depending

Slide 14:
Make the producer disappear - it gets eaten up by consumer#1. Use the “hide” instruction again for the producer sprite. Remember that the producer needs to wait around on the screen all the time the consumer was busy making its introduction. So the wait instruction would need to be used before the “hide” here. The amount of time the producer waits before hiding = total time taken up by consumer#1 after its appearance on screen upto this point.
  • If the “wait” command seems to be a tough concept for some of the students to grasp, you can suggest that they leave the sprite on screen. An option is to place the consumer close to, but not overlapping the producer, so that both sprites can stay on screen.

Slides 15, 16:
If you have consumer#2 (the shark, in our example) lined up, now is the time to introduce that sprite. Go through similar steps for consumer#2 as we did for consumer#1. First, find out the total time that consumer#2 has to wait, before making its appearance. Next, use the “show”, “set size”, “go to x__ y__”, “say ___ for __ seconds” and “glide __ seconds to x__ y__” to make consumer#2 eat up consumer#1. A change of costumes is demonstrated in the example slides, to make the shark open and close its mouth.

Slide 17:
Consumer#1 goes into hiding at this point. Follow similar steps for each sprite till you get to the end of the food chain.


  1. Animation effects are particularly appealing to the kids to create, and so are different backgrounds within the same program. Both of these options can be explored further with this project.
  2. Students can create a program to stage all the characters of the food chain as in a play. This option could be followed especially if the “disappearance of the members as we go up the food chain” using the wait & hide instructions, is a tough concept for some to master.

No comments:

Post a Comment