Het leren ontwerpen van hogere orde e-learning omgevingen

Een nieuwe didactische aanpak in educatieve software engineering

Door Rik Min en Italo De Diana
Universiteit Twente, P.O.Box 217, 7500 AE Enschede
min@edte.utwente.nl and diana@edte.utwente.nl

Gepubliceerd in OnderwijsInnovatie - 5e jaargang, nummer 1, Maart 2003

Key-words: educatieve software, e-learning omgevingen, hogere orde websites, hogere orde courseware, dynamische web-pagina's, software engineering, elementen, componenten, scripts, applets en didactisch aanpak.

Introductie

De Universiteit Twente heeft al heel lang een goede reputatie op het gebied van educatieve software engineering, web-based courseware en problem-based leer-omgevingen [5] [6]. Vijf jaar geleden besloot de faculteit Toegepaste Onderwijskunde alleen nog maar met web-technologie verder te gaan en te stoppen met onderwijs over educatieve software ontwikkeling gebaseerd op Pascal, HyperCard, C++, Visual Basic en AuthorWare. Hierdoor waren de docenten - voor hun onderwijs en de doelstelling daarvan - gedwongen een nieuwe opzet van hun vakken te zoeken en een nieuwe samenhang van het curriculum te vinden. De docenten zijn uitgekomen op een serie top-down-georienteerde vakken en een serie methoden en technieken-georienteerde vakken. Bij de eerste serie vakken zijn auteurssystemen de 'drager' van de bijbehorende practicum; in de tweede serie vakken is JavaScript de drager van de practicumopdrachten. Daarbij maken studenten gebruik van speciaal ontworpen applets en libraries zodanig dat alle web-technieken de revue kunnen passeren. Het docenten-team van de faculteit heeft hiervoor in de periode 1998 - 2001 - samen met derden - een geheel nieuw didactisch concept en een bijpassend curriculum ontwikkeld en uitgetest [2] [3]. In dit artikel willen we onze oplossingen toelichten en van harte aan andere instituten aanbevelen.

Probleemstelling

Goed onderwijs op het gebied van het leren ontwerpen en daadwerkelijk realiseren van educatieve software, kan op veel verschillende manieren. Wij hebben - hier - speciaal een manier gezocht en gevonden die aansluit op wat de markt van onze afgestudeerden wil. Als een faculteit een goede basis wil leggen bij studenten en ze inzicht wil geven in de meest belangrijke vraagstukken, zoals die voorkomen bij het ontwerpen en ontwikkelen van educatieve multimediale software, dan moeten studenten minimaal in het verplichte deel van hun studie met een aantal verschillende ontwikkelmethoden kennis hebben gemaakt. Eén ontwikkelmethode volstaat dan niet. Eerder kunnen studenten ook niet objectief genoeg beslissen bij hun keuze in hun specialisatie, in het laatste jaar van hun studie, bij het afstuderen.

Probleem 1: Top-down of bottom-up
Ons eerste probleem was dat we zowel het top-down leren (door te denken) als het bottom-up leren (door te doen) belangrijk vinden. In ons curriculum is mede daarom, vanaf het begin, een belangrijk onderscheid gemaakt tussen top-down-vakken en bottom-up-vakken, d.w.z. tussen, zoals wij dat noemen, 'ontwerp'-vakken en 'methoden en technieken'-vakken. Wij hebben veel energie gestoken in dit onderscheid en veel gedaan om ons management en onze studenten van het nut en de didactische voordelen te overtuigen. Zie figuur 1. Dit didactisch en onderwijskundig zo belangrijke onderscheid speelt een prominente rol in ons totale didactisch concept van de vijf hierbij betrokken vakken.

Methoden en techniekenvakken vergroten de horizon van de student door de daar opgedane inzichten; terwijl de ontwerpvakken de belangrijke en noodzakelijke methodologische en theoretische ervaringen geven. In beide soorten vakken is de samenwerking tussen de studenten onderling en binnen de groepen heel anders. Als er een juiste balans tussen deze twee soorten vakken is, zal er - in de loop van een trimester - een juiste vermeerdering van kennis en inzicht zijn, waarbij bij het ene vak de theoretische kaders worden aangescherpt, terwijl bij het andere vak aan de hand van steeds in moeilijkheid opklimmende casussen het praktisch inzicht en hun probleem oplossend vermogen wordt getoetst.


