
Agile Softwareentwicklung (Scrum)
Projektmanagement und iterative Entwicklungsprozesse.
Über dieses Thema
Die agile Softwareentwicklung mit Scrum bietet einen iterativen Ansatz für komplexe IT-Projekte. Klassische Wasserfall-Modelle scheitern oft, weil sie Anforderungen starr vorab definieren und Änderungen während der Entwicklung teuer machen. Scrum teilt Projekte in kurze Sprints von zwei bis vier Wochen auf, mit Rollen wie Product Owner, Scrum Master und Development Team. Artefakte wie Product Backlog und Sprint Backlog sorgen für Transparenz und Priorisierung.
Tägliche Stand-ups, Sprint-Reviews und Retrospektiven fördern offene Kommunikation und kontinuierliche Verbesserung. Dies passt zu KMK-Standards für Kommunizieren und Kooperieren sowie Modellieren und Implementieren. Schüler analysieren, wie Agile-Teams mit sich wandelnden Anforderungen umgehen, indem sie Inkrementes liefern und Feedback einholen. So entsteht ein Verständnis für reale Projekt dynamiken in der Oberstufe.
Aktives Lernen ist ideal, weil Schüler Scrum in Gruppenprojekten simulieren können. Durch Rollenspiele und Iterationen erleben sie Teamdynamiken direkt, korrigieren Missverständnisse und verinnerlichen Prozesse nachhaltig. Solche Erfahrungen stärken Problemlösungsfähigkeiten und bereiten auf Abschlussprojekte vor.
Leitfragen
- Warum scheitern klassische Wasserfall-Modelle oft bei komplexen IT-Projekten?
- Wie fördert agile Arbeit die Kommunikation innerhalb eines Entwicklerteams?
- Wie geht man mit sich ändernden Anforderungen während der Entwicklungsphase um?
Lernziele
- Vergleichen Sie die Effektivität von Scrum und dem Wasserfallmodell bei der Bewältigung sich ändernder Projektanforderungen in simulierten Szenarien.
- Erklären Sie die Rollen und Verantwortlichkeiten von Product Owner, Scrum Master und Entwicklungsteam innerhalb eines Scrum-Projekts.
- Analysieren Sie die Ergebnisse eines Sprint-Reviews, um Verbesserungspotenziale für das nächste Sprint-Planning zu identifizieren.
- Entwerfen Sie ein einfaches Product Backlog für ein gegebenes Softwareprojekt unter Berücksichtigung von Nutzerbedürfnissen und technischen Einschränkungen.
Bevor es losgeht
Warum: Ein grundlegendes Verständnis von Softwareprozessen und Projektphasen ist notwendig, um die Unterschiede zu agilen Methoden zu verstehen.
Warum: Grundkenntnisse über Projektplanung, Ziele und Ressourcen helfen, die Notwendigkeit von iterativen Ansätzen und flexibler Planung zu erkennen.
Schlüsselvokabular
| Sprint | Ein kurzer, zeitlich begrenzter Zyklus (typischerweise 1-4 Wochen) in Scrum, in dem ein potenziell lieferbares Produktinkrement erstellt wird. |
| Product Backlog | Eine priorisierte, dynamische Liste aller bekannten Anforderungen, Funktionen und Fehlerbehebungen, die für ein Produkt benötigt werden. |
| Scrum Master | Die Person, die dafür verantwortlich ist, dass das Scrum-Team die Scrum-Theorie, -Praktiken und -Regeln versteht und anwendet. |
| Sprint-Review | Eine formelle Überprüfung des Sprint-Ergebnisses durch das Scrum-Team und Stakeholder, um Feedback zu sammeln und das Product Backlog anzupassen. |
| Retrospektive | Eine regelmäßige Besprechung des Scrum-Teams, um die Arbeitsweise zu inspizieren und Verbesserungsmöglichkeiten für den nächsten Sprint zu identifizieren. |
Vorsicht vor diesen Fehlvorstellungen
Häufige FehlvorstellungAgile Entwicklung ist chaotisch und ohne Planung.
Was Sie stattdessen lehren sollten
Scrum strukturiert Arbeit streng mit Backlogs, Sprints und Reviews. Aktive Rollenspiele zeigen Schülern, wie Disziplin und Transparenz Chaos vermeiden. Gruppenreflexionen klären, dass Iterationen Planung ergänzen.
Häufige FehlvorstellungScrum eignet sich nur für große Softwarefirmen.
Was Sie stattdessen lehren sollten
Scrum skaliert für kleine Teams und Schülerprojekte. Simulations in Kleingruppen demonstrieren, wie es Kommunikation fördert. Peer-Diskussionen helfen, den Übergang von Theorie zu Praxis zu verstehen.
Häufige FehlvorstellungÄnderungen in Agile sind immer willkommen, ohne Konsequenzen.
Was Sie stattdessen lehren sollten
Änderungen werden priorisiert und in Backlogs verwaltet. Hands-on-Projekte lehren, dass hohe Priorität den aktuellen Sprint schützt. Retrospektiven stärken dieses Bewusstsein durch Teamfeedback.
Ideen für aktives Lernen
Alle Aktivitäten ansehen→Projektbasiertes Lernen
Scrum-Simulation: App-Entwicklung
Teilen Sie die Klasse in Teams auf, weisen Rollen zu und lassen Sie ein simples To-Do-App-Projekt planen. Führen Sie zwei Sprints durch: Erstes mit Planung und Implementierung, zweites mit Review und Anpassung. Schüler dokumentieren Backlogs und halten Stand-ups ab.
Rollenspiel
Daily Stand-up Rollenspiel
Jedes Team stellt sich in einem Kreis auf und beantwortet drei Fragen: Was gestern gemacht? Heute geplant? Blocker? Rotieren Sie Rollen und reflektieren Sie danach die Kommunikationsvorteile.
Projektbasiertes Lernen
Sprint Retrospective
Nach einer simulierten Sprint-Runde notieren Teams positiv, negativ und Verbesserungsvorschläge auf Flipcharts. Diskutieren Sie in Plenum und passen Sie Regeln für den nächsten Sprint an.
Bezüge zur Lebenswelt
- Softwareentwicklungsfirmen wie SAP oder die Telekom nutzen agile Methoden wie Scrum, um komplexe Unternehmenssoftware und digitale Dienste in kurzen Zyklen zu entwickeln und schnell auf Kundenfeedback zu reagieren.
- Start-ups im Technologiebereich, beispielsweise im Bereich E-Mobilität oder künstliche Intelligenz, setzen Scrum ein, um ihre Produkte schnell zu iterieren und Marktchancen zu nutzen, bevor Wettbewerber aufholen.
- Automobilhersteller integrieren agile Praktiken in ihre Entwicklungsprozesse, um die Software für Infotainmentsysteme oder Fahrerassistenzsysteme flexibel anzupassen und neue Funktionen schneller bereitzustellen.
Ideen zur Lernstandserhebung
Lassen Sie die Schüler auf einer Karteikarte die drei Hauptrollen in Scrum benennen und jeweils eine Hauptverantwortlichkeit kurz beschreiben. Fordern Sie sie auf, eine Situation zu nennen, in der die klare Rollenverteilung wichtig ist.
Stellen Sie den Schülern eine Liste von Projektänderungen vor (z.B. 'Kunde wünscht neue Funktion nach Sprint-Start'). Lassen Sie sie entscheiden, ob diese Änderung typischerweise in einem Scrum-Sprint gut oder schlecht gehandhabt wird und begründen Sie kurz, warum.
Teilen Sie die Klasse in Kleingruppen auf, die einen kurzen Sprint simulieren. Nach dem Sprint bewerten sich die Mitglieder gegenseitig anhand von Kriterien wie 'Aktive Teilnahme am Daily Stand-up' und 'Konstruktives Feedback im Sprint-Review'. Geben Sie eine Bewertungsmatrix vor.
Häufig gestellte Fragen
Was ist der Unterschied zwischen Scrum und Wasserfall-Modell?
Wie fördert Scrum die Teamkommunikation?
Wie geht man in Scrum mit sich ändernden Anforderungen um?
Wie kann aktives Lernen Scrum im Unterricht umsetzen?
Planungsvorlagen für Informatik
Mehr in Software-Engineering und Abschlussprojekt
Einführung in Software-Engineering
Die Schülerinnen und Schüler lernen die Phasen des Softwareentwicklungsprozesses und die Bedeutung von Software-Engineering kennen.
2 methodologies
Anforderungsanalyse und -management
Die Schülerinnen und Schüler lernen, Softwareanforderungen zu erheben, zu dokumentieren und zu verwalten.
2 methodologies
Software-Design und Architektur
Die Schülerinnen und Schüler entwerfen Softwarearchitekturen und wenden Designprinzipien an.
2 methodologies
Versionskontrolle mit Git
Die Schülerinnen und Schüler lernen den Umgang mit Versionskontrollsystemen zur Teamarbeit und Code-Verwaltung.
2 methodologies
Qualitätssicherung und Testing
Verfahren zur Sicherstellung der Softwarequalität durch Unit-Tests und Code-Reviews.
3 methodologies
Software-Wartung und Evolution
Die Schülerinnen und Schüler verstehen die Herausforderungen und Strategien der Software-Wartung.
2 methodologies