Alle Blog Artikel anzeigen

Agile Softwareentwicklung: Effiziente Methoden für moderne Projekte

Inhalt

Inhaltsverzeichnis

Agile Manifest
Agile Frameworks
Zusammenarbeit mit dem Kunden
Projektmanagement
Entwicklung
Kultur und selbstorganisierte Teams
Agile Testing und Qualität
Herausforderungen und Vorteile
Vergleich mit anderen Methoden
Agile Glossar

Agile Softwareentwicklung ist ein Ansatz im Softwareentwicklungsprozess, der darauf abzielt, die Transparenz und Veränderungsgeschwindigkeit zu erhöhen, um das entwickelte System schneller einsetzen zu können und damit Risiken und Fehlentwicklungen im Entwicklungsprozess zu minimieren. Dieser Ansatz basiert auf einem adaptiven Denken und Handeln und soll die Entwicklungsprozesse von Anwendungen transparenter, effizienter und flexibler gestalten im Vergleich zu klassischen Vorgehensmodellen. Agilität steht dabei für Flexibilität, das bedeutet, agile Methoden kommen in der Softwareentwicklung ohne starre Pflichtenhefte aus und ermöglichen so eine schnellere Anpassung an veränderte Anforderungen oder Herausforderungen während der Projektlaufzeit.

Ein bekanntes agiles Framework ist Scrum, das insbesondere für komplexe Systeme und Produktentwicklungen mit dynamischen, schwer vorhersagbaren und nichtlinearen Eigenschaften geeignet ist. Hierbei werden Projekte in kleine, überschaubare Iterationen (Sprints) eingeteilt, und regelmäßige Meetings (Daily Stand-ups) gewährleisten, dass alle Teammitglieder stets auf dem aktuellen Stand und unmittelbar auf Veränderungen und Hindernisse reagieren können.

Ein weiterer wichtiger Aspekt der agilen Softwareentwicklung ist die enge Zusammenarbeit und Kommunikation zwischen den Entwicklern, dem Produktmanagement, den Kunden und anderen Stakeholdern. Dies fördert nicht nur ein intensiveres Verständnis der Anforderungen und Bedürfnisse aller Beteiligten, sondern ermöglicht auch eine fortlaufende Verbesserung des Entwicklungsprozesses und der erstellten Software, wodurch das Risiko von Fehlern und Fehlentwicklungen weiter reduziert wird.

Agile Manifest

Leitsätze

Das Agile Manifest wurde im Jahr 2001 entwickelt und ist eine Zusammenstellung von Leitsätzen und Prinzipien zur Verbesserung der Softwareentwicklung. Es wirft einen neuen Blick auf, wie Projekte abgewickelt und Ziele erreicht werden sollen. Im Mittelpunkt stehen vier zentrale Werte:

  • Individuen und Interaktionen über Prozesse und Werkzeuge
  • Funktionierende Software über umfassende Dokumentation
  • Kundenkollaboration über Vertragsverhandlungen
  • Reaktion auf Veränderungen über Planverfolgung

Diese Leitsätze betonen den Wert des Menschen in Softwareprojekten und fördern die Flexibilität gegenüber starren Plänen.

Prinzipien

Zusätzlich zu den Leitsätzen beinhaltet das Agile Manifest 12 Prinzipien, die die Grundlage für das agile Mindset bilden. Einige dieser Prinzipien sind:

  1. Die höchste Priorität ist es, dem Kunden durch frühe und kontinuierliche Lieferung wertvoller Software zufriedenzustellen.
  2. Heiße Veränderungen in den Anforderungen willkommen, auch spät in der Entwicklung.
  3. Liefere funktionierende Software regelmäßig in kurzen Zeitabständen aus.
  4. Projekte werden rund um motivierte Individuen aufgebaut.
  5. Einfachheit ist wesentlich – maximiere die Menge der nicht erledigten Arbeit.

Im Fokus dieser Prinzipien steht die Transparenz zwischen den Teammitgliedern, die Zusammenarbeit mit dem Kunden und die kontinuierliche Verbesserung der Prozesse.

Das Agile Manifest hat den Weg für verschiedene agile Methoden geebnet, die heute in der Softwareentwicklung eingesetzt werden, wie Scrum, Kanban, Lean und Extreme Programming (XP). Es ist ein wichtiger Referenzpunkt für Teams, die den Übergang zur kontinuierlichen Verbesserung und agiler Softwareentwicklung schaffen möchten.

Agile Frameworks