Figuur 1: Top down versus bottom up. Bij ontwerpen moet je top-down leren denken. Wil je veel kennis van methoden en technieken krijgen, dan moet je op zijn tijd bottom up leren kijken.

Het probleem dat het docententeam begin 1998 had, was hoe je een perfect curriculum in onze faculteit der Toegepaste Onderwijskunde moet zien te krijgen en waarbij, in een serie van vier vakken, met bijbehorend practicum, elk van ongeveer 3 SP (netto gesproken is elke SP een volle studieweek), gedurende een periode van drie studiejaren, studenten de meeste ervaringen met moderne web-technologie kunt laten opdoen. Niet dat we pretenderen onze studenten tot educatieve software professionals op te leiden; daar is geen tijd en plaats (meer) voor in de meeste universitaire curricula; maar dat ze op dit gebied goed beslagen ten ijs komen om met een beetje extra training, on the job, later, in multimediale ontwikkelingsprojecten, in teamverband, uitgesproken goed te kunnen functioneren.

Probleem 2: welke tools; welke taal; welke volgorde?
Ons tweede probleem was de keuze van de tools en/of de talen; en de volgorde van aanbieding. In een goed curriculum is een goede volgorde van leermomenten essentieel. Om te beginnen zijn er in de wereld van het ontwerpen en ontwikkelen van multimediale educatieve software drie fundamenteel verschillende methoden om je ontwerp-doelen te kunnen realiseren, t.w.

Elk van deze methode leidt tot bepaalde typen tools. Alle tools aanbieden in één vak kan niet. Elke methode en elke soort tool dient in een afzonderlijk vak ondergebracht te worden. Met de auteurssystemen kun je in het algemeen het snelste en het meest makkelijk gewone courseware en gewone websites maken. Hoewel er aan deze methode ook nadelen verbonden zijn. Hogere programmeer-talen zijn van essentieel belang bij educatieve simulaties, drill-programma's en programma's waarbij een bepaalde mate van interne intelligentie van belang is. Auteurstalen staan tussen tools en hogere programmeertalen in. Met echte auteurstalen wordt momenteel niet veel meer ontwikkeld, behalve als je het woord auteurstaal wat ruimer neemt, dan valt Html in deze categorie. Tot de auteurssystemen reken we momenteel 'FrontPage', 'NetObjects Fusion' en 'DreamWeaver'; tot de hogere programmeer-talen rekenen we 'Java', 'JavaScript', 'DHTML' en 'ActionScript'; en tot de auteurstalen rekenen we voor ons gemak 'Html'. Hoewel Html door velen slechts als opmaaktaal wordt gezien, vinden wij dat kennis hiervan onontbeerlijk is.

Onze probleemstelling laat zich het best omschrijven als "welke volgorde moet je hierbij kiezen?" en uiteindelijk: "hoe moet je een curriculum inrichten om studenten inzicht te kunnen verschaffen in de problemen die voorkomen bij het ontwerpen en ontwikkelen van educatieve software?".

Probleem 3: JavaScript te combineren met losse Java-applets?
Ons derde probleem was hoe we de overgang van gewone statische naar meer dynamische websites moesten maken. Met Html kun je geen dynamische sites en geen hogere orde courseware maken. Wij wilden weten wat het beste aansloot bij de kennis van Html die studenten al hebben als ze op de universiteit in het eerste jaar binnen komen en als ze de twee kernvakken die we hier beschrijven uiteindelijk gaan doen. Html is de basis van alles met betrekking tot websites en moderne courseware. Web-tools zijn niet te begrijpen als je Html niet begrijpt. Maar Html is niet voldoende voor het kunnen ontwerpen en realiseren van educatieve software producten. Met Html kun je bijvoorbeeld niet rekenen en met JavaScript kun je bijvoorbeeld niet tekenen; laat staan interactieve animaties maken. Daar zit dus een probleem als je 'slimme' en/of 'hogere orde' websites wilt ontwikkelen. Dan is kennis van JavaScript, DHTML of Java of een slimme combinatie daarvan essentieel.

