Table of Content
In der heutigen digitalen Wirtschaft möchte jeder durch agile und Continuous Delivery-Praktiken schnellere Release-Zyklen erreichen. Eine aktuelle Forrester Studie stellte jedoch fest, dass „skalierbare Agilität über Teams, Abteilungen und Unternehmen hinweg immer noch relativ selten ist … und fast 2/3 der Unternehmen sind immer noch unzufrieden mit der Release-Geschwindigkeit.“
Während die Umfrageergebnisse die Herausforderung widerspiegeln, die Organisationen bei der Implementierung dieser Methoden haben, stellt sich die Frage, wo der Knackpunkt für die Unternehmen auf ihrem Weg zur Agilität liegt. Wo steht die Unternehmensorganisation (End-User-Unternehmen) im Gegensatz zu ISVs und zur Anbieter-Entwicklung?
Zwischen der Unternehmens-IT-Organisation und dem Software-Anbieter wächst die Lücke in der agilen und Continuous Delivery immer weiter. Studien zeigen, dass, wenn sie sich auf den öffentlichen Dienst und End-User-Unternehmen konzentrieren, nur 24% die agilen Praktiken überwiegend auf einem kompetenten Niveau anwenden, während ISVs etwa 40% erreichen. Warum dieser Unterschied? Vor welchen Herausforderungen stehen diese Unternehmen, wenn sie eine Continuous Delivery implementieren wollen?
Wie in der Infografik How To Avoid Dead-End Delivery unten zu sehen ist, sind der Mangel an Fähigkeiten, Zeit und Unternehmenskultur einige der wichtigsten Herausforderungen, die von etwa 50% aller befragten Organisationen angegeben wurden. Darüber hinaus plagen knapp ein Drittel der Unternehmen das Fehlen von Budget, Automatisierung und Technologie.
Häufige Release-Zyklen erfordern, dass Unternehmen eine Methodik der Unternehmensagilität anwenden. Dies wiederum erfordert, dass die gesamte Organisation, das Business und die IT mit einer neuen Denkweise beginnen, die versteht, dass Produkt-Roadmaps sowohl technische als auch geschäftliche Ergebnisse ansprechen müssen. Und um technische und geschäftliche Anforderungen gemeinsam zu erfüllen, müssen Sie mit der gemeinschaftlichen Zusammenarbeit und Ausrichtung beginnen und dann die Automatisierung hinzufügen. Die drei arbeiten zusammen, um sicherzustellen, dass innerhalb jedes Releases Umfang, Zeit und Qualität erfüllt werden.
Zusammenarbeit
Großunternehmen sind daran gewöhnt, dass verschiedene Teams unabhängig voneinander agieren, der Erzfeind der Agilität. In der Unternehmenskultur ist die IT- und Business-Kluft sogar inhärent. Diese beiden Teams haben oft unterschiedliche Ziele, anstatt das strategische Unternehmensziel, nämlich das Geschäft voranzutreiben, zu teilen. Darüber hinaus verfügt jeder Stakeholder des Produktlebenszyklus über unterschiedliche Fachkompetenz, die verschiedene Bereitstellungsaktivitäten unterstützt, wodurch für eine schnellere Softwareentwicklung die Zusammenarbeit zur Notwendigkeit wird.
KMU, Business-Analysten, QA-Experten und Entwickler konzentrieren sich oft nur auf ihren Teil innerhalb der Tool-Kette. Um bessere Ergebnisse zu erzielen, müssen sie von Anfang an zusammenarbeiten, um sicherzustellen, dass jeder Zyklus realistisch und effizient geplant wird. Während Scrum-Teams die Zusammenarbeit im Griff haben, haben viele andere Teile der Organisation diesen kooperativen Stil nicht erreicht. Tools, die die Zusammenarbeit durch Kommunikation, Transparenz sowie interne Richtlinien und Arbeitsabläufe fördern, helfen dabei, die Barrieren zwischen den Bereichen zu beseitigen und letztendlich die Effizienz zu steigern.
Ausrichtung der Delivery-Tool-Kette
Unternehmen müssen Business, Delivery und DevOps mit Tools und Techniken in Einklang bringen, die den Datenzugriff über das gesamte Spektrum der Aktivitäten hinweg verteilen. Heutzutage ist die Delivery-Tool-Kette sehr fragmentiert und die Daten werden in verschiedenen Tools, Teams und ironischerweise Whiteboards in Besprechungsräumen aufbewahrt. Angefangen vom Wertstrommanagement über das Projekt- und Portfoliomanagement bis hin zur Ebene der Anforderungs-, Entwicklungs- und Testaktivitäten haben alle Beteiligten relevante Informationen zu teilen und Erkenntnisse zu gewinnen, um die nächsten Schritte zu bestimmen. Durch das Zusammenführen aller Daten auf einer Plattform können Business und IT intelligente, zeitnahe Entscheidungen treffen, die für die gesamte Organisation sichtbar sind und sicherstellen, dass alle an den strategischen Geschäftszielen ausgerichtet sind.
Automatisierung
Automatisierung ist der Schlüssel zu einem agilen Arbeitsablauf und manuelle Prozesse können nicht mit der Geschwindigkeit der agilen Softwareentwicklung Schritt halten. Um schneller mithilfe der Daten, die während des Delivery-Zyklus gesammelt werden, arbeiten zu können, benötigen Unternehmen ein Tool, das über die herkömmliche Automatisierung hinausgeht. Hier sind nur einige Beispiele für Prozesse, die innerhalb der Delivery-Kette automatisiert werden können, um die Effizienz zu gewährleisten: Identifizieren von Change Request-Einstiegspunkten, die von mehreren Anforderungen für einen Release-Zyklus betroffen sind, Aufspüren eines systemweiten Fehlers, der eine spezielle Bearbeitung erfordert, Neuzuweisen von Testaufgaben für verfügbarere oder dediziertere Teams, Ausführen eines Sicherheitsscans für angepassten Code und Identifizieren von Schwachstellen, Analysieren der Performance in Echtzeit und Vorbereiten optimierter Testpläne. Und es gibt noch viele andere.
Sie möchten Delivery-Sackgassen vermeiden? Lesen Sie praktische Tipps, die Sie in Ihrer Organisation implementieren können, in Introducing Agility to Enterprise Applications.