Zum Inhalt springen

Informatik 8: Softwareprojekt planen und durchfuehren: Unterschied zwischen den Versionen

Aus Informatik.wiki
Zwischenüberschriften im Informatik-Bereich vereinheitlicht
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
← [[Informatik 8. Klasse|Informatik 8. Klasse]]
← [[Informatik 8. Klasse|Zurück zur 8. Klasse]]


Die kompakten Lernziele verbinden Planung, Entwicklung, Zusammenarbeit, Überprüfung und Reflexion, damit Schülerinnen und Schüler ein Softwareprojekt nicht nur beginnen, sondern zielgerichtet strukturieren, umsetzen, verbessern und nachvollziehbar abschließen können.
<div style="border:1px solid #a2a9b1; background:#f8f9fa; padding:1em; margin:0 0 1.5em 0;">
'''Worum geht es?''' 
Die Lerninhalte verbinden Projektidee, Planung, agile Organisation, technische Umsetzung und Auswertung, damit Softwareprojekte als geordnete Entwicklungsprozesse verstanden werden und nicht als ungeplantes Programmieren ohne Ziel, Struktur, Rückmeldung und gemeinsame Verantwortung.
</div>


== 15.1 Lernziele ==
== Lernziele ==


* Ziele klären, Bedarf beschreiben
Nach diesem Kapitel kannst du:
* Anforderungen sammeln, Funktionen ordnen
* Aufgaben zerlegen, Schritte planen
* Rollen verteilen, Zusammenarbeit organisieren
* Entwürfe skizzieren, Modelle nutzen
* Prototypen bauen, Funktionen testen
* Fehler finden, Lösungen verbessern
* Zeit planen, Meilensteine setzen
* Fortschritt dokumentieren, Ergebnisse sichern
* Projekte präsentieren, Prozesse reflektieren


== 15.2 Lerninhalte ==
* Ziele klären, Bedarf beschreiben.
* Anforderungen sammeln, Funktionen ordnen.
* Aufgaben zerlegen, Schritte planen.
* Rollen verteilen, Zusammenarbeit organisieren.
* Entwürfe skizzieren, Modelle nutzen.
* Prototypen bauen, Funktionen testen.
* Fehler finden, Lösungen verbessern.
* Zeit planen, Meilensteine setzen.
* Fortschritt dokumentieren, Ergebnisse sichern.
* Projekte präsentieren, Prozesse reflektieren.


Die Lerninhalte verbinden Projektidee, Planung, agile Organisation, technische Umsetzung und Auswertung, damit Softwareprojekte als geordnete Entwicklungsprozesse verstanden werden und nicht als ungeplantes Programmieren ohne Ziel, Struktur, Rückmeldung und gemeinsame Verantwortung.
=== Anschluss an die 7. Klasse ===
 
Du kennst die Methoden der Softwareentwicklung. Jetzt planst und realisierst du ein Softwareprojekt selbstständig bzw. im Team – von Projektziel und Anforderungen bis Test, Präsentation und Reflexion.
 
== Lerninhalte ==
 
=== Kompaktüberblick ===
 
{| class="wikitable"
! Teilbereich
! Kerngedanke
|-
| Von der Idee zum Projektziel
| Ein tragfähiges Softwareprojekt beginnt mit einer klaren Problemstellung, weil nur dann entschieden werden kann, welche Funktion wirklich wichtig ist, wer das Produkt nutzen soll und welche Grenzen bei Zeit, Material und Umfang gelten.
|-
| Anforderungen sammeln und priorisieren
| Eine gute Planung gelingt leichter, wenn Wünsche nicht ungeordnet nebeneinanderstehen, sondern in notwendige Funktionen, sinnvolle Erweiterungen und optionale Zusatzideen gegliedert werden, damit das Projekt überschaubar und auch unter realen Bedingungen …
|-
| Aufgaben zerlegen und Arbeitsphasen planen
| Komplexe Projekte werden erst dann gut beherrschbar, wenn sie in Teilaufgaben zerlegt und in eine sinnvolle Reihenfolge gebracht werden, sodass Teams Schritt für Schritt arbeiten und Zwischenergebnisse gezielt überprüfen können.
|-
| Rollen und Teamarbeit im Softwareprojekt
| Gemeinsame Entwicklung wird produktiver, wenn Zuständigkeiten bewusst verteilt und regelmäßig abgestimmt werden, weil dadurch Planung, Umsetzung, Test, Dokumentation und Kommunikation nicht zufällig, sondern nachvollziehbar und verlässlich erfolgen.
|-
| Agile Planung mit Scrum und Kanban
| Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden.
|-
| Entwurf, Prototyp und erste Umsetzung
| Ein Softwareprojekt wird leichter umsetzbar, wenn Ideen zuerst skizziert und als einfache Grundversion erprobt werden, weil frühe Prototypen Fehler sichtbar machen und verhindern, dass zu früh an zu vielen Details gearbeitet wird.
|-
| Testen, Debuggen und Qualität sichern
| Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung …
|-
| Pair Programming und Zusammenarbeit am Code
| Gemeinsames Programmieren kann Lernprozesse deutlich vertiefen, wenn Rollen klar verteilt und regelmäßig gewechselt werden, weil dadurch Planung, sprachliche Abstimmung und Fehlervermeidung stärker in den Vordergrund rücken als bloßes Tippen.
|-
| Dokumentation, Präsentation und Abschluss
| Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können.
|-
| Reflexion und Weiterentwicklung
| Nachhaltiges Projektlernen entsteht besonders dann, wenn Teams ihren Ablauf, ihre Zusammenarbeit und ihre Entscheidungen rückblickend bewerten, weil daraus Verbesserungen für spätere Softwareprojekte und ein realistischeres Verständnis von Entwicklungsarbeit …
|}
 
<div style="border-left:4px solid #36c; background:#f8f9fa; padding:.8em 1em; margin:1em 0;">
'''Merke:''' Ein Softwareprojekt gelingt besser, wenn Ziel, Anforderungen, Aufgaben, Rollen, Versionen und Tests von Anfang an sichtbar organisiert werden.
</div>


=== Von der Idee zum Projektziel ===
=== Von der Idee zum Projektziel ===


Ein tragfähiges Softwareprojekt beginnt mit einer klaren Problemstellung, weil nur dann entschieden werden kann, welche Funktion wirklich wichtig ist, wer das Produkt nutzen soll und welche Grenzen bei Zeit, Material und Umfang gelten. Am Anfang steht nicht der Code, sondern die Frage nach dem Zweck. Ein Projekt braucht ein verständliches Ziel, eine grobe Vorstellung vom späteren Produkt und eine erste Entscheidung darüber, welche Grundfunktion unbedingt vorhanden sein muss. Im Skriptum wird dafür mit Product Backlog, Storysheet und Sprint-Backlog gearbeitet; dort werden gewünschte Produkteigenschaften, Minimalfunktionen und nötige Materialien vor der Umsetzung gesammelt.
Ein tragfähiges Softwareprojekt beginnt mit einer klaren Problemstellung, weil nur dann entschieden werden kann, welche Funktion wirklich wichtig ist, wer das Produkt nutzen soll und welche Grenzen bei Zeit, Material und Umfang gelten.
 
Am Anfang steht nicht der Code, sondern die Frage nach dem Zweck. Ein Projekt braucht ein verständliches Ziel, eine grobe Vorstellung vom späteren Produkt und eine erste Entscheidung darüber, welche Grundfunktion unbedingt vorhanden sein muss.


'''Beispiele:'''
'''Beispiele:'''


Ein Klassenquiz soll Fragen anzeigen, Antworten prüfen und Punkte zählen. Ein Erinnerungsprogramm soll Termine speichern und rechtzeitig erinnern. Ein Scratch-Spiel soll eine Figur steuern, Hindernisse erkennen und den Punktestand anzeigen. Ein Formularprojekt soll Daten erfassen und auswertbar machen.
Ein Klassenquiz soll Fragen anzeigen, Antworten prüfen und Punkte zählen.
 
Ein Erinnerungsprogramm soll Termine speichern und rechtzeitig erinnern.
 
Ein Scratch-Spiel soll eine Figur steuern, Hindernisse erkennen und den Punktestand anzeigen.


* Idee, Problem
Ein Formularprojekt soll Daten erfassen und auswertbar machen.
* Ziel, Nutzen
 
* Bedarf, Zielgruppe
Idee, Problem
* Pflichtfunktion, Zusatzfunktion
 
* Grenze, Umfang
Ziel, Nutzen
* Start, Richtung
 
Bedarf, Zielgruppe
 
Pflichtfunktion, Zusatzfunktion
 
Grenze, Umfang
 
Start, Richtung


=== Anforderungen sammeln und priorisieren ===
=== Anforderungen sammeln und priorisieren ===


Eine gute Planung gelingt leichter, wenn Wünsche nicht ungeordnet nebeneinanderstehen, sondern in notwendige Funktionen, sinnvolle Erweiterungen und optionale Zusatzideen gegliedert werden, damit das Projekt überschaubar und auch unter realen Bedingungen umsetzbar bleibt. Anforderungen beschreiben, was das Produkt leisten soll. Dazu gehören Grundfunktionen, Bedienwünsche, technische Bedingungen und Materialien. Besonders wichtig ist die Unterscheidung zwischen Muss- und Kann-Funktionen. Im Beispiel „Hot Wire“ im Skriptum werden dafür im Product Backlog zuerst unverzichtbare Eigenschaften wie Stabilität, Parcours, Lichtsignal und Microcontroller festgelegt und danach optionale Erweiterungen wie Starttaste oder Kontaktzähler ergänzt.
Eine gute Planung gelingt leichter, wenn Wünsche nicht ungeordnet nebeneinanderstehen, sondern in notwendige Funktionen, sinnvolle Erweiterungen und optionale Zusatzideen gegliedert werden, damit das Projekt überschaubar und auch unter realen Bedingungen umsetzbar bleibt.
 
Anforderungen beschreiben, was das Produkt leisten soll. Dazu gehören Grundfunktionen, Bedienwünsche, technische Bedingungen und Materialien. Besonders wichtig ist die Unterscheidung zwischen Muss-und Kann-Funktionen.


'''Beispiele:'''
'''Beispiele:'''


Bei einer Lernapp sind Eingabe und Rückmeldung Pflicht, Ranglisten vielleicht Zusatz. Bei einer Schulwebsite sind Startseite, Navigation und Inhalte Pflicht, Animationen eher Zusatz. Bei einem Spiel ist die Steuerung Pflicht, Spezialeffekte sind oft Erweiterungen.
Bei einer Lernapp sind Eingabe und Rückmeldung Pflicht, Ranglisten vielleicht Zusatz.


* Muss, Kann
Bei einer Schulwebsite sind Startseite, Navigation und Inhalte Pflicht, Animationen eher Zusatz.
* Kernfunktion, Zusatzidee
 
* Bedarf, Auswahl
Bei einem Spiel ist die Steuerung Pflicht, Spezialeffekte sind oft Erweiterungen.
* Priorität, Reihenfolge
 
* Realismus, Begrenzung
Muss, Kann
* Planung, Fokus
 
Kernfunktion, Zusatzidee
 
Bedarf, Auswahl
 
Priorität, Reihenfolge
 
Realismus, Begrenzung
 
Planung, Fokus


=== Aufgaben zerlegen und Arbeitsphasen planen ===
=== Aufgaben zerlegen und Arbeitsphasen planen ===