Om toch ons hoge, onderwijskundige doel te bereiken, hebben we ervoor gekozen ons te richten op twee talen: Html en JavaScript; en niet te kiezen voor Java. Vanuit deze twee taal-gedachte kunnen we dan Java-applets gebruiken voor verdere begripsvorming aangaande moderne web-technologieën. Je kunt op deze wijze allerlei goede functionaliteit bewerkstelligen en tevens voor een kennismaking met de kracht van Java zorgen. Daarom hebben wij, speciaal voor onze nieuwe vakken, een library ontwikkeld: 'WebLib'. In die library bevinden zich 10 standaard objecten waar studenten uit kunnen kiezen. De library bevat een serie eenvoudige applets oplopend tot complexe applets met complete simulaties. Deze applets kunnen statisch zowel als dynamisch worden aangestuurd vanuit Html zowel als JavaScript. De student kan vanuit de html-code en de JavaScript-code alle functionaliteit aanbrengen die hij in zijn werkstuk maar wil: rekenen, tekenen, bewegingen, intelligente animaties en grafische presentaties zoals nodig bij model-driven simulaties. Websites kunnen op deze manier vrij eenvoudig dynamisch worden gemaakt en programmeer-technisch volkomen didactisch verantwoord, zonder dat men met Java en allerlei compilers aan de slag hoeft.
Eenvoudige multimediale sites uit de P-fase kunnen betrekkelijk eenvoudig stap voor stap worden uitgebouwd tot - wat wij noemen - hogere orde websites en/of hogere orde courseware.
Studenten leren een probleem te leggen waar het hoort: in de html-code, in een JavaScript-script of bij losse Java-applets. Met deze methode, van losse Java-applets in combinatie met JavaScript, kunnen we onze studenten precies trainen in het ontwerpen; en kunnen ze naadloos overgaan van de ene vorm van werken naar de andere vorm van werken; zonder dat ze twee verschillende talen hoeven te kennen.

Deze aanpak - van Html en JavaScript in combinatie met losse elementen en/of componenten - maakt dat het programmeren in Java zelf, hierdoor niet meer noodzakelijk in het verplichte deel van de opleiding komt te liggen.
Omdat methoden en technieken spelenderwijs de revue passeren heeft deze oplossing impact op de motivatie om deel te nemen aan deze vakken en kunnen de gemotiveerde studenten later eventueel nog wat practische keuzevakken kiezen.
We wisten uit pilots dat onze studenten met deze aanpak veel inzicht krijgen in de mogelijkheden van Java en intelligente software onderdelen. Het programmeren in JavaScript sluit ook veel beter aan bij hun kennis over en van Html. Of studenten ooit met Java willen leren werken, kan dan altijd later nog worden beslist.

Oplossing: een nieuw curriculum

Na rijp beraad koos onze vakgroep, het docententeam en onze faculteit uiteindelijk voor het ontwikkelen van een serie nieuwe technische en didactische methoden, geconcentreerd in twee nieuwe vakken, hier de twee kernvakken in samenhang met drie andere vakken. Deze vijf vakken liggen verspreid over drie studiejaren. Deze serie vakken, en vooral de twee kernvakken, hebben afzonderlijk bepaalde doelen en natuurlijk als serie van vijf, als curriculum, in zijn geheel, een bepaalde samenhang.

Kennis laten maken met
We willen studenten van onze faculteit kennis laten maken met alles waar het in het ICT-wereldje om gaat en (dus) problemen laten oplossen om beter te begrijpen waar de knelpunten in ontwerp en realisatie van educatieve multimediale software liggen. Onze studenten hoeven we niet perfect klaar te stomen om met de laatste en nieuwste snufjes als professionele designers de markt op te duwen. Nee, onze studenten moeten academicus (doctorandus) van het type 'onderwijskundige ingenieurs' worden, die later in een multi-disciplinair team met mensen van diverse achtergrond soepel moeten kunnen omgaan, zelfstandig en ook collectief problemen moeten kunnen oplossen en zowel opdrachtgevers als technici moeten kunnen begrijpen. Iedere specialist heeft zijn eigen achtergrond en een soms heel verschillend begrippenkader. Afgestudeerden bij onze faculteit moeten inzicht hebben, verschillende begrippenkaders kennen en kennis hebben van verschillende methoden van programmeren. Men dient te weten wanneer er gewerkt moet of kan worden met auteursystemen, met tools, met auteurstalen en/of met hogere programmeertalen. Afgestudeerden moeten inzicht hebben in wat informatici doen en kunnen; en elk onderdeel van een software probleem op waarde, op complexiteit en op tijdrovendheid kunnen inschatten.