Agile Frameworks sind Methoden, die agile Softwareentwicklung erleichtern und unterstützen. Sie bieten einen strukturierten Ansatz für das Projektmanagement und die Planung des Entwicklungsprozesses. Zu den bekanntesten agilen Frameworks zählen Scrum, Kanban, Extreme Programming (XP), Feature-Driven Development (FDD) und Dynamic Systems Development Method (DSDM).

Scrum

Scrum ist ein populäres agiles Framework, das auf kurzen iterativen Zyklen, den sogenannten Sprints, basiert. Im Mittelpunkt stehen:

  • Scrum Master: Verantwortlich für die Einhaltung des Scrum-Prozesses und die Unterstützung des Teams bei der Umsetzung.
  • Product Owner: Verantwortlicher für die Identifizierung und Priorisierung der Backlog-Aufgaben, um den größtmöglichen Wert für das Unternehmen oder die Kunden zu erzielen.
  • Team: Bestehend aus Entwicklern und anderen Fachleuten, die gemeinsam an der Erstellung des Produkts arbeiten.

Einige von Scrum verwendete Tools sind Backlog, Sprint-Planungsmeeting und Daily Stand-up-Meeting. Weitere Informationen über Scrum finden Sie hier.

Kanban

Kanban ist ein weiteres agiles Framework, das sich auf die kontinuierliche Verbesserung und Reduzierung von Engpässen konzentriert. Es basiert auf vier Grundprinzipien:

  1. Visualisiere den Arbeitsprozess
  2. Limitiere laufende Aufgaben
  3. Manage den Arbeitsfluss
  4. Optimiere und verbessere fortlaufend

Kanban-Boards werden häufig als Werkzeug verwendet, um den Arbeitsfortschritt zu verfolgen und Engpässe zu erkennen. Hier erfahren Sie mehr über Kanban.

Extreme Programming (XP)

Extreme Programming (XP) ist ein agiles Framework, das sich auf effiziente Kommunikation, schnelle Rückmeldungen und kontinuierliche Verbesserungen konzentriert. Es umfasst Techniken wie Test-Driven Development (TDD), Pair Programming und Refactoring. Weitere Informationen über XP finden Sie hier.

Feature-Driven Development (FDD)

Feature-Driven Development (FDD) ist ein agiles Framework, das den Schwerpunkt auf die modulare Entwicklung und die enge Zusammenarbeit von interdisziplinären Teams legt. Es besteht aus fünf Hauptprozessen:

  1. Entwicklung eines Gesamtmodells
  2. Erstellung einer Feature-Liste
  3. Planung nach Architektur
  4. Entwickeln nach Feature
  5. Zusammenfassung und Reporting

Für mehr Informationen über FDD, klicken Sie hier.

Dynamic Systems Development Method (DSDM)

Dynamic Systems Development Method (DSDM) ist ein agiles Framework, das einen starken Fokus auf das Management und die Unterstützung von Entscheidungsprozessen legt. Zu den Hauptprinzipien von DSDM gehören Benutzerbeteiligung, iterative Entwicklung und Zusammenarbeit. Hier erhalten Sie weitere Informationen zu DSDM.

Jedes dieser Frameworks hat seine eigenen Stärken und Schwächen sowie spezifische Anwendungsfälle. Agile Softwareentwicklung zielt darauf ab, Development-Prozesse zu optimieren und effizientere Ergebnisse für das Endprodukt zu erzielen.

Zusammenarbeit Mit Dem Kunden

Die Zusammenarbeit mit dem Kunden ist ein zentraler Bestandteil der agilen Softwareentwicklung. Es hat Vorrang vor Vertragsverhandlungen und fördert eine starke Kommunikation sowie gemeinsames Wachstum.

