View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Responsible Roleplaying

work in progress..


This is a small guide to constructive roleplaying with CRC cards and scenarios for student groups.

Why Roleplay?

Working with pure objects and classes can be difficult to grasp even after object-oriented language exposure because of the overaching procedural programming paradigms. Even popular object-oriented languages are after all only object-oriented, Java still has main loops and primitive types, C++ a whole host of C leftovers and complications. Alan Kay who invented object-oriented programming views smalltalk and lisp as the few big true oo languages, because yes, everything is an obect, including compiled code (interested readers check out macros in lisp and compiledMethod in smalltalk). Acting out software with CRC cards in the context of scenarios that demonstrate the use of the system provides a powerful learning aid for pure object languages and beyond in addition to claryfing and illuminating the design process. The hands on approach can be utilized early on with no knowledge of the actual implementation language and can be seen as a very abstracted form of programming.

Getting Started

A problem has been outlined and meetings arranged, almost everyone arrives and then the stragglers shows up. Ok, now where to start? Team dynamics will guide the exact ordering of the steps in early design, but there are some helpful basics. First make sure everyone is clear about the problem to be solved by working through the interpretation of the specification as a team, even though everyone may have already done this individually already. Then as a team develop an initial reasonable approach to the problem. After this brainstroming of classes, development of scenarios, and basic CRC card prep can follow and flow linearly or in parallel. The scenarios should be designed with roleplaying in mind, while a scenario could just be one long paragraph this isn't helpful for roleplay purposes. Divisions such as steps ...

Once the scenarios and CRC cards have been developed roleplaying can begin.

Rinse, Roleplay, Refactor

after roleplaying make sure to evaluate the design hopefully by working through the system on the class scale the requirements of objects to successfully complete system tasks elucidating work on problem areas can generaly tell where these are, where the action is taking place..

Getting Finished

Link to this Page