230 likes | 301 Views
Using Role Play for an Upper Level CS Course. Michael Leverington University of Nevada, Reno CCSC Southwestern Regional Conference 3 April 2009. Presentation Goals. Background . . . and the "why" Activity . . . using the tool Summary . . . why it works. Background.
E N D
Using Role Play for an Upper Level CS Course Michael Leverington University of Nevada, Reno CCSC Southwestern Regional Conference 3 April 2009
Presentation Goals • Background . . . and the "why" • Activity . . . using the tool • Summary . . . why it works
Background • Abstraction is difficult to teach • students not developmentally ready • Mckinnon, Renner (1971)
Background • Abstraction is difficult to teach • We attempt to climb Bloom's ladder (Krathwohl, Bloom, Masia, 1964): • knowledge • understanding • application • analysis • synthesis • evaluation
Background • Abstraction is difficult to teach • Vygotsky says to put learning within reach (Davydov, Kerr, 1995) • "Zone of Proximal Development"
Background • Abstraction is difficult to teach • Vygotsky says to put learning within reach (Davydov, Kerr, 1995) • "Zone of Proximal Development"
Background • Abstraction is difficult to teach • Cowan (and many others) note that we are limited to remembering a limited number of "chunks" of information (Cowan, 2001)
The Activity - Making it Real • Students are engaged: • The learning is concrete, but can be extended • Students are engaged
The Activity - Making it Real • Students are engaged: • The learning is concrete, but can be extended • Students are engaged • every minute • even students who are not up front . . . yet
The Activity - Making it Real • Students are engaged: • The learning is concrete, but can be extended • Students are engaged • every minute • even students who are not up front . . . yet • Students have to think • sometimes metacognitively (Bransford, Brown, Cocking, 1999)
The Activity - Making it Real • Implemented for simple forking • Implemented for Concurrency and Synchronization • much tighter script • Implemented for I/O devices • incorporates whole computer architecture • "object-oriented" role play
The Activity - Simple Forking • The code, to start with:
The Activity - Simple Forking • printf( "Process begins\n" ); • OS person calls randomly selected student to board • Student's random number becomes her/his PID • Student implements print action
The Activity - Simple Forking • pid1 = fork(); • Student implements fork, OS person calls new random student to board • Calling student gets PID value; called student gets zero (0) • Both students place their "pid1" variable values on the board
The Activity - Simple Forking • printf( "One fork completed\n" ) • OS person calls on first student to act, then second student • each prints his/her statement through OS person to "I/O" person on board
The Activity - Simple Forking • pid2 = fork(); • OS person calls on first student to act • First student calls OS to create new process; OS calls new random student to board • Both students write down their "pid2" values
The Activity - Simple Forking • pid2 = fork(); • OS person calls on second student to act • Second student calls OS to create new process; OS calls new random student to board • Both students write down their "pid2" values
The Activity - Simple Forking • printf( "Second fork completed" ); • OS person calls on each student to act • Each student prints to "I/O" person as s/he is prompted by the OS
Developing Abstraction • Students are given pieces of the mental model "puzzle" one at a time, but are expected to build the model as the role-play progresses
Teaching on Bloom's "Ladder" • Students have acquired the basic knowledge through reading and lecture • Students are now required to • process the factual knowledge (i.e., understand it) • apply the knowledge to the situation • analyze and synthesize new actions they have not seen before
Teaching in Vygotsky's "Zone" • Steps of the process are incremental • No single step moves too far forward in the direction of the content to be learned - but we do get through the whole process in one class time
Teaching with Cowan's Limits • For better or worse, the role-play moves somewhat slowly • Students have time to process the individual activities and begin to develop a mental model, or organized "structure" of the actions • The mental model will become an abstraction of its own as the student processes it
Using Role Play for an Upper Level CS Course CCSC SW - '09 Questions Invited