eBook-Exzerpt – Arbeitsmethoden der Entwicklerteams

Wichtige Methoden agiler Softwareentwicklung

| Autor / Redakteur: Christian Rentrop / Stephan Augsten

Die Methoden Scrum und Kanban im Vergleich.
Die Methoden Scrum und Kanban im Vergleich. (Bild: Cuelogic)

Die agile Softwareentwicklung ermöglicht schnellere und effizientere Entwicklung bei minimalem Aufwand. Doch welche Methoden gibt es, um Software agil zu entwickeln?

Agile Softwareentwicklung ist theoretisch recht einfach zu bewerkstelligen: Es geht darum, möglichst schnell und effizient funktionierende Software zu erstellen, die dem Kunden zusagt. Durch regelmäßige Kommunikation, Feedback-Schleifen und die daraus resultierende Flexibilität ist es natürlich nötig, gewisse Umstrukturierungen in der Arbeit von Entwicklerteams vorzunehmen und für die Umsetzung der im agilen Manifest festgehaltenen Kernprinzipien der agilen Softwareentwicklung zu sorgen:

  • Individuen und Interaktionen sind wichtiger als Prozesse und Werkzeuge.
  • Funktionierende Software ist wichtiger als komplexe Dokumentation.
  • Zusammenarbeit mit dem Kunden ist wichtiger als Vertragsverhandlungen.
  • Das Reagieren auf Veränderungen ist wichtiger als das Einhalten eines Plans.

Aus diesen vier Grundsäulen sowie den im Manifest weiter ausgeführten 12 Prinzipien der agilen Programmierung wurden mit der Zeit einige Methoden und Prozesse entwickelt, nach denen Programmierer und Teams vorgehen können. Diese sollen maximale Kreativität bei optimaler Effektivität und einem guten Kundenerlebnis gewährleisten: Scrum, Kanban und Extreme Programming.

Scrum

Zu den wichtigsten Methoden der agilen Softwareentwicklung zählt das Scrum-Prinzip. Scrum wird nicht nur in der Softwareentwicklung eingesetzt, sondern ist inzwischen eine weit verbreitete Projektmanagement-Methode, bei der das Projekt in Form von sogenannten Sprints entwickelt wird.

Sprints laufen nach dem immer gleichen Schema ab: Zunächst werden dem Sprint im Rahmen eines Planungsmeetings Ziele und Dauer vorgegeben. Begleitet wird der Sprint mit täglichen Kurzmeetings, um das Team abzustimmen. Nach Abschluss des Sprints gibt es eine Sprint-Demo mit der Präsentation der Ergebnisse. Zu guter Letzt wird im Rahmen einer Sprint-Retrospektive ein Rückblick erstellt, der Verbesserungen des kommenden Sprints ermöglicht.

eBook „Agile Softwareentwicklung“

Agile SoftwareentwicklungDieses eBook setzt sich mit der Fragestellung "was ist Agilität und wie steht es aktuell um diesen Ansatz?" kritisch auseinander und beleuchtet entsprechende Methoden und Praxisbeispiele.  (PDF | ET 29.11.18)


eBook herunterladen »

Auf diese Weise gibt es einen kleinteiligen, aber konstanten und sich ständig selbst verbessernden Entwicklungsprozess, der die Teammitglieder permanent motiviert. Zudem können Änderungen schnell umgesetzt werden. Damit das Ganze nicht aus dem Ruder läuft, gibt es drei „Benutzerrollen“: Project Owner, Scrum-Master und Scrum-Team.

  • Der Project-Owner hält das Gesamtziel vor Augen und verbindet die Scrum-Teams mit dem Unternehmen oder Kunden.
  • Der Scrum-Master agiert als Teamleiter, der für die Fortschritte und Koordination eines Teams verantwortlich ist. Gleichzeitig muss er in Absprache mit dem Project Owner dafür sorgen, dass optimale Bedingungen für sein Team bei gleichzeitig maximaler Effizienz des Teams gewährleistet sind.
  • Das Scrum-Team wiederum ist ein Team aus maximal sieben Mitarbeitern, das sich um die Umsetzung der Vorgaben kümmert. Das Team sollte nicht größer sein, um die für Sprints notwendigen Absprachen innerhalb des Teams effektiv zu halten und ein „Wir-Gefühl“ zu schaffen, das die Teamdynamik unterstützt.

Kanban

Anders als Scrum setzt Kanban vor allem auf Fokussierung auf bestimmte Tätigkeiten, nach dem Motto: „Stop starting – start finishing“. Sprich: Es geht darum, möglichst wenige Aufgaben möglichst effektiv abzuhandeln. Dazu ist allerdings, anders als bei Scrum, deutlich mehr Planung notwendig.

Der Arbeitsfluss sollte vorab festgelegt werden, das Ziel eines jeden Teilnehmers muss sein, ein Ziel abzuschließen statt sich wie mancherorts üblich gleichzeitig mit zahllosen angefangenen Aufgaben zu behängen. Dadurch werden lähmende und konzentrationshemmende Ablenkungen möglichst eliminiert. Anders als bei Scrum gibt es vom Start weg eine durchaus zielgerichtete Vorstellung des Gesamtergebnisses.

Dieser Beitrag ist ein Auszug aus unserem eBook „Agile Softwareentwicklung“. Sie möchten mehr über Kanban, die Unterschiede zu Scrum und den dritten agilen Ansatz des Extreme Programming erfahren? Laden Sie sich gerne das registrierungspflichtige eBook herunter, schauen Sie in unsere Definitionen-Special oder stöbern Sie in weiteren Fachbeiträgen zum Thema.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45632866 / Agile Entwicklung)