Die Zusammenarbeit umfasst einige wichtige Aspekte:

  • Kundenzufriedenheit: Im Zentrum der agilen Softwareentwicklung steht die Erfüllung der Kundenanforderungen. Durch regelmäßige Kommunikation und kurze Entwicklungszyklen kann das Team schnell auf Änderungen reagieren und sicherstellen, dass die Software den Anforderungen der Kunden entspricht.

  • Kommunikation: Ein offener Dialog zwischen dem Entwicklungsteam und dem Kunden ist für eine erfolgreiche Zusammenarbeit unerlässlich. Dies ermöglicht es beiden Seiten, ihre Bedenken zu artikulieren und gegenseitig Verständnis für die jeweiligen Anforderungen und Herausforderungen zu entwickeln.

  • Inkrementelle Entwicklung und Feedback: Agile Methoden wie Scrum und Extreme Programming setzen auf kurze Entwicklungszyklen, in denen die Software schrittweise verbessert und erweitert wird. Kunden sollten regelmäßig Feedback zur aktuellen Version geben, damit deren Anforderungen ebenfalls schrittweise berücksichtigt werden können.

  • Transparenz und Vertrauen: Eine offene und transparente Zusammenarbeit fördert das Vertrauen zwischen dem Entwicklungsteam und dem Kunden. Beide Seiten sollten sich rechtzeitig über Änderungen der Anforderungen oder des Entwicklungsfortschritts informieren und gemeinsam Entscheidungen über den weiteren Projektablauf treffen.

  • Kontinuierliche Verbesserung: Agile Softwareentwicklung strebt nach ständiger Verbesserung der Prozesse und des Endprodukts. Die Zusammenarbeit mit dem Kunden ist entscheidend, um Schwachstellen zu identifizieren und Lösungen zur Optimierung zu erarbeiten.

Die Einbindung des Kunden in den Entwicklungsprozess und die kontinuierliche Zusammenarbeit sind wesentliche Bestandteile agiler Methoden. Sie tragen maßgeblich zur Kundenzufriedenheit und zum Erfolg des Projekts bei.

Projektmanagement

Iterationen und Sprints

Agile Softwareentwicklung setzt auf iterative Prozesse und flexible Planung, um das Projektmanagement effektiver und effizienter zu gestalten. Es werden kurze, zeitlich begrenzte Arbeitsphasen, sogenannte Sprints, eingesetzt. In jedem Sprint wird ein funktionsfähiges Produktsegment entwickelt und getestet. Die Dauer eines Sprints variiert in der Regel zwischen einer und vier Wochen.

Einige Vorteile von Sprints sind:

  • Kürzere Feedbackzyklen
  • Schnellere Anpassung an geänderte Anforderungen
  • Regelmäßige Überprüfung des Fortschritts

Backlog

Eine zentrale Rolle im agilen Projektmanagement spielt das Backlog. Es handelt sich dabei um eine priorisierte Liste von Anforderungen, die in Form von User Stories oder anderen übersichtlichen Formatierungen dokumentiert sind. Der Inhalt des Backlogs wird kontinuierlich aktualisiert, um neue Kundenwünsche oder Änderungen der Projektanforderungen zu berücksichtigen.

Die Hauptelemente eines Backlogs sind:

  • User Stories: Kurze Beschreibungen von Anforderungen aus Sicht des Benutzers
  • Priorisierung: Die Reihenfolge, in der Anforderungen bearbeitet werden sollen
  • Schätzung: Die Aufwandsschätzung für die Umsetzung einer Anforderung

In agilen Projekten ist es üblich, das Backlog in verschiedene Ebenen zu unterteilen, um die Planung und Priorisierung zu erleichtern. So gibt es beispielsweise das Produktbacklog für übergreifende Projektanforderungen und das Sprintbacklog für die spezifischen Anforderungen eines einzelnen Sprints.

Im Rahmen des agilen Projektmanagements werden verschiedene Ansätze und Praktiken angewendet, um die Zusammenarbeit im Team zu fördern und die Produktivität zu steigern. Zu diesen agilen Praktiken gehören zum Beispiel:

  • Stand-up-Meetings: Kurze, tägliche Besprechungen zur Abstimmung innerhalb des Teams
  • Retrospektiven: Regelmäßige Reflexion über den Projektfortschritt und mögliche Verbesserungspotentiale
  • Planungsmeetings: Zusammenstellung und Priorisierung der Arbeitspakete für den nächsten Sprint

Durch die Verwendung dieser agilen Praktiken kann das Projektmanagement auf die Zielsetzungen und Anforderungen der verschiedenen Stakeholder im Softwareentwicklungsbereich besser eingehen und einen schnelleren, dynamischeren Entwicklungsprozess ermöglichen.

Entwicklung

Git

Git ist ein weit verbreitetes Versionskontrollsystem, das bei der agilen Softwareentwicklung zum Einsatz kommt. Es ermöglicht Teams, den Quellcode effizient und sicher zu verwalten, während sie an verschiedenen Features und Bugfixes arbeiten. Git unterstützt die iterative Entwicklung durch die Möglichkeit, den Code in verschiedenen Zweigen zu bearbeiten und diese Änderungen später zusammenzuführen. Dies fördert die Experimentierfreudigkeit der Entwickler und ermöglicht es ihnen, schnell auf Feedback zu reagieren und ihre Arbeit entsprechend anzupassen.

