Beiträge

Das "Manifest für agile Softwareentwicklung" dokumentiert allgemeine Prinzipien

Scrum oder Kanban – Die Grundlagen agiler Softwareentwicklung

Im Projektmanagement und der Prozesssteuerung existieren heute zahlreiche agile Methoden und Tools, die jeweils eigenen Regeln und Vorgehensweisen folgen. Einige dieser Ansätze ziehen einen sehr engen Rahmen, andere lassen mehr Freiheiten. Trotz aller Unterschiede basieren sie aber alle auf denselben Prinzipien, die im „Manifest für agile Softwareentwicklung“ dokumentiert sind.

  • Das Manifest besagt unter anderem, dass es wichtiger ist, schnell auf geänderte Anforderungen zu reagieren, als strikt einem Plan zu folgen.
  • Als wichtiger Erfolgsfaktor für agil geführte Projekte gilt, dass alle Beteiligten die richtige Einstellung haben, um in einem agilen Projektumfeld arbeiten zu können.
  • Die Offenheit, möglichst auch verschiedene Komponenten unterschiedlicher Methoden zu kombinieren, ist ein weiterer wichtiger Aspekt des Manifests. Im Ergebnis sollen die eigenen Ansprüche optimal bedient werden. Wichtig sind das Bewusstsein und die Möglichkeit zur Kombination.

Auch die Softwareentwicklung folgt seit den letzten Jahren häufig einer agilen Methode. Die zwei verbreitetsten Ansätze auf diesem Gebiet sind Scrum und Kanban.

Vergleich von Scrum und Kanban

Ein oft erwähnter Vorteil solcher Methoden ist, dass Projekte durch den Einsatz der agilen Prinzipien schneller abgeschlossen werden können. Erreicht wird das durch Prozessoptimierung. Höhere Transparenz soll Optimierungspotenziale aufzeigen und dadurch eine Effizienzverbesserung ermöglichen.

Sowohl Scrum als auch Kanban setzen voraus, dass die Beteiligten ihre Umgebung anpassen. Es existieren Gerüste aus Regeln, in denen die Teams den gegebenen Spielraum nutzen können. Grundsätzlich kann man sagen, dass Kanban einen etwas flexibleren Rahmen vorgibt als Scrum. Aber ziehen wir einmal einen Direktvergleich…

  • leicht verständlich und schnell einführbar
  • lassen die Beteiligten entscheiden, wann sie welche ToDos bearbeiten
  • basieren auf fortlaufender Prozessoptimierung
  • betonen, dass die schnelle Anpassung wichtiger ist, als einem festen Plan zu folgen
  • setzen auf Transparenz, um Prozessverbesserungen zu beschleunigen
  • sind darauf ausgerichtet, Software schnell auszuliefern
  • unterteilen anfallende Aufgaben in kleinere Pakete
  • helfen dabei, durch empirische Daten kontinuierlich den Release-Plan zu optimieren
  • kurze Kommunikationswege
  • hohe Flexibilität/Agilität durch adaptives Planen
  • hohe Effektivität durch Selbstorganisation
  • hohe Transparenz durch regelmäßige Meetings und Backlogs
  • zeitnahe Realisation neuer Produkteigenschaften bzw. Inkremente
  • kontinuierlicher Verbesserungsprozess
  • kurzfristige Problem-Identifikation
  • geringer Administrations- und Dokumentationsaufwand
  • direkte Visualisierung des Projektablaufs macht Probleme anhand von Ticket-Häufungen schnell sichtbar
  • übergreifendes System, das prinzipiell auf jeden bestehenden Entwicklungsprozess aufgesetzt werden kann
  • negatives Multitasking optimal vermieden
  • geringe Größe der einzelnen Tickets hat zur Folge, dass die Beschreibung der verschiedenen Tasks auf das Wesentliche beschränkt ist
  • Board dient als Kommunikationsgrundlage und Fundament, über das sich das Team synchronisiert

 

Start in die agile Softwareentwicklung mit einem Kanban Board

Ein einfaches Kanban Board, Bildquelle: Kanban Tool (CC BY-SA 2.0)

Ein Kanban Board repräsentiert den individuellen Bearbeitungsprozess eines Teams, das klassische Scrum Board ist dagegen immer gleich aufgebaut. Letzteres begrenzt die Arbeitsbelastung indirekt durch die Einschränkung der Anzahl der Karten im Sprint Backlog. Ein Kanban Board kann die Anzahl der Karten je Spalte direkt begrenzen.

Kanban oder Scrum – Was ist besser?

Neben Scrum und Kanban gibt es noch weitere agile Ansätze, von denen einige auf den beiden vorgestellten Methoden basieren. Jedes Team, das agil arbeiten möchte, muss für sich die relevanten Elemente der verschiedenen Ansätze finden und passend kombinieren. Da es keine Allround-Methode für alle denkbaren Projekte gibt, ist Ausprobieren und Variieren notwendig, um die optimale Lösung zu finden.

Auch wir arbeiten seit vielen Jahren nach den Prinzipien agiler Softwareentwicklungsmethoden, was nicht nur bei Mitarbeitern, sondern insbesondere bei Partnern und Kunden für erfolgreiche Projektabschlüsse sorgt. Gerne beraten wir Sie auch zu diesen Themen.