Es gibt so viele verschiedene agile Methoden, dass es manchmal schwer sein kann, herauszufinden, welche die richtige für Ihr Team ist. In diesem Artikel erhalten Sie einen Überblick über das agile Projektmanagement und einige gängige Frameworks, die Ihnen den Einstieg erleichtern.
Update: Im neuen Update erklären wir Ihnen das Agile Manifesto dahinter und wie relevant dieses Dokument heutzutage noch ist.
Beim Thema Projektmanagement gibt es eine Vielzahl von agilen Methoden, die Sie für die Verwaltung Ihres Projekts verwenden können. Traditionell laufen Projekte linear ab, wobei Aufgaben nacheinander abgearbeitet werden. Dies ist gemeinhin als Wasserfallmodell bekannt.
Das änderte sich im Jahr 2001, als der Einsatz von Software sehr viel populärer wurde. Die lineare Wasserfall-Methode ist für Software-Teams nicht so gut geeignet, da sich der Projektverlauf ständig ändert und auch die Kundenbedürfnisse sich schnell wandeln. So entstand das agile Projektmanagement.
Agile Methoden sind nicht nur für das Software-Projektmanagement nützlich – alle Arten von Teams können mit dieser dynamischen Methodik arbeiten. Wenn Sie mit agilem Projektmanagement beginnen möchten, sind Sie hier genau richtig.
„Agile“ oder agile Methodik ist ein Projektmanagement-Framework, das Projekte in mehrere dynamische Phasen unterteilt, die gemeinhin als Sprints bezeichnet werden. Der agile Rahmen ist eine iterative Methodik. Nach jedem Sprint nehmen sich die Teams etwas Zeit zur Reflektion und ziehen ein Resümee, um zu sehen, ob es etwas gab, das hätte besser laufen können. Somit sind sie in der Lage, ihre Strategie für den nächsten Sprint anzupassen.
Agile Teams mit Asana managenDas Agile Manifesto und die 12 Prinzipien der agilen Softwareentwicklung entstanden wie bereits gesagt in den 90er Jahren. Damals herrschte große Frustation in der Branche, das es viele neue verschiedene Projektmanagement-Methoden gab, die allesamt Vor- und Nachteile mit sich brachten. Dazu zählt etwa Scrum, Kanban, Extreme Programming oder Crystal Clear.
Um aus diesen verschiedenen Methoden heraus eine klare Linie zu erkennen wurde das Agile Manifesto entwickelt. So kam es schließlich dazu, dass sich im Februar 2001 17 Männer in Snowbird im US-Bundesstaat Utah trafen, um die Zukunft der Softwareentwicklung zu diskutieren. Alle Mitglieder waren mit der damaligen Problematik vertraut und alle brachten ihre unterschiedlichen Lösungsansätze mit an diesem Wochenende.
Zwar hatten alle verschiedene Lösungen, über das Problem waren sie sich jedoch einig: Unternehmen waren meist überfordert, die verschiedenen Methoden zur Planung und Dokumentation zu integrieren, dass sie vollkommen den Fokus verloren hatten auf das, was am Ende des Tages wirklich wichtig war: Der Kunde und seine Anforderungen.
Jedem Mitglied war bewusst, dass sich dieser Zustand ändern müsste. Die Agile Softwareentwicklung war schließlich entstanden, um den Unternehmen Probleme abzunehmen und nicht um diese zu verschlimmern. Das Ergebnis aus dem Meeting war schließlich das Dokument Agile Manifesto. Das Originaldokument war tatsächlich nur 68 Wörter lang, dennoch hat es die Branche der Softwareentwicklung wesentlich geprägt. Denn das Agile Manifesto und die daraus entstandenen 12 Prinzipien der Softwareentwicklung sollten noch eine lange Zeit einen Einfluss haben auf die agile Methoden.
Da das Agile Manifesto in der Tat nur sehr kurz ist, möchten wir es an dieser Stelle einfügen. So können Sie sich einen Einblick machen in die vier wichtigen Werte, die bei dem Meeting von Snowbird 17 entstanden sind.
Das Manifest für Agile Softwareentwicklung
Wir erschließen bessere Wege, Software zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt:
Individuen und Interaktionen mehr als Prozesse und Werkzeuge
Funktionierende Software mehr als umfassende Dokumentation
Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung
Reagieren auf Veränderung mehr als das Befolgen eines Plans
Das heißt, obwohl wir die Werte auf der rechten Seite wichtig finden, schätzen wir die Werte auf der linken Seite höher ein.
Kent Beck James Grenning Robert C. Martin
Mike Beedle Jim Highsmith Steve Mellor
Arie van Bennekum Andrew Hunt Ken Schwaber
Alistair Cockburn Ron Jeffries Jeff Sutherland
Ward Cunningham Jon Kern Dave Thomas
Martin Fowler Brian Marick
In den nächsten Absätzen werden wir kurz näher auf die einzelnen Werte vom Agile Manifesto eingehen und welche Bedeutung dahintersteckt.
Dieser Wert ist eigentlich sehr nachvollziehbar, denn egal wie wichtig die Prozesse und Tools sind, die Menschen und die Mitarbeiter sind immer wichtiger. Denn es sind die Menschen, die die Prozesse nutzen und Veränderungen vorantreiben können. Es sind die Mitarbeiter, die wirklich verstehen können, welche Anforderungen die Kunden haben und die diese umsetzen können.
Auch die Interaktionen sind in den Vordergrund zu stellen. Denn gerade wenn es darum geht, agil zu arbeiten, ist die Interaktion und Kommunikation ungemein wichtig. Diese erfolgt bei Individuen auf natürlichem Wege, nämlich genau dann, wenn sie notwendig ist.
Eine umfassende Dokumentation wurde immer als sehr wichtig betrachtet. So war es immer wichtig, alle Details sorgfältig und genau aufzuschreiben, dies beinhaltet auch technische Spezifikationen zu Komponenten, Schnittstellen-Design, Testpläne und Genehmigungen. All diese Detail aufzuschreiben dauert sehr lange und gibt somit den Entwicklern weniger Zeit, an der tatsächlichen Software zu arbeiten.
Und am Ende des Tages ist es wichtig, dass ma eine gut funktionierende Software den Kunden anbieten kann und nicht die Dokumentation, die man dazu hat. Deshalb soll es im agilen Ansatz möglich sein, den Entwicklern den Fokus auf die Software wiederzugeben, ohne dabei eine gute Dokumentation gänzlich zu verwerfen. Dies soll beispielsweise mit User Stories sehr gut funktionieren.
Die Zusammenarbeit mit dem Kunden ist bei der Softwareentwicklung ein wirklich wesentlicher Teil. Denn es ist nicht nur wichtig, dass mit dem Kunden der Vertrag und die Bezahlung verhandelt wird, sondern auch die Entwicklung der Software selbst. Und auch hier ist es nicht nur wichtig, dass der Kunde wie beim Wasserfallmodell am Beginn und Schluss in die Entwicklung miteinbezogen wird, sondern auch direkt während dem Prozess.
Auch diesen Punkt schätzt das agile Manifest als sehr wichtig ein. Entwickler können so während dem Prozess das Feedback der Kunden einholen und damit auch die Entwicklung der Software besser abstimmen auf die genauen Anforderungen.
Die traditionelle Entwicklung der Software war das Befolgen eines Plans. Zu Beginn wurden die Anforderungen mit dem Kunden besprochen, ein Plan ausgearbeitet und die Software auf Basis dieses Plans entwickelt. Veränderungen waren eher etwas, das man vermeiden wollte.
Mit dem Agile Manifesto sollten Entwickler jedoch verinnerlichen, dass es wichtig ist, auf Veränderungen schnell und efiizient zu reagieren. Dieser Aspekt ist viel wichtiger als das strikte Befolgen eines Plans, der schlussendlich womöglich nicht das beste Ergebnis für den Kunden liefert. Der agile Ansatz beinhaltet das Konzept der Iterationen. Diese sind so kurz gestaltet, dass man einfach mit der nächsten Iteration neue Funktionen einfügen kann, die dann als Reaktion auf Veränderungen mit in die Software eingebaut werden.
Die vier Werte des Agile Manifesto sind die Säulen der agilen Methodik. Aus diesen Werten hat das Team 12 Prinzipien entwickelt, die sich leicht an die Bedürfnisse Ihres Teams anpassen lassen. Wenn man die Werte des agilen Projektmanagements mit den tragenden Säulen eines Hauses vergleicht, dann sind die 12 Prinzipien die Räume, die Sie in diesem Haus bauen können.
Die 12 Prinzipien des agilen Manifests lauten:
Zufriedene Kunden durch frühzeitige und kontinuierliche Bereitstellung. Wenn Kunden regelmäßig neue Updates erhalten, ist es wahrscheinlicher, dass sie die von ihnen gewünschten Änderungen im Produkt selbst mitverfolgen können. Dies führt zu glücklicheren, zufriedeneren Kunden und zu mehr Umsatz.
Sich ändernde Anforderungen sind Teil des Projekts. Bei der agilen Vorgehensweise geht es um Anpassungsfähigkeit. Bei dieser iterativen Arbeitsweise schadet es eher, unflexibel zu sein.
Häufig einen Mehrwert bieten. Ähnlich wie bei Grundsatz Nummer eins gilt auch hier: Wenn Sie Ihren Kunden häufig einen Mehrwert bieten, ist es weniger wahrscheinlich, dass Sie sie als Kunde verlieren.
Beseitigung von Informations- und Kommunikationsbarrieren in Projekten. Zusammenarbeit ist der Schlüssel im agilen Projektmanagement. Ziel ist es, dass die Mitarbeiter aus ihren eigenen Projekten ausbrechen und häufiger zusammenarbeiten.
Motivierte Personen sind das Herzstück eines jeden Projekts. Agile Methoden funktionieren am besten, wenn Teams engagiert und aktiv am Erreichen eines Ziels arbeiten.
Die effektivste Art der Kommunikation geschieht von Angesicht zu Angesicht. Obwohl sich die Art und Weise, wie wir bei der Arbeit kommunizieren, seit 2001 dramatisch verändert hat, gilt diese Aussage auch heute noch. Wenn Ihr Team nicht an einem Ort arbeitet, verbringen Sie auch Zeit damit, von Angesicht zu Angesicht zu kommunizieren, z. B. mit Zoom-Anrufen.
Funktionierende Software ist die wichtigste Metrik für Fortschritte. Das Produkt steht beim agilen Projektmanagement im Fokus. Funktionierende Software hat oberste Priorität.
Ein zu hohes Arbeitstempo schadet dem Projekt. Einige Aspekte des agilen Projektmanagements laufen schnell ab, aber es sollte nicht so schnell sein, dass die Teammitglieder nicht mehr hinterher kommen. Ziel ist es, die Nachhaltigkeit während des gesamten Projekts aufrechtzuerhalten.
Kontinuierliche Spitzenleistungen verbessern die Flexibilität. Wenn das Team in einem Sprint hervorragenden Code entwickelt, kann es im nächsten Sprint darauf aufbauen. Durch kontinuierlich hervorragende Arbeit können die Teams in Zukunft schneller vorankommen.
Einfachheit ist wichtig. Manchmal ist die einfachste Lösung die beste Lösung. Agile Methoden zielen darauf ab, die Dinge nicht zu kompliziert zu machen und einfache Antworten auf komplexe Probleme zu finden.
Selbstorganisierte Teams schaffen den größten Wert. Ähnlich wie bei Grundsatz Nummer fünf werden Teams, die proaktiv sind, zu wertvollen Ressourcen für das Unternehmen, da sie sich bemühen, einen Mehrwert zu schaffen.
Regelmäßige Reflektion und Anpassung der Arbeitsweise ist wichtig, um die Effektivität zu steigern. Retrospektive Meetings sind eine gängige Praxis beim agilen Projektmanagement. Es ist die Zeit für Teams, um zurückzublicken, über ihre Leistung nachzudenken und ihr Verhalten für die Zukunft anzupassen.
Kostenlose Vorlage für eine agile Retrospektive
Das Agile Manifesto hat vor rund 20 Jahren die Grundsteine für die zukünftige agile Softwareentwicklung gelegt. Während diese Prinzipien schon lange Zeit in dem Bereich bekannt waren, wurden sie mit diesem Dokument erstmalig festgelegt. So konnten Personen und Unternehmen immer wieder auf dieses Dokument zugreifen und sich daran erinnern, welche Werte wirklich wichtig sind.
Sind diese Werte nun heutzutage wirklich noch relevant oder würde das Agile Manifesto eine neue Version nicht schlecht tun? Unserer Ansicht nach bleibt das Agile Manifest ein einzigartiges Dokument, welches auch in der heutigen Zeit noch gute Grundlagen für agiles Projektmanagement liefert.
Jedes Team hat individuelle Anforderungen, die erfüllt werden müssen, diese können sowieso nie alle in einem kompakten Dokument zusammengeführt werden. Vielmehr kann das Agile Manifesto eine Grundlage zur Diskussion bieten. Man kann die Werte und Prinzipien und betrachten, auf seine eigene Art und Weise interpretieren und somit auch für die individuelle Situation anpassen. Damit kann man auch heute noch den meisten Nutzen aus dem agilen Manifest ziehen.
Kostenlose Vorlage für eine agile RetrospektiveAgiles Projektmanagement wird häufig bei der Anwendungsentwicklung oder anderen Arten der Softwareentwicklung eingesetzt. Der Grund dafür ist, dass sich Software ständig verändert und die Anforderungen an das Produkt sich mit ihr ändern müssen. Aus diesem Grund sind lineare Projektmanagementmethoden wie das Wasserfallmodell weniger effektiv. Hier sind einige weitere Gründe, warum Teams agile Methoden verwenden:
Es gibt einen Grund, warum man es agiles Projektmanagement nennt. Einer der Hauptvorteile der Verwendung agiler Prozesse in der Softwareentwicklung ist die Möglichkeit, Strategien schnell zu ändern, ohne den Projektablauf zu unterbrechen.
Da die Phasen bei der traditionellen Wasserfallmethode ineinander übergehen, ist ein Wechsel der Strategie schwierig und kann den restlichen Projektablauf stören. Da die Softwareentwicklung ein sehr viel flexibler Bereich ist, kann das Projektmanagement bei schnellen Änderungen im traditionellen Sinne eine Herausforderung darstellen. Dies ist einer der Gründe, warum das agile Projektmanagement in der Softwareentwicklung bevorzugt wird.
Einer der Grundsätze des agilen Projektmanagements besagt, dass die effektivste Art der Kommunikation mit dem Team von Angesicht zu Angesicht erfolgt. Kombiniert man dies mit dem Prinzip, das Teams ermutigt, Informations- und Kommunikationsbarrieren aufzubrechen, schafft man die richtigen Bedingungen für besseres Teamwork.
Zwar hat sich die Technologie-Welt seit 2001 stark verändert, und die Arbeitswelt hat sich in Richtung Fernarbeit entwickelt, aber der Gedanke, von Angesicht zu Angesicht zu arbeiten, hat sich nicht geändert.
Lesenswert: 10 einfache Schritte für eine bessere Zusammenarbeit im TeamEiner der einzigartigen Aspekte der Softwareentwicklung ist, dass sich die Teams viel stärker als in anderen Branchen auf die Bedürfnisse der Kunden konzentrieren können. Mit dem Aufkommen von Cloud-basierter Software sind die Teams schnell in der Lage, direktes Kundenfeedback zu erhalten.
Da die Kundenzufriedenheit eine der wichtigsten Triebfedern für die Softwareentwicklung ist, musste sie einfach in den agilen Prozess implementiert werden. Durch die Zusammenarbeit mit den Kunden können agile Teams Prioritäten für Funktionen setzen, die sich an den Kundenbedürfnissen orientieren. Wenn sich diese Bedürfnisse ändern, bieten sich agile Methoden an, damit das Team zu einem anderen Projekt wechseln kann.
Der agile Rahmen fasst verschiedene Methoden zusammen. Im Folgenden finden Sie einige der gängigsten dieser agilen Methoden.
Kanban ist ein visueller Ansatz für agiles Projektmanagement. Teams verwenden Online-Kanban-Boards, um den Fortschritt bestimmter Aufgaben im Entwicklungsprozess darzustellen. Die Aufgaben werden durch Karten auf einer Tafel dargestellt, und die Phasen werden in Spalten dargestellt. Während die Teammitglieder an den Aufgaben arbeiten, werden die Karten von der Backlog-Spalte in die Spalte verschoben, die der Phase entspricht, in der sich die Aufgabe befindet.
Diese agile Methode ist eine gute Möglichkeit für Teams, Hindernisse zu erkennen und zu sehen, wie viel Arbeit erledigt wird.
Lesenswert: Kanban-Boards für AnfängerDie Scrum-Methode zählt zu den gängigsten agilen Methoden für kleine Teams. Das Team wird von einem Scrum Master geleitet, dessen Hauptaufgabe darin besteht, alle Hindernisse für die anderen zu beseitigen, die die tägliche Arbeit erledigen. Die Arbeit wird in Sprints abgeschlossen, und Scrum-Teams treffen sich täglich, um aktive Aufgaben, Hindernisse und alles andere zu besprechen, was das Entwicklungsteam betreffen könnte.
Kostenlose Vorlage für tägliche Standup-MeetingsDas Adaptive Project Framework, auch bekannt als Adaptive Project Management (APM), entstand aus der Idee, dass unbekannte Faktoren jederzeit während eines Projekts auftauchen können. Diese Technik wird hauptsächlich für IT-Projekte verwendet, bei denen herkömmliche Projektmanagementtechniken nicht anwendbar sind.
Dieses Framework basiert auf dem Gedanken, dass sich die Projektressourcen jederzeit ändern können. Zum Beispiel können sich Budgets ändern, Zeitpläne verschieben oder Teammitglieder, die an dem Projekt arbeiten, in andere Teams wechseln. Das APF konzentriert sich auf die Ressourcen, die ein Projekt hat, im Gegensatz zu den Ressourcen, die ein Projekt braucht.
Diese Art des Projektmanagements wird häufig bei sehr komplexen Projekten mit einem hohen Maß an Unklarheiten eingesetzt. Bei diesem Ansatz werden die Prozesse ständig angepasst, bis sie zum gewünschten Ergebnis führen. Solche Projekte erfordern viele spontane Änderungen, und es ist normal, dass die Teams ihre Strategien von einer Woche zur nächsten ändern.
XPM erfordert ein hohes Maß an Flexibilität. Dies ist einer der Gründe, warum jeder Sprint nur kurz ist – maximal ein paar Wochen. Diese Methodik ermöglicht häufige Änderungen, Trial-and-Error-Ansätze für Probleme und viele Iterationen der Selbstkorrektur.
Lesenswert: Den iterativen Prozess verstehen (mit Beispielen)Diese agile Methodik ermöglicht es den Teams, sich schnell an veränderte Anforderungen anzupassen. Der Schwerpunkt dieses Prozesses liegt auf der kontinuierlichen Anpassung. Die Phasen dieses Projekttyps – Vermutungen anstellen, Zusammenarbeiten und Lernen – ermöglichen ein kontinuierliches Lernen während des Projektverlaufs.
Es ist nicht ungewöhnlich, dass sich Teams, die ASD durchführen, in allen drei Phasen von ASD gleichzeitig befinden. Aufgrund der nicht-linearen Struktur ist es üblich, dass sich die Phasen überschneiden. Da diese Art des Managements fließend ist, besteht eine höhere Wahrscheinlichkeit, dass die ständige Wiederholung der drei Phasen den Teammitgliedern hilft, Probleme viel schneller zu erkennen und zu lösen als bei herkömmlichen Projektmanagementmethoden.
Die Dynamic Systems Development Method ist eine agile Methode, die sich auf einen vollständigen Projektlebenszyklus konzentriert. Aus diesem Grund hat DSDM im Gegensatz zu anderen agilen Methoden eine strengere Struktur und Grundlage.
Es gibt vier Hauptphasen von DSDM:
Funktionsmodus oder Prototyp-Iteration
Entwurfs- und Entwicklungs-Iteration
Implementierung
Feature Driven Development kombiniert verschiedene bewährte agile Methoden. Es handelt sich zwar immer noch um eine iterative Methode des Projektmanagements, aber dieses Modell konzentriert sich mehr auf die genauen Funktionen einer Software, an deren Entwicklung das Team arbeitet. Die funktionsorientierte Entwicklung stützt sich in hohem Maße auf den Input der Kunden, da die Funktionen, die das Team priorisiert, die Funktionen sind, die die Kunden benötigen.
Dieses Modell ermöglicht es den Teams auch, Projekte häufig zu aktualisieren. Wenn ein Fehler auftritt, kann er schnell behoben werden, da die Phasen dieses Frameworks sehr fließend sind.
Man hört oft, dass Softwareentwicklungsteams agile Methode nutzen, aber jedes Team kann agil arbeiten. Wenn Sie nach einem flexibleren Projektmanagement-Framework suchen, sollten Sie agiles Projektmanagement ausprobieren.
Unabhängig davon, welche der agilen Methoden Sie anwenden, braucht Ihr Team eine zentrale Quelle für alle Projektinformationen. Asana kann dabei helfen. Mit Asana können Teams Kanban-Boards erstellen oder Scrum-Sprints in einem flexiblen und kollaborativen Tool verwalten.
Agile Teams mit Asana managen