Einige Vorteile von Git bei der agilen Entwicklung sind:

  • Leichtgewichtig und schnell
  • Dezentralisierte Struktur erlaubt kontinuierliches Arbeiten
  • Unterstützt effektives Branching und Merging
  • Einfache Zusammenarbeit von Teams

DevOps

DevOps ist ein Ansatz zur Softwareentwicklung, der die Zusammenarbeit zwischen Entwicklungs- und IT-Betriebsteams fördert. Ziel ist es, schneller und höherwertige Software-Produkte zu liefern und auf mögliche Probleme effizienter reagieren zu können. DevOps ist eng mit der agilen Softwareentwicklung verwandt, da es für schnellere Iterationen sorgt und den Schwerpunkt auf kontinuierliches Feedback legt. Zu den Hauptpraktiken von DevOps gehören Continuous Integration (CI), Continuous Deployment (CD) und Infrastructure as Code (IaC).

Hier sind einige Hauptaspekte von DevOps:

  • Kontinuierliche Entwicklung und Bereitstellung von Software
  • Automatisierung von Prozessen und Tests
  • Verbesserung der Kommunikation und Zusammenarbeit zwischen Entwicklung und Betrieb
  • Monitoring und kontinuierliches Feedback

In der agilen Softwareentwicklung sind iterative Vorgehensweisen ein Schlüsselelement. Durch Git und DevOps können Entwicklungsteams schnell auf Änderungen und Feedback reagieren, was für eine effiziente und adaptive Softwareentwicklung unerlässlich ist.

Kultur Und Selbstorganisierte Teams

Agile Softwareentwicklung basiert auf der Zusammenarbeit von multidisziplinären Teams, deren Mitglieder verschiedene Rollen und Verantwortlichkeiten haben. Ein zentrales Konzept in der agilen Kultur sind selbstorganisierte Teams, die in der Lage sind, ihre Arbeit eigenständig und effizient zu organisieren.

Ein selbstorganisiertes Team setzt sich oft aus Fachexperten und motivierten Individuen zusammen, die gemeinsam ein Produkt entwickeln. Diese Teams sind oft cross-funktional, das bedeutet, dass ihre Mitglieder unterschiedliche Fachkenntnisse und Fähigkeiten besitzen. Ein typisches Beispiel für ein agiles Team ist das Scrum-Team, das aus einem Product Owner, einem Scrum Master und mehreren Entwicklern besteht.

In selbstorganisierten Teams treffen die Teammitglieder eigenverantwortlich Entscheidungen und passen ihre Arbeit dynamisch an, um Probleme zu bewältigen und erfolgreiche Ergebnisse zu erreichen. Das ermöglicht eine höhere Flexibilität und Anpassungsfähigkeit im Entwicklungsprozess.

Einige der Vorteile selbstorganisierter Teams sind:

  • Effizientere Kommunikation und Zusammenarbeit
  • Bessere Entscheidungsfindung durch gemeinsames Wissen
  • Erhöhte Motivation und Eigenverantwortung
  • Schnellere Lösungsfindung von Problemen

Um eine Kultur der Selbstorganisation zu fördern, ist es wichtig, dass Führungskräfte ein Umfeld schaffen, in dem motivierte Individuen ihr Potenzial entfalten und Verantwortung übernehmen können. Dies erfordert Vertrauen, offene Kommunikation und die Bereitschaft, Fehler als Lernmöglichkeiten zu betrachten.

Eine zentrale Rolle in der Führung selbstorganisierter Teams spielt der Scrum Master. In agilen Teams ist der Scrum Master für die Einhaltung der agilen Prinzipien zuständig und unterstützt das Team dabei, selbstorganisiert und effektiv zusammenzuarbeiten.

Zusammenfassend ist die Kultur der Selbstorganisation ein wichtiger Aspekt der agilen Softwareentwicklung. Durch die Förderung von selbstorganisierten Teams, die aus motivierten Individuen und verschiedenen Fachexperten bestehen, können Unternehmen flexibler und effizienter auf Veränderungen reagieren und innovative Produkte entwickeln.

Agile Testing Und Qualität

Agile Testing ist ein wichtiger Bestandteil der Agile Softwareentwicklung. Im Gegensatz zu traditionellen Testmethoden, bei denen Tests meist am Ende eines Entwicklungsprojekts durchgeführt werden, findet das Testen in agilen Projekten kontinuierlich und parallel zur Entwicklung statt. Das Ziel ist es, schnell auf Veränderungen reagieren zu können und eine hohe Produktqualität zu gewährleisten.