Twee complementaire kernvakken
We wilden een systeem opzetten van uitwisseling en hergebruik van losse elementen, componenten en objecten, e.d. tussen al de genoemde vakken. We wilden op deze wijze onze studenten de mogelijkheid bieden om met allerlei losse elementen en andere bouwblokken ('building blocks') dynamische, intelligente en dus hogere orde websites te realiseren; los van het ontwikkelen van een gewone website. Dat is gelukt.

De volgorde
Er zijn vijf vakken die - in dit verband - moesten samenhangen: vier verplichte vakken en een keuzevak. De twee kernvakken, als verplicht vak, en speciale volgorde, gesitueerd in het midden. Vier van deze vakken zijn practicumvakken en er is een theoretisch vak over ontwerpen in het algemeen. De verplichte vakken zijn verplicht voor alle studenten, voltijders zowel als deeltijders en hangen ook direct samen met een aantal keuzevakken; we noemen er hier vooralsnog slechts een, namelijk 'Computersimulatie als Leermiddel'. Dat is omdat veel van de werkstukken van studenten uit dat keuzevak worden hergebruikt in de eerdere jaars-vakken. Deze vijf vakken zijn:

De eerste vier vakken (ICT&Mk, OKT, MMp en CEA) zijn verplicht; het laatste vak (CSaL) is een keuzevak. Twee vakken bevinden zich in het eerste jaar (de P-fase) (vakken ICT&Mk en OKT); twee vakken in het tweede jaar (de D1-fase) (de kernvakken MMp en CEA). In het laatste jaar kunnen studenten als ze dat willen zich specialiseren via keuzevakken, zoals het hier van belang zijnde keuzevak 'Computersimulatie als Leermiddel' (CSaL); dat is de zogenoemde D3-fase.

De vakken waar het hier om gaat (de kernvakken MMp en CEA) moeten worden gezien als een geheel waardoor onze doelstelling gerealiseerd kan worden: goed onderwijs; goede begripsvorming; brede horizon op gebied van methoden en technieken; en werkenderderwijs inzicht zien te verwerven in problemen die voorkomen bij het ontwerpen en ontwikkelen van educatieve software. Onze vijf vakken vormen samen een didactisch concept met ijzersterk curriculum. De volgorde van de vakken speelt hierbij een cruciale rol. Eerst komt er een 'methoden en technieken'-vak, het introductievak 'ICT en mediakunde'. Vervolgens een 'ontwerp'-vak, het introductievak 'Onderwijskundig Ontwerpen'. Daarna het 'methoden- en technieken'-vak, het kernvak 'Multimedia programmeren'. En vervolgens een 'ontwerp'-vak: het kernvak 'Courseware Engineering'. In de specialisatiefase, de D3-fase, kunnen studenten op alles nog wat dieper ingaan, zoals in het keuze-vak 'Computersimulatie als leermiddel' (vak 5). De vakken 1 en 3 zijn typische 'bottom-up methoden en technieken'- vakken (MT-vakken); de vakken 2 en 4 zijn 'top-down-ontwerp'-vakken (O-vakken). De keuzevakken zijn meestal combinaties van O-vak en MT-vak. Zeker het specialistische vak CSaL, over simulatiemethodologie en -technologie. Schematisch ziet ons nieuwe curriculum er als in figuur 2 uit.


MT-vak (ICT&Mk) --> O-vak (OKT) --> MT-vak (MMp) --> O-vak (CEA) --> MT-vak (CSaL)

Figuur 2. De vijf betrokken vakken van ons nieuwe curriculum met de sandwich-constructie. Afwisselend en achter elkaar krijgt men een methoden en techniekenvak (MT) en een ontwerpvak (O). De O-vakken zijn bedoeld om studenten top-down te leren denken; de MT-vakken zijn bedoeld om losse elementen of losse onderdelen te (leren) maken en die op detail-niveau te (leren) doorgronden door vrij en onbevangen bottom-up te werken.

