Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...
Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...
Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
3.1.1 Greenfoot as a framework for designing<br />
learning environments<br />
The idea <strong>of</strong> using Greenfoot for the project course arose<br />
from the fact that Greenfoot is not just the programming environment<br />
itself but features an easy-to-use Java API for the<br />
development <strong>of</strong> 2D-graphical games and simulations. Since<br />
the Greenfoot framework is based on Java, it facilitates the<br />
development <strong>of</strong> quite complex scenarios: “While it is possible<br />
to create simple games quickly and easily in Greenfoot, it<br />
is equally possible to build highly sophisticated simulations<br />
<strong>of</strong> complex systems [...]” (Kölling [27], p. 2).<br />
Thus Greenfoot is, in principle, well suited to provide both<br />
an introductory development environment and meaningful<br />
contexts. Henriksen and Kölling suggest that Greenfoot<br />
would open new possibilities for course design because it allows<br />
for using multiple scenarios <strong>of</strong> varied complexity and<br />
from different application areas [16]. Moreover scenarios<br />
can, in principle, be adapted to different learning theories<br />
and to different learning objectives related to both object<br />
orientation and other informatical issues beyond programming.<br />
These new possibilities are promising. But obviously the<br />
freedom to develop and adapt scenarios, or maybe even just<br />
to select them to match specific course objectives, involves<br />
additional time and effort for course preparation (figure 1).<br />
Traditional microworlds Greenfoot<br />
Implement framework<br />
(with fixed scenario)<br />
Design exercise<br />
Solve exercise<br />
Framework<br />
implementor<br />
Teacher<br />
Student<br />
Implement framework<br />
Design scenario<br />
Design exercise<br />
Solve exercise<br />
Framework<br />
implementor<br />
Student<br />
Teacher<br />
Figure 1: Roles in creation and use <strong>of</strong> traditional<br />
microworlds and Greenfoot scenarios, according to<br />
Henriksen and Kölling [16]. Greenfoot scenarios –<br />
games and simulations – can be shared in the Greenfoot<br />
gallery or maybe along with some ‘nifty assignments’<br />
[11] in the Greenroom. (Adapted from [16])<br />
Our project course aimed for fathoming the possibilities<br />
provided by the Greenfoot framework, and the limitations.<br />
In consi<strong>der</strong>ation <strong>of</strong> Nygaard’s advice that teaching objectorientation<br />
must start with a “sufficiently complex example”<br />
[30], we focused on developing scenarios that were conspicuously<br />
more complex than conventional microworlds. The<br />
challenge was to design these complex scenarios in such a<br />
way that they would fit well into the framework and at the<br />
same time match the classroom requirements so as to arrange<br />
learning environments around them.<br />
While Greenfoot as an IDE is aimed at young students<br />
[43], for advanced students it’s well-designed API gives a<br />
good and concise example <strong>of</strong> an object-oriented framework.<br />
In developing against the Greenfoot framework (and yet using<br />
a pr<strong>of</strong>essional development environment) our Informatics<br />
students learn how to elegantly handle and extend a given<br />
framework.<br />
113<br />
3.1.2 S<strong>of</strong>tware development as decontextualization<br />
and recontextualization<br />
Our department has a strong tradition in questioning the<br />
“separability <strong>of</strong> production from the use <strong>of</strong> products in social<br />
contexts” ([14], p. 49), that is associated with e. g. Floyd<br />
and colleagues [12, 14], and that has been influenced by<br />
the so-called Scandinavian Approach [13]. Typically, when<br />
our students enroll for the project course they are already<br />
acquainted with the ideas <strong>of</strong> agility [2] and the perspective<br />
on s<strong>of</strong>tware development as an evolutionary process that<br />
intertwines s<strong>of</strong>tware production, embedment and use.<br />
Therefore another starting point for the development <strong>of</strong><br />
our process model is our un<strong>der</strong>standing <strong>of</strong> s<strong>of</strong>tware development<br />
as a design process and a social activity incorporating<br />
alternate decontextualization and recontextualization<br />
activities. Instead <strong>of</strong> bringing up Dijkstra’s ‘firewall’ between<br />
the realm <strong>of</strong> the ‘correctness problem’ and the realm<br />
<strong>of</strong> the ‘pleasantness problem’ [9], the dialectic <strong>of</strong> decontextualization<br />
and recontextualization emphasizes that s<strong>of</strong>tware<br />
is situated in human contexts.<br />
Decontextualization refers to the analysis and translation<br />
<strong>of</strong> contextualized meaning and ‘situated action’ [38] into<br />
models, algorithms, programs and other computational artifacts.<br />
On the other hand recontextualization is the transfer<br />
and embedment <strong>of</strong> formalized decontextualized activities,<br />
programs etc. into a human context and results in transforming<br />
it. Figure 2 illustrates this ‘socio-technical core’ on<br />
the basis <strong>of</strong> Rolf and colleagues [25, 33, 44].<br />
Along with the ‘roles in creation and use <strong>of</strong> Greenfoot<br />
scenarios’ shown in figure 1, we adopted this model as a<br />
central pattern for the design <strong>of</strong> our process model.<br />
Context<br />
Recontextualization<br />
Decontextualization<br />
Artifacts<br />
Figure 2: The ‘socio-technical core’ (cf. [25, 33, 44])<br />
<strong>of</strong> alternate decontextualization and recontextualization<br />
processes in s<strong>of</strong>tware development activities<br />
serves us as a starting point and as a pattern for our<br />
model design.<br />
3.2 Phase 1: First project course<br />
The outline <strong>of</strong> our first project course <strong>of</strong>fered in winter<br />
2009/10 can be consi<strong>der</strong>ed as our first prototype process<br />
model. Our course <strong>of</strong> action featured many aspects we later<br />
elaborated in our model. A central activity was developing<br />
computational artifacts like models, Greenfoot simulations<br />
and other programs and documents that would be employed<br />
as learning equipment in the classroom context <strong>of</strong> a school<br />
project. But we also gave attention on theoretical and transdisciplinary<br />
foundations like learning styles, gen<strong>der</strong> and diversity<br />
issues [32].<br />
The most important result that emerged from this first<br />
project course was a terminology related to our course setting.<br />
In contrast to other s<strong>of</strong>tware development projects in<br />
our project the context that was to be analyzed <strong>of</strong>ten was not