Ontleding is een fundamentele computerwetenschappelijke vaardigheid die essentieel is voor het ontwikkelen van het langetermijnbegrip van studenten over het oplossen van codeerproblemen. Dit artikel onderzoekt wat ontbinding is, waarom het belangrijk is en hoe leerlingen het leren van ontbinding kunnen vergemakkelijken.
Wat is ontbinding?
Ontleding is het proces waarbij een complex probleem in kleinere, beter beheersbare delen wordt opgedeeld. Dit vereenvoudigt het proces van het maken van een codeerproject doordat leerlingen één onderdeel van het probleem tegelijk kunnen oplossen.
Waarom is ontbinding belangrijk?
Wanneer leerlingen beginnen te leren coderen, worden ze geconfronteerd met het op een nieuwe en uitdagende manier over taal nadenken. Ze moeten overstappen van communicatie in gesproken taal, die vol zit met gevolgtrekkingen en nuances, naar de precieze en logische structuur die nodig is bij het coderen. Deze aanpassing is voor studenten uiterst lastig en staat hun succes vaak in de weg. Decompositie is een cruciale computerwetenschappelijke vaardigheid die studenten moeten verwerven om succesvol te kunnen coderen, omdat studenten hiermee kunnen beginnen met gesproken taal en deze kunnen verfijnen totdat het iets is dat in een codeerproject kan worden gebruikt.
Door een probleem op te splitsen, kan het in kleine stappen worden opgelost, waardoor wordt voorkomen dat het overweldigend wordt voor de leerlingen. Wanneer leerlingen problemen in kleinere delen opsplitsen voordat ze beginnen met coderen, kunnen ze vervolgens elk klein deel van een project bouwen en testen om er zeker van te zijn dat het werkt zoals verwacht, voordat ze verder gaan met het volgende deel. Dit is veel gemakkelijker dan alle stappen te coderen die nodig zijn om een doel in één keer te bereiken, en voorkomt dat studenten de frustratie verliezen dat ze verdwalen in een lang project wanneer ze proberen fouten op te lossen.
Het ontbindingsproces geeft leerlingen ook een systematische aanpak bij het bouwen van een project, waardoor de verleiding wordt geëlimineerd die leerlingen kunnen hebben om hun weg naar een oplossing te raden en te controleren. Gissen en controleren is een inefficiënte manier om een probleem op te lossen, en wordt ineffectief naarmate leerlingen zich met steeds complexere codeeruitdagingen bezighouden.
Bovendien kunnen studenten door het ontleden van een project patronen in hun code identificeren en delen van de code voortbouwen, wijzigen en hergebruiken. Dit maakt zowel het bouwen als het oplossen van projecten eenvoudiger, terwijl studenten een dieper inzicht krijgen in de code die ze maken, waardoor ze dit inzicht in toekomstige projecten kunnen gebruiken.
Ten slotte vergemakkelijkt decompositie ook de samenwerking tussen studenten terwijl ze samenwerken om robotica-projecten in groepen te creëren. Een ontleed project dat is vastgelegd in een technisch notitieboekje biedt een artefact dat leerlingen kunnen gebruiken bij het bespreken van groepsprojecten of het delen met andere groepen.
Het vergemakkelijken van de ontbinding
Decompositie vindt plaats wanneer leerlingen zich in de planningsfase bevinden, voordat ze ooit beginnen met het uitbouwen van hun projecten. Studenten moeten hun ontledingsproces in hun technische notitieboekjes vastleggen en met u delen voordat ze beginnen met coderen. Zie dit artikel voor meer informatie over het gebruik van technische notebooks met leerlingen.
Geef de leerlingen dit eenvoudige raamwerk in drie stappen om de ontbinding te benaderen:
- Identificeer het hoofddoel van het project door het resultaat te vermelden dat de robot zal laten zien als het project succesvol is. Noteer dit doel in het technische notitieboekje.
- Bepaal de belangrijkste stappen die de robot moet zetten om het doel te bereiken. Overweeg en noteer de belangrijkste of grote stappen die de robot moet voltooien om het doel te bereiken. Leg deze stappen op hoog niveau vast in het technische notitieboekje.
-
Breek de belangrijkste stappen op in de kleinst mogelijke stappen van robotgedrag. Verdeel elk van de hoofdstappen in het kleinste gedrag dat de robot kan uitvoeren. Noteer deze ontlede stappen in het engineeringnotebook.
- Elk robotgedrag moet kunnen worden gekoppeld aan één bijbehorend blok of commando. Als dit niet het geval is, kunnen de stappen verder worden ontleed.
In dit voorbeeld ontleden leerlingen een project om een doolhof te voltooien in de VEXcode VR Wall Maze + Playground.
Stap 1: Identificeer het hoofddoel van het project. Noteer het doel in het technische notitieboekje.
Stap 2: Bepaal de belangrijkste stappen die de robot moet nemen om het doel te bereiken.
- Hier heeft de leerling nagedacht over al het gedrag dat de robot moet vertonen om van het beginpunt naar het eindpunt van het doolhof te rijden, en deze in volgorde in het technische notitieboekje opgeschreven.
Stap 3: Verdeel de belangrijkste stappen in de kleinste stappen van robotgedrag.
- Leerlingen kunnen beginnen met het bepalen van de geschatte waarden die nodig zijn om elke stap te voltooien. Deze waarden moeten worden getest en aangepast bij het bouwen van het project in VEXcode.
- De leerlingen moeten controleren of elke ontlede stap rechtstreeks overeenkomt met één VEXcode-blok. Als dit niet het geval is, moet de stap verder worden ontleed.
Zodra leerlingen hun project hebben ontleed tot het niveau van individuele blokken of opdrachten, kunnen ze van de projectplanningsfase naar de implementatiefase gaan. Ze moeten de belangrijkste stappen die in stap 2 zijn bepaald overbrengen naar Opmerkingen, en vervolgens de corresponderende blokken of opdrachten voor elk volledig ontleed gedrag uit stap 3 toevoegen aan elk van die Opmerkingen om hun projecten op te bouwen.
Leerlingen moeten hun projecten stap voor stap opbouwen, waarbij ze elk gedrag (of een logisch gegroepeerde reeks gedragingen) testen voordat ze naar het volgende gaan. Het is in deze fase dat leerlingen de middelen waarover ze beschikken moeten gebruiken om de juiste parameterwaarden te bepalen. In het bovenstaande VEXcode VR-voorbeeld werden bijvoorbeeld afstandswaarden bepaald met de wetenschap dat elk doolhofvierkant een doorsnede van 300 mm heeft. De methode voor het bepalen van waarden varieert afhankelijk van de omstandigheden, maar het zal altijd nodig zijn om waarden te testen en aan te passen tijdens het proces van het maken van een codeerproject.
Studenten ondersteunen bij het leren ontbinden
Voordat leerlingen aan een uitdaging uit een STEM Lab of een ander VEXcode-project beginnen te werken, neem je de tijd om zelf de ontleding door te werken, zodat je klaar bent om vragen te beantwoorden die leerlingen mogelijk hebben. Moedig leerlingen aan om u het ontlede plan voor hun project te laten zien voordat ze beginnen met coderen, zodat u het ontbindingsproces kunt versterken en kunt controleren of ze de taak hebben opgesplitst in het kleinst mogelijke robotgedrag. Herinner de leerlingen eraan dat ze een blok of commando moeten kunnen identificeren dat overeenkomt met elk gedrag.
- Als leerlingen moeite hebben om zich de belangrijkste of grote stappen voor te stellen die de robot moet nemen om het doel van het project te bereiken, moedig ze dan aan om:
- Teken het pad dat de robot moet volgen om het doel te bereiken.
- Speel de stappen uit die de robot moet nemen om het doel te bereiken.
- Bespreek de stappen die de robot moet nemen om het doel te bereiken.
- Als leerlingen moeite hebben om te bepalen of hun stappen zijn uitgesplitst naar het individuele blok- of commandoniveau, vraag ze dan:
- Hoeveel blokken of commando's zou de robot nodig hebben om dat gedrag te voltooien?
- Kan de robot die stap voltooien met slechts één blok of commando?
- Hoe kun je dat gedrag ontleden in nog kleinere robotacties?
Door uw leerlingen te ondersteunen bij het leren ontbinden, zorgt u ervoor dat ze een solide basis hebben voor toekomstige probleemoplossing in de informatica.
Heeft u meer vragen over het faciliteren van het leren van ontbinding door leerlingen in uw klas? Vraag ze in de PD+ Community, of plan een 1-op-1 Sessie om met een VEX Expert te praten.