Wir sind ein agiles Unternehmen – seit Stunde 1. Unser Ziel ist es, unsere Kunden bei großen Projekten mit skalierbaren und leistungsstarken Teams zu unterstützen. Aber was ist erforderlich, um das Beste aus einem Softwareentwicklungsprojekt herauszuholen? Wie können Sie die Wirtschaftlichkeit Ihres Projektes, den Return on Investment (ROI), optimieren und gleichzeitig Ihre sunk costs reduzieren?
Die Benefits des agilen Ansatzes
Im Laufe der letzten Jahrzehnte hat der agile Ansatz stetig an Beliebtheit gewonnen, besonders im Bereich der Softwareentwicklung, in dem das Konzept seinen Ursprung hat. Es ist bekannt, dass eine agile Softwareentwicklung zu höherer Kundenzufriedenheit führt; dadurch steigen wiederum die Verkaufszahlen. Darüber hinaus können Sie in kürzerer Zeit mehr erreichen – und profitieren obendrein von glücklicheren und motivierteren Mitarbeitern. Außerdem wird Ihre Innovationsrate in die Höhe schnellen und es wird nicht lange dauern, bis Sie die „Fortune Global 500“ erreichen! Kurz gesagt: Im Fokus der agilen Entwicklung stehen die Anforderungen mit den höchsten ROI.
Agilität ist der Schlüssel – aber wie?
Weniger überraschend ist hingegen, dass das alles leichter gesagt als getan ist. Viele Unternehmen profitieren nur wenig von den Veränderungen, die sie mit viel Zeit und Mühe implementiert haben. Manche scheitern sogar komplett an ihrer agilen Transformation und stehen letztendlich schlechter da als zuvor. Aber warum gestaltet sich das Ganze so schwierig? Und wie kann man tatsächlich von einem agilen Ansatz oder der Zusammenarbeit mit einem agilen Unternehmen profitieren? Viele sind sich nicht bewusst, dass Agilität nur dann volle Wirkung entfalten kann, wenn sich die Anpassungen nicht nur auf die Entwickler beschränken. Es bedarf kontinuierlicher Arbeit und Verbesserung.
Damit Sie also das Bestmögliche aus Ihrem agilen Projekt herausholen können, habe ich einen Guide erstellt, der sich positiv auf Ihre Umsätze und die allgemeine Zufriedenheit aller Stakeholder auswirken wird.
Agiler Software-Entwicklungsprozess (Quelle: Cloudflight)
In Iterationen arbeiten
Die heutige Wirtschaft entwickelt sich rasant und stetig weiter und ist ständig in Bewegung. Demzufolge ändern sich auch die Anforderungen kontinuierlich. Obwohl eine allgemeine Produktvision unabdingbar ist, ergibt es wenig Sinn, zu viel Arbeit in Anforderungen zu stecken, deren Umsetzung nicht für die nächsten ein bis zwei Monate vorgesehen ist. In dieser Zeit könnte sich eine Menge ändern. Auch wenn eine Softwareanforderung heute außerordentlich wichtig ist, könnte beispielsweise ein unerwartetes Ereignis die Implementierung anderer Anforderungen mit höchster Priorität erforderlich machen. Wenn Sie sich dann wieder der ursprünglich geplanten widmen können, ist diese möglicherweise überhaupt nicht mehr relevant, da sich der Markt schon weiterentwickelt hat, oder Ihnen eine bessere Idee für die derzeitige Marktsituation untergekommen ist.
Arbeiten Sie stattdessen in Iterationen, in Scrum auch Sprints genannt. Ziel eines jeden Sprints ist es, ein funktionsfähiges Zwischenprodukt kurzfristig zu entwickeln. Idealerweise sollten Sie Ihre Lösungen bedarfssynchron anbieten, sodass die Entwicklung nie in Verzug gerät, jedoch gleichzeitig keine unnötigen Veränderungen vor der Implementierung vorgenommen werden müssen. Reduzieren Sie die Zeit und das Geld, das Sie in unnötige Vorbereitungen investieren und stellen Sie gleichzeitig sicher, das nächste Projekt immer im Hinterkopf zu behalten. So kann Ihr Entwicklungsteam sofort loslegen, falls die Arbeit schneller als erwartet abgeschlossen ist.
Jede Iteration sollte eine Erweiterung der Software darstellen, die potenziell veröffentlicht werden kann. Perfektion ist nicht erforderlich. Die Software muss nur gut genug sein, um Feedback von echten Nutzern einzuholen. Darauf gehe ich später im Detail ein.
Priorisieren und neu priorisieren
Um die Wertschöpfung und somit auch den Umsatz zu maximieren, müssen Sie Ihre Prioritäten regelmäßig überdenken und anpassen. Eine spezielle Anforderung mag zwar sehr wertvoll sein, aber mit einer anderen Anforderung lassen sich eventuell zu diesem Zeitpunkt Marktanteile gewinnen. In diesem Fall sollten Sie Ihre Prioritäten überdenken. Vielleicht haben Sie zwei gleichermaßen wertvolle Softwareanforderungen geplant, eine davon lässt sich jedoch schneller vom Entwicklungsteam umsetzen. Dieser Anforderung sollten Sie den Vorzug geben, um Ihren ROI zu steigern. Überprüfen Sie ständig, wie Sie durch Neugewichtung Ihrer geplanten Projekte die Wertschöpfung maximieren können, ohne jemals die Produktvision aus den Augen zu verlieren. Nehmen Sie sich in Acht vor kurzfristigen Gelegenheiten, die möglicherweise den Gesamtfortschritt des Projektes beeinträchtigen könnten.
Feedback echter Nutzer einholen
Egal wie detailliert die Anforderungen formuliert wurden, es ist immer etwas völlig anderes, das echte Produkt zu sehen und anzuwenden. Um sicherzustellen, dass das entwickelte Produkt auch wirklich Ihren Vorstellungen entspricht, sollten Sie regelmäßige Feedbacksitzungen abhalten. Falls möglich, laden Sie echte Nutzer zu diesen Treffen ein, damit das Entwicklungsteam sehen kann, wie das Produkt in der Praxis eingesetzt wird. Dadurch erhalten zum einen die Entwickler ein besseres Verständnis darüber, was Sie benötigen, und Sie können zum anderen sehen, welche Anforderungen für Ihre Zielgruppe am interessantesten sind. Letztendlich ist jede Idee lediglich eine Hypothese, die durch Anwendung der realen Nutzer bestätigt werden muss.
Zusammenarbeit fördern
Der letzte Tipp, den ich Ihnen mit auf den Weg geben möchte, ist wahrscheinlich auch der wichtigste: Kreieren und fördern Sie eine Atmosphäre konstruktiver Zusammenarbeit zwischen allen Beteiligten. Der beste Weg zum Erfolg liegt darin, eine enge Verbindung zwischen der Arbeit des Entwicklungsteams und der Geschäftsebene herzustellen. Außerdem sollten beide Bereiche regelmäßigen, positiven Kontakt mit den Nutzern pflegen. Die Vorteile einer vertrauensvollen, engen Beziehung sollten eigentlich auf der Hand liegen, aber es ist äußerst schwierig, solche Beziehungen aufzubauen. Vertrauen kommt in Geschäftsbeziehungen nicht von selbst, deshalb bedarf es einer sorgfältigen Stärkung und Pflege. Niemand kennt Ihre Geschäftsziele besser als Sie selbst, niemand kennt die technischen Aspekte besser als Ihr Entwicklungsteam und niemand kann besseres Feedback geben als ein echter Nutzer. Vergessen Sie das nicht und denken Sie auch daran, dass Missverständnisse meistens nicht absichtlich entstehen.
Der Weg zum Erfolg, zur vollen Ausschöpfung eines agilen Ansatzes, ist kein leichter. Diese Guideline sollte Ihnen jedoch dabei helfen, mehr aus Ihren Software-Projekten herauszuholen.