Komplexe Projekte werden erst dann gut beherrschbar, wenn sie in Teilaufgaben zerlegt und in eine sinnvolle Reihenfolge gebracht werden, sodass Teams Schritt für Schritt arbeiten und Zwischenergebnisse gezielt überprüfen können. Zur Projektplanung gehört die Aufteilung in kleine, bearbeitbare Aufgaben. Diese Teilaufgaben können etwa Recherche, Skizze, Oberfläche, Programmlogik, Test, Materialbeschaffung, Dokumentation oder Präsentation umfassen. Im Sprint-Backlog des Skriptums werden genau solche Schritte aufgelistet, etwa bestehende Produkte erkunden, Minimalfunktion festlegen, Skizze anfertigen, Ein- und Ausgänge bestimmen, Programm schrittweise beschreiben, Testkonfiguration erstellen und Fehleranalyse durchführen.
Komplexe Projekte werden erst dann gut beherrschbar, wenn sie in Teilaufgaben zerlegt und in eine sinnvolle Reihenfolge gebracht werden, sodass Teams Schritt für Schritt arbeiten und Zwischenergebnisse gezielt überprüfen können.
 
Zur Projektplanung gehört die Aufteilung in kleine, bearbeitbare Aufgaben. Diese Teilaufgaben können etwa Recherche, Skizze, Oberfläche, Programmlogik, Test, Materialbeschaffung, Dokumentation oder Präsentation umfassen.


'''Beispiele:'''
'''Beispiele:'''
Zeile 58: Zeile 132:
Ein Spielprojekt wird zerlegt in Startbild, Steuerung, Kollision, Punkte, Tests.
Ein Spielprojekt wird zerlegt in Startbild, Steuerung, Kollision, Punkte, Tests.


Eine Umfrage wird zerlegt in Fragen, Formulargestaltung, Testlauf, Auswertung, Darstellung. Ein Microcontroller-Projekt wird zerlegt in Schaltplan, Anschlüsse, Grundprogramm, Signal, Test.
Eine Umfrage wird zerlegt in Fragen, Formulargestaltung, Testlauf, Auswertung, Darstellung.


* Teilaufgabe, Reihenfolge
Ein Microcontroller-Projekt wird zerlegt in Schaltplan, Anschlüsse, Grundprogramm, Signal, Test.
* Recherche, Skizze
 
* Aufbau, Test
Teilaufgabe, Reihenfolge
* Kontrolle, Verbesserung
 
* Schrittplan, Übersicht
Recherche, Skizze
* Phase, Fortschritt
 
Aufbau, Test
 
Kontrolle, Verbesserung
 
Schrittplan, Übersicht
 
Phase, Fortschritt


=== Rollen und Teamarbeit im Softwareprojekt ===
=== Rollen und Teamarbeit im Softwareprojekt ===


Gemeinsame Entwicklung wird produktiver, wenn Zuständigkeiten bewusst verteilt und regelmäßig abgestimmt werden, weil dadurch Planung, Umsetzung, Test, Dokumentation und Kommunikation nicht zufällig, sondern nachvollziehbar und verlässlich erfolgen. Softwareprojekte sind meist Teamarbeit. Rollen helfen, Verantwortung sichtbar zu machen. Das Skriptum beschreibt für Scrum die Rollen Developer, Product Owner und Scrum Master. Zusätzlich wird im schulischen Kontext erwähnt, dass Lehrpersonen je nach Projektform stärker strukturierend oder eher begleitend eingreifen können. Für Unterrichtsprojekte lassen sich Rollen vereinfacht als Planung, Umsetzung, Test, Dokumentation oder Moderation verteilen.
Gemeinsame Entwicklung wird produktiver, wenn Zuständigkeiten bewusst verteilt und regelmäßig abgestimmt werden, weil dadurch Planung, Umsetzung, Test, Dokumentation und Kommunikation nicht zufällig, sondern nachvollziehbar und verlässlich erfolgen.
 
Softwareprojekte sind meist Teamarbeit. Rollen helfen, Verantwortung sichtbar zu machen.
 
Zusätzlich wird im schulischen Kontext erwähnt, dass Lehrpersonen je nach Projektform stärker strukturierend oder eher begleitend eingreifen können. Für Unterrichtsprojekte lassen sich Rollen vereinfacht als Planung, Umsetzung, Test, Dokumentation oder Moderation verteilen.


'''Beispiele:'''
'''Beispiele:'''


Eine Person sammelt Anforderungen. Eine andere erstellt Entwurf oder Oberfläche. Eine dritte testet und dokumentiert Fehler. Eine vierte achtet auf Zeit, Aufgaben und Absprachen.
Eine Person sammelt Anforderungen.
 
Eine andere erstellt Entwurf oder Oberfläche.
 
Eine dritte testet und dokumentiert Fehler.
 
Eine vierte achtet auf Zeit, Aufgaben und Absprachen.
 
Rolle, Planung
 
Rolle, Umsetzung
 
Rolle, Test
 
Rolle, Dokumentation
 
Rolle, Moderation
 
Team, Abstimmung
 
=== Orientierung auf einen Blick ===


* Rolle, Planung
{| class="wikitable"
* Rolle, Umsetzung
! Als Nächstes
* Rolle, Test
! Kurz erklärt
* Rolle, Dokumentation
|-
* Rolle, Moderation
| Agile Planung mit Scrum und Kanban
* Team, Abstimmung
| Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden.
|-
| Entwurf, Prototyp und erste Umsetzung
| Ein Softwareprojekt wird leichter umsetzbar, wenn Ideen zuerst skizziert und als einfache Grundversion erprobt werden, weil frühe Prototypen Fehler sichtbar machen und verhindern, dass zu früh an zu vielen Details gearbeitet wird.
|-
| Testen, Debuggen und Qualität sichern
| Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung …
|}
 
<div style="border-left:4px solid #36c; background:#f8f9fa; padding:.8em 1em; margin:1em 0;">
'''Merke:''' Achte beim Weiterlesen darauf, wie die nächsten Teilaspekte mit den bereits behandelten Grundlagen zusammenhängen.
</div>


=== Agile Planung mit Scrum und Kanban ===
=== Agile Planung mit Scrum und Kanban ===


Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden. Im Skriptum wird Scrum als agile, auf Selbstorganisation ausgerichtete Projektmanagement- Methode beschrieben. Genannt werden Sprint, Daily Stand-up, Sprint Review, Sprint Retrospektive, Product Backlog und Sprint Backlog. Kanbanboards mit Spalten wie To-Do, Next, Doing und Done helfen dabei, Aufgaben sichtbar zu halten und den Arbeitsstand laufend zu aktualisieren. Gerade im Unterricht ist diese Form übersichtlich, weil sie Fortschritt und
Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden.


Hindernisse schnell erkennbar macht.
Genannt werden Sprint, Daily Stand-up, Sprint Review, Sprint Retrospektive, Product Backlog und Sprint Backlog. Kanbanboards mit Spalten wie To-Do, Next, Doing und Done helfen dabei, Aufgaben sichtbar zu halten und den Arbeitsstand laufend zu aktualisieren. Gerade im Unterricht ist diese Form übersichtlich, weil sie Fortschritt und Hindernisse schnell erkennbar macht.


'''Beispiele:'''
'''Beispiele:'''


Ein Sprint kann eine Unterrichtsstunde oder Doppelstunde sein. Ein Daily Stand-up kann als kurze Besprechung am Stundenanfang durchgeführt werden. Ein Kanbanboard zeigt, welche Aufgabe noch offen, gerade in Arbeit oder bereits erledigt ist. Ein Review prüft, ob die vereinbarte Funktion am Ende wirklich erreicht wurde.
Ein Sprint kann eine Unterrichtsstunde oder Doppelstunde sein.


* Scrum, Kanban
Ein Daily Stand-up kann als kurze Besprechung am Stundenanfang durchgeführt werden.
* Sprint, Stand-up
 
* Backlog, Board
Ein Kanbanboard zeigt, welche Aufgabe noch offen, gerade in Arbeit oder bereits erledigt ist.
* Doing, Done
 
* Review, Retrospektive
Ein Review prüft, ob die vereinbarte Funktion am Ende wirklich erreicht wurde.
* Transparenz, Steuerung
 
Scrum, Kanban
 
Sprint, Stand-up
 
Backlog, Board
 
Doing, Done
 
Review, Retrospektive
 
Transparenz, Steuerung


=== Entwurf, Prototyp und erste Umsetzung ===
=== Entwurf, Prototyp und erste Umsetzung ===


Ein Softwareprojekt wird leichter umsetzbar, wenn Ideen zuerst skizziert und als einfache Grundversion erprobt werden, weil frühe Prototypen Fehler sichtbar machen und verhindern, dass zu früh an zu vielen Details gearbeitet wird. Vor der vollständigen Umsetzung helfen Skizzen, Ablaufdarstellungen und Minimalfunktionen. Im Sprint-Backlog des Skriptums wird ausdrücklich gefordert, die minimalste Funktionalität für einen Prototyp festzulegen, eine Skizze anzufertigen und erst danach den Prototyp zu bauen. Dieses Vorgehen ist auch für schulische Softwareprojekte sinnvoll: zuerst die kleinste lauffähige Version, dann Erweiterungen.
Ein Softwareprojekt wird leichter umsetzbar, wenn Ideen zuerst skizziert und als einfache Grundversion erprobt werden, weil frühe Prototypen Fehler sichtbar machen und verhindern, dass zu früh an zu vielen Details gearbeitet wird.
 
Vor der vollständigen Umsetzung helfen Skizzen, Ablaufdarstellungen und Minimalfunktionen.
 
Dieses Vorgehen ist auch für schulische Softwareprojekte sinnvoll: zuerst die kleinste lauffähige Version, dann Erweiterungen.


'''Beispiele:'''
'''Beispiele:'''


Ein Quiz startet zuerst nur mit einer Frage und Rückmeldung. Ein Spiel beginnt nur mit Figur und Bewegung. Eine App-Idee wird zuerst als Bildschirmskizze mit Buttons entworfen. Ein Formular wird zuerst mit wenigen Feldern getestet.
Ein Quiz startet zuerst nur mit einer Frage und Rückmeldung.


* Skizze, Entwurf
Ein Spiel beginnt nur mit Figur und Bewegung.
* Minimalfunktion, Prototyp
 
* Grundversion, Ausbau
Eine App-Idee wird zuerst als Bildschirmskizze mit Buttons entworfen.
* Oberfläche, Ablauf
 
* Teststart, Umsetzung
Ein Formular wird zuerst mit wenigen Feldern getestet.
* Idee, Produkt
 
Skizze, Entwurf
 
Minimalfunktion, Prototyp
 
Grundversion, Ausbau
 
Oberfläche, Ablauf
 
Teststart, Umsetzung
 
Idee, Produkt


=== Testen, Debuggen und Qualität sichern ===
=== Testen, Debuggen und Qualität sichern ===


Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung entsteht. Testen bedeutet, geplante Funktionen an konkreten Beispielen zu überprüfen. Debuggen bedeutet, Fehlerquellen zu finden und zu beheben. Im Skriptum wird dafür eine Testkonfiguration, das schrittweise Beschreiben der Programmlogik und eine Fehleranalyse
Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung entsteht.


genannt. Gerade im Unterricht ist es sinnvoll, nach jeder kleinen Erweiterung zu prüfen, ob die bestehende Funktion weiterhin korrekt arbeitet.
Testen bedeutet, geplante Funktionen an konkreten Beispielen zu überprüfen. Debuggen bedeutet, Fehlerquellen zu finden und zu beheben. Gerade im Unterricht ist es sinnvoll, nach jeder kleinen Erweiterung zu prüfen, ob die bestehende Funktion weiterhin korrekt arbeitet.


'''Beispiele:'''
'''Beispiele:'''


