Lezione 27 - Progetto - Progetta un gioco
225 minuti
Panoramica
Domanda del giorno: In che modo le cinque buone pratiche dell'informatica (risoluzione dei problemi, perseveranza, comunicazione, collaborazione e creatività) possono aiutare i programmatori a completare progetti di grandi dimensioni?
Gli studenti pianificheranno e costruiranno il proprio gioco utilizzando la guida al progetto delle due lezioni precedenti. Lavorando individualmente o a coppie, gli studenti decideranno innanzitutto il tipo di gioco che vorrebbero creare, prendendo come ispirazione una serie di giochi di esempio. Completeranno quindi una guida al progetto vuota in cui descriveranno il comportamento del gioco e definiranno le variabili, i personaggi e le funzioni di cui avranno bisogno per creare. In Code Studio, una serie di esercizi richiede loro una sequenza generale da utilizzare per implementare questo piano. A metà del processo, gli studenti condivideranno i loro progetti per una revisione tra pari e incorporeranno i commenti man mano che finiranno il gioco. Alla fine della lezione, gli studenti condivideranno i giochi completati con i loro compagni di classe. Questo progetto può facilmente richiedere da 3 a 5 cicli di lezione.
Traguardo di apprendimento
Questa lezione costituisce il momento più importante dell'Unità 3 e offre agli studenti l'opportunità di costruire da zero un proprio progetto di Sviluppo Giochi. Le strutture fornite dalla guida al progetto e la pratica che hanno utilizzato, hanno lo scopo di aiutare gli studenti a definire i loro progetti e a portare a termine le loro idee. Questo progetto è un'opportunità per mostrare le proprie competenze tecniche, ma dovranno anche collaborare con i propri compagni, fornire un commento costruttivo di riscontro tra compagni e utilizzare ripetutamente il processo di risoluzione dei problemi man mano che incontrano ostacoli lungo il percorso. Questo progetto dovrebbe essere diretto dagli studenti ogni volta che è possibile e fornire una conclusione potente e memorabile a questa unità di "Alla scoperta dell'informatica".
Opportunità di valutazione
Usa la tabella del progetto allegata a questa lezione per valutare la padronanza degli obiettivi di apprendimento di questa unità da parte degli studenti. Puoi anche scegliere di assegnare il test post-progetto tramite Code Studio.
Mappatura delle competenze
AP - Algorithms & Programming
- 2-AP-10 - Use flowcharts and/or pseudocode to address complex problems as algorithms.
- 2-AP-11 - Create clearly named variables that represent different data types and perform operations on their values.
- 2-AP-12 - Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals.
- 2-AP-13 - Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs.
- 2-AP-15 - Seek and incorporate feedback from team members and users to refine a solution that meets user needs.
- 2-AP-16 - Incorporate existing code, media, and libraries into original programs, and give attribution.
- 2-AP-17 - Systematically test and refine programs using a range of test cases.
- 2-AP-18 - Distribute tasks and maintain a project timeline when collaboratively developing computational artifacts.
- 2-AP-19 - Document programs in order to make them easier to follow, test, and debug.
Pianificazione
Obiettivi
Gli alunni saranno in grado di:
- creare un piano per la creazione di un software descrivendone i componenti principali
- implementare un piano per la creazione di un software
- ampliare in modo autonomo le funzionalità di un software
Preparazione
- Stampa copie della guida del progetto, una per ogni studente/coppia di studenti
- Stampa copie della tabella di valutazione, una per ogni studente/coppia di studenti
- Stampa copie della guida alla revisione tra pari, una per ogni studente/coppia di studenti
- Ripassa i giochi di esempio in Code Studio
- Controlla il forum "Aula insegnanti" per insegnanti verificati per trovare strategie o risorse aggiuntive condivise dagli altri colleghi insegnanti
- Se stai facendo una lezione virtuale, valuta la possibilità di controllare le nostre Modifiche alla lezione virtuale
Collegamenti
Attenzione! Fai una copia di tutti i documenti che intendi condividere con gli alunni.
Per gli insegnanti
- Codice aggiuntivo negli esercizi di tipo "sfida" - Risorse
- Progetto - Progetta un gioco - Diapositive (Scarica)
Per gli studenti
- Applicazioni pratiche dell'informatica - Riflessione
- Crea il tuo gioco - Guida al progetto
- Crea il tuo gioco - Valutazioni dei parigrado
- Crea il tuo gioco - Criteri di valutazione
- Crea il tuo gioco - Lista di controllo per studenti
Guida didattica
Preparazione (5 minuti)
Discussione: oggi inizierai il progetto finale dell'unità, in cui progetterai e codificherai il tuo gioco. Prima di iniziare, quali sono le tre abilità o qualità che pensi saranno importanti per completare questo progetto?
Condivisione: dai modo agli studenti di condividere le proprie idee.
Questa discussione serve a stabilire le norme culturali per il progetto. Gli studenti dovrebbero aspettarsi che il progetto sia impegnativo, ma che avranno molte opportunità di iterare sul proprio lavoro lavorando insieme per imparare come comunità.
Osservazioni
Esistono molte pratiche che i programmatori usano quando lavorano su progetti di grandi dimensioni. Mentre progetti e costruisci il tuo gioco, prova a riflettere su come usi le cinque pratiche di risoluzione dei problemi, persistenza, comunicazione, collaborazione e creatività.
Domanda del giorno: In che modo le cinque buone prassi dell'informatica (risoluzione dei problemi, perseveranza, comunicazione, collaborazione e creatività) possono aiutare i programmatori a completare progetti di grandi dimensioni?
Attività (215 minuti)
Forma i gruppi: questo progetto può essere completato singolarmente o in coppia. A tua discrezione, puoi scegliere di far formare anche gruppi più numerosi di studenti.
Facilitazione dei progetti di gruppo: se gli studenti lavorano in coppia o in piccoli gruppi per completare i progetti, valuta la possibilità di mostrare questi due video alla classe:
A seconda degli obiettivi che ti prefiggi con questo progetto, considera la possibilità di far completare ai gruppi una Guida per studenti alla pianificazione del gruppo, che rafforza il messaggio nel video
Ricontrolla la guida al progetto
.Distribuisci: a ogni studente o gruppo di studenti dovrebbe essere consegnata una copia della guida al progetto. In classe, esaminate le diverse fasi del progetto e la posizione in cui appaiono nella guida del progetto.
Distribuisci: dai a ogni studente una copia della tabella di valutazione o della lista di controllo degli studenti in modo che sappia fin dall'inizio quali componenti del progetto stai cercando.
Definizione - Ambito del gioco
Girando tra i banchi: gli studenti dovrebbero dedicare i primi 15-20 minuti a giocare ai giochi di esempio, ripassare i lavori precedenti e discutere in gruppo del tipo di gioco che vorrebbero creare. Se vogliono possono disegnare idee su carta da appunti o sui loro diari.
Riflessione libera con la classe: prima di immergerti nei singoli progetti, prendi in considerazione l'idea di condurre una riflesione libera in classe su come potrebbero essere alcuni progetti di esempio che soddisfano questi criteri. Puoi anche decidere di mostrare una o due delle app di esempio per ispirare la riflessione. Utilizzando queste idee, gli studenti potrebbero trovare più facile, per il loro progetto, ispirarsi a un'idea iniziale
Preparazione - Completa la guida al progetto
Girando tra i banchi: una volta che gli studenti hanno discusso le loro idee per il progetto, devono completare la guida al progetto. Anche se questo dovrebbe essere un processo abbastanza familiare, incoraggia gli studenti a rendere ogni componente il più chiaro e dettagliato possibile. Pianificare in anticipo può aiutarli a identificare i problemi nel piano prima di dover apportare modifiche più significative al programma.
Valutare la congruità dei progetti degli studenti: gli studenti possono ideare progetti che vanno oltre le competenze che hanno attualmente o che richiederebbero più tempo del tempo assegnato per essere implementati. Invece di chiedere agli studenti di scegliere un progetto diverso, prova a chiedere agli studenti di immaginare una versione più ridotta della loro idea iniziale. Come analogia, se l'idea iniziale degli studenti è il passo "Corri", immagina una versione meno intensa che rappresenti come sarebbe il passo "Cammina". Se necessario, puoi anche continuare a tornare indietro fino a un passaggio di "Vai molto lento".
Scavando più a fondo: questo è a volte indicato come "Prodotto minimo funzionante" (o MVP, da Minimal Viable Product): puoi saperne di più su questo processo e adattarlo alle tue strategie di progetto leggendo questo articolo: Che senso ha il MVP di Henrik Kniberg
Prova - Scrittura del programma
Transizione: gli studenti sono ora pronti per programmare i loro giochi su Code Studio. Questi esercizi forniscono alcune indicazioni su come gli studenti possono implementare la loro guida al progetto. Nessuno dei passaggi è significativamente diverso da quello che gli studenti hanno visto nelle due lezioni precedenti. Se lo desiderano, gli studenti possono lavorare in un ordine diverso da quello suggerito in questi esercizi.
Nuovo codice ed esercizi di sfida precedenti: in tutta l'unità, gli studenti potrebbero aver imparato codice aggiuntivo negli esercizi di sfida di diverse lezioni. Man mano che gli studenti si avvicinano a questo progetto, potrebbero voler rivisitare il codice che hanno imparato in questi esercizi o visitarli per la prima volta per imparare nuovi codici da utilizzare in questo progetto. Per aiutare gli studenti a tornare agli esercizi precedenti, puoi utilizzare il Extra Code in Challenge Levels come risorsa per scoprire rapidamente dove sono stati introdotti nuovi codici negli esercizi di sfida precedenti.
Strategie per il debugging: mentre gli studenti progettano e implementano le proprie idee di progetto, potrebbero trovarsi con nuovi bug da districare e potresti ritrovarti a guardare un codice completamente sconosciuto mentre gli studenti cercano aiuto per risolvere i loro errori. Per semplificare l'esperienza di debugging, prendi in considerazione le seguenti strategie:
- Consulta la Guida per l'insegnante al debugging per alcune domande e strategie comuni per aiutare gli studenti a eseguire il debugging del loro codice
- Far seguire agli studenti i passaggi della Guida dello studente al debugging e utilizzare i Quaderni di reportistica per i bug come primo passo nel processo di debugging. Questo aiuta gli studenti a preparare e comunicare il loro problema prima di chiedere aiuto.
- Se gli studenti non l'hanno ancora visto, valuta la possibilità di mostrare il video sul debugging alla classe per rafforzare le migliori prassi di debugging.
Scavando più a fondo: valuta la possibilità di fornire agli studenti un oggetto con cui parlare come parte del processo di debugging. Questo a volte è noto come debugging di Rubber Duck: puoi saperne di più sul sito web https://rubberduckdebugging.com/
Rifletti - Revisione tra pari
Distribuisci a ogni studente una copia della guida alla revisione tra pari. Gli studenti dovrebbero dedicare 15 minuti alla revisione del progetto di un altro gruppo e alla compilazione della guida alla revisione tra pari.
Processo iterativo - Aggiornamento del codice
Girando tra i banchi: gli studenti devono completare la parte posteriore della guida alla revisione tra pari e decidere come rispondere ai commenti di riscontro ricevuti. Dovrebbero quindi utilizzare quel riscontro per migliorare il loro gioco.
Gli studenti devono fare riferimento alla tabella con i criteri di valutazione o alla lista di controllo degli studenti per assicurarsi di soddisfare i requisiti del progetto.
Tabella e lista di controllo: gli studenti hanno due risorse che possono utilizzare per l'autoriflessione e assicurarsi di essere sulla strada giusta: la tabella e la lista di controllo degli studenti. Consigliamo agli studenti di utilizzare la lista di controllo per la propria autovalutazione e riflessione, poiché potrebbe essere più facile da digerire e comprendere quando esaminano il proprio progetto. Tuttavia, consigliamo agli insegnanti di utilizzare la tabella completa per valutare i progetti per fornire un commento di riscontro più accurato agli studenti. Puoi vedere esempi di ciò con la risorsa "Esempi di applicazione dei criteri di valutazione" nella parte superiore del piano della lezione (visibile solo agli insegnanti verificati)
Condividi
Condividi: dai modo agli studenti di condividere i loro giochi. Se scegli di consentire agli studenti di fare una presentazione più formale dei loro progetti, la guida al progetto fornisce agli studenti una serie di componenti da includere nelle loro presentazioni, tra cui:
- Il gioco originale che si erano prefissati di costruire
- Una descrizione del processo di programmazione che include almeno una sfida affrontata e una nuova funzionalità che hanno deciso di aggiungere
- Una descrizione del codice più interessante o complesso che hanno scritto
- Una dimostrazione dal vivo del gioco vero e proprio
Conclusione (5 minuti)
Diario
Domanda del giorno: in che modo le cinque buone prassi dell'informatica (risoluzione dei problemi, perseveranza, comunicazione, collaborazione e creatività) possono aiutare i programmatori a completare progetti di grandi dimensioni?
Discussione: chiedi agli studenti di riflettere sul loro sviluppo delle cinque buone prassi di "Alla scoperta dell'informatica" (Risoluzione dei problemi, perseveranza, creatività, collaborazione, comunicazione). Scegli una o più delle seguenti istruzioni come ritieni appropriato.
-
Scegli una delle cinque buone prassi in cui ritieni di aver dimostrato una crescita in questa unità. Scrivi qualcosa che hai fatto che esemplificasse questa pratica.
-
Scegli una pratica in cui pensi di poter continuare a crescere. Qual è una cosa che vorresti fare meglio?
-
Scegli tra quelle buone prassi, quella che hai ritenuto particolarmente importante per il progetto che abbiamo completato oggi. Cosa lo ha reso così importante?
Rifletti
Code Studio: fai andare gli studenti su Code Studio per completare un rapido sondaggio di fine unità. Sebbene le loro risposte siano anonime, i dati aggregati saranno disponibili una volta che almeno cinque studenti avranno completato il sondaggio.
Sondaggio di fine unità per insegnanti
Abbiamo anche un sondaggio di fine corso per gli insegnanti per saperne di più su come è andata l'unità per te e i tuoi studenti. Mentre gli studenti rispondono al sondaggio, completa anche questo sondaggio di fine unità per gli insegnanti . Il tuo riscontro verrà apprezzato e valorizzato!
Dopo la lezione
Test finale
I questionari post-progetto sono inclusi alla fine di ogni unità. Questi includono diverse domande a scelta multipla e ad abbinamento, nonché riflessioni aperte sul progetto finale dell'unità. Questi questionari sono allineati al piano di apprendimento di ciascuna unità e sono progettati per valutare parti del piano che potrebbero non essere state coperte dalle griglie di valutazione del progetto. Per valutare in modo olistico gli obiettivi di apprendimento dell'unità, il questionario post-progetto dovrebbe essere abbinato al progetto di fine unità che è la valutazione primaria dello studente in ciascuna unità.
Sbloccaggio dei questionari: questo questionario è bloccato e nascosto alla vista dello studente per impostazione predefinita. Affinché gli studenti possano vedere e sostenere questo questionario, dovrai sbloccarlo facendo clic sul pulsante "Blocca impostazioni" e seguendo le istruzioni visualizzate. Fare clic qui per ulteriori informazioni sullo sblocco e sull'amministrazione delle valutazioni
Sondaggio di fine corso
Se questa è l'ultima unità di Alla scoperta dell'informatica che stai insegnando, chiedi anche agli studenti di rispondere al sondaggio di fine corso. Consulta la risorsa sulle istruzioni CSD per ulteriori informazioni sul sondaggio di fine corso e su come assegnare e visualizzare i risultati.
Questo compito è disponibile previa Licenza Creative Commons (CC BY-NC-SA 4.0).
Se sei interessato ad utilizzare i materiali di Code.org per scopi commerciali, contattaci.