In deze keten staan de twee kernvakken centraal: 'Multimedia programmeren' (MMp) en 'Courseware Engineering: Architectuur' (CEA); hier kortweg genoemd: 'Courseware Engineering'. Tegenover het bottom-up-vak 'Multimedia programmeren' (MMp) hebben wij een zwaar 'top-down'-vak neergezet: het vak 'Courseware Engineering' (CEA). Op deze wijze kent ons curriculum in het verplichte deel in ieder geval twee bottom-up-vakken en twee top-down-vakken. Deze twee nieuwe kernvakken met bijbehorende practica, in het midden van ons nieuwe curriculum, MMp en CEA, zijn ontworpen als een didactische eenheid en zijn - zoals we hier kort ook zullen proberen aan te tonen - op allerlei essentiële punten complementair aan elkaar. Zie hierbij de figuren 2 en 3.

Methoden en technieken versus top-down-denken
De verschillende benaderingswijze in de twee kernvakken is voor onze studenten en hun kennis- en competentie-sprong die ze maken, op dat moment in het curriculum, zeer belangrijk. In samenhang zijn deze twee kernvakken duaal in de zin van complementair. Het ene vak geeft studenten breedte; het andere geeft diepte. Derhalve is de volgorde van het behandelde, en datgene wat ze in de practica ervaren, belangrijk. Het 'methoden en technieken'-vak, MMp, hebben we dan ook ingericht met allerlei verschillende web-technieken, JavaScript en een library met standaard applets en men werkt er bottom-up, dus zonder een vast doel. Het enige doel is kennismaken met bepaalde web-techieken om de eigen horizon zo breed mogelijk te krijgen. Dat wat wij een voorwaarde vinden om goed top-down te kunnen werken. Daar wordt met talen en losse eenvoudige editors gewerkt. Zonder goede en brede kennis van technieken, is het goed (leren) ontwerpen uitgesloten. Het 'ontwerp'-vak CEA, waar top-down gewerkt moet worden, zit anders in elkaar. Daar wordt met een auteurssysteem gewerkt; hier 'NetObjects Fusion'.


Figuur 3. De vier practicumvakken in ons nieuwe curriculum. De twee kernvakken MMp en CEA maken gebruik van onderdelen die in de twee andere vakken of door onze specialisten zijn ontwikkeld; hier applets en/of video-fragmenten. De scripts die ontwikkeld worden bij MMop kunnen door studenten verder worden hergebruikt in het vak CEA. In de twee kernvakken MMp en CEA wordt (her-)gebruik gemaakt van simulatie-applets die ontworpen zijn met het JavaTHESIS-systeem in het kader van het vak CSaL, maar ook van video-fragmenten uit video's die eerder gemaakt zijn in het eerste jaar met het Media 100-systeem bij het vak ICT&Mk.

Het sandwich-model
Wij kiezen in het curriculum voor een sandwich-model. In het eerste jaar hebben wij een methoden en techniekenvak gesitueerd: 'ICT en Mediakunde', waarbij men om leert gaan met alle losse onderdelen van multimedia (de 'dimensies'), de html-code en er enige kennismaking met JavaScript plaatsvindt. In dat zelfde eerste jaar volgen de studenten een algemeen ontwerpvak: 'Onderwijskundige Technologie' (OKT). In het tweede studiejaar (de D1-fase) een methoden en techniekenvak waarbij verdieping plaats vindt en diep op JavaScript wordt ingegaan en waarbij JavaScript ook de drager is van het bijbehorende practicum. In het derde jaar (de D2-fase) komt dan het algemene ontwerpvak waarbij, als auteurssysteem en als drager van het bijbehorende practicum, 'NetObjects Fusion' wordt gebruikt. In het tweede jaar heeft men een zodanig brede blik gekregen over allerlei soorten methoden en technieken dat studenten in hun eind-ontwerp dat ze top-down moeten (leren) maken, veel bagage hebben om met creatieve oplossingen aan te kunnen komen. Zie figuur 2 en 3.

Dimensies
Elk multimediaal product heeft vijf dimensies: tekst, beeld, geluid, animatie en video. Deze worden ook wel modaliteiten genoemd. Zie figuur 4. De laatste drie dimensies zijn lineair in de tijd. Iedere dimensie is het waard afzonderlijk te worden bestudeerd - bottom-up - om vervolgens, als onderdelen van een groter geheel en in samenhang - vanuit een top-down-benadering - verder te bekijken en ervaren.


Figuur 4: Het begrip dimensie. Als je de geprogrammeerde intelligentie, die de koppeling tussen al de passieve elementen uit de vijf andere dimensies meerekent, dan is volgens ons eigenlijk sprake van zes dimensies.

