Testování a zlepšování programů
Připravit hodinu Všechny formáty
Program je potřeba ověřovat během tvorby i po úpravách. Žáci v 8. ročníku navazují na práci s algoritmy, podmínkami, funkcemi a cykly v Pythonu. Spouštějí části programu s různými vstupy a porovnávají jeho chování s očekávaným výsledkem.
Klikněte a tvořte
Získejte přípravu zdarma
Vyberte formát. Jedním kliknutím otevřete tvorbu na téma Testování a zlepšování programů (8. třída) — ScioBot ho připraví za vás.
Další formáty na jedno kliknutí
- Vytvořit: Pracovní list
Po vytvoření si materiál stáhnete jako PDF / DOCX.
- Vytvořit: Písemka
Po vytvoření si materiál stáhnete jako PDF / DOCX.
- Vytvořit: Aktivita
- Vytvořit: Prezentace
Po vytvoření si materiál stáhnete jako PPTX / PDF.
- Vytvořit: Tisknutelné materiály
- Vytvořit: Interaktivní hry
Téma si můžete upravit. Předmět a ročník už jsou vyplněné — stačí si vybrat, co chcete vytvořit.
O tématu
Při neshodě sledují mezivýsledky, hodnoty podmínek a průběh cyklu. Podle zjištění opraví podezřelé místo a znovu vyzkoušejí upravenou i dříve fungující část. Zkoušení, oprava chyb a posouzení efektivity odpovídají výstupu RVP Žák průběžně ověřuje správnost vytvářeného postupu, zkouší program, opravuje chyby, posoudí efektivitu postupu, programu.
U dvou správných řešení stejné úlohy žáci porovnávají počet provedených kroků, průchodů daty nebo opakovaných výpočtů. Své hodnocení opírají o chování programu při stejných vstupech; samotná délka zápisu o úspornosti nerozhoduje.
Zdroje obrázků
- ScioBot · AI ilustrace ScioBot · Vytvořeno pomocí AI · gpt-image-2.6-sunburst
- ScioBot · AI ilustrace ScioBot · Vytvořeno pomocí AI · gpt-image-2.6-sunburst
- ScioBot · AI ilustrace ScioBot · Vytvořeno pomocí AI · gpt-image-2.6-sunburst
- ScioBot · AI ilustrace ScioBot · Vytvořeno pomocí AI · gpt-image-2.6-sunburst
Předpoklady
- Čtení algoritmu s kroky, větvením a opakováním
- Python: podmíněný příkaz
if - Python: funkce a vnořené cykly
- Hledání a oprava chyb v blokovém programu
Klíčové pojmy
- Správnost programu
Program se pro zadané vstupy chová podle zadání a vrací očekávané výsledky.
- Testování
Ověřování chování programu pomocí vybraných vstupů a očekávaných výsledků, také po jeho úpravě.
- Ladění
Systematické hledání a oprava příčiny chyby, například sledováním mezivýsledků, podmínek a průběhu cyklu.
- Efektivita postupu
Úspornost postupu při řešení dané úlohy; lze ji posuzovat například podle počtu kroků, porovnání nebo opakovaných výpočtů.
- Průchod daty
Postupné zpracování položek, například prvků seznamu. Opakované průchody mohou zvýšit množství práce programu.
- Testovací vstup
Vstup zvolený k ověření programu; podle zadání může jít o běžný, krajní nebo prázdný případ.
Nápady na aktivity
-
Postup
Testování programu na různých vstupech
Žáci seřadí kroky testování: zvolí vstupy, spustí program, zaznamenají výsledek a podle něj upraví řešení.
-
Kvíz
Hledání chyb v ukázkovém programu
Žáci vyberou, který vstup odhalí chybu v programu a jaký výsledek lze očekávat. Ověří také, která oprava odpovídá zadání.
-
Rozřazování
Třídění vstupů a výsledků testů
Žáci roztřídí testovací případy podle toho, zda program vrací očekávaný výsledek, nebo odhaluje chybu.
-
Přiřazování
Přiřazení chyby k vhodné opravě
Žáci přiřadí popsané chybné chování programu до příslušné opravy a očekávaného výsledku po úpravě.
-
Logický řetěz
Od chyby v programu k jejímu důsledku
Žáci poskládají řetězec příčina–děj–důsledek: chybný vstup či podmínka, průběh programu a vzniklý výsledek.
-
Rozhodování
Porovnání dvou řešení stejné úlohy
Žáci rozhodnou, které ze dvou řešení vyžaduje méně práce v zadaném případě, a svou volbu opřou o porovnání počtu kroků.
Časté miskoncepce
Častá chyba
„Když program jednou vypíše správné číslo, je hotovo.“
Jak na to
Vyzkoušejte další vstupy, například nulu, kladné a záporné číslo, pokud je zadání připouští. U každého porovnejte výsledek s očekáváním.
Častá chyba
„Delší program je lepší nebo odbornější.“
Jak na to
Porovnejte dvě správná řešení stejné úlohy při stejných vstupech. Sledujte, zda některé z nich opakuje výpočet nebo prochází data zbytečně vícekrát.
Častá chyba
„Když program nefunguje, opravím najednou několik částí.“
Jak na to
Nejprve sledujte mezivýsledek před podezřelou podmínkou. Podle zjištění upravte jednu část a program znovu ověřte.
Častá chyba
„Efektivitu poznám podle toho, jak rychle program působí při krátkém výpisu.“
Jak na to
U stejné úlohy porovnejte počet provedených operací pro menší a větší vstup. Například kontrola všech dvojic prvků vyžaduje u 5 prvků 10 porovnání a u 20 prvků 190.
Úkoly pro žáky
Ve dvojici jeden žák upravuje program, druhý navrhuje testovací vstupy a porovnává výsledky se zadáním.
Žáci u dvou hotových řešení stejné úlohy hledají opakovaný výpočet nebo další průchod daty a navrhnou úpravu.
Hodnocení
Žák předvede zkoušení programu s různými vstupy, vysvětlí příčinu nalezené chyby a ověří svou opravu.
Žák porovná dvě správná řešení stejné úlohy a své hodnocení úspornosti doloží počtem kroků, porovnání nebo průchodů daty.
Související témata
- Python: podmíněný příkaz if
- Python: aplikace — čísla a obrázky
- Čtení a vysvětlení algoritmu
- Rozklad problému na řešitelné části
- Hledání a oprava chyb v programu
Očekávané výstupy
- RVP · INF-INF-002-ZV9-008 Průběžně ověřuje správnost vytvářeného postupu, zkouší program, opravuje chyby, posoudí efektivitu postupu, programu.
Zdroje
Učíte Testování a zlepšování programů trochu jinak?
Popište ScioBotu vlastními slovy, co s žáky chcete zvládnout a kolik máte času. Materiál přizpůsobí vašemu ŠVP, třídě i žákům se speciálními vzdělávacími potřebami.
Prozkoumejte další témata
-
Informační systémy
Informační systém propojuje údaje, lidi a pravidla práce; na příkladu knihovny lze ukázat, jak zápis výpůjčky ovlivní informace dostupné jednotlivým uživatelům.
-
Bezpečnost na internetu
Bezpečnost na internetu zahrnuje ochranu účtů a soukromí, ověřování podezřelých zpráv a přivolání pomoci při obtěžování nebo zneužití údajů.
-
Počítačové sítě
Počítačové sítě propojují zařízení pro přenos dat a sdílení služeb; na modelu školní sítě lze vysvětlit cestu dat i rozdíl mezi místním spojením a přístupem k internetu.
-
Práce s daty
Sběr, uspořádání a porovnávání údajů v tabulce pomáhá odpovídat na otázky a rozlišovat, co lze ze zaznamenaných dat zjistit.
-
Kyberbezpečnost
Ochrana účtů, zařízení a dat spojuje rozpoznání podvodných požadavků, vhodná preventivní opatření a bezpečnou reakci při podezření na napadení.
-
Digitální stopa
Digitální stopa vzniká zveřejňováním obsahu i používáním internetových služeb; její dopady závisí na tom, kdo údaje získá, propojí a dále sdílí.
-
Šifrování
Šifrování mění zprávu podle klíče; na posunu písmen žáci poznají rozdíl mezi znalostí postupu, znalostí klíče a možností šifru prolomit.
-
Excel
Excel umožňuje uspořádat údaje do tabulky, propojit je vzorci a zobrazit v grafu; základem je rozumět tomu, jak změna vstupních hodnot ovlivní výsledek.