Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/1094855.1094973acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
Article

Improving CRC-card role-play with role-play diagrams

Published: 16 October 2005 Publication History

Abstract

CRC-cards are a lightweight approach to collaborative object-oriented modeling. They have been adopted by many educators and trainers to teach early object-oriented design. Reports in the literature are generally positive. So is our own experience. However, over the years, we have noticed many subtle problems and issues that have largely gone unnoticed in the literature.In this paper, we discuss the problems and issues we experienced when teaching CRC-cards to novices. Two major sources of problems can be traced back to the CRC-card role-play. One is the usage of CRC-cards as substitutes for actual objects during the scenario role-play and the other the difficulty to document or trace the scenario role-play ``on the fly". We propose a new type of diagram to support the role-play activities and to overcome these problems. Our experience so far is quite positive. Novices have fewer problems with role-play activities when using these diagrams. Teaching and learning the new type of diagram adds only little overhead to the overall CRC-approach.We also provide general guidelines for CRC-card usage. Although our improvements are aimed at novices, we believe that the proposed diagram is useful even for professional software development.

References

[1]
S. K. Andrianoff and D. B. Levine. Role playing in an object-oriented world. In Proceedings SIGCSE'02, pages 121--125, 2002.
[2]
K. Beck. CRC: Finding objects the easy way. Object Magazine, 3(4):42--44, 1993.
[3]
K. Beck and W. Cunningham. A laboratory for teaching object-oriented thinking. In Proceedings OOPSLA'89, pages 1--6, 1989.
[4]
D. Bellin and S. S. Simone. The CRC Card Book. Addison-Wesley, Reading, MA, 1997.
[5]
R. Biddle, J. Noble, and E. Tempero. Reflections on CRC cards and OO design. In Proceedings Tools Pacific 2002, pages 201--205, 2002.
[6]
G. Booch. Object-Oriented Analysis and Design with Applications, 2nd edition. Addison-Wesley, Reading, MA, 1994.
[7]
G. Booch, J. Rumbaugh, and I. Jacobson. The Unified Modeling Language User Guide. Addison-Wesley, Reading, MA, 1999.
[8]
J. Börstler. Object-oriented analysis and design through scenario role-play. Technical Report UMINF-04.04, Dept. of Computing Science, Umeå University, Umeå, Sweden, 2004.
[9]
J. Börstler, T. Johansson, and M. Nordström. Introducing oo concepts with CRC cards and Bluej-a case study. In Proceedings FIE'02, pages T2G--1--T2G--6, 2002.
[10]
M. Clancey. Misconceptions and attitudes that infere with learning to program. In S. Fincher and M. Petre, editors, Computer Science Education Research, pages 85--100. Taylor & Francis, Lisse, The Netherlands, 2004.
[11]
J. Coplien. Experience with CRC cards in AT&T. C++ Report, 3(8):1,4--6, 1991.
[12]
A. E. Fleury. Programming in Java: Student-constructed rules. In Proceedings SIGCSE'00, pages 197--201, 2000.
[13]
M. Fowler. UML Distilled, 3rd edition. Addison-Wesley, Boston, MA, 2004.
[14]
K. Go and J. M. Carroll. The blind men and the elephant: Views of scenario-based system design. Interactions, 11(6):44--53, Nov-Dec 2004.
[15]
K. A. Gray, M. Guzdial, and S. Rugaber. Extending CRC cards into a complete design process. Technical report, College of Computing, Georgia Institute of Technology, Atlanta, GA, 2002. http://www.cc.gatech.edu/ectropic/papers/.
[16]
S. Holland, R. Griffiths, and M. Woodman. Avoiding object misconceptions. In Proceedings SIGCSE'97, pages 131--134, 1997.
[17]
L. Hvam, J. Riis, and B. L. Hansen. CRC cards for product modelling. Computers in Industry, 50(1):57--70, Jan 2003.
[18]
M. C. Otero and J. J. Dolado. An initial experimental assessment of the dynamic modelling in uml. Empirical Software Engineering, 7(1):27--47, 2002.
[19]
A. J. Riel. Object-Oriented Design Heuristics. Addison-Wesley, Reading, MA, 1996.
[20]
C. Schulte, J. Magenheim, J. Niere, and W. Schäfer. Thinking in objects and their collaboration: Introducing object-oriented technology. Computer Science Education, 13(4):269--288, 2003.
[21]
M. Teif and O. Hazzan. Junior high school students' perceptions of object oriented concepts. In 8th Workshop on Pedagogies and Tools for the Teaching and Learning of Object Oriented Concepts, 2004. http://www.cs.umu.se/~jubo/Meetings/ECOOP04/Submissions/TeifHazzan.pdf.
[22]
C. Urquhart. Bridging information requirements and information needs assessment: Do scenarios and vignettes provide a link? Information Research, 6(2):Paper 102, 2001.
[23]
D. West. Object Thinking. Microsoft Press, Redmond, WA, 2004.
[24]
N. Wilkinson. Using CRC Cards, An Informal Approach to Object-Oriented Development. SIGS, New York, NY, 1995.
[25]
N. Wilkinson. The role of informal techniques. Journal of Object-Oriented Programming, 9(6):28--32, 1996.
[26]
R. Wirfs-Brock and A. McKean. Object Design--Roles, Responsibilities, and Collaborations. Addison-Wesley, Boston, MA, 2003.
[27]
R. Wirfs-Brock, B. Wilkerson, and L. Wiener. Designing Object-Oriented Software. Prentice-Hall, Englewood Cliffs, NJ, 1990.
[28]
J. E. Zull. The Art of Changing the Brain. Stylus Publishing, Sterling, VA, 2002.