De eerste serie vakken in het nieuwe curriculum zijn vooral gericht op het leren omgaan met producten die een-dimensionaal zijn. Vaak kunnen editors in meerdere dimensies tegelijk werken QuickTime filmpjes kunnen bijvoorbeeld geluid bevatten; voor geluid heb je in dat geval dan geen aparte editor nodig. Naast deze vijf dimensies is er nog een zesde dimensie: datgene wat een multimediaal product intelligent maakt: de programmatuur, het script, e.d. Zie figuur 4. Om een goede basis en een goed gevoel aangaande programmeren te krijgen is begripsvorming in het eerste jaar, in de eerste week, in het eerste trimester van een studie vrij essentieel. Derhalve zit in het vak 'ICT en mediakunde' een korte, intensieve kennismaking met JavaScript; met als doel om eerste jaars-studenten direct te confronteren met bepaalde functionaliteiten als het nut van loops en de kunst van het rekenen. Kortom, het wegwijs maken in de performance van web-technologie, 'programmeren' en een adequate voorbereiding op de vervolg-vakken is hiermee gewaarborgd. In het vak MMp, in het tweede studiejaar, zit - uiteindelijk - dan de definitieve kennismaking met het (leren) programmeren van multimediale web-omgevingen.

Het hergebruiken van materialen
Beide kernvakken maken gebruik van 'oude' materialen uit eerdere of latere vakken, zoals video-, audio- en beeld-materiaal, uit eerste jaars-vakken, tot hele complexe applets voor simulatie-leeromgevingen uit vierde jaars vakken [4] [6]. Dit zogenaamde 'hergebruik' van losse elementen of componenten en het gebruik van standaard applets uit libraries, maakt het mogelijk dat niet-technische studenten toch hele interessante, technisch veelzijdige en behoorlijk complexe werkstukken  maken waarin veel ontwerp- en ontwikkel-aspecten de revue passeren en - mits goed gekozen casussen - veel van valt te leren.

Het kernvak Multimedia Programmeren
Een van de vakken in deze keten die nu noodzakelijkerwijs ontstond, was het vak 'Multimedia Programmeren' (MMp), het eerste kernvak met bijbehorend practicum; en gesitueerd in het tweede studiejaar. In dit vak leren studenten problemen op te lossen door middel van programmeren in JavaScript. De kennismaking in het eerste jaar heeft hier zijn vervolg. Binnen dit kernvak is er - in dit verband - gekozen om een groot aantal standaard objecten te ontwikkelen (een library met Java class-files) en studenten heel gericht wegwijs te maken in Html en JavaScript. Het accent komt bij MMp te liggen op visualisatie, beweging, dynamisch gedrag en het aan elkaar kunnen koppelen van losse elementen en componenten. Vanwege onze didaktische en technische methoden en technieken is het leren van de taal Java, zelf, dan niet nodig. Door deze aanpak is het niveau en de kwaliteit van de oplossingen hoog. Men maakt kennis met Java en Java-objecten, maar de leertijd is minder en de inspanning is aanvaardbaar.

Studenten hoeven dan - gedurende hun studie aan de universiteit - maar één taal te beheersen (JavaScript) en de andere taal (Java), leren ze dan later - als zij dat nodig hebben - na hun afstuderen, 'on the job'. JavaScript is ook een goede opstap voor andere scripttalen, zoals 'ActionScript', de scripttaal van 'Flash' voor slimme 'Flash'-animaties en -simulaties.

Losse objecten; library met losse applets; building blocks
Bij het vak 'Multimedia Programmeren' gebruiken we de library 'WebLib'. De applets uit deze library kunnen allemaal eenvoudig worden aangestuurd vanuit JavaScript en ingesteld worden via Html. Eenvoudige ('domme') applets kunnen zodoende, via slimme scripts in JavaScript-code, toch intelligente programmatuur opleveren. De student kan vanuit de html-code en de JavaScript-code, losse Java applets ('building blocks') hanteren en die functionaliteit - eenvoudig - in websites aanbrengen. Websites kunnen derhalve 'dynamisch' en 'intelligent' ('smart') worden gemaakt, zonder dat men met Java en allerlei compilers aan de slag hoeft. Studenten kunnen het probleem (leren) leggen waar het hoort: of in de html-code, of in een JavaScript-script of in een Java-applet. Dat te weten en te leren zien, is voor ons en voor hen, didactisch zeer waardevol.

