18.01.2013 Views

Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...

Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...

Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!