Durch den Einsatz agiler Testmethoden verringert sich die Wahrscheinlichkeit, dass Fehler erst spät im Entwicklungsprozess erkannt werden. Stattdessen werden mögliche Probleme frühzeitig identifiziert und beseitigt. Einige gängige Methoden im agilen Testing sind:

  • Akzeptanztestgetriebene Entwicklung (Acceptance Test Driven Development, ATDD)
  • Testautomatisierung
  • Exploratives Testen

Die Bereitstellung von qualitativ hochwertiger Software ist eines der Hauptziele agiler Teams. Die kontinuierliche Integration (Continuous Integration, CI) und die kontinuierliche Bereitstellung (Continuous Deployment, CD) sind zwei zentrale Konzepte, die dazu beitragen, die Produktqualität in agilen Projekten sicherzustellen.

Dank der kontinuierlichen Integration werden Codeänderungen auf einer zentralen Plattform zusammengeführt und automatisch getestet. Dies ermöglicht es den Teams, schnell auf Fehler zu reagieren und sie zu beheben. Die kontinuierliche Bereitstellung hingegen stellt sicher, dass die getestete Software automatisch in die Produktionsumgebung übernommen wird. Dadurch können neue Funktionen und Bugfixes schneller eingeführt und ausgeliefert werden.

Die Qualität der Software und der damit verbundene agile Testing spielen in agilen Projekten eine entscheidende Rolle. Um eine hohe Produktqualität zu erreichen, müssen die Testmethoden an das agile Vorgehen angepasst werden und eng mit der Entwicklung zusammenarbeiten. Durch die Verwendung agiler Testmethoden, kontinuierlicher Integration und Bereitstellung kann die Qualität der Software in agilen Projekten gewährleistet werden.

Herausforderungen Und Vorteile

Herausforderungen

Die Agile Softwareentwicklung bringt einige Herausforderungen mit sich, darunter:

  1. Risiken: Bei agilen Projekten können Risiken entstehen, wenn sie nicht sorgfältig geplant und überwacht werden. Dies kann zu Verzögerungen, Kostenerhöhungen und Misserfolgen führen. Risiken können durch regelmäßige Überprüfungen und schnelle Anpassungen minimiert werden.

  2. Anforderungsänderungen: Agile Projekte sind anpassungsfähig, aber zu viele Änderungen können die Entwicklung aufhalten. Anforderungsänderungen müssen sorgfältig abgewogen und priorisiert werden, um unnötige Verzögerungen zu vermeiden.

  3. Team-Koordination: Da agile Projekte auf Kommunikation und Zusammenarbeit angewiesen sind, kann es Herausforderungen bei der Koordinierung von Teams und der Verwaltung von Arbeitsbelastungen geben. Dies kann durch regelmäßige Stand-up-Meetings und klare Kommunikationskanäle bewältigt werden.

Vorteile

Die Agile Softwareentwicklung bietet auch eine Reihe von Vorteilen, wie:

  1. Höhere Qualität: Durch kontinuierliches Testen und Feedback kann die Qualität der entwickelten Software verbessert werden. Dies führt zu höherer Qualität der Ergebnisse und einer besseren Erfüllung der Kundenanforderungen.

  2. Schnellere Markteinführung: Agile Projekte können schneller abgeschlossen werden als traditionelle Methoden, da sie in kurzen Iterationen arbeiten und frühzeitig Ergebnisse liefern. Dies ermöglicht es Unternehmen, einen Wettbewerbsvorteil zu erlangen, indem sie ihre Produkte schneller auf den Markt bringen.

  3. Flexibilität: Agile Entwicklungsteams sind besser gerüstet, um auf Änderungen und neue Anforderungen zu reagieren, da sie in kurzen, anpassungsfähigen Iterationen arbeiten. Dies macht es einfacher, Probleme zu erkennen und zu lösen, und ermöglicht es, schnell auf Anforderungsänderungen zu reagieren.

  4. Bessere Zusammenarbeit: Agile Teams arbeiten eng zusammen, was zu besserer Kommunikation und Zusammenarbeit führt. Dies verbessert die Team-Moral und fördert ein Umfeld kontinuierlicher Verbesserung.

Vergleich Mit Anderen Methoden