De library 'WebLib' moeten we niet verwarren met onze tweede bibliotheek 'WebStuff' met een grote hoeveelheid losse, her te gebruiken elementen. In de library 'WebLib' zitten her te gebruiken applets voor (bijvoorbeeld) model-driven animatie met bitmapped objecten, model-driven simulatie, dynamische tellertjes, etc. Kortom, applets ('building blocks') voor het realiseren van een aantal belangrijke onderdelen van educatief interessante web-applicaties. Zo zijn er via JavaScript te sturen applets voor

Deze didactische aanpak binnen het kernvak MMp - van werken met Html en programmeren in JavaScript, in combinatie met losse, een-dimensionale elementen, slimme en/of complexe componenten - werkt goed. Wij hebben een didactisch verantwoorde volgorde van voorbeelden, casussen en opdrachten gemaakt die ook op afstand (thuis) tot prima resultaten leidde. Het programmeren in Java is, door het werken met JavaScript en met building blocks, in de eerste drie jaar van onze opleiding niet meer noodzakelijk. Dat scheelt tijd en frustratie. Veel studenten willen bij onze faculteit namelijk niet de engineerings kant op. In de latere doctoraal-fase, bij de keuzevakken, kunnen studenten veel bewuster kiezen of men zich nog in een tweede taal, Java, wil verdiepen. In ieder geval heeft de student dan een hele goede basis om zelf te kunnen beoordelen of hij/zij geschikt is om verder te gaan in de educatieve software engineering.

Het kernvak 'Courseware Engineering'
Het tweede kernvak wat hier bij hoort is het vak 'Courseware Engineering' of 'CEA'. Het is in velerlei opzichten complementair aan het boven beschreven vak. Het is een vak waarbij een auteurssysteem de drager van het practicum is (NetObject Fusion) en geen taal wordt gebruikt. Zoals 'Multimedia Programmeren' een top-down-vak is; is 'Courseware Engineering' een bottom-up-vak. De beide kernvakken zijn dus complementair: een top-down, ontwerp gericht vak, ten opzichte van een methoden en techniekenvak. De voordelen van die constructie zijn dat, bij een dergelijk methoden en techniekenvak, de studenten heel breed bezig kunnen zijn zonder (nog) te (hoeven) denken aan het geheel en derhalve een brede horizon krijgen. Bij latere (top-down) vakken heeft men dan de beschikking over een breed scala van technische en methodologische mogelijkheden en kan men verwachten dat ze - top-down-denkend - betere oplossingen kunnen genereren.

Het ontwerp-model
In het vak CEA gebruiken de studenten een overall ontwerp-model [3]. Met dit model kunnen onze studenten oefenen met het methodisch ontwerpen van websites. Het model kent 6 stappen. De 6 stappen van dit model, van De Diana, die worden gevolgd om educatieve multimediale websites te ontwikkelen, zijn:

Doordat de cursisten in het voorafgaande vak MMp geleerd hebben met scripts en applets om te gaan en hun horizon zo hebben verbreed kunnen ze nu goed overzien van welke methoden en technieken men allemaal gebruik van kan maken om een boeiende en effectieve interactie tussen gebruiker en site te kunnen realiseren.

Om dit onderliggend doel van dit vak CEA in relatie met MMp te realiseren hebben we, speciaal voor het gebruik in beide vakken, een library samengesteld met allerlei door ouderejaars studenten gemaakte en door onze cursisten her te gebruiken elementen, zoals losse video-fragementen, leuke animaties, mooie geluiden, mooi beeldmateriaal, maar ook hele complexe applets (simulaties) die gemaakt zijn in het vak CSaL. Die library hebben we 'WebStuff' genoemd.

De studenten kunnen zowel die losse een-dimensionale ('domme') elementen, al dan niet van hen zelf, uit eerdere vakken, zowel als (intelligente) componenten uit latere vakken (her-)gebruiken in hun eigen werkstuk. Ze mogen eerder gemaakte objecten, elementen of componenten gebruiken, hergebruiken of als de tijd het toelaat ook gewoon zelf nieuwe onderdelen maken. Hierdoor spaart de cursist veel tijd uit om een kwalitatief hoogstaand product op te leveren. Het maakt het ook mogelijk om bij elk vak de juiste competentie te bevorderen en niet steeds opnieuw beeld-, geluid- of video-materiaal te maken en dus bepaalde technieken steeds maar over te moeten doen. Als studenten ergens een hekel aan hebben is dat soort losse elementen of componenten steeds opnieuw te maken alvorens het werkstuk een bepaalde toonbaarheid heeft.

