Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/544414.544437acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
Article

Object orientation in CS1-CS2 by design

Published: 24 June 2002 Publication History

Abstract

This paper argues for a design driven approach to an object-oriented CS1-CS2 sequence in which object-orientation is thematic. Our approach integrates several components: (i) a strong object-oriented approach, (ii) design using UML, (iii) design patterns to manage complexity, and (iv) complex examples and projects to motivate the use of object-orientation and to motivate students by solving non-trivial problems. While this is a "programming-first" approach to CS1-CS2, it addresses several disadvantages of programming-first approaches noted in CC2001 [7]. The approach focuses on design rather than syntax, so students do not lose sight of the forest for the trees. We use (relatively speaking) large and complex examples, especially in the CS2 course, which allows us to address in a meaningful way issues of programming in the large. Because the approach is design driven and heavily object oriented, the course is not biased against novices in favor of students with prior programming experience, since CS1 students with prior programming experience typically have no design experience and only procedural programming experience.

References

[1]
Astrachan, Owen, Geoffrey Berry, Landon Cox, and Garrett Mitchener. Design Patterns: An Essential Component of CS Curricula. Proceedings of the ACM SIGCSE Symposium, 1998, 153--160.
[2]
Buck, Duane and David J. Stucki. Design Early Considered Harmful: Graduated Exposure to Complexity and Structure Based on Levels of Cognitive Development. Proceedings of the ACM SIGCSE Symposium, 2000, 75--79.
[3]
Casperson, Michael E., Michael Killing and John Rosenberg. Teaching Introductory Object-Oriented Programming with Java - Dangers, Traps and a Road Map. Workshop at the ACM SIGCSE Symposium, 2001.
[4]
Dahl, Ole-Johan and Kristen Nygaard. How Object-Oriented Programming Started. Available on-line at http://www.ifi.uio.no/kristen/FORSKNINGSDOK_MAPPE/F_00_start.html
[5]
Duvall, Robert, Matthew Chotin, Michelle Neuringer, David Goldberg and Andy van Dam. Object-Oriented Programming Chapters (draft). Available on-line at http://www.cs.brown.edu/courses/cs015/2001/Chapters/contents.html
[6]
Gamma, Erich, R. Helm, R. Johnson and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
[7]
The Joint Task Force on Computing Curricula (IEEE Computer Society and Association for Computing Machinery). Computing Curricula 2001 (final report), December 2001. Available on-line at http://www.computer.org/education/cc2001/final
[8]
Lewis, John. Myths about Object-Orientation and its Pedagogy. Proceedings of the ACM SIGCSE Symposium, 2000, 245--249.
[9]
Nguyen, Dung and Stephen Wong. OOP in Introdutory CS: Better Students through Abstraction. Fifth Workshop on Pedagogies and Tools for Assimilatng Object-Oriented Concepts, OOPSLA, 2001. Available on-line at http://exciton.cs.rice.edu/research/OOPSLA01/
[10]
Nygaard, Kristen. Invited talk given at OOPSLA 2001.
[11]
Rumbaugh, James, Ivar Jacobson and Grady Booch. The Unified Modeling Language Reference Manual, Addison-Wesley Longman, 1999.
[12]
Turner, Joseph A. and Joseph L. Zachary. Using Course-Long Programming Projects in CS2. Proceedings of the ACM SIGCSE Symposium, 1999, 43--47.

Cited By

View all
  • (2021)Visual Analogy for Understanding Polymorphism TypesProceedings of the 23rd Australasian Computing Education Conference10.1145/3441636.3442304(48-57)Online publication date: 2-Feb-2021
  • (2017)An extended series of assignments in CS2 involving a text adventure gameJournal of Computing Sciences in Colleges10.5555/3069658.306966432:6(14-23)Online publication date: 1-Jun-2017
  • (2013)An Evaluation of Knowledge Transfer from Microworld Programming to Conventional ProgrammingJournal of Educational Computing Research10.2190/EC.47.3.b47:3(251-277)Online publication date: 9-Jan-2013
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ITiCSE '02: Proceedings of the 7th annual conference on Innovation and technology in computer science education
June 2002
262 pages
ISBN:1581134991
DOI:10.1145/544414
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: 24 June 2002

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. CS1
  2. CS2
  3. UML
  4. design
  5. object-orientation
  6. pedagogical approaches

Qualifiers

  • Article

Conference

ITiCSE02
Sponsor:

Acceptance Rates

ITiCSE '02 Paper Acceptance Rate 42 of 100 submissions, 42%;
Overall Acceptance Rate 552 of 1,613 submissions, 34%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Visual Analogy for Understanding Polymorphism TypesProceedings of the 23rd Australasian Computing Education Conference10.1145/3441636.3442304(48-57)Online publication date: 2-Feb-2021
  • (2017)An extended series of assignments in CS2 involving a text adventure gameJournal of Computing Sciences in Colleges10.5555/3069658.306966432:6(14-23)Online publication date: 1-Jun-2017
  • (2013)An Evaluation of Knowledge Transfer from Microworld Programming to Conventional ProgrammingJournal of Educational Computing Research10.2190/EC.47.3.b47:3(251-277)Online publication date: 9-Jan-2013
  • (2010)Ray tracing as an object-oriented example for CS 1Journal of Computing Sciences in Colleges10.5555/1858449.185846426:1(77-84)Online publication date: 1-Oct-2010
  • (2009)Another approach for the teaching of the foundations of programming using UML and JavaProceedings of the 3rd WSEAS international conference on Computer engineering and applications10.5555/1519432.1519486(279-283)Online publication date: 10-Jan-2009
  • (2009)PatternCoderACM Transactions on Computing Education10.1145/1594399.15944019:3(1-22)Online publication date: 1-Sep-2009
  • (2008)Scaffolding for multiple assignment projects in CS1 and CS2Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications10.1145/1449814.1449890(873-876)Online publication date: 19-Oct-2008
  • (2008)Abstraction ability as an indicator of success for learning computing science?Proceedings of the Fourth international Workshop on Computing Education Research10.1145/1404520.1404523(15-26)Online publication date: 6-Sep-2008
  • (2008)An empirical study on students' ability to comprehend design patternsComputers & Education10.1016/j.compedu.2007.10.00351:3(1007-1016)Online publication date: 1-Nov-2008
  • (2007)Team-based pedagogy for CS102 using game designACM SIGGRAPH 2007 educators program10.1145/1282040.1282061(20-es)Online publication date: 5-Aug-2007
  • Show More Cited By

View Options

Get Access

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