Nach dem Einbau eines Punktestands wird geprüft, ob Kollisionen noch richtig erkannt werden. Ein Formular wird mit echten Beispielantworten getestet. Ein Signalprojekt wird zuerst nur mit einer Anzeige geprüft, bevor Ton und Zähler hinzukommen. Ein Fehlerprotokoll sammelt, was noch nicht wie geplant funktioniert.
Nach dem Einbau eines Punktestands wird geprüft, ob Kollisionen noch richtig erkannt werden.
 
Ein Formular wird mit echten Beispielantworten getestet.
 
Ein Signalprojekt wird zuerst nur mit einer Anzeige geprüft, bevor Ton und Zähler hinzukommen.
 
Ein Fehlerprotokoll sammelt, was noch nicht wie geplant funktioniert.
 
Test, Kontrolle
 
Fehler, Suche
 
Korrektur, Verbesserung
 
Beispiel, Prüfung


* Test, Kontrolle
Qualität, Stabilität
* Fehler, Suche
 
* Korrektur, Verbesserung
Debugging, Sicherheit
* Beispiel, Prüfung
 
* Qualität, Stabilität
=== Zweiter Zwischenüberblick ===
* Debugging, Sicherheit
 
{| class="wikitable"
! Vertiefung
! Wichtig dabei
|-
| Pair Programming und Zusammenarbeit am Code
| Gemeinsames Programmieren kann Lernprozesse deutlich vertiefen, wenn Rollen klar verteilt und regelmäßig gewechselt werden, weil dadurch Planung, sprachliche Abstimmung und Fehlervermeidung stärker in den Vordergrund rücken als bloßes Tippen.
|-
| Dokumentation, Präsentation und Abschluss
| Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können.
|-
| Reflexion und Weiterentwicklung
| Nachhaltiges Projektlernen entsteht besonders dann, wenn Teams ihren Ablauf, ihre Zusammenarbeit und ihre Entscheidungen rückblickend bewerten, weil daraus Verbesserungen für spätere Softwareprojekte und ein realistischeres Verständnis von Entwicklungsarbeit …
|}
 
<div style="border-left:4px solid #36c; background:#f8f9fa; padding:.8em 1em; margin:1em 0;">
'''Merke:''' Die Teilaspekte gehören zusammen: Fachwissen wird besonders tragfähig, wenn du Zusammenhänge an konkreten Beispielen erklären kannst.
</div>


=== Pair Programming und Zusammenarbeit am Code ===
=== Pair Programming und Zusammenarbeit am Code ===


Gemeinsames Programmieren kann Lernprozesse deutlich vertiefen, wenn Rollen klar verteilt und regelmäßig gewechselt werden, weil dadurch Planung, sprachliche Abstimmung und Fehlervermeidung stärker in den Vordergrund rücken als bloßes Tippen. Das Skriptum beschreibt Pair Programming als agile Methode, bei der zwei Personen an einem Rechner arbeiten. Eine Person übernimmt als Driver die Eingabe, die andere als Navigator beobachtet, denkt mit und achtet auf Fehler oder bessere Wege. Die Rollen sollen regelmäßig wechseln. Für den Unterricht wird ausdrücklich betont, dass dabei soziale Kompetenzen und eine bewusste Aufgabenverteilung wichtig sind.
Gemeinsames Programmieren kann Lernprozesse deutlich vertiefen, wenn Rollen klar verteilt und regelmäßig gewechselt werden, weil dadurch Planung, sprachliche Abstimmung und Fehlervermeidung stärker in den Vordergrund rücken als bloßes Tippen.
 
Eine Person übernimmt als Driver die Eingabe, die andere als Navigator beobachtet, denkt mit und achtet auf Fehler oder bessere Wege. Die Rollen sollen regelmäßig wechseln. Für den Unterricht wird ausdrücklich betont, dass dabei soziale Kompetenzen und eine bewusste Aufgabenverteilung wichtig sind.


'''Beispiele:'''
'''Beispiele:'''


Beim Scratch-Projekt steuert eine Person die Blöcke, die andere überprüft Logik und Reihenfolge. Beim Schreiben eines Programms achtet der Navigator auf Tippfehler und fehlende Bedingungen. Nach zehn bis zwanzig Minuten wechseln die Rollen, damit beide aktiv beteiligt bleiben.
Beim Scratch-Projekt steuert eine Person die Blöcke, die andere überprüft Logik und Reihenfolge.
 
Beim Schreiben eines Programms achtet der Navigator auf Tippfehler und fehlende Bedingungen.
 
Nach zehn bis zwanzig Minuten wechseln die Rollen, damit beide aktiv beteiligt bleiben.
 
Driver, Navigator
 
Wechsel, Absprache


* Driver, Navigator
Code, Kontrolle
* Wechsel, Absprache
 
* Code, Kontrolle
Blick, Fehler
* Blick, Fehler
 
* Team, Rollen
Team, Rollen
* Zusammenarbeit, Lernen
 
Zusammenarbeit, Lernen


=== Dokumentation, Präsentation und Abschluss ===
=== Dokumentation, Präsentation und Abschluss ===


Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können. Zur Durchführung eines Projekts gehört nicht nur das Endprodukt, sondern auch seine
Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können.


Dokumentation. Dazu zählen Funktionsbeschreibungen, Aufgabenstände, Testnotizen, Screenshots, kurze Erklärungen und Präsentationen. Die Informatik-Unterlagen betonen bei kreativer Zusammenarbeit ausdrücklich Projektplanung, Zeitplanung, Ressourcenverwaltung, Meilensteinsetzung und die Nutzung digitaler Werkzeuge zur Projektüberwachung. Am Ende sollte daher nicht nur das Ergebnis gezeigt, sondern auch der Projektverlauf verständlich gemacht werden.
Zur Durchführung eines Projekts gehört nicht nur das Endprodukt, sondern auch seine Dokumentation. Dazu zählen Funktionsbeschreibungen, Aufgabenstände, Testnotizen, Screenshots, kurze Erklärungen und Präsentationen. Am Ende sollte daher nicht nur das Ergebnis gezeigt, sondern auch der Projektverlauf verständlich gemacht werden.


'''Beispiele:'''
'''Beispiele:'''


Eine Gruppe präsentiert ihr Spiel und erklärt zugleich Backlog, Testschritte und Erweiterungen. Ein Team zeigt im Board, wie Aufgaben von To-Do nach Done gewandert sind. Ein kurzes Projektprotokoll hält fest, welche Funktionen fertig, offen oder verbessert wurden.
Eine Gruppe präsentiert ihr Spiel und erklärt zugleich Backlog, Testschritte und Erweiterungen.
 
Ein Team zeigt im Board, wie Aufgaben von To-Do nach Done gewandert sind.
 
Ein kurzes Projektprotokoll hält fest, welche Funktionen fertig, offen oder verbessert wurden.


* Dokumentation, Verlauf
Dokumentation, Verlauf
* Screenshot, Notiz
 
* Präsentation, Ergebnis
Screenshot, Notiz
* Meilenstein, Überblick
 
* Abschluss, Rückblick
Präsentation, Ergebnis
* Produkt, Erklärung
 
Meilenstein, Überblick
 
Abschluss, Rückblick
 
Produkt, Erklärung


=== Reflexion und Weiterentwicklung ===
=== Reflexion und Weiterentwicklung ===


Nachhaltiges Projektlernen entsteht besonders dann, wenn Teams ihren Ablauf, ihre Zusammenarbeit und ihre Entscheidungen rückblickend bewerten, weil daraus Verbesserungen für spätere Softwareprojekte und ein realistischeres Verständnis von Entwicklungsarbeit entstehen. Eine Retrospektive oder Feedbackrunde hilft zu klären, was gut gelungen ist, wo Zeit verloren ging, welche Aufgaben unklar waren und welche Methode geholfen hat. Das Skriptum nennt die Retrospektive ausdrücklich als Teil von Scrum; dort soll der Prozess selbst reflektiert und angepasst werden. Auch in den Informatik-Unterlagen wird Reflexion nach Gruppenarbeit und Präsentation als wichtiger Abschluss beschrieben.
Nachhaltiges Projektlernen entsteht besonders dann, wenn Teams ihren Ablauf, ihre Zusammenarbeit und ihre Entscheidungen rückblickend bewerten, weil daraus Verbesserungen für spätere Softwareprojekte und ein realistischeres Verständnis von Entwicklungsarbeit entstehen.
 
Eine Retrospektive oder Feedbackrunde hilft zu klären, was gut gelungen ist, wo Zeit verloren ging, welche Aufgaben unklar waren und welche Methode geholfen hat.


'''Beispiele:'''
'''Beispiele:'''


Ein Team merkt, dass zu viele Zusatzideen am Anfang Zeit gekostet haben. Eine Gruppe erkennt, dass Tests früher hätten stattfinden sollen. Eine Klasse stellt fest, dass sichtbare Aufgabenverteilung die Zusammenarbeit verbessert hat. Eine spätere Projektphase wird auf Basis dieser Rückmeldungen besser geplant.
Ein Team merkt, dass zu viele Zusatzideen am Anfang Zeit gekostet haben.
 
Eine Gruppe erkennt, dass Tests früher hätten stattfinden sollen.
 
Eine Klasse stellt fest, dass sichtbare Aufgabenverteilung die Zusammenarbeit verbessert hat.
 
Eine spätere Projektphase wird auf Basis dieser Rückmeldungen besser geplant.
 
Rückblick, Auswertung
 
Erfolg, Hindernis
 
Prozess, Verbesserung
 
Team, Erfahrung
 
Feedback, Anpassung
 
Lernen, Weiterentwicklung
 
=== Begriffe und Zusammenhänge auf einen Blick ===
 
{| class="wikitable"
! Thema
! Das solltest du verbinden können
|-
| Von der Idee zum Projektziel
| Ein tragfähiges Softwareprojekt beginnt mit einer klaren Problemstellung, weil nur dann entschieden werden kann, welche Funktion wirklich wichtig ist, wer das Produkt nutzen soll und welche Grenzen bei Zeit, Material und Umfang gelten.
|-
| Aufgaben zerlegen und Arbeitsphasen planen
| Komplexe Projekte werden erst dann gut beherrschbar, wenn sie in Teilaufgaben zerlegt und in eine sinnvolle Reihenfolge gebracht werden, sodass Teams Schritt für Schritt arbeiten und Zwischenergebnisse gezielt überprüfen können.
|-
| Agile Planung mit Scrum und Kanban
| Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden.
|-
| Testen, Debuggen und Qualität sichern
| Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung …
|-
| Dokumentation, Präsentation und Abschluss
| Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können.
|}
 
<div style="border-left:4px solid #36c; background:#f8f9fa; padding:.8em 1em; margin:1em 0;">
'''Merke:''' Nutze die Tabellen nicht nur zum Nachlesen: Versuche, jede Zeile mit einem eigenen Beispiel oder einer eigenen Begründung zu ergänzen.
</div>
 
=== Kurz zusammengefasst ===