Resultaten

Onze ervaringen met de nieuwe vakkenstroom en met name de twee kernvakken MMp en CEA waren zeer positief. De voorbereidingen hebben ons een jaar gekost. De libraries waren gedeeltelijk ook de spin off van ons lopende leermiddelenonderzoek. De bibliotheken met losse elementen waren verzameld in andere vakken en in andere jaren. De onderwijsaanpak bleek van af het eerste begin goed te werken en de onderwerpen en onderdelen van de vakken sloten goed op elkaar aan. De beoordelingen van de kernvakken, door de studenten, waren ook steeds goed. Het bleek dat de gevolgde aanpak door de studenten werd gewaardeerd en dat deze aanpak resulteerde in boeiende websites waarin steeds interessante hogere orde elementen waren opgenomen; websites met onderdelen die heel relevant waren en op een andere manier nooit gerealiseerd zouden zijn geworden. Het onderwijs kende weinig tot geen doublures. De producten werden door de studentengroepen steeds zeer mooi gevonden en konden steeds zonder meer tot hogere orde websites en hogere orde courseware worden gerekend. Studenten stonden vaak verbaasd van de kwaliteit van hun werk; vooral omdat men dacht het niet te kunnen of niet te kunnen programmeren. De hoeveelheid echt programmeren is met deze methode dan ook vrij minimaal gebleken; zeker als men kijkt naar de kwaliteit. De eindproducten van de jaren 1999 tot 2001 zijn te bezichtigen op de bij de vakken horende websites en zijn daar voor iedereen toegankelijk [1] [2] [3] [4].

Conclusie, discussie & advies

De resultaten waren in zowel in de beide kernvakken, het kernvak 'Multimedia Programmeren' alsmede in het kernvak 'Courseware Engineering' boven verwachting. De docenten hebben aangetoond een bijzonder doordacht curriculum te hebben ontworpen. Zowel de top-down-aanpak alsmede de bottom-up onderdelen sloten goed aan bij de plek in het curriculum waar studenten diep willen (leren) kijken en waar studenten juist breed willen (leren) kijken. Tegelijkertijd hebben we met onze oplossingen een evenwichtig systeem gevonden van losse, herbruikbare componenten en multimediale elementen. Die elementen en componenten bleken prima te worden gebruik of te worden hergebruikt.

Referenties

[1] Het vak "Productie van Onderwijssystemen" (voorheen 'Multimedia Programmeren'); R. Min & J. de Goeijen (studiejaar 2000/2001); [online] beschikbaar op: http://to-www.to.utwente.nl/TO/ism/course/pro/index.html

[2] Het vak "Multimedia Programmeren"; R. Min & J. de Goeijen (studiejaar 1999/2000); [online] beschikbaar op: http://to-www.to.utwente.nl/TO/ism/course/mmp/index.html

[3] Het vak " Courseware Engineering: Architectuur"; I. De Diana, R. Min, J. Wetterling & J. de Goeijen (studiejaar 1999/2000); [online] beschikbaar op: http://projects.edte.utwente.nl/cea/2000/index.html

[4] Het vak "Computersimulatie als Leermiddel"; R. Min & J. de Goeijen (2001/2002); [online] beschikbaar op: http://to-www.to.utwente.nl/TO/ism/course/sim/index.html

[5] Collis, B., en J. Moonen (2001). Flexible Learning in a digital world: Experiences and expectations", Kogan Page, London; [online] beschikbaar op: http://education1.edte.utwente.nl/00FlexibleLearning.nsf/framesform?readform

[6] Min, R. (1996 - 2002). Multimediale leermiddelen; het ontwerpen en ontwikkelen van Leer-, Werk- & Doe-omgevingen; inzichten, concepten, methoden en technieken. Een interactief electronisch boek op internet. (multifunctioneel collegediktaat); [online] beschikbaar op: http://projects.edte.utwente.nl/pi/BoekNL/index.html

Terminologie

Enschede, 31 mei 2002; updated: oct, 24, 2002.