Code of Aegis
Business / Non-Profit Category
By University of Houston & Tietronix Software
Description: Code of Aegis was developed for DARPA through the SBIR program. This STEM engagement game focuses on teaching computer science aptitude, critical thinking, and programming skills. By merging a graphic novel with an interactive game, students/players are scaffolded through the instruction and introduced to programming concepts and robotics programming knowledge. Usability testing during development, along with Formative and Summative testing in the classroom reinforced the learning effectiveness. The game is a multi-platform solution that is currently available for the 6–8th grade classroom.
- Engineering Design Process: Players learn about the engineering design process and use it to solve a problem. Through compelling graphic novel dialogue, players are challenged to provide the definition of each step in the process.
- Writing Narratives: Players will reinforce the learning they received on the engineering design process by learning how to write a narrative. They will write their own.
- Pseudocode: Players learn about pseudocode and are given a challenge to use pseudocode to describe a task. Through graphic novel presentation and interactive dialogue, the Aegis characters will need to program a robot to win a race. Players are given a map and instructions on how to move in order to win the race. They will need to create the pseudocode (from drag and drop blocks) based on the map and the race instructions.
- Flowcharting: Players use pseudocode from the previous level to create a flowchart for the same mission. Through graphic novel and dialogue, students will be given the definition of a flowchart and what each shape represents. Players will also learn the importance of sequence of information and how it is linked together to direction and flow of a flowchart.
- Distance, Rate, and Time Relationships; Basic Code: In this level, players program a robot to move a specific distance given a speed. Within the storyline of this level, players have their initial introduction to code. A completed flowchart and a set of code blocks are given for players to compare. They will learn the importance of commenting code and how to determine the time needed to travel a specific distance using a formula derived from d= rt.
- Finding Circumference; Applications of Circumference; Basic Code: In this level, players program a robot to move a specific distance by finding the circumference of a wheel based on its diameter, and will then using the circumference to determine how many wheel rotations a robot should perform to travel the designated distance. They will have two missions that require them to use this knowledge and will be assessed through multiple choice questions as well as by the flowcharts and code that they write.
- Programming Loops: In this level, players are introduced to coding loops. Within the storyline of this level, players are given the definition of a loop and given an example of how a loop was used to make a repetitive task easier to code. Players learn about using variables, about decision diamonds in flowcharts, and about while loops. Players are also shown how loops are used to reduce the number of flowchart symbols and the lines of coded needed to complete the mission.
- Combining Motion, Variables and Loops: In this level, players use robot movement, variables and loops as a culminating activity. Within the storyline of this level, players are given a challenge to create a flowchart and write code in less than 25 lines, using a given map. This is a culminating challenge to assess players’ skills (knowledge) of previously learned topics.
- Program Branching: In this level, players are introduced to branching. Within the storyline of the game players are given the definition of branching and will learn how it is both similar and different from creating a loop. Players are given a partially completed flowchart and, based on the mission objectives, will fill in the blank parameters in each symbol. Players will then complete the code to match the flowchart that was created.