In my last article of the series, I am going to talk about how to differentiate products. The product is what students are producing to show their understanding. This can be done in many ways, but mostly through formative/summative assessments and projects.
Computer science is one of the hardest subjects to assess student understanding because there are no established standardized tests (e.g. state exams). Teachers often have to come up with their own sets of questions or projects if they are not using a well-developed curriculum.
However, the lack of established standardized tests in computer science removes the pressure from administration and allows me to differentiate easily.
Firstly, I can test their knowledge in coding by providing them with a choice. This can be a simple choice between choosing different sprites or storylines on a Scratch program, or as extensive as creating and developing an app of their choosing. Providing the students with a choice for their assessments also gives them the ownership of what they will create, which increases engagement.
You can also assign summative assessments where students express what they’ve learned in a culminating project. For example, students can create a presentation of all the CS concepts they learned and provide examples of each; they can also create a poster with flowcharts that explain the algorithm of a program that they made; they can make a video live coding a project or example. As long as you are grading them on the same required coding skills and concepts, students can choose any project that they want!
For creating tiered projects, I usually put students in homogeneous groups. Then, I assign students the same project but different levels of difficulty. In my intro to coding class, I will put students in homogeneous groups of 3-4, and have the students below standards create a program that draws a square and a rectangle. For students exceeding standards, they can tackle harder shapes such as a decagon or a star. In this way, you are able to assess the same CS concept but allow students to feel successful and challenged.
Another way is to create “checkpoints” within a project. Students who are below standards can take as much time as they need to clear the first checkpoint while the other students proceed to different checkpoints. This, in a way, is creating tiered assessments.
When I am creating my own quiz or test, I assign students different versions of the test. This can be easily done on Google Form or on Coding Rooms using the policies to assign to individual students or groups of students. I pre-assign students with a designated number, and when a student enters the number in Google Form, it goes to the designated question. This will allow students to not feel singled out that they are getting an easier or harder test. On Coding Rooms, if you name the pages that same, students will never even be able to tell that they received a different page compared their peers.
If your school uses a purchased curriculum, you can provide scaffolding such as providing them with word boxes or checklists to aid students with disabilities to be successful in your classroom. In my experience, what helped them the most is more 1-on-1 support and extended time.
Whatever strategy you use, just remember to have student best interest at heart and your students will succeed!
Special Education/Computer Science high school teacher