ABSTRACT De conclusie van deze analyse is dat het lesmateriaal niet goed aansluit op de doelgroep. Sterke punten zijn de aansluiting op de kerntaken van de opleiding, de inhoudelijke breedte en de correctheid van het materiaal. Zwakke punten zijn de presentatie, het gebrek aan praktijkopdrachten, de sterk wisselende moeilijkheidsgraad, het gebrek aan afwisseling en het feit dat nergens de relevantie van het geleerde wordt aangegeven. Dit maakt de methode vooral geschikt voor zelfstudie voor het examen door intrinsiek gemotiveerde leerlingen met enige praktijkervaring. Eerstejaars leerlingen voldoen vaak niet aan dit profiel. Mijn
EEN
aanbeveling is om ander lesmateriaal te selecteren dat meer aansluit op de behoeften van de leerlingen. De methode kan wel gebruikt worden om later in de opleiding de opgedane programmeer-kennis definitief af te toetsen
LESMETHODE GEANALYSEERD 98-361 Software Development Fundamentals Microsoft Official Academic Course
met het examen van Microsoft.
M. de Haan http://www.starwave.nl
MTA 98-364 MOAC Een lesmethode geanalyseerd
M. de Haan http://www.starwave.nl
Een lesmethode geanalyseerd Nadat leerlingen van de opleiding applicatieontwikkelaar/mediadeveloper het eerste jaar van hun opleiding hebben doorlopen, beginnen zij bij het ROC Horizon College met het leren van de programmeertaal C#. Hiervoor krijgen ze dit jaar 20 weken les volgens de methode ’98-361 Software Development Fundamentals – Microsoft Official Academic Course’ van uitgever Wiley. Voor deze opdracht is geanalyseerd of de methode aansluit bij het leerproces van de leerlingen. Het hier besproken boek en gerelateerde lesmaterialen zijn oorspronkelijk bedoeld als voorbereiding op een certificeringsexamen van Microsoft. Het MTA certificeringsprogramma zou specifiek bedoeld zijn voor secundair en hoger IT-onderwijs. Dit in tegenstelling tot de ‘klassieke’ microsoft examens die zijn gericht op professionals met enkele jaren ervaring. De certificering is gericht op studenten die net beginnen met ICT en software development. De lesmethode is dan ook bedoeld om te integreren in het normale onderwijs. Ik wil er hierbij op wijzen dat de Microsoft examens altijd waren gebaseerd op het bestuderen van referentiemateriaal. Concreet: boeken van 500 tot 1000 pagina’s waarin stuk voor stuk alle functies van een bepaalde technologie worden beschreven. In combinatie met de praktijkervaring bood dit de mogelijkheid om een bepaald kennisniveau aan te tonen naar een opdrachtgever. Het behoeft weinig uitleg dat een dergelijke werkwijze (eerst praktijkervaring opdoen en dan enkele honderden pagina’s uit het hoofd leren voor een examen) voor onze eerstejaars leerlingen niet geschikt is, omdat zij nog geen praktijkervaring hebben. De doelstelling van het lesmateriaal is om aan te sluiten bij onze leerlingen. Dit is echter iets waar de leverancier nog geen ervaring mee had. Op basis van deze informatie en mijn eigen ervaringen met Microsoft lesmateriaal wil ik dan ook graag de volgende vragen beantwoorden:
Sluit het lesmateriaal dat wij gebruiken voor het vak Software Development Fundamentals wel aan op onze doelgroep? o Waarom wel/niet? o Wat zijn de sterke en zwakke punten? o Hoe gaan docenten om met tekortkomingen? o Hou zou het beter kunnen?
Achtergrond en visie vanuit de uitgever Tijdens het Microsoft examen waar dit lesmateriaal oorspronkelijk voor ontwikkeld is worden programmeervaardigheden in zeer brede zin geëxamineerd. Vragen gaan van details over de programmeertaal (het corrigeren van foutjes in code) tot logisch nadenken over de opzet van complete systemen (kunnen beredeneren dat de satellietverbinding de zwakke schakel is in een informatiesysteem). Daarnaast worden er kennisvragen gesteld die niet direct met programmeren te maken hebben, zoals weten wat een datawarehouse is en waar dit voor gebruikt wordt. 1
MTA 98-364 MOAC Een lesmethode geanalyseerd
M. de Haan http://www.starwave.nl
De personen die de methode hebben aangeboden bij het Horizon College (een bedrijf wat werkt in opdracht van Microsoft) hebben tijdens een presentatie van het materiaal aangegeven dat zij vinden dat de lesmethode prima geschikt is voor het MBO. Ook in het lesmateriaal zelf is dit terug te lezen, al wordt het MBO niet expliciet genoemd. Volgens de uitgever is het lesmateriaal gericht op workforce development. De nadruk ligt op het aanleren van vaardigheden die nuttig zijn voor het beroep, volgens de uitgever “by emphasizing authentic workplace scenarios with an abundance of projects, exercices, cases and assessments.”. De inhoud zou zijn gebaseerd op Microsofts eigen onderzoek naar en analyse van taken die door softwareontwikkelaars worden uitgevoerd, hetzelfde onderzoek waarop de microsoft certificeringsexamens zijn gebaseerd. We zullen later zien dat er van een overvloed aan projecten en oefeningen zeker geen sprake is.
Vorm en kosten Het boek is voor leerlingen gratis te downloaden, als onderdeel van de licentie die zij afnemen van de Stichting Praktijkleren. Deze licentie omvat ook enkele gratis MTA examens per leerling. Leerlingen werken dan met een .pdf document van 200 pagina’s. Er is een papieren versie beschikbaar, deze wordt in de praktijk door leerlingen niet gekocht.
Didactiek De didactische hulpmiddelen die in het boek zijn toegepast zijn de volgende: Overzichten van wat in de les geleerd zal worden Overzichten van kernbegrippen Stap-voor-stap instructies met illustraties Vragenlijsten aan het eind van elk hoofdstuk Oefeningen aan het eind van elk hoofdstuk Voor docenten is het volgende materiaal beschikbaar: Een Instructor’s guide met instructies voor het geven van een les per hoofdstuk Een test bank met oefenvragen Een powerpoint presentatie voor elke les Met het docentmateriaal is het mogelijk per hoofdstuk een les van ongeveer 50-100 minuten te organiseren, waarbij grotendeels het boek wordt gevolgd. Elk aangeleverd lesplan volgt dezelfde opzet: De docent laat de powerpoint zien (dit is dus één lang verhaal per hoofdstuk, ongeveer 30 minuten tot een uur). Onderwerpen worden slechts samenvattend behandeld. Leerlingen maken zelfstandig of samen met de docent de oefeningen (antwoorden zijn voor de docent bijgeleverd) Dit kost ook ongeveer 30 minuten tot een uur. Leerlingen en docent checken samen de antwoorden op de oefenvragen aan het eind Figuur 1: Een slide uit de meegeleverde van het hoofdstuk.
powerpoint bestanden. Vrijwel alle slides zien er exact zo uit
2
MTA 98-364 MOAC Een lesmethode geanalyseerd
M. de Haan http://www.starwave.nl
In de praktijk hebben we per hoofdstuk niet 2, maar 12 tot 18 lesuren ingeroosterd. De overige uren zal de docent dus zelf moeten vullen.
Inhoud: Leerdoelen Het MTA examen 98-361 bestaat uit een zestal objectives (leerdoelen). Ook het boek is rond deze objectives opgebouwd. Elk van de 6 leerdoelen is weer onderverdeeld in een aantal subleerdoelen, waarmee het totaal uitkomt op 21 leerdoelen. Zelfs deze subleerdoelen zijn op een redelijk abstract niveau geformuleerd. Deze leerdoelen zijn redelijk actueel. Het gaat hoofdzakelijk om kennis en vaardigheden die voor ontwikkelaars vrij duurzaam zijn. Uitzondering hierop vormen twee leerdoelen waarbij specifieke kennis vereist wordt van technologieën die in het werkveld als verouderd worden gezien. Omdat deze technologieën in de praktijk wel voorkomen en een relatief klein onderdeel vormen van de cursus is dit niet direct een probleem. Als er gekeken wordt naar wat een leerling moet kunnen om een leerdoel te behalen, is er sprake van een behoorlijke hoeveelheid kennis. Om als voorbeeld één van de 21 leerdoelen uit te werken: Het leerdoel: Identify the appropriate method for handling repetition. Totaal inhoud: 6 pagina’s tekst, 4 oefenvragen en 1 opdracht Concepten/vaardigheden die beheerst moeten worden: While loop For loop Foreach loop Recursieve methodes Het gaat voor elk van deze vier onderwerpen om de syntax (onthouden wat de correcte schrijfwijze is), keuzes kunnen maken (wanneer gebruik je welke van de vier) en het kunnen oplossen van logische problemen met behulp van deze concepten. Om dit concreter te maken met voorbeelden van wat een leerling voor het examen moet kunnen met betrekking tot de For loop: De correcte schrijfwijze van de code: for(int x = 1; x <= y; x++) uit het hoofd exact kunnen reproduceren en hier eventueel fouten in ontdekken. Mogelijke vragen: o What is the correct code for a loop that executes 10 times o Correct the error in the following for loop Weten dat de for loop het meest geschikt is voor problemen die een van tevoren vaststaand aantal herhalingen vereisen. o Which code construct would you use to iterate a fixed number of times? Kunnen begrijpen wat het effect is van het tussentijds wijzigen van de variabelen (in het voorbeeld x en y) op het aantal keer dat de herhaling wordt uitgevoerd. o Determine how many times the following loop is executed [voorbeeld met complexe code] Als een casus wordt gepresenteerd waarin impliciet iets een vast aantal keer wordt herhaald, hierop de for loop toepassen. Een mogelijk voorbeeld is: produceer met code een schaakbord op het scherm van 8 bij 8 vakjes. o What code construct would you use to create a chessboard (8 by 8 squares)
3
MTA 98-364 MOAC Een lesmethode geanalyseerd
M. de Haan http://www.starwave.nl
Hierbij is het vermelden waard dat ook al een leerling deze vragen kan beantwoorden, dit door de theoretische opzet van het lesmateriaal niet per sé betekent dat hij ook in staat is het schaakbord op het scherm te tekenen. Terwijl dat laatste juist datgene is wat de leerling graag wil kunnen. Dit inzoomen van abstract leerdoel naar concrete vaardigheid geeft hopelijk een beeld van de complexiteit van de leerdoelen en de moeilijkheidsgraad van het examen. Het examen sluit op zichzelf goed aan op kerntaak 2 uit het kwalificatiedossier, en bevat ook vragen die van toepassing zijn op de andere kerntaken.
4
MTA 98-364 MOAC
M. de Haan
Een lesmethode geanalyseerd
http://www.starwave.nl
Ordening van de leerinhoud Lesmateriaal rond programmeertalen is vaak op een bepaalde wijze geordend. Meestal wordt een aanpak gehanteerd van makkelijk naar moeilijk, waarbij in elk opvolgend hoofdstuk op de kennis uit vorige hoofdstukken wordt voortgebouwd. De 6 leerdoelen van het MTA examen 98-361 zijn echter zo breed dat deze als aparte hoofdstukken worden aangeboden. Het verschil in complexiteit van elk leerdoel leidt tot een vreemde situatie met betrekking tot de moeilijkheidsgraad (ga hierbij uit van 5 als goed aansluitend op de gehele klas, 10 als te moeilijk voor elke leerling):
Verloop van moeilijkheidsgraad 12 10 8 6 4 2 0 Hoofdstuk 1
Hoofdstuk 2
Hoofdstuk 3
Hoofdstuk 4
Hoofdstuk 5
Hoofdstuk 6
Deze wisselende moeilijkheidsgraad wordt direct gereflecteerd in de toetsscores die worden afgenomen op basis van de test banks, direct na ieder hoofdstuk. Betekent dit dat de volgorde niet klopt? De voor de hand liggende oplossing zou dan zijn om de volgorde: Hoofdstuk 1 > Hoofdstuk 3 > hoofdstuk 5 > Hoofdstuk 6 > Hoofdstuk 4 > Hoofdstuk 2 aan te houden. Het probleem is echter dat deze hoofdstukken niet op elkaar voortbouwen. Ook in de nieuwe volgorde zou de moeilijkheidsgraad van hoofdstuk 2 te hoog liggen, de in de eerdere hoofdstukken opgedane kennis en vaardigheden zullen dit probleem niet volledig oplossen. Het lijkt er hier op dat het ouderwetse denken (het leveren van referentiemateriaal in plaats van een ‘echte’ lesmethode) de problemen veroorzaakt. Leerlingen worden af en toe compleet in het diepe gegooid, terwijl de relevantie van het geleerde op deze momenten nooit wordt aangegeven. Dat is jammer, want het is bijvoorbeeld wel degelijk mogelijk om bijvoorbeeld in hoofdstuk 5 de relevantie van een in hoofdstuk 2 besproken onderwerp aan te geven. Deze verbindingen worden echter niet gemaakt.
5
MTA 98-364 MOAC
M. de Haan
Een lesmethode geanalyseerd
http://www.starwave.nl
Problemen met de moeilijkheidsgraad Met name in hoofdstuk 2 wordt in de grafiek pijnlijk duidelijk dat de moeilijkheidsgraad te hoog ligt voor de leerlingen. In dit hoofdstuk worden de principes van Object georiënteerd programmeren besproken. Dit hoofdstuk is 30 pagina’s lang. Een relatief compacte boek waarin hetzelfde leerdoel wordt behandeld, is ‘Objectgeoriënteerd Programmeren van Jan Beurghs. Dit (simpel geschreven) boek omvat 300 pagina’s waarin uiteindelijk minder onderwerpen aan bod komen. In de 30 pagina’s van de door ons gebruikte lesmethode kunnen de onderwerpen hoogstens worden aangestipt, verdieping en herhaling zijn niet mogelijk. Daarnaast worden begrippen behandeld die voor beginnende ontwikkelaars zeer lastig te begrijpen zijn. Om een concreet voorbeeld te geven: pagina 40 van het boek gaat over het onderwerp ‘delegates’. Hierbij kan het volgende worden aangetekend:
Er wordt 1 pagina besteed aan het onderwerp, hiervan is het grootste deel voorbeeldcode. Er wordt niet aangegeven waarom delegates nuttig zijn, en waar zij in de praktijk voor gebruikt worden. Er wordt alleen beschreven hoe zij werken. Er worden 0 oefeningen aangeboden rond het onderwerp Er is 1 oefenvraag rond het onderwerp aan het eind van het hoofdstuk Dezelfde oefenvraag komt 1:1 terug in de test bank Delegates zijn hoe dan ook pas te begrijpen na het afronden van hoofdstuk 5 De beginnende programmeur heeft in mijn ogen delegates nog niet nodig, deze zijn pas nuttig als hij in staat is redelijk uitgebreide applicaties te bouwen
Het ontbreken van context en voorkennis maakt het voor leerlingen zo goed als onmogelijk om hier echt iets te leren. Delegates hebben pas nut bij het toepassen van event-driven programmeren, wat weer een onderdeel is van het ontwikkelen van desktop applicaties. En zelfs dan zijn zij grotendeels onzichtbaar. Het gaat hier om iets dat slechts in uitzonderingssituaties kan worden toegepast. In het leerproces van de leerling zouden delegates pas aan bod kunnen komen nadat een aantal andere onderwerpen zijn aangeleerd: Procedurele programmeerprinc ipes
Windows applicaties kunnen ontwikkelen
Events kunnen afhandelen met methodes
Classes kunnen toepassen
Eigen events kunnen aanmaken
Delegates kunnen gebruiken
Zelf delegates kunnen aanmaken
Interessant om hierbij op te merken is dat we al tevreden kunnen zijn als een leerling aan het eind van de opleiding de blauw gemarkeerde vaardigheden goed beheerst.
6
MTA 98-364 MOAC Een lesmethode geanalyseerd
M. de Haan http://www.starwave.nl
Tekstinhoud, taalgebruik en afbeeldingen Het lesboek is volledig in het Engels geschreven. De onderwerpen worden kort en bondig behandeld, op een objectieve manier. Het taalgebruik is formeel en correct, maar bevat relatief veel vaktaal. Er zijn per hoofdstuk maar enkele illustraties aanwezig. Leerlingen hebben normaal gesproken, op een enkeling na, geen moeite met lesmateriaal in het Engels, maar geven aan dat zij de veelvuldig gebruikte vaktermen in dit boek niet begrijpen. Hierdoor lopen zij vast als zij thuis gaan lezen waardoor leerlingen dit vrij snel in het begin van de cursus opgeven. Ook wordt het boek door enkelen saai gevonden. Alle kernbegrippen worden uitgelegd, maar dit gebeurd op een zeer summiere manier, met een of twee voorbeelden van de werking. Relevantie en context worden vrijwel niet aangegeven. Hierdoor is de tekst eigenlijk vooral geschikt als opzoekmateriaal: nadat de docent het begrip heeft uitgelegd en de leerling dit in de praktijk heeft toegepast, is de tekst een goede samenvatting van het geleerde.
Twee lesmethodes vergeleken: Links het door ons gebruikte lesboek dat steeds het format definitie + uitleg + codevoorbeeld volgt. Rechts het boek HeadFirst C#, vrolijke letters, context wordt aangegeven, codevoorbeelden en veel uitleg over waar je eigenlijk mee bezig bent. Omdat het HeadFirst boek een meer spelenderwijs aanpak hanteert worden niet alle onderwerpen besproken die in het boek van Wiley aan bod komen. De lezer doet echter wel veel praktijkervaring op met afwisselende opdrachtvormen. Het gevolg: de kennis blijft ook echt bewaard.
7
MTA 98-364 MOAC Een lesmethode geanalyseerd
M. de Haan http://www.starwave.nl
Verhouding theorie/praktijk In het aangeleverde materiaal sluit de verhouding tussen leeswerk voor de leerling en praktijkopdrachten niet aan op de verwachtingen van de leerling. Leerlingen geven aan vooral praktisch aan de slag te willen, maar er wordt vooral van ze verwacht dat ze het boek lezen. Enkele leerlingen spreken zelfs uit de voorkeur te hebben voor het helemaal laten vallen van de methode en alleen nog maar uitleg, opdrachten en praktijkvoorbeelden van de docent te krijgen. De volgende concrete kritiek kan worden geleverd: De stap-voor-stap instructies in het hoofdstuk spreken weinig tot de verbeelding. Er wordt niet echt iets wezenlijks geproduceerd, ook hoeft een leerling hierbij niet zelf na te denken. Ze zijn letterlijk vergeten wat ze hebben gedaan als ze klaar zijn met de les. Er worden slechts 4 praktijkopdrachten gegeven per hoofdstuk. Deze praktijkopdrachten zijn geformuleerd als ‘hoe zou je dit oplossen’, in plaats van dat er echt iets gemaakt moet worden door de leerling. Er worden verder geen opdrachten meegeleverd in het docentenmateriaal.
Consequenties voor het leerproces Delegates zijn slechts een voorbeeld van het probleem met volgordelijkheid en moeilijkheidsgraad. Betekent dit dat het een slecht boek is? Het is een goede en bondige samenvatting van veel tijdloze programmeerprincipes waar je in de praktijk mee te maken hebt. Het is de vraag of een leerling daarmee geholpen is. Een mogelijke consequentie is dat het leerproces hiermee vervalt in het uit het hoofd leren van vragen en antwoorden die op zichzelf geen toegevoegde waarde hebben voor het kunnen ontwikkelen van software. Dit effect kan in de praktijk worden aangetoond met leerlingen die voldoendes halen voor de bijgeleverde toetsen, zonder dat zij zelfstandig in staat zijn om door de docenten bedachte (eenvoudige) praktijkoefeningen te doen.
Consequenties voor de docent Als docent heb ik om de tekortkomingen van het lesmateriaal te compenseren het volgende gedaan: 120 lesuren besteed aan het vak verdeeld over 20 weken 24 powerpoint presentaties ontwikkeld die relevantie aangeven, theorie bespreken en praktijkvoorbeelden geven Meer dan 100(!) praktijkopdrachten gevonden of ontwikkeld die aansluiten op de leerdoelen Aanvullende toetsen samengesteld met open- en codeervragen
8
MTA 98-364 MOAC Een lesmethode geanalyseerd
M. de Haan http://www.starwave.nl
Conclusies Mijn conclusie is dat het lesmateriaal niet goed aansluit op onze doelgroep. De voornaamste redenen worden hieronder toegelicht in de antwoorden op de deelvragen.
Wat zijn de sterke en zwakke punten? Sterke punten zijn de aansluiting op de kerntaken van de opleiding, de inhoudelijke breedte en de correctheid van het materiaal. Zwakke punten zijn de presentatie, het gebrek aan praktijkopdrachten, de sterk wisselende moeilijkheidsgraad, het gebrek aan afwisseling en het feit dat nergens de relevantie van het geleerde wordt aangegeven. Dit maakt de methode vooral geschikt voor zelfstudie voor het examen door intrinsiek gemotiveerde leerlingen met enige praktijkervaring. Helaas voldoen onze eerstejaars leerlingen niet aan dit profiel.
Hoe gaan docenten om met tekortkomingen? Docenten gaan op een wisselende manier om met de tekortkomingen van het materiaal. Enkele voorbeelden van strategieën die docenten hanteren om hiermee om te gaan: Het materiaal in volgorde doorlopen en vasthouden aan de lesmethode zoals deze is. Hierbij tot op zekere hoogte accepteren dat leerlingen meestal niet doen wat ze gevraagd wordt zodra er thuis dingen gedaan moeten worden, omdat de moeilijkheidsgraad te hoog is. Enkele extra opdrachten verzinnen tijdens de lessen en hierbij wel afdwingen dat er gewerkt wordt: ‘jullie moeten nu dit gaan maken’. Het lesmateriaal in volgorde doorlopen en extra opdrachten op internet en in boeken zoeken. Het gebrek aan interesse door leerlingen compenseren door zeer streng te zijn wanneer het huiswerk niet gemaakt wordt. Blijven steken in de eerste hoofdstukken om dat leerlingen niet op de gewenste manier door hoofdstuk 2 heen komen. Het lesmateriaal iteratief doorlopen (in volgorde, en later terugkomen op de moeilijkere gedeeltes uit het begin). Accepteren dat leerlingen thuis niet altijd aan de slag gaan. Een aantal extra opdrachten bedenken en eigen aanvullende presentaties ontwikkelen om de lessen mee te vullen en wanneer nodig video opnames gebruiken voor huiswerk. Uiteindelijk is het aantal voldoendes zeer sterk afhankelijk van de inzet van de docent. Dit wordt voornamelijk veroorzaakt doordat het materiaal qua didactische opzet niet bij de leerlingen aansluit. Dit betekent ook meteen een risico: een docent die geen ervaren developer is zal zich met dit materiaal snel overbelast voelen met de vele inhoudelijke vragen die hij krijgt, en het aanvullende werk dat hij zal moeten verrichten om te zorgen dat leerlingen genoeg praktijkervaring opdoen.
Hoe zou het beter kunnen? Mijn aanbeveling is om voor de eerstejaars ander lesmateriaal te selecteren dat meer aansluit op de behoeften van de leerlingen. De lesmethode kan wel gebruikt worden om later in de opleiding de opgedane programmeerkennis definitief af te toetsen met het examen van Microsoft. Ook wil ik de aanbeveling doen om kritischer te kijken naar partijen die uit zichzelf lesmateriaal aanbieden/promoten, uitspraken die zij doen over de inhoud hoeven niet altijd waar te zijn. 9