* Rückblick, Auswertung
{| class="wikitable"
* Erfolg, Hindernis
! Kernkompetenz
* Prozess, Verbesserung
! Das bedeutet konkret
* Team, Erfahrung
|-
* Feedback, Anpassung
| Ziele klären, Bedarf beschreiben
* Lernen, Weiterentwicklung
| Ziele klären, Bedarf beschreiben
|-
| Anforderungen sammeln, Funktionen ordnen
| Anforderungen sammeln, Funktionen ordnen
|-
| Aufgaben zerlegen, Schritte planen
| Aufgaben zerlegen, Schritte planen
|-
| Rollen verteilen, Zusammenarbeit organisieren
| Rollen verteilen, Zusammenarbeit organisieren
|-
| Entwürfe skizzieren, Modelle nutzen
| Entwürfe skizzieren, Modelle nutzen
|-
| Prototypen bauen, Funktionen testen
| Prototypen bauen, Funktionen testen
|-
| Fehler finden, Lösungen verbessern
| Fehler finden, Lösungen verbessern
|-
| Zeit planen, Meilensteine setzen
| Zeit planen, Meilensteine setzen
|-
| Fortschritt dokumentieren, Ergebnisse sichern
| Fortschritt dokumentieren, Ergebnisse sichern
|-
| Projekte präsentieren, Prozesse reflektieren
| Projekte präsentieren, Prozesse reflektieren
|}


== 15.3 Weiterführende Links ==
<div style="border-left:4px solid #fc3; background:#fff9e6; padding:.8em 1em; margin:1em 0;">
'''Merke:''' Die wichtigsten Inhalte solltest du nicht nur wiedergeben, sondern auf neue Situationen übertragen, begründet anwenden und kritisch beurteilen können.
</div>


