On Requirements for Programming Exercises from an E-learning Perspective
  In this work, we deal with the question of modeling programming exercises for
novices pointing to an e-learning scenario. Our purpose is to identify basic
requirements, raise some key questions and propose potential answers from a
conceptual perspective. Presented as a general picture, we hypothetically
situate our work in a general context where e-learning instructional material
needs to be adapted to form part of an introductory Computer Science (CS)
e-learning course at the CS1-level. Meant is a potential course which aims at
improving novices skills and knowledge on the essentials of programming by
using e-learning based approaches in connection (at least conceptually) with a
general host framework like Activemath (www.activemath.org). Our elaboration
covers contextual and, particularly, cognitive elements preparing the terrain
for eventual research stages in a derived project, as indicated. We concentrate
our main efforts on reasoning mechanisms about exercise complexity that can
eventually offer tool support for the task of exercise authoring. We base our
requirements analysis on our own perception of the exercise subsystem provided
by Activemath especially within the domain reasoner area. We enrich the
analysis by bringing to the discussion several relevant contextual elements
from the CS1 courses, its definition and implementation. Concerning cognitive
models and exercises, we build upon the principles of Bloom's Taxonomy as a
relatively standardized basis and use them as a framework for study and
analysis of complexity in basic programming exercises. Our analysis includes
requirements for the domain reasoner which are necessary for the exercise
analysis. We propose for such a purpose a three-layered conceptual model
considering exercise evaluation, programming and metaprogramming.
