Course Level
CS0
CS1
Knowledge Unit
Fundamental Programming Concepts
Collection Item Type
Assignment
Synopsis

Students will be required to clearly describe the functions of an ordinary object they may use daily, as if they were the inventor of the object. This exercise will allow students to practice problem decomposition, abstraction, algorithmic thinking, and evaluation; as well as, modular programming and encapsulation. To encourage practice, this exercise fosters creativity; asking students to look at the objects in new ways, such as examining the object’s environment and considering its usage. Students work together to develop teamwork skills.

This exercise was developed as part of the NSF-funded Computational Creativity project at the University of Nebraska-Lincoln.

Recommendations

Some things to consider:

  • Assign this exercise at the beginning of the semester when teaching abstraction, modularity, and functions. 
  • It is also good to use this as the first exercise in our series of Computational Creativity Exercises as this is one of the least demanding exercises, and could serve as an icebreaker to get team members acquainted. 
  • Encourage students to provide diagrams to help describe their everyday object.
  • Remind students to describe an everyday object along two key aspects: (1) its characteristic physical attributes, and (2) its definitive functionality. These two go hand-in-hand. Consider, for example, if the everyday object is "a chair." Its functionality could be described as "something for a person to sit on." But one can also sit on a coffee table. To distinguish a chair, you also need to describe the accompanying characteristic physical attributes, e.g., it has a back.

For more information on how to implement Computational Creativity exercises, check out the authors' Teaching paper in this collection.

Engagement Highlights

This exercise is un-plugged: students are not required to do any programming. Through our lightbulbs and reflection and analysis questions, the exercise gently instructs students on content Meaningful and Relevant to CS (e.g., problem decomposition) as well as makes Interdisciplinary Connections. Students are required to work collaboratively in teams. The exercise’s use of wiki platform for collaborative writing and forum discussions, facilitates teamwork and student to student interaction inside and outside of the classroom.  Each team is allowed to choose from a list of everyday objects promoting student choice and fostering creativity.  The exercise is grounded on active learning, with open-ended activities and questions for students to collaborate on.

Computer Science Details

Programming Language
None

Material Format and Licensing Information

Creative Commons License
CC BY-NC-SA