* BMBWF, Lehrpläne, Digitale Grundbildung
== Weiterführende Links ==
* Scrum Guide, Deutsch, Projektarbeit
* [https://docs.github.com/ GitHub Docs]
* GitHub Education, Grundlagen, Zusammenarbeit
* [https://scrumguides.org/ Scrum Guide]
* Scratch, Learning Library, Projekte
* [https://www.atlassian.com/agile/kanban Atlassian Kanban]


== 15.4 Aufgaben für den Unterricht ==
'''Passende LearningSnacks'''
* [https://www.learningsnacks.de/share/25477 Python 3 - Grundlagen]
* [https://www.learningsnacks.de/share/25642 Python 3 - Funktionen]


=== 15.4.1 Projektidee in ein umsetzbares Vorhaben verwandeln ===
== Übungen ==


Ein erfolgreicher Projektstart gelingt besonders dann, wenn aus einer allgemeinen Idee ein klar umrissenes Vorhaben mit Ziel, Zielgruppe, Kernfunktion und Grenzen entsteht, weil dadurch spätere Entscheidungen im Team deutlich leichter und nachvollziehbarer werden. Die Lehrkraft gibt offene Projektideen vor, etwa Lernquiz, To-do-App, Scratch-Spiel, Abstimmungstool oder Erinnerungsfunktion. Die Schülerinnen und Schüler wählen eine Idee aus und formulieren daraus ein konkretes Projektvorhaben. Dazu beschreiben sie, für wen das Produkt gedacht ist, welches Problem gelöst werden soll und welche minimale Grundfunktion am Ende sicher vorhanden sein muss. Danach werden Zusatzideen gesammelt, aber bewusst von Pflichtfunktionen getrennt. In der gemeinsamen Besprechung wird geprüft, ob das Projekt im verfügbaren Zeitrahmen realistisch bleibt. Der hohe Lerneffekt entsteht, weil aus einer spontanen Idee ein planbares Softwareprojekt wird.
Die Aufgaben setzen die Inhalte praktisch um. Der konkrete Auftrag steht bei jeder Aufgabe ausdrücklich unter '''Arbeitsauftrag:'''.
 
=== Projektidee in ein umsetzbares Vorhaben verwandeln ===
 
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Projektidee in ein umsetzbares Vorhaben verwandeln“ anhand der folgenden Vorgaben:
 
Ein erfolgreicher Projektstart gelingt besonders dann, wenn aus einer allgemeinen Idee ein klar umrissenes Vorhaben mit Ziel, Zielgruppe, Kernfunktion und Grenzen entsteht, weil dadurch spätere Entscheidungen im Team deutlich leichter und nachvollziehbarer werden. Die Lehrkraft gibt offene Projektideen vor, etwa Lernquiz, To-do-App, Scratch-Spiel, Abstimmungstool oder Erinnerungsfunktion. Die Schülerinnen und Schüler wählen eine Idee aus und formulieren daraus ein konkretes Projektvorhaben. Dazu beschreiben sie, für wen das Produkt gedacht ist, welches Problem gelöst werden soll und welche minimale Grundfunktion am Ende sicher vorhanden sein muss. Danach werden Zusatzideen gesammelt, aber bewusst von Pflichtfunktionen getrennt. In der gemeinsamen Besprechung wird geprüft, ob das Projekt im verfügbaren Zeitrahmen realistisch bleibt.
 
'''Hinweise aus der Aufgabe'''


* Idee, Ziel
* Idee, Ziel
Zeile 198: Zeile 481:
* Produkte, Projektblatt
* Produkte, Projektblatt


=== 15.4.2 Anforderungen sammeln und priorisieren ===
=== Anforderungen sammeln und priorisieren ===
 
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Anforderungen sammeln und priorisieren“ anhand der folgenden Vorgaben:


Tragfähige Softwareprojekte entstehen leichter, wenn Wünsche geordnet und priorisiert werden, weil Teams dadurch erkennen, welche Funktionen unverzichtbar sind, welche später ergänzt werden können und welche Ideen zwar spannend, aber für den Start noch nicht notwendig sind. Die Schülerinnen und Schüler erstellen für ihr Projekt eine Anforderungsliste. Zuerst sammeln sie alle gewünschten Funktionen ohne Bewertung. Danach markieren sie mit Farben oder
Tragfähige Softwareprojekte entstehen leichter, wenn Wünsche geordnet und priorisiert werden, weil Teams dadurch erkennen, welche Funktionen unverzichtbar sind, welche später ergänzt werden können und welche Ideen zwar spannend, aber für den Start noch nicht notwendig sind. Die Schülerinnen und Schüler erstellen für ihr Projekt eine Anforderungsliste. Zuerst sammeln sie alle gewünschten Funktionen ohne Bewertung. Danach markieren sie mit Farben oder Symbolen, was unbedingt nötig, sinnvoll, aber verschiebbar oder nur als Zusatz gedacht ist. Anschließend formulieren sie eine geordnete Fassung mit Pflicht-und Kann-Funktionen. In der Reflexion begründen sie, warum manche Ideen zurückgestellt wurden.


Symbolen, was unbedingt nötig, sinnvoll, aber verschiebbar oder nur als Zusatz gedacht ist. Anschließend formulieren sie eine geordnete Fassung mit Pflicht- und Kann-Funktionen. In der Reflexion begründen sie, warum manche Ideen zurückgestellt wurden. Diese Aufgabe ist besonders lernwirksam, weil sie Überladung verhindert und den Blick auf Kernfunktionen lenkt.
'''Hinweise aus der Aufgabe'''


* Wünsche, Sammlung
* Wünsche, Sammlung
Zeile 211: Zeile 498:
* Produkte, Backlog
* Produkte, Backlog


=== 15.4.3 Aufgaben zerlegen und im Team verteilen ===
=== Aufgaben zerlegen und im Team verteilen ===
 
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Aufgaben zerlegen und im Team verteilen“ anhand der folgenden Vorgaben:


Komplexe Projekte werden erst dann gut bearbeitbar, wenn sie in überschaubare Teilaufgaben gegliedert und mit Zuständigkeiten verbunden werden, weil dadurch Arbeitsfortschritt, Verantwortung und Zusammenarbeit im Team deutlich strukturierter und verlässlicher werden. Die Lehrkraft fordert die Gruppen auf, ihr Projekt in Teilaufgaben zu zerlegen, etwa Oberfläche, Programmlogik, Inhalte, Test, Dokumentation und Präsentation. Danach vergeben die Gruppen Zuständigkeiten und legen fest, welche Aufgaben gleichzeitig, nacheinander oder gemeinsam erledigt werden müssen. Wichtig ist, dass jede Aufgabe konkret genug formuliert ist, damit später klar erkennbar wird, ob sie erledigt wurde. Die Aufgabe ist besonders lernstark, weil Projektarbeit nicht im Ungefähren bleibt, sondern in konkrete Arbeitsschritte übersetzt wird.
Komplexe Projekte werden erst dann gut bearbeitbar, wenn sie in überschaubare Teilaufgaben gegliedert und mit Zuständigkeiten verbunden werden, weil dadurch Arbeitsfortschritt, Verantwortung und Zusammenarbeit im Team deutlich strukturierter und verlässlicher werden. Die Lehrkraft fordert die Gruppen auf, ihr Projekt in Teilaufgaben zu zerlegen, etwa Oberfläche, Programmlogik, Inhalte, Test, Dokumentation und Präsentation. Danach vergeben die Gruppen Zuständigkeiten und legen fest, welche Aufgaben gleichzeitig, nacheinander oder gemeinsam erledigt werden müssen. Wichtig ist, dass jede Aufgabe konkret genug formuliert ist, damit später klar erkennbar wird, ob sie erledigt wurde. Die Aufgabe ist besonders lernstark, weil Projektarbeit nicht im Ungefähren bleibt, sondern in konkrete Arbeitsschritte übersetzt wird.
'''Hinweise aus der Aufgabe'''


* Teilaufgabe, Reihenfolge
* Teilaufgabe, Reihenfolge
Zeile 222: Zeile 515:
* Produkte, Aufgabenplan
* Produkte, Aufgabenplan


=== 15.4.4 Kanbanboard für das Projekt führen ===
=== Kanbanboard für das Projekt führen ===


Projektmanagement wird besonders anschaulich, wenn Arbeitsschritte sichtbar gemacht und laufend verschoben werden, weil Fortschritt, Engpässe und unerledigte Punkte dadurch für alle Teammitglieder schnell erkennbar und gemeinsam besprechbar bleiben. Die Gruppen legen ein Kanbanboard an, analog oder digital, mit Spalten wie „offen“, „in Arbeit“, „testen“ und „fertig“. Jede Teilaufgabe erhält eine eigene Karte. Während der Projektarbeit verschieben die Schülerinnen und Schüler ihre Karten regelmäßig und ergänzen bei Bedarf Hinweise zu Problemen oder offenen Fragen. In kurzen Zwischenstopps erläutern die Gruppen, warum bestimmte Aufgaben noch stocken und welche Hilfe oder Umplanung nötig ist. Der hohe Lerneffekt entsteht, weil Planung und Durchführung sichtbar miteinander verknüpft werden.
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Kanbanboard für das Projekt führen“ anhand der folgenden Vorgaben:
 
Projektmanagement wird besonders anschaulich, wenn Arbeitsschritte sichtbar gemacht und laufend verschoben werden, weil Fortschritt, Engpässe und unerledigte Punkte dadurch für alle Teammitglieder schnell erkennbar und gemeinsam besprechbar bleiben. Die Gruppen legen ein Kanbanboard an, analog oder digital, mit Spalten wie „offen“, „in Arbeit“, „testen“ und „fertig“. Jede Teilaufgabe erhält eine eigene Karte. Während der Projektarbeit verschieben die Schülerinnen und Schüler ihre Karten regelmäßig und ergänzen bei Bedarf Hinweise zu Problemen oder offenen Fragen. In kurzen Zwischenstopps erläutern die Gruppen, warum bestimmte Aufgaben noch stocken und welche Hilfe oder Umplanung nötig ist.
 
'''Hinweise aus der Aufgabe'''


* Board, Spalten
* Board, Spalten
Zeile 233: Zeile 532:
* Produkte, Fortschritt
* Produkte, Fortschritt


=== 15.4.5 Vom Entwurf zum ersten Prototyp ===
=== Vom Entwurf zum ersten Prototyp ===
 
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Vom Entwurf zum ersten Prototyp“ anhand der folgenden Vorgaben:


Besonders wirksames Lernen entsteht, wenn ein Projekt nicht sofort vollständig umgesetzt werden soll, sondern zunächst in eine kleine lauffähige Grundversion überführt wird, weil dadurch frühe Erfolgserlebnisse und gezielte Verbesserungen möglich werden. Die Schülerinnen und Schüler entwerfen zuerst eine einfache Skizze oder ein Ablaufbild ihres Produkts. Danach setzen sie nur die kleinste sinnvolle Grundfunktion um, etwa eine bewegliche Figur, eine einzelne Quizfrage, ein Eingabefeld mit Rückmeldung oder einen ersten Auswahlbildschirm. Zusatzfunktionen bleiben zunächst zurückgestellt. Nach dem ersten Test wird geprüft, ob das Grundziel erreicht wurde und welche Erweiterung als nächstes sinnvoll ist. Diese Aufgabe ist besonders lernwirksam, weil die Gruppen lernen, klein zu starten und kontrolliert zu erweitern.
Die Schülerinnen und Schüler entwerfen zuerst eine einfache Skizze oder ein Ablaufbild ihres Produkts. Danach setzen sie nur die kleinste sinnvolle Grundfunktion um, etwa eine bewegliche Figur, eine einzelne Quizfrage, ein Eingabefeld mit Rückmeldung oder einen ersten Auswahlbildschirm. Zusatzfunktionen bleiben zunächst zurückgestellt. Nach dem ersten Test wird geprüft, ob das Grundziel erreicht wurde und welche Erweiterung als nächstes sinnvoll ist.
 
'''Hinweise aus der Aufgabe'''


* Skizze, Ablauf
* Skizze, Ablauf
Zeile 244: Zeile 549:
* Produkte, Prototyp
* Produkte, Prototyp


=== 15.4.6 Pair Programming im Entwicklungsschritt ===
=== Pair Programming im Entwicklungsschritt ===


Gemeinsames Programmieren vertieft Planung und Fehlervermeidung besonders stark, wenn zwei Personen klare Rollen übernehmen und regelmäßig wechseln, weil dadurch Denken, Erklären und Kontrollieren einen deutlich größeren Stellenwert erhalten als reines Tippen. Die Lehrkraft organisiert einen Projektabschnitt als Pair Programming. Eine Person arbeitet als Driver am Gerät, die andere als Navigator beobachtet, denkt mit, fragt nach und achtet auf Logik, Reihenfolge und mögliche Fehler. Nach einer festgelegten Zeit wechseln die Rollen. Während der Arbeit notieren die Teams, wann die Zusammenarbeit besonders hilfreich war und an welchen Stellen das gemeinsame Denken Fehler früh sichtbar gemacht hat. Diese Aufgabe ist besonders lernstark, weil technisches Arbeiten und Kommunikation eng verbunden werden.
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Pair Programming im Entwicklungsschritt“ anhand der folgenden Vorgaben:
 
Gemeinsames Programmieren vertieft Planung und Fehlervermeidung besonders stark, wenn zwei Personen klare Rollen übernehmen und regelmäßig wechseln, weil dadurch Denken, Erklären und Kontrollieren einen deutlich größeren Stellenwert erhalten als reines Tippen. Die Lehrkraft organisiert einen Projektabschnitt als Pair Programming. Eine Person arbeitet als Driver am Gerät, die andere als Navigator beobachtet, denkt mit, fragt nach und achtet auf Logik, Reihenfolge und mögliche Fehler. Nach einer festgelegten Zeit wechseln die Rollen. Während der Arbeit notieren die Teams, wann die Zusammenarbeit besonders hilfreich war und an welchen Stellen das gemeinsame Denken Fehler früh sichtbar gemacht hat.
 
'''Hinweise aus der Aufgabe'''


* Driver, Navigator
* Driver, Navigator
Zeile 255: Zeile 566:
* Produkte, Reflexion
* Produkte, Reflexion


=== 15.4.7 Testfälle entwickeln und anwenden ===
=== Testfälle entwickeln und anwenden ===


Softwarequalität wird besonders verständlich, wenn Funktionen nicht nur ausprobiert, sondern mit geplanten Testfällen geprüft werden, weil dadurch sichtbar wird, ob ein Projekt verlässlich arbeitet oder nur zufällig unter günstigen Bedingungen funktioniert. Die Schülerinnen und Schüler formulieren für ihr Projekt konkrete Testfälle. Dazu notieren sie Eingaben, erwartete Ergebnisse und mögliche Fehlersituationen. Anschließend testen sie ihr Produkt systematisch und halten fest, was funktioniert, was fehlschlägt und welche Ursache vermutet wird. Wichtig ist, dass nicht nur positive Fälle geprüft werden, sondern auch Grenzfälle, etwa leere Eingaben, falsche Reihenfolgen oder unerwartete Klicks. Der hohe Lerneffekt entsteht, weil Testen als eigenständiger Teil der Projektdurchführung sichtbar wird.
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Testfälle entwickeln und anwenden“ anhand der folgenden Vorgaben:
 
Softwarequalität wird besonders verständlich, wenn Funktionen nicht nur ausprobiert, sondern mit geplanten Testfällen geprüft werden, weil dadurch sichtbar wird, ob ein Projekt verlässlich arbeitet oder nur zufällig unter günstigen Bedingungen funktioniert. Die Schülerinnen und Schüler formulieren für ihr Projekt konkrete Testfälle. Dazu notieren sie Eingaben, erwartete Ergebnisse und mögliche Fehlersituationen. Anschließend testen sie ihr Produkt systematisch und halten fest, was funktioniert, was fehlschlägt und welche Ursache vermutet wird. Wichtig ist, dass nicht nur positive Fälle geprüft werden, sondern auch Grenzfälle, etwa leere Eingaben, falsche Reihenfolgen oder unerwartete Klicks.
 
'''Hinweise aus der Aufgabe'''


* Testfall, Eingabe
* Testfall, Eingabe
Zeile 266: Zeile 583:
* Produkte, Testliste
* Produkte, Testliste


=== 15.4.8 Sprint-Rückblick und Umplanung ===
=== Sprint-Rückblick und Umplanung ===
 
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Sprint-Rückblick und Umplanung“ anhand der folgenden Vorgaben:


Projektlernen wird besonders nachhaltig, wenn Teams nach einer kurzen Arbeitsphase innehalten und ihren Verlauf bewerten, weil dadurch Hindernisse, Zeitprobleme und unklare Zuständigkeiten rechtzeitig erkannt und für den nächsten Schritt verbessert werden können. Nach einer vereinbarten Arbeitsphase führen die Gruppen einen kurzen Rückblick durch. Sie beantworten Leitfragen wie: Was war unser Ziel, was haben wir erreicht, wo gab es Probleme, was hat uns geholfen, was ändern wir im nächsten Abschnitt? Die Antworten werden knapp notiert und mit dem Kanbanboard oder dem Aufgabenplan abgeglichen. Danach wird die weitere Planung angepasst. Diese Aufgabe ist besonders lernwirksam, weil sie Reflexion fest in die Durchführung integriert und Projektsteuerung als lernbaren Prozess erfahrbar macht.
Projektlernen wird besonders nachhaltig, wenn Teams nach einer kurzen Arbeitsphase innehalten und ihren Verlauf bewerten, weil dadurch Hindernisse, Zeitprobleme und unklare Zuständigkeiten rechtzeitig erkannt und für den nächsten Schritt verbessert werden können. Nach einer vereinbarten Arbeitsphase führen die Gruppen einen kurzen Rückblick durch. Sie beantworten Leitfragen wie: Was war unser Ziel, was haben wir erreicht, wo gab es Probleme, was hat uns geholfen, was ändern wir im nächsten Abschnitt? Die Antworten werden knapp notiert und mit dem Kanbanboard oder dem Aufgabenplan abgeglichen. Danach wird die weitere Planung angepasst.
 
'''Hinweise aus der Aufgabe'''


* Ziel, Ergebnis
* Ziel, Ergebnis
Zeile 277: Zeile 600:
* Produkte, Kurzprotokoll
* Produkte, Kurzprotokoll


=== 15.4.9 Projektpräsentation mit Entwicklungsweg ===
=== Projektpräsentation mit Entwicklungsweg ===


Ein Softwareprojekt wird erst dann vollständig verstanden, wenn nicht nur das fertige Produkt gezeigt, sondern auch der Weg dorthin nachvollziehbar erklärt wird, weil Planung, Entscheidungen, Tests und Verbesserungen zum eigentlichen Lerngewinn wesentlich beitragen. Am Ende präsentieren die Gruppen ihr Produkt und erläutern zugleich die wichtigsten Stationen ihres Projekts. Dazu gehören Projektidee, Anforderungsliste, Rollenverteilung, Kanbanboard oder Aufgabenplan, erster Prototyp, Testfälle und zentrale Verbesserungen. Die Zuhörenden
'''Arbeitsauftrag:'''


stellen Rückfragen, etwa warum bestimmte Funktionen priorisiert oder andere verworfen wurden. Die Aufgabe ist besonders lernstark, weil Produkt, Prozess und Begründung gemeinsam sichtbar werden.
Bearbeite die Aufgabe „Projektpräsentation mit Entwicklungsweg“ anhand der folgenden Vorgaben:
 
Ein Softwareprojekt wird erst dann vollständig verstanden, wenn nicht nur das fertige Produkt gezeigt, sondern auch der Weg dorthin nachvollziehbar erklärt wird, weil Planung, Entscheidungen, Tests und Verbesserungen zum eigentlichen Lerngewinn wesentlich beitragen. Am Ende präsentieren die Gruppen ihr Produkt und erläutern zugleich die wichtigsten Stationen ihres Projekts. Dazu gehören Projektidee, Anforderungsliste, Rollenverteilung, Kanbanboard oder Aufgabenplan, erster Prototyp, Testfälle und zentrale Verbesserungen. Die Zuhörenden stellen Rückfragen, etwa warum bestimmte Funktionen priorisiert oder andere verworfen wurden. Die Aufgabe ist besonders lernstark, weil Produkt, Prozess und Begründung gemeinsam sichtbar werden.
 
'''Hinweise aus der Aufgabe'''


* Idee, Ziel
* Idee, Ziel
Zeile 290: Zeile 617:
* Produkte, Abschluss
* Produkte, Abschluss


=== 15.4.10 Projektdokumentation und Auswertung ===
=== Projektdokumentation und Auswertung ===
 
'''Arbeitsauftrag:'''
 
Bearbeite die Aufgabe „Projektdokumentation und Auswertung“ anhand der folgenden Vorgaben:
 
Dauerhafte Projektkompetenz entsteht besonders dann, wenn Ergebnisse, Schwierigkeiten und Entscheidungen schriftlich festgehalten werden, weil spätere Verbesserungen, Präsentationen und Vergleiche mit anderen Projekten nur auf dieser Grundlage wirklich nachvollziehbar möglich sind. Die Schülerinnen und Schüler erstellen zum Abschluss eine kurze Projektdokumentation. Darin halten sie fest, welches Ziel verfolgt wurde, welche Kernfunktionen umgesetzt wurden, wie die Aufgaben verteilt waren, welche Probleme auftraten und welche Lösungen gefunden wurden. Zusätzlich formulieren sie, was sie beim nächsten Projekt früher, klarer oder einfacher planen würden.


Dauerhafte Projektkompetenz entsteht besonders dann, wenn Ergebnisse, Schwierigkeiten und Entscheidungen schriftlich festgehalten werden, weil spätere Verbesserungen, Präsentationen und Vergleiche mit anderen Projekten nur auf dieser Grundlage wirklich nachvollziehbar möglich sind. Die Schülerinnen und Schüler erstellen zum Abschluss eine kurze Projektdokumentation. Darin halten sie fest, welches Ziel verfolgt wurde, welche Kernfunktionen umgesetzt wurden, wie die Aufgaben verteilt waren, welche Probleme auftraten und welche Lösungen gefunden wurden. Zusätzlich formulieren sie, was sie beim nächsten Projekt früher, klarer oder einfacher planen würden. Diese Aufgabe ist besonders lernwirksam, weil aus einem einzelnen Projekt ein übertragbarer Lerngewinn für weitere Softwareprojekte entsteht.
'''Hinweise aus der Aufgabe'''


* Ziel, Funktion
* Ziel, Funktion
Zeile 301: Zeile 634:
* Produkte, Dokumentation
* Produkte, Dokumentation


[[Kategorie:Informatik 8. Klasse]]
== Kompetenzcheck ==
 
Überprüfe am Ende selbst:
 
{| class="wikitable"
! Ich kann …
! Ja
! Noch üben
|-
| ziele klären, Bedarf beschreiben.
| ☐
| ☐
|-
| anforderungen sammeln, Funktionen ordnen.
| ☐
| ☐
|-
| aufgaben zerlegen, Schritte planen.
| ☐
| ☐
|-
| rollen verteilen, Zusammenarbeit organisieren.
| ☐
| ☐
|-
| entwürfe skizzieren, Modelle nutzen.
| ☐
| ☐
|-
| prototypen bauen, Funktionen testen.
| ☐
| ☐
|-
| fehler finden, Lösungen verbessern.
| ☐
| ☐
|-
| zeit planen, Meilensteine setzen.
| ☐
| ☐
|-
| fortschritt dokumentieren, Ergebnisse sichern.
| ☐
| ☐
|-
| projekte präsentieren, Prozesse reflektieren.
| ☐
| ☐
|}
 
[[Kategorie:Informatik]]

Version vom 15. September 2026, 10:14 Uhr

← Zurück zur 8. Klasse

Worum geht es? Die Lerninhalte verbinden Projektidee, Planung, agile Organisation, technische Umsetzung und Auswertung, damit Softwareprojekte als geordnete Entwicklungsprozesse verstanden werden und nicht als ungeplantes Programmieren ohne Ziel, Struktur, Rückmeldung und gemeinsame Verantwortung.

Lernziele

Nach diesem Kapitel kannst du:

  • Ziele klären, Bedarf beschreiben.
  • Anforderungen sammeln, Funktionen ordnen.
  • Aufgaben zerlegen, Schritte planen.
  • Rollen verteilen, Zusammenarbeit organisieren.
  • Entwürfe skizzieren, Modelle nutzen.
  • Prototypen bauen, Funktionen testen.
  • Fehler finden, Lösungen verbessern.
  • Zeit planen, Meilensteine setzen.
  • Fortschritt dokumentieren, Ergebnisse sichern.
  • Projekte präsentieren, Prozesse reflektieren.

Anschluss an die 7. Klasse

Du kennst die Methoden der Softwareentwicklung. Jetzt planst und realisierst du ein Softwareprojekt selbstständig bzw. im Team – von Projektziel und Anforderungen bis Test, Präsentation und Reflexion.

Lerninhalte

Kompaktüberblick

Teilbereich Kerngedanke
Von der Idee zum Projektziel Ein tragfähiges Softwareprojekt beginnt mit einer klaren Problemstellung, weil nur dann entschieden werden kann, welche Funktion wirklich wichtig ist, wer das Produkt nutzen soll und welche Grenzen bei Zeit, Material und Umfang gelten.
Anforderungen sammeln und priorisieren Eine gute Planung gelingt leichter, wenn Wünsche nicht ungeordnet nebeneinanderstehen, sondern in notwendige Funktionen, sinnvolle Erweiterungen und optionale Zusatzideen gegliedert werden, damit das Projekt überschaubar und auch unter realen Bedingungen …
Aufgaben zerlegen und Arbeitsphasen planen Komplexe Projekte werden erst dann gut beherrschbar, wenn sie in Teilaufgaben zerlegt und in eine sinnvolle Reihenfolge gebracht werden, sodass Teams Schritt für Schritt arbeiten und Zwischenergebnisse gezielt überprüfen können.
Rollen und Teamarbeit im Softwareprojekt Gemeinsame Entwicklung wird produktiver, wenn Zuständigkeiten bewusst verteilt und regelmäßig abgestimmt werden, weil dadurch Planung, Umsetzung, Test, Dokumentation und Kommunikation nicht zufällig, sondern nachvollziehbar und verlässlich erfolgen.
Agile Planung mit Scrum und Kanban Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden.
Entwurf, Prototyp und erste Umsetzung Ein Softwareprojekt wird leichter umsetzbar, wenn Ideen zuerst skizziert und als einfache Grundversion erprobt werden, weil frühe Prototypen Fehler sichtbar machen und verhindern, dass zu früh an zu vielen Details gearbeitet wird.
Testen, Debuggen und Qualität sichern Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung …
Pair Programming und Zusammenarbeit am Code Gemeinsames Programmieren kann Lernprozesse deutlich vertiefen, wenn Rollen klar verteilt und regelmäßig gewechselt werden, weil dadurch Planung, sprachliche Abstimmung und Fehlervermeidung stärker in den Vordergrund rücken als bloßes Tippen.
Dokumentation, Präsentation und Abschluss Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können.
Reflexion und Weiterentwicklung Nachhaltiges Projektlernen entsteht besonders dann, wenn Teams ihren Ablauf, ihre Zusammenarbeit und ihre Entscheidungen rückblickend bewerten, weil daraus Verbesserungen für spätere Softwareprojekte und ein realistischeres Verständnis von Entwicklungsarbeit …

Merke: Ein Softwareprojekt gelingt besser, wenn Ziel, Anforderungen, Aufgaben, Rollen, Versionen und Tests von Anfang an sichtbar organisiert werden.

Von der Idee zum Projektziel

Ein tragfähiges Softwareprojekt beginnt mit einer klaren Problemstellung, weil nur dann entschieden werden kann, welche Funktion wirklich wichtig ist, wer das Produkt nutzen soll und welche Grenzen bei Zeit, Material und Umfang gelten.

Am Anfang steht nicht der Code, sondern die Frage nach dem Zweck. Ein Projekt braucht ein verständliches Ziel, eine grobe Vorstellung vom späteren Produkt und eine erste Entscheidung darüber, welche Grundfunktion unbedingt vorhanden sein muss.

Beispiele:

Ein Klassenquiz soll Fragen anzeigen, Antworten prüfen und Punkte zählen.

Ein Erinnerungsprogramm soll Termine speichern und rechtzeitig erinnern.

Ein Scratch-Spiel soll eine Figur steuern, Hindernisse erkennen und den Punktestand anzeigen.

Ein Formularprojekt soll Daten erfassen und auswertbar machen.

Idee, Problem

Ziel, Nutzen

Bedarf, Zielgruppe

Pflichtfunktion, Zusatzfunktion

Grenze, Umfang

Start, Richtung

Anforderungen sammeln und priorisieren

Eine gute Planung gelingt leichter, wenn Wünsche nicht ungeordnet nebeneinanderstehen, sondern in notwendige Funktionen, sinnvolle Erweiterungen und optionale Zusatzideen gegliedert werden, damit das Projekt überschaubar und auch unter realen Bedingungen umsetzbar bleibt.

Anforderungen beschreiben, was das Produkt leisten soll. Dazu gehören Grundfunktionen, Bedienwünsche, technische Bedingungen und Materialien. Besonders wichtig ist die Unterscheidung zwischen Muss-und Kann-Funktionen.

Beispiele:

Bei einer Lernapp sind Eingabe und Rückmeldung Pflicht, Ranglisten vielleicht Zusatz.

Bei einer Schulwebsite sind Startseite, Navigation und Inhalte Pflicht, Animationen eher Zusatz.

Bei einem Spiel ist die Steuerung Pflicht, Spezialeffekte sind oft Erweiterungen.

Muss, Kann

Kernfunktion, Zusatzidee

Bedarf, Auswahl

Priorität, Reihenfolge

Realismus, Begrenzung

Planung, Fokus

Aufgaben zerlegen und Arbeitsphasen planen

Komplexe Projekte werden erst dann gut beherrschbar, wenn sie in Teilaufgaben zerlegt und in eine sinnvolle Reihenfolge gebracht werden, sodass Teams Schritt für Schritt arbeiten und Zwischenergebnisse gezielt überprüfen können.

Zur Projektplanung gehört die Aufteilung in kleine, bearbeitbare Aufgaben. Diese Teilaufgaben können etwa Recherche, Skizze, Oberfläche, Programmlogik, Test, Materialbeschaffung, Dokumentation oder Präsentation umfassen.

Beispiele:

Ein Spielprojekt wird zerlegt in Startbild, Steuerung, Kollision, Punkte, Tests.

Eine Umfrage wird zerlegt in Fragen, Formulargestaltung, Testlauf, Auswertung, Darstellung.

Ein Microcontroller-Projekt wird zerlegt in Schaltplan, Anschlüsse, Grundprogramm, Signal, Test.

Teilaufgabe, Reihenfolge

Recherche, Skizze

Aufbau, Test

Kontrolle, Verbesserung

Schrittplan, Übersicht

Phase, Fortschritt

Rollen und Teamarbeit im Softwareprojekt

Gemeinsame Entwicklung wird produktiver, wenn Zuständigkeiten bewusst verteilt und regelmäßig abgestimmt werden, weil dadurch Planung, Umsetzung, Test, Dokumentation und Kommunikation nicht zufällig, sondern nachvollziehbar und verlässlich erfolgen.

Softwareprojekte sind meist Teamarbeit. Rollen helfen, Verantwortung sichtbar zu machen.

Zusätzlich wird im schulischen Kontext erwähnt, dass Lehrpersonen je nach Projektform stärker strukturierend oder eher begleitend eingreifen können. Für Unterrichtsprojekte lassen sich Rollen vereinfacht als Planung, Umsetzung, Test, Dokumentation oder Moderation verteilen.

Beispiele:

Eine Person sammelt Anforderungen.

Eine andere erstellt Entwurf oder Oberfläche.

Eine dritte testet und dokumentiert Fehler.

Eine vierte achtet auf Zeit, Aufgaben und Absprachen.

Rolle, Planung

Rolle, Umsetzung

Rolle, Test

Rolle, Dokumentation

Rolle, Moderation

Team, Abstimmung

Orientierung auf einen Blick

Als Nächstes Kurz erklärt
Agile Planung mit Scrum und Kanban Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden.
Entwurf, Prototyp und erste Umsetzung Ein Softwareprojekt wird leichter umsetzbar, wenn Ideen zuerst skizziert und als einfache Grundversion erprobt werden, weil frühe Prototypen Fehler sichtbar machen und verhindern, dass zu früh an zu vielen Details gearbeitet wird.
Testen, Debuggen und Qualität sichern Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung …

Merke: Achte beim Weiterlesen darauf, wie die nächsten Teilaspekte mit den bereits behandelten Grundlagen zusammenhängen.

Agile Planung mit Scrum und Kanban

Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden.

Genannt werden Sprint, Daily Stand-up, Sprint Review, Sprint Retrospektive, Product Backlog und Sprint Backlog. Kanbanboards mit Spalten wie To-Do, Next, Doing und Done helfen dabei, Aufgaben sichtbar zu halten und den Arbeitsstand laufend zu aktualisieren. Gerade im Unterricht ist diese Form übersichtlich, weil sie Fortschritt und Hindernisse schnell erkennbar macht.

Beispiele:

Ein Sprint kann eine Unterrichtsstunde oder Doppelstunde sein.

Ein Daily Stand-up kann als kurze Besprechung am Stundenanfang durchgeführt werden.

Ein Kanbanboard zeigt, welche Aufgabe noch offen, gerade in Arbeit oder bereits erledigt ist.

Ein Review prüft, ob die vereinbarte Funktion am Ende wirklich erreicht wurde.

Scrum, Kanban

Sprint, Stand-up

Backlog, Board

Doing, Done

Review, Retrospektive

Transparenz, Steuerung

Entwurf, Prototyp und erste Umsetzung

Ein Softwareprojekt wird leichter umsetzbar, wenn Ideen zuerst skizziert und als einfache Grundversion erprobt werden, weil frühe Prototypen Fehler sichtbar machen und verhindern, dass zu früh an zu vielen Details gearbeitet wird.

Vor der vollständigen Umsetzung helfen Skizzen, Ablaufdarstellungen und Minimalfunktionen.

Dieses Vorgehen ist auch für schulische Softwareprojekte sinnvoll: zuerst die kleinste lauffähige Version, dann Erweiterungen.

Beispiele:

Ein Quiz startet zuerst nur mit einer Frage und Rückmeldung.

Ein Spiel beginnt nur mit Figur und Bewegung.

Eine App-Idee wird zuerst als Bildschirmskizze mit Buttons entworfen.

Ein Formular wird zuerst mit wenigen Feldern getestet.

Skizze, Entwurf

Minimalfunktion, Prototyp

Grundversion, Ausbau

Oberfläche, Ablauf

Teststart, Umsetzung

Idee, Produkt

Testen, Debuggen und Qualität sichern

Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung entsteht.

Testen bedeutet, geplante Funktionen an konkreten Beispielen zu überprüfen. Debuggen bedeutet, Fehlerquellen zu finden und zu beheben. Gerade im Unterricht ist es sinnvoll, nach jeder kleinen Erweiterung zu prüfen, ob die bestehende Funktion weiterhin korrekt arbeitet.

Beispiele:

Nach dem Einbau eines Punktestands wird geprüft, ob Kollisionen noch richtig erkannt werden.

Ein Formular wird mit echten Beispielantworten getestet.

Ein Signalprojekt wird zuerst nur mit einer Anzeige geprüft, bevor Ton und Zähler hinzukommen.

Ein Fehlerprotokoll sammelt, was noch nicht wie geplant funktioniert.

Test, Kontrolle

Fehler, Suche

Korrektur, Verbesserung

Beispiel, Prüfung

Qualität, Stabilität

Debugging, Sicherheit

Zweiter Zwischenüberblick

Vertiefung Wichtig dabei
Pair Programming und Zusammenarbeit am Code Gemeinsames Programmieren kann Lernprozesse deutlich vertiefen, wenn Rollen klar verteilt und regelmäßig gewechselt werden, weil dadurch Planung, sprachliche Abstimmung und Fehlervermeidung stärker in den Vordergrund rücken als bloßes Tippen.
Dokumentation, Präsentation und Abschluss Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können.
Reflexion und Weiterentwicklung Nachhaltiges Projektlernen entsteht besonders dann, wenn Teams ihren Ablauf, ihre Zusammenarbeit und ihre Entscheidungen rückblickend bewerten, weil daraus Verbesserungen für spätere Softwareprojekte und ein realistischeres Verständnis von Entwicklungsarbeit …

Merke: Die Teilaspekte gehören zusammen: Fachwissen wird besonders tragfähig, wenn du Zusammenhänge an konkreten Beispielen erklären kannst.

Pair Programming und Zusammenarbeit am Code

Gemeinsames Programmieren kann Lernprozesse deutlich vertiefen, wenn Rollen klar verteilt und regelmäßig gewechselt werden, weil dadurch Planung, sprachliche Abstimmung und Fehlervermeidung stärker in den Vordergrund rücken als bloßes Tippen.

Eine Person übernimmt als Driver die Eingabe, die andere als Navigator beobachtet, denkt mit und achtet auf Fehler oder bessere Wege. Die Rollen sollen regelmäßig wechseln. Für den Unterricht wird ausdrücklich betont, dass dabei soziale Kompetenzen und eine bewusste Aufgabenverteilung wichtig sind.

Beispiele:

Beim Scratch-Projekt steuert eine Person die Blöcke, die andere überprüft Logik und Reihenfolge.

Beim Schreiben eines Programms achtet der Navigator auf Tippfehler und fehlende Bedingungen.

Nach zehn bis zwanzig Minuten wechseln die Rollen, damit beide aktiv beteiligt bleiben.

Driver, Navigator

Wechsel, Absprache

Code, Kontrolle

Blick, Fehler

Team, Rollen

Zusammenarbeit, Lernen

Dokumentation, Präsentation und Abschluss

Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können.

Zur Durchführung eines Projekts gehört nicht nur das Endprodukt, sondern auch seine Dokumentation. Dazu zählen Funktionsbeschreibungen, Aufgabenstände, Testnotizen, Screenshots, kurze Erklärungen und Präsentationen. Am Ende sollte daher nicht nur das Ergebnis gezeigt, sondern auch der Projektverlauf verständlich gemacht werden.

Beispiele:

Eine Gruppe präsentiert ihr Spiel und erklärt zugleich Backlog, Testschritte und Erweiterungen.

Ein Team zeigt im Board, wie Aufgaben von To-Do nach Done gewandert sind.

Ein kurzes Projektprotokoll hält fest, welche Funktionen fertig, offen oder verbessert wurden.

Dokumentation, Verlauf

Screenshot, Notiz

Präsentation, Ergebnis

Meilenstein, Überblick

Abschluss, Rückblick

Produkt, Erklärung

Reflexion und Weiterentwicklung

Nachhaltiges Projektlernen entsteht besonders dann, wenn Teams ihren Ablauf, ihre Zusammenarbeit und ihre Entscheidungen rückblickend bewerten, weil daraus Verbesserungen für spätere Softwareprojekte und ein realistischeres Verständnis von Entwicklungsarbeit entstehen.

Eine Retrospektive oder Feedbackrunde hilft zu klären, was gut gelungen ist, wo Zeit verloren ging, welche Aufgaben unklar waren und welche Methode geholfen hat.

Beispiele:

Ein Team merkt, dass zu viele Zusatzideen am Anfang Zeit gekostet haben.

Eine Gruppe erkennt, dass Tests früher hätten stattfinden sollen.

Eine Klasse stellt fest, dass sichtbare Aufgabenverteilung die Zusammenarbeit verbessert hat.

Eine spätere Projektphase wird auf Basis dieser Rückmeldungen besser geplant.

Rückblick, Auswertung

Erfolg, Hindernis

Prozess, Verbesserung

Team, Erfahrung

Feedback, Anpassung

Lernen, Weiterentwicklung

Begriffe und Zusammenhänge auf einen Blick

Thema Das solltest du verbinden können
Von der Idee zum Projektziel Ein tragfähiges Softwareprojekt beginnt mit einer klaren Problemstellung, weil nur dann entschieden werden kann, welche Funktion wirklich wichtig ist, wer das Produkt nutzen soll und welche Grenzen bei Zeit, Material und Umfang gelten.
Aufgaben zerlegen und Arbeitsphasen planen Komplexe Projekte werden erst dann gut beherrschbar, wenn sie in Teilaufgaben zerlegt und in eine sinnvolle Reihenfolge gebracht werden, sodass Teams Schritt für Schritt arbeiten und Zwischenergebnisse gezielt überprüfen können.
Agile Planung mit Scrum und Kanban Agile Methoden unterstützen Schulprojekte besonders gut, wenn Aufgaben sichtbar gemacht, in kurze Arbeitsphasen aufgeteilt und regelmäßig überprüft werden, weil dadurch Selbstorganisation, Transparenz und schrittweises Verbessern im Team erleichtert werden.
Testen, Debuggen und Qualität sichern Ein Projekt wird erst dann verlässlich, wenn Funktionen gezielt geprüft, Fehler systematisch gesucht und Verbesserungen bewusst vorgenommen werden, weil funktionierende Software nicht allein durch Schreiben von Code, sondern durch sorgfältige Überprüfung …
Dokumentation, Präsentation und Abschluss Ein Projektabschluss ist nur dann vollständig, wenn Ergebnisse, Entscheidungen und Arbeitswege festgehalten und vorgestellt werden, weil andere das Produkt sonst schwer verstehen, prüfen oder weiterentwickeln können.

Merke: Nutze die Tabellen nicht nur zum Nachlesen: Versuche, jede Zeile mit einem eigenen Beispiel oder einer eigenen Begründung zu ergänzen.

Kurz zusammengefasst

Kernkompetenz Das bedeutet konkret
Ziele klären, Bedarf beschreiben Ziele klären, Bedarf beschreiben
Anforderungen sammeln, Funktionen ordnen Anforderungen sammeln, Funktionen ordnen
Aufgaben zerlegen, Schritte planen Aufgaben zerlegen, Schritte planen
Rollen verteilen, Zusammenarbeit organisieren Rollen verteilen, Zusammenarbeit organisieren
Entwürfe skizzieren, Modelle nutzen Entwürfe skizzieren, Modelle nutzen
Prototypen bauen, Funktionen testen Prototypen bauen, Funktionen testen
Fehler finden, Lösungen verbessern Fehler finden, Lösungen verbessern
Zeit planen, Meilensteine setzen Zeit planen, Meilensteine setzen
Fortschritt dokumentieren, Ergebnisse sichern Fortschritt dokumentieren, Ergebnisse sichern
Projekte präsentieren, Prozesse reflektieren Projekte präsentieren, Prozesse reflektieren

Merke: Die wichtigsten Inhalte solltest du nicht nur wiedergeben, sondern auf neue Situationen übertragen, begründet anwenden und kritisch beurteilen können.

Passende LearningSnacks

Übungen

Die Aufgaben setzen die Inhalte praktisch um. Der konkrete Auftrag steht bei jeder Aufgabe ausdrücklich unter Arbeitsauftrag:.

Projektidee in ein umsetzbares Vorhaben verwandeln

Arbeitsauftrag:

Bearbeite die Aufgabe „Projektidee in ein umsetzbares Vorhaben verwandeln“ anhand der folgenden Vorgaben:

Ein erfolgreicher Projektstart gelingt besonders dann, wenn aus einer allgemeinen Idee ein klar umrissenes Vorhaben mit Ziel, Zielgruppe, Kernfunktion und Grenzen entsteht, weil dadurch spätere Entscheidungen im Team deutlich leichter und nachvollziehbarer werden. Die Lehrkraft gibt offene Projektideen vor, etwa Lernquiz, To-do-App, Scratch-Spiel, Abstimmungstool oder Erinnerungsfunktion. Die Schülerinnen und Schüler wählen eine Idee aus und formulieren daraus ein konkretes Projektvorhaben. Dazu beschreiben sie, für wen das Produkt gedacht ist, welches Problem gelöst werden soll und welche minimale Grundfunktion am Ende sicher vorhanden sein muss. Danach werden Zusatzideen gesammelt, aber bewusst von Pflichtfunktionen getrennt. In der gemeinsamen Besprechung wird geprüft, ob das Projekt im verfügbaren Zeitrahmen realistisch bleibt.

Hinweise aus der Aufgabe

  • Idee, Ziel
  • Nutzer, Bedarf
  • Pflichtfunktion, Zusatzidee
  • Umfang, Grenze
  • Zeitrahmen, Realismus
  • Produkte, Projektblatt

Anforderungen sammeln und priorisieren

Arbeitsauftrag:

Bearbeite die Aufgabe „Anforderungen sammeln und priorisieren“ anhand der folgenden Vorgaben:

Tragfähige Softwareprojekte entstehen leichter, wenn Wünsche geordnet und priorisiert werden, weil Teams dadurch erkennen, welche Funktionen unverzichtbar sind, welche später ergänzt werden können und welche Ideen zwar spannend, aber für den Start noch nicht notwendig sind. Die Schülerinnen und Schüler erstellen für ihr Projekt eine Anforderungsliste. Zuerst sammeln sie alle gewünschten Funktionen ohne Bewertung. Danach markieren sie mit Farben oder Symbolen, was unbedingt nötig, sinnvoll, aber verschiebbar oder nur als Zusatz gedacht ist. Anschließend formulieren sie eine geordnete Fassung mit Pflicht-und Kann-Funktionen. In der Reflexion begründen sie, warum manche Ideen zurückgestellt wurden.

Hinweise aus der Aufgabe

  • Wünsche, Sammlung
  • Muss, Kann
  • Priorität, Auswahl
  • Funktion, Nutzen
  • Grenze, Fokus
  • Produkte, Backlog

Aufgaben zerlegen und im Team verteilen

Arbeitsauftrag:

Bearbeite die Aufgabe „Aufgaben zerlegen und im Team verteilen“ anhand der folgenden Vorgaben:

Komplexe Projekte werden erst dann gut bearbeitbar, wenn sie in überschaubare Teilaufgaben gegliedert und mit Zuständigkeiten verbunden werden, weil dadurch Arbeitsfortschritt, Verantwortung und Zusammenarbeit im Team deutlich strukturierter und verlässlicher werden. Die Lehrkraft fordert die Gruppen auf, ihr Projekt in Teilaufgaben zu zerlegen, etwa Oberfläche, Programmlogik, Inhalte, Test, Dokumentation und Präsentation. Danach vergeben die Gruppen Zuständigkeiten und legen fest, welche Aufgaben gleichzeitig, nacheinander oder gemeinsam erledigt werden müssen. Wichtig ist, dass jede Aufgabe konkret genug formuliert ist, damit später klar erkennbar wird, ob sie erledigt wurde. Die Aufgabe ist besonders lernstark, weil Projektarbeit nicht im Ungefähren bleibt, sondern in konkrete Arbeitsschritte übersetzt wird.

Hinweise aus der Aufgabe

  • Teilaufgabe, Reihenfolge
  • Zuständigkeit, Rolle
  • Oberfläche, Logik
  • Test, Doku
  • Parallel, nacheinander
  • Produkte, Aufgabenplan

Kanbanboard für das Projekt führen

Arbeitsauftrag:

Bearbeite die Aufgabe „Kanbanboard für das Projekt führen“ anhand der folgenden Vorgaben:

Projektmanagement wird besonders anschaulich, wenn Arbeitsschritte sichtbar gemacht und laufend verschoben werden, weil Fortschritt, Engpässe und unerledigte Punkte dadurch für alle Teammitglieder schnell erkennbar und gemeinsam besprechbar bleiben. Die Gruppen legen ein Kanbanboard an, analog oder digital, mit Spalten wie „offen“, „in Arbeit“, „testen“ und „fertig“. Jede Teilaufgabe erhält eine eigene Karte. Während der Projektarbeit verschieben die Schülerinnen und Schüler ihre Karten regelmäßig und ergänzen bei Bedarf Hinweise zu Problemen oder offenen Fragen. In kurzen Zwischenstopps erläutern die Gruppen, warum bestimmte Aufgaben noch stocken und welche Hilfe oder Umplanung nötig ist.

Hinweise aus der Aufgabe

  • Board, Spalten
  • Offen, Arbeit
  • Testen, Fertig
  • Karte, Aufgabe
  • Problem, Engpass
  • Produkte, Fortschritt

Vom Entwurf zum ersten Prototyp

Arbeitsauftrag:

Bearbeite die Aufgabe „Vom Entwurf zum ersten Prototyp“ anhand der folgenden Vorgaben:

Die Schülerinnen und Schüler entwerfen zuerst eine einfache Skizze oder ein Ablaufbild ihres Produkts. Danach setzen sie nur die kleinste sinnvolle Grundfunktion um, etwa eine bewegliche Figur, eine einzelne Quizfrage, ein Eingabefeld mit Rückmeldung oder einen ersten Auswahlbildschirm. Zusatzfunktionen bleiben zunächst zurückgestellt. Nach dem ersten Test wird geprüft, ob das Grundziel erreicht wurde und welche Erweiterung als nächstes sinnvoll ist.

Hinweise aus der Aufgabe

  • Skizze, Ablauf
  • Grundfunktion, Start
  • Test, Rückmeldung
  • Ausbau, Schritt
  • Fokus, Minimalversion
  • Produkte, Prototyp

Pair Programming im Entwicklungsschritt

Arbeitsauftrag:

Bearbeite die Aufgabe „Pair Programming im Entwicklungsschritt“ anhand der folgenden Vorgaben:

Gemeinsames Programmieren vertieft Planung und Fehlervermeidung besonders stark, wenn zwei Personen klare Rollen übernehmen und regelmäßig wechseln, weil dadurch Denken, Erklären und Kontrollieren einen deutlich größeren Stellenwert erhalten als reines Tippen. Die Lehrkraft organisiert einen Projektabschnitt als Pair Programming. Eine Person arbeitet als Driver am Gerät, die andere als Navigator beobachtet, denkt mit, fragt nach und achtet auf Logik, Reihenfolge und mögliche Fehler. Nach einer festgelegten Zeit wechseln die Rollen. Während der Arbeit notieren die Teams, wann die Zusammenarbeit besonders hilfreich war und an welchen Stellen das gemeinsame Denken Fehler früh sichtbar gemacht hat.

Hinweise aus der Aufgabe

  • Driver, Navigator
  • Wechsel, Zeit
  • Code, Kontrolle
  • Frage, Erklärung
  • Fehler, Hinweis
  • Produkte, Reflexion

Testfälle entwickeln und anwenden

Arbeitsauftrag:

Bearbeite die Aufgabe „Testfälle entwickeln und anwenden“ anhand der folgenden Vorgaben:

Softwarequalität wird besonders verständlich, wenn Funktionen nicht nur ausprobiert, sondern mit geplanten Testfällen geprüft werden, weil dadurch sichtbar wird, ob ein Projekt verlässlich arbeitet oder nur zufällig unter günstigen Bedingungen funktioniert. Die Schülerinnen und Schüler formulieren für ihr Projekt konkrete Testfälle. Dazu notieren sie Eingaben, erwartete Ergebnisse und mögliche Fehlersituationen. Anschließend testen sie ihr Produkt systematisch und halten fest, was funktioniert, was fehlschlägt und welche Ursache vermutet wird. Wichtig ist, dass nicht nur positive Fälle geprüft werden, sondern auch Grenzfälle, etwa leere Eingaben, falsche Reihenfolgen oder unerwartete Klicks.

Hinweise aus der Aufgabe

  • Testfall, Eingabe
  • Erwartung, Ergebnis
  • Fehler, Ursache
  • Grenzfall, Ausnahme
  • Prüfung, Protokoll
  • Produkte, Testliste

Sprint-Rückblick und Umplanung

Arbeitsauftrag:

Bearbeite die Aufgabe „Sprint-Rückblick und Umplanung“ anhand der folgenden Vorgaben:

Projektlernen wird besonders nachhaltig, wenn Teams nach einer kurzen Arbeitsphase innehalten und ihren Verlauf bewerten, weil dadurch Hindernisse, Zeitprobleme und unklare Zuständigkeiten rechtzeitig erkannt und für den nächsten Schritt verbessert werden können. Nach einer vereinbarten Arbeitsphase führen die Gruppen einen kurzen Rückblick durch. Sie beantworten Leitfragen wie: Was war unser Ziel, was haben wir erreicht, wo gab es Probleme, was hat uns geholfen, was ändern wir im nächsten Abschnitt? Die Antworten werden knapp notiert und mit dem Kanbanboard oder dem Aufgabenplan abgeglichen. Danach wird die weitere Planung angepasst.

Hinweise aus der Aufgabe

  • Ziel, Ergebnis
  • Problem, Hilfe
  • Zeit, Planung
  • Änderung, Nächster
  • Rückblick, Anpassung
  • Produkte, Kurzprotokoll

Projektpräsentation mit Entwicklungsweg

Arbeitsauftrag:

Bearbeite die Aufgabe „Projektpräsentation mit Entwicklungsweg“ anhand der folgenden Vorgaben:

Ein Softwareprojekt wird erst dann vollständig verstanden, wenn nicht nur das fertige Produkt gezeigt, sondern auch der Weg dorthin nachvollziehbar erklärt wird, weil Planung, Entscheidungen, Tests und Verbesserungen zum eigentlichen Lerngewinn wesentlich beitragen. Am Ende präsentieren die Gruppen ihr Produkt und erläutern zugleich die wichtigsten Stationen ihres Projekts. Dazu gehören Projektidee, Anforderungsliste, Rollenverteilung, Kanbanboard oder Aufgabenplan, erster Prototyp, Testfälle und zentrale Verbesserungen. Die Zuhörenden stellen Rückfragen, etwa warum bestimmte Funktionen priorisiert oder andere verworfen wurden. Die Aufgabe ist besonders lernstark, weil Produkt, Prozess und Begründung gemeinsam sichtbar werden.

Hinweise aus der Aufgabe

  • Idee, Ziel
  • Plan, Rolle
  • Prototyp, Test
  • Änderung, Begründung
  • Präsentation, Rückfrage
  • Produkte, Abschluss

Projektdokumentation und Auswertung

Arbeitsauftrag:

Bearbeite die Aufgabe „Projektdokumentation und Auswertung“ anhand der folgenden Vorgaben:

Dauerhafte Projektkompetenz entsteht besonders dann, wenn Ergebnisse, Schwierigkeiten und Entscheidungen schriftlich festgehalten werden, weil spätere Verbesserungen, Präsentationen und Vergleiche mit anderen Projekten nur auf dieser Grundlage wirklich nachvollziehbar möglich sind. Die Schülerinnen und Schüler erstellen zum Abschluss eine kurze Projektdokumentation. Darin halten sie fest, welches Ziel verfolgt wurde, welche Kernfunktionen umgesetzt wurden, wie die Aufgaben verteilt waren, welche Probleme auftraten und welche Lösungen gefunden wurden. Zusätzlich formulieren sie, was sie beim nächsten Projekt früher, klarer oder einfacher planen würden.

Hinweise aus der Aufgabe

  • Ziel, Funktion
  • Rolle, Ablauf
  • Problem, Lösung
  • Test, Verbesserung
  • Reflexion, Lernen
  • Produkte, Dokumentation

Kompetenzcheck

Überprüfe am Ende selbst:

Ich kann … Ja Noch üben
ziele klären, Bedarf beschreiben. ☐ ☐
anforderungen sammeln, Funktionen ordnen. ☐ ☐
aufgaben zerlegen, Schritte planen. ☐ ☐
rollen verteilen, Zusammenarbeit organisieren. ☐ ☐
entwürfe skizzieren, Modelle nutzen. ☐ ☐
prototypen bauen, Funktionen testen. ☐ ☐
fehler finden, Lösungen verbessern. ☐ ☐
zeit planen, Meilensteine setzen. ☐ ☐
fortschritt dokumentieren, Ergebnisse sichern. ☐ ☐
projekte präsentieren, Prozesse reflektieren. ☐ ☐