Cited By

View all
  • (2024)Role-Playing of Misconceptions in Teacher Training: Enhancing Pre-service Teachers’ Understanding of Students’ Programming ProcessesInformatics in Schools. Innovative Approaches to Computer Science Teaching and Learning10.1007/978-3-031-73474-8_14(180-193)Online publication date: 13-Oct-2024
  • (2018)How to improve the understanding of roles in modelingProceedings of the 21st ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3270112.3270131(114-121)Online publication date: 14-Oct-2018
  • (2017)Use of role-play and gamification in a software project course2017 IEEE Frontiers in Education Conference (FIE)10.1109/FIE.2017.8190501(1-5)Online publication date: Oct-2017
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
OOPSLA '05: Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
October 2005
406 pages
ISBN:1595931937
DOI:10.1145/1094855
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 16 October 2005

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. introductory programming
  2. scenario role-play

Qualifiers

  • Article

Conference

OOPSLA05
Sponsor:

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)13
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Role-Playing of Misconceptions in Teacher Training: Enhancing Pre-service Teachers’ Understanding of Students’ Programming ProcessesInformatics in Schools. Innovative Approaches to Computer Science Teaching and Learning10.1007/978-3-031-73474-8_14(180-193)Online publication date: 13-Oct-2024
  • (2018)How to improve the understanding of roles in modelingProceedings of the 21st ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3270112.3270131(114-121)Online publication date: 14-Oct-2018
  • (2017)Use of role-play and gamification in a software project course2017 IEEE Frontiers in Education Conference (FIE)10.1109/FIE.2017.8190501(1-5)Online publication date: Oct-2017
  • (2016)Leveraging role play to explore software and game development process2016 IEEE Frontiers in Education Conference (FIE)10.1109/FIE.2016.7757685(1-5)Online publication date: Oct-2016
  • (2016)Uncovering difficulties in learning for the intermediate programmer2016 IEEE Frontiers in Education Conference (FIE)10.1109/FIE.2016.7757446(1-8)Online publication date: Oct-2016
  • (2016)Splat! er, shmup? A postmortem on a capstone production experience2016 IEEE Frontiers in Education Conference (FIE)10.1109/FIE.2016.7757399(1-9)Online publication date: Oct-2016
  • (2014)Are smartphones better than CRC cards?Proceedings of the 29th Annual ACM Symposium on Applied Computing10.1145/2554850.2554852(987-994)Online publication date: 24-Mar-2014
  • (2013)Exploring the Educational Benefits of Introducing Aspect-Oriented Programming Into a Programming CourseIEEE Transactions on Education10.1109/TE.2012.220911956:2(217-226)Online publication date: 1-May-2013
  • (2013)Teaching object-orientation with smartphones as digital CRC cards2013 26th International Conference on Software Engineering Education and Training (CSEE&T)10.1109/CSEET.2013.6595240(89-98)Online publication date: May-2013
  • (2012)Teaching software modeling in computing curriculaProceedings of the final reports on Innovation and technology in computer science education 2012 working groups10.1145/2426636.2426640(39-50)Online publication date: 3-Jul-2012
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media