Component-based software using RESOLVE
ACM SIGSOFT Software Engineering Notes
Client view first: an exodus from implementation-biased teaching
SIGCSE '99 The proceedings of the thirtieth SIGCSE technical symposium on Computer science education
Introduction to Computing and Algorithms
Introduction to Computing and Algorithms
Reasoning about Software-Component Behavior
ICSR-6 Proceedings of the 6th International Conerence on Software Reuse: Advances in Software Reusability
Toys are us: presenting mathematical concepts in CS1/CS2
FIE '00 Proceedings of the 30th Annual Frontiers in Education - Volume 02
Design guidelines for the lab component of objects-first CS1
SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education
Algorithms and object-oriented programming: bridging the gap
SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education
Post-graduate assessment of CS students: experience and position paper
Journal of Computing Sciences in Colleges
Teaching contract programming concepts to future software engineers
Proceedings of the 25th International Conference on Software Engineering
A multiple-intelligences approach to teaching number systems
Journal of Computing Sciences in Colleges
Components-first approaches to CS1/CS2: principles and practice
Proceedings of the 35th SIGCSE technical symposium on Computer science education
ACE '04 Proceedings of the Sixth Australasian Conference on Computing Education - Volume 30
High-School Students' Attitudes Regarding Procedural Abstraction
Education and Information Technologies
Practice what you preach: full separation of concerns in CS1/CS2
Proceedings of the 37th SIGCSE technical symposium on Computer science education
An iterative methodology for teaching object oriented concepts
Informatics in education
Applying abstraction to master complexity
Proceedings of the 2nd international workshop on The role of abstraction in software engineering
Engaging students in specification and reasoning: "hands-on" experimentation and evaluation
ITiCSE '09 Proceedings of the 14th annual ACM SIGCSE conference on Innovation and technology in computer science education
ECOOP'07 Proceedings of the 2007 conference on Object-oriented technology
Can we teach algorithm development skills?
Proceedings of the 50th Annual Southeast Regional Conference
A systematic approach to teaching abstraction and mathematical modeling
Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education
Hi-index | 0.00 |
Abstraction is one of the cornerstones of software development and is recognized as a fundamental and essential principle to be taught as early as CS1/CS2. Abstraction supposedly can enhance students' ability to reason and think. Yet we often hear complaints about the inability of CS undergraduates to do that. Do we supply students with the tools they need to reach their potential to think carefully and to reason rigorously about software behavior? Typically we do not, but as educators there are techniques we can use to help our students develop such skills starting in CS1/CS2.