Open Access. Powered by Scholars. Published by Universities.®

Education Commons

Open Access. Powered by Scholars. Published by Universities.®

Science and Mathematics Education

2011

Computer science

Articles 1 - 3 of 3

Full-Text Articles in Education

Enhancing The Cs Curriculum With With Aspect-Oriented Software Development (Aosd) And Early Experience, Konstantin Läufer, George K. Thiruvathukal, Tzilla Elrad Nov 2011

Enhancing The Cs Curriculum With With Aspect-Oriented Software Development (Aosd) And Early Experience, Konstantin Läufer, George K. Thiruvathukal, Tzilla Elrad

George K. Thiruvathukal

Aspect-oriented software development (AOSD) is evolving as an important step beyond existing software development approaches such as object-oriented development. An aspect is a module that captures a crosscutting concern, behavior that cuts across different units of abstraction in a software application; expressed as a module, such behavior can be enabled and disabled transparently and non-invasively, without changing the application code itself. Increasing industry demand for expertise in AOSD gives rise to the pedagogical challenge of covering this methodology and its foundations in the computer science curriculum. We present our curricular initiative to incorporate a novel course in AOSD in the …


The Extreme Software Development Series: An Open Curricular Framework For Applied Capstone Courses, Konstantin Läufer, George K. Thiruvathukal Nov 2011

The Extreme Software Development Series: An Open Curricular Framework For Applied Capstone Courses, Konstantin Läufer, George K. Thiruvathukal

George K. Thiruvathukal

We describe an open, flexible curricular framework for offering a collection of advanced undergraduate and graduate courses in software development. The courses offered within this framework are further unified by combining solid foundations with current technology and play the role of capstone courses in a modern software development track. Our initiative has been very successful with all stakeholders involved.


Fostering Logical Thinking In Novice Student Programmers, Kyle Wenholz Jan 2011

Fostering Logical Thinking In Novice Student Programmers, Kyle Wenholz

Summer Research

Many student programmers practice what is called tinkering (attempting to fix broken code by making small haphazard changes). Tinkering wastes time and circumvents the pedagogical purposes of programming exercises in introductory computer science courses. The tinkering process is focused on editing the code before submitting it for compilation, a process that takes code written in a high-level language for translation into machine language (something interpreted directly by the computer). Our hypothesis is that it may be possible to dissuade tinkering by introducing a delay into the compile step, where this delay will keep the student programmer from making changes to …