© Liashko/Shutterstock.com
Entwickler Magazin
Entwickler und Administratoren: optimale agile Zusammenarbeit

DevOps agil kombinieren

Agile Softwareentwicklung ist aus der heutigen IT-Landschaft nicht mehr wegzudenken. Immer mehr Unternehmen haben die Vorteile dieses Ansatzes erkannt und setzen ihn vermehrt nicht nur in der Softwareentwicklung, sondern im gesamten Unternehmen ein. Die agile Softwareentwicklung unterteilt sich hierbei vornehmlich in drei Teilbereiche: das agile Prinzip, die agilen Methoden und die agilen Prozesse.

René Schröder


Agile Prinzipien sind im agilen Manifest zusammengefasst, das aus zwölf Unterpunkten besteht. So sind z. B. die Selbstorganisation und die Selbstreflexion der Teams essenziell für die agile Softwareentwicklung. Der wichtigste Punkt im agilen Manifest ist für mich die Zufriedenheit des Kunden bzw. der Stakeholder, die dadurch erzielt wird, schnell und zuverlässig gute Software bereitzustellen. In unserem Team erreichen wir dies durch Anwendung der agilen Prinzipien, der agilen Methoden und Prozesse und auch durch den gelebten DevOps-Ansatz. Zu den agilen Methoden, die mir hier besonders erwähnenswert erscheinen, zählen die testgetriebene Entwicklung sowie die regelmäßigen und schnellen Code­reviews.

Ich möchte hier den Eindruck vermeiden, dass agile Softwareentwicklung in Kombination mit dem DevOps-Ansatz eine Lösung für alle Unternehmen darstellen kann, die Software entwickeln. Oft gestalten sich gerade diese Ansätze schwierig, wenn die Software für einen externen Stakeholder/Kunden entwickelt wird und dieser z. B. einen Festpreis fordert. Auch für diese Stakeholder gibt es Ansätze und agile Lösungen, die quasi einen Festpreis in Aussicht stellen und es so ermöglichen, diesen Ansatz anzuwenden. In diesem Artikel lege ich den Fokus allerdings auf die agile Softwareentwicklung für einen internen Stakeholder und meine daraus gewonnenen Erfahrungen.

Der agile Prozess

Beim agilen Prozess setzen wir im Entwicklungsteam auf den Scrum-Prozess. Dieser Prozess hat sich nach der Umstellung vom klassischen Wasserfallmodell vor ca. vier Jahren am effektivsten herausgestellt. Das Entwicklungsteam (Abb. 1) bedient vollständig die Anforderungen der internen Stakeholder, die eine geschlossene B2B-Handelsplattform betreiben. Der Scrum-Prozess ist dadurch gekennzeichnet, dass in festen Releaseintervallen, den so genannten Sprints, lauffähige Software geliefert wird. Die Sprints sind bei uns im Team auf vier Wochen festgelegt, wobei in der Regel bis zu drei Wochen entwickelt und eine Woche getestet wird. Diese eine Woche Test wird mehr und mehr vermindert, indem der Legacy-Code mit automatischen Unit Tests unterlegt und refactored wird. Die kurzen Sprintzeiten garantieren, dass die internen Stakeholder schnell Feedback zu den umgesetzten Funktionen geben können. Feedback bzw. grundsätzlich Kommunikation sind jene Eckpfeiler, die mit den agilen Ansätzen forciert und unterschätzt werden sollen. Im klassischen Wasserfallmodell wird die Software am Anfang spezifiziert, dann impl...

Entwickler Magazin
Entwickler und Administratoren: optimale agile Zusammenarbeit

DevOps agil kombinieren

Agile Softwareentwicklung ist aus der heutigen IT-Landschaft nicht mehr wegzudenken. Immer mehr Unternehmen haben die Vorteile dieses Ansatzes erkannt und setzen ihn vermehrt nicht nur in der Softwareentwicklung, sondern im gesamten Unternehmen ein. Die agile Softwareentwicklung unterteilt sich hierbei vornehmlich in drei Teilbereiche: das agile Prinzip, die agilen Methoden und die agilen Prozesse.

René Schröder


Agile Prinzipien sind im agilen Manifest zusammengefasst, das aus zwölf Unterpunkten besteht. So sind z. B. die Selbstorganisation und die Selbstreflexion der Teams essenziell für die agile Softwareentwicklung. Der wichtigste Punkt im agilen Manifest ist für mich die Zufriedenheit des Kunden bzw. der Stakeholder, die dadurch erzielt wird, schnell und zuverlässig gute Software bereitzustellen. In unserem Team erreichen wir dies durch Anwendung der agilen Prinzipien, der agilen Methoden und Prozesse und auch durch den gelebten DevOps-Ansatz. Zu den agilen Methoden, die mir hier besonders erwähnenswert erscheinen, zählen die testgetriebene Entwicklung sowie die regelmäßigen und schnellen Code­reviews.

Ich möchte hier den Eindruck vermeiden, dass agile Softwareentwicklung in Kombination mit dem DevOps-Ansatz eine Lösung für alle Unternehmen darstellen kann, die Software entwickeln. Oft gestalten sich gerade diese Ansätze schwierig, wenn die Software für einen externen Stakeholder/Kunden entwickelt wird und dieser z. B. einen Festpreis fordert. Auch für diese Stakeholder gibt es Ansätze und agile Lösungen, die quasi einen Festpreis in Aussicht stellen und es so ermöglichen, diesen Ansatz anzuwenden. In diesem Artikel lege ich den Fokus allerdings auf die agile Softwareentwicklung für einen internen Stakeholder und meine daraus gewonnenen Erfahrungen.

Der agile Prozess

Beim agilen Prozess setzen wir im Entwicklungsteam auf den Scrum-Prozess. Dieser Prozess hat sich nach der Umstellung vom klassischen Wasserfallmodell vor ca. vier Jahren am effektivsten herausgestellt. Das Entwicklungsteam (Abb. 1) bedient vollständig die Anforderungen der internen Stakeholder, die eine geschlossene B2B-Handelsplattform betreiben. Der Scrum-Prozess ist dadurch gekennzeichnet, dass in festen Releaseintervallen, den so genannten Sprints, lauffähige Software geliefert wird. Die Sprints sind bei uns im Team auf vier Wochen festgelegt, wobei in der Regel bis zu drei Wochen entwickelt und eine Woche getestet wird. Diese eine Woche Test wird mehr und mehr vermindert, indem der Legacy-Code mit automatischen Unit Tests unterlegt und refactored wird. Die kurzen Sprintzeiten garantieren, dass die internen Stakeholder schnell Feedback zu den umgesetzten Funktionen geben können. Feedback bzw. grundsätzlich Kommunikation sind jene Eckpfeiler, die mit den agilen Ansätzen forciert und unterschätzt werden sollen. Im klassischen Wasserfallmodell wird die Software am Anfang spezifiziert, dann impl...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang