Assignments that Meet the Needs of Exceptional Students without Disadvantaging the Average Katrin Becker Computer Science Education Group Dept. of Computer Science University of University of Calgary Calgary Calgary, Alberta, Canada Introduction Beginning students have dramatically different: Backgrounds ‹ Abilities / Strengths / Fears ‹ Interests / Talents ‹ Future directions ‹ Can We Reach Them All? University of Calgary 7/22/2008 (C) 2003 K.Becker 2 A Solution: One Assignment with Variations „ “Base Assignment” is same for all „ Requirements can allow for variation and choice. University of Calgary 7/22/2008 (C) 2003 K.Becker 3 Variation 1: Levels of Completion „ (stages) can be described in the assignment specifications. „ Decide base (acceptable) requirements ‹ What is “good enough” „ The rest are ‘embellishments’ University of Calgary 7/22/2008 (C) 2003 K.Becker 4 A-B-C Requirements (Staged Solutions) „ Allows for more complex & interesting University of Calgary problems „ Clearly set out requirements „ Gives “choice” back to students „ ‘C’-level is within the range of all „ Can supply portions of code, and invite students to replace it „ Provides a means of describing a minimal acceptable solution 7/22/2008 (C) 2003 K.Becker 5 Student Reactions: „ Few complaints about marking „ Some will choose to complete ‘C’ requirements sometimes, and “go for the ‘A’” other times „ Students complete the ‘C’-level assignment and often opt to try for the ‘B’ „ Students often end up working harder – to get the extra credit University of Calgary 7/22/2008 (C) 2003 K.Becker 6 Example : University of Calgary 7/22/2008 (C) 2003 K.Becker 7 Example: Frogger „ C Requirements The minimal passable solution will have only a single Frog that moves correctly on the screen, 2 rows of Vehicles moving in opposite directions and one Home at the top. This solution is worth a maximum mark of C+ „ B Requirements The midrange solution will have 3 Homes, 5 rows of Vehicles, and a working Frog who can move [ jumping is bonus] and ONE OF: two kinds of Critter, ---OR--- a Boulevard to rest on (with NO time limit), This solution is worth a maximum mark of B+ NOTE: having the frog ride river creatures properly (and not "slide" off) is BONUS and not part of the base requirements. „ A Requirements The best solution will have 5 Homes, 5 rows of Vehicles, one Frog, AND 5 rows of Critters all working correctly. It is worth up to an A The boulevard will have a time limit, [BONUS: and the turtles must sometimes dive.] „ The "full-function" Frogger is Bonus. It includes the girl Frog; Alligators whose mouths open, and snakes on logs and on the boulevard University of Calgary 7/22/2008 (C) 2003 K.Becker 8 Variation 2: Bonus Points „ Enhancements for all „ EXTRA to basic requirements „ Limited effect on grade „ Provides mechanism for rewarding *any* valid embellishments „ Even though a maximum of points used to affect final grade, some earn as many as they can „ It becomes like a game for some: to see how many points they can earn (prime# asst) University of Calgary 7/22/2008 (C) 2003 K.Becker 9 Bonus Points: Frogger 1. [up to 6 points] Make a girl frog. „ 2. [up to 6 points] Make the alligator's mouth open. „ 3. [up to 10 points] Include the snakes. „ 4. [up to 10 points] Multiple (5) frogs per game. [homes can be occupied by only one frog] „ 5. [2-3 points] Detect "Game Over": when Frog dead; or when Frog gets across. „ 6. [2 points] Keep score. „ 7. [2-5 points, per level] Allow different levels of difficulty (different #'s of things, different ranges, etc.) „ 8. [2 points] Set up "key bindings" so player can use the arrow keys, etc. „ 9. [4-? points] Make it Interrupt Driven „ University of Calgary 7/22/2008 (C) 2003 K.Becker 10 Challenges „ Enhancements for the brightest „ Some are post-grad level „ Ideas for students „ Shows where the current project could lead University of Calgary 7/22/2008 (C) 2003 K.Becker 11 Challenge Points: Frogger „ 1. [4-? points] Add sound. „ 2. [4-? points] Create a full GUI „ 3. [5-? points] Do it in colour „ 4. [5-? points] 3-D University of Calgary 7/22/2008 (C) 2003 K.Becker 12 Assignment Specifications ‘A’ Solution ‘B’ Solution Bonus ‘C‘ Solution Challenge University of Calgary 7/22/2008 (C) 2003 K.Becker 13 Conclusions „ Gives both instructor and student greater flexibility „ Helps to clarify goals of assignment for all (instructor; student; marker) University of Calgary 7/22/2008 (C) 2003 K.Becker 14 •Solitaire: •Calculation •Canfield •Four Seasons •Double or Quits Examples •Parsers: •Tiny Basic Interpreter •Polish Postfix Converter • Arithmetic Expression Parser • Games: • • • • • • • • Wee-English – Latin Translator Game of Life Minesweeper Battleship Asteroids! Space Invaders Centipede Frogger •Encryption: •One-Time Pad •Caesar Cypher •Cyclic Pad •Byte Reversal University of Calgary 7/22/2008 (C) 2003 K.Becker 15 Thank You. University of Calgary 7/22/2008 (C) 2003 K.Becker 16