Agile Softwareentwicklung ist ein Ansatz, der in den letzten Jahren immer beliebter geworden ist. In diesem Abschnitt betrachten wir den Vergleich zwischen Agile-Softwareentwicklung gegenüber dem Wasserfallmodell, Methoden wie Kanban und Scrum,die Vor- und Nachteile dieser Ansätze und den Einsatz in großen Unternehmen.

Agile Softwareentwicklung gegenüber Wasserfallmodell

Das Wasserfallmodell ist einer der ältesten Ansätze in der Softwareentwicklung. Es basiert auf einer sequenziellen Vorgehensweise, bei der jede Phase vollständig abgeschlossen sein muss, bevor die nächste beginnt. Im Gegensatz dazu betont die Agile Softwareentwicklung die iterative Entwicklung und kontinuierliche Verbesserung. Der Agile-Ansatz erlaubt es Teams, auf Veränderungen im Projektverlauf besser zu reagieren, während das Wasserfallmodell weniger Anpassungsfähigkeit bietet und im Allgemeinen weniger effizient ist, wenn es um das Bewältigen von Veränderungen geht.

Kanban und Scrum im Vergleich

Sowohl Kanban als auch Scrum sind agile Methoden, aber sie unterscheiden sich in Bezug auf ihren Fokus und ihre Herangehensweise. Kanban ist eine Visualisierungsmethode ohne festgelegte Regeln und mit flexiblem Zeitrahmen, während Scrum in festen Arbeitszyklen, sogenannten Sprints, durchgeführt wird, die normalerweise zwei Wochen dauern.

Kanban konzentriert sich auf die kontinuierliche Verbesserung und eliminiert häufige Hindernisse und Blockaden, während Scrum eine strukturierte Umgebung für die Entwicklung von Projekten bietet. Beide Methoden haben ihre eigenen Vor- und Nachteile, und die Wahl der besten Methode hängt von den Anforderungen und Zielen des jeweiligen Projekts ab.

Agile Softwareentwicklung in großen Unternehmen

Für große Unternehmen gibt es auch Skalierungsmethoden wie Disciplined Agile und das Spotify-Modell. Disciplined Agile (DA) soll leichter zu skalieren und flexibler als Scrum oder Kanban sein. Im Gegensatz dazu ist das Spotify-Modell ein mitarbeiterzentrierter Ansatz, der agile Prinzipien in autonomen Teams anwendet.

Zusammengefasst gibt es verschiedene Ansätze und Methoden in der agilen Softwareentwicklung, und jeder hat seine eigenen Stärken und Schwächen. Die Wahl der besten Methode hängt von Projektanforderungen, Teamgröße und Zielen ab.

Agile Glossar

Agile Softwareentwicklung bezieht sich auf Ansätze in der Softwareentwicklung, die darauf abzielen, Transparenz, Flexibilität und schnelle Reaktionsfähigkeit zu erhöhen, um Projekte effektiver zu gestalten. Die agile Methodik baut auf verschiedenen Prinzipien auf, und es gibt mehrere Schlüsselbegriffe, die in diesem Kontext relevant sind.

  • Scrum: Eine agile Methode, die in Sprints, kurze Arbeitszyklen, organisiert ist und die Kollaboration in selbstorganisierten Teams fördert.

  • Backlog: Eine Liste von Anforderungen und Aufgaben, die im Laufe des Projekts priorisiert und bearbeitet werden sollen.

  • Iteration: Ein Zeitraum, in dem ein Entwicklerteam an einer begrenzten Menge von Aufgaben arbeitet, um einen funktionsfähigen Teil des Projekts zu liefern.

  • Stand-up-Meeting: Ein tägliches, kurz gefasstes Treffen, bei dem jedes Teammitglied über den aktuellen Stand, geplante Aufgaben und mögliche Hindernisse berichtet (Quelle).
  • Scrum Master: Engagiert sich dafür, dass das Team die Scrum-Regeln einhält und unterstützt die Teammitglieder bei der Umsetzung der agilen Methodik.
  • Produkt Owner: Die Person, die die Anforderungen des Kunden versteht, die Prioritäten im Projekt festlegt und entscheidet, welche Funktionen entwickelt werden sollen.
  • Sprint Review: Ein Meeting am Ende eines Sprints, bei dem das Team den aktuellen Stand des Projekts präsentiert und Feedback von Stakeholdern erhält.
  • Sprint Retrospektive: Ein Meeting nach dem Sprint Review, bei dem das Team darüber diskutiert, was gut lief und was verbessert werden sollte, um zukünftige Sprints zu optimieren.