Anzeige

Softwareentwicklung

Das so genannte Wasserfall-Prinzip in der Software-Entwicklung hat bald ausgedient. Immer häufiger kommen heute agile Methoden wie die „Continuous Integration“ zum Einsatz, bei denen Software in kleinen Einheiten kontinuierlich erweitert und verbessert wird. Die Kunden profitieren dadurch von einer höheren Nutzerfreundlichkeit und verbesserten Customer Experience.

Die agile Software-Entwicklung bietet klare Vorteile gegenüber der herkömmlichen Wasserfall-Methode, bei der Programmierer monatelang auf den Launch einer umfangreichen neuen Version hinarbeiten. Immer mehr Software-Anbieter gehen daher zur so genannten Continuous Integration (CI) über. Bei dieser Entwicklungsmethode wird Software kontinuierlich erweitert und verbessert. Die neuen Releases sind schmaler, der Umfang an Features geringer, man spricht daher auch von einem „Soft Launch“. Dafür stehen die neuen Funktionen den Kunden aber auch wesentlich früher zur Verfügung – Stichwort „Continuous Delivery“ (CD).

Permanente Verbesserung von Nutzerfreundlichkeit und Customer Experience

Der Kunde profitiert dadurch nicht nur von der schnelleren Bereitstellung neuer Features, sondern auch von einer höheren Software-Qualität. Denn bei der Wasserfall-Methode programmieren die Entwickler monatelang, bis ihre Komponenten zur Gesamtlösung, dem so genannten Build, zusammengebaut und danach getestet werden. Entsprechend viele Fehler müssen anschließend aufwändig behoben werden. Bei CI dagegen erfolgen Entwicklung und Testprozess in kleinen Einheiten, die am Ende eines Arbeitstages in Repositories zur Versionskontrolle eingecheckt werden. Über Nacht bauen Server die Code-Komponenten dann zusammen („Nightly Build“) und testen sie automatisiert. Der gesamte Prozess – programmieren, zusammenfügen, testen – findet also täglich statt. Fehler lassen sich korrigieren, was eine kontinuierliche Verbesserung der Nutzerfreundlichkeit und der Customer Experience (CX) zur Folge hat.

CI und CD stehen im engen Zusammenhang mit dem agilen Prozessverbesserungsansatz DevOps. Hier geht es darum, alle an der Software-Entwicklung beteiligten Abteilungen zu vernetzen, Prozesse zu optimieren und die Entwicklungszyklen zu verkürzen. Auch dies sind wichtige Hebel, um die Customer Experience zu verbessern und die Kundenbindung zu erhöhen. Dabei wird CI durch den Trend zur agilen Software-Entwicklung gefördert: Bei Methoden wie Scrum erfolgt die Planung und Programmierung ebenfalls in kleinen Einheiten, so genannten Sprints, die täglich im Team evaluiert werden. 

Mehr Flexibilität, regelmäßiger Austausch

Aber nicht nur für die Kunden, auch für die Entwickler- und Projekt-Management-Teams bietet CI in Verbindung mit agilen Development-Prozessen klare Vorteile. Durch das Denken und Planen in kleinen Programmiereinheiten sind sie in der Lage, wesentlich flexibler zu agieren als im Rahmen eines großen Software-Projekts. So können sie schneller und häufiger Änderungen am Programm-Code vornehmen. Zudem sorgt die permanente Abstimmung dafür, dass alle Beteiligten immer auf dem aktuellen Stand sind und regelmäßig Feedback auf ihre Arbeit erhalten, was wiederum zu einem steigenden Qualitätsbewusstsein führt: Laut DevOps Research and Assessment (DORA) fördern CI und CD eine zielorientierte Unternehmenskultur, verbessern die Software-Bereitstellung und verringern Nachbesserungen oder ungeplante Arbeiten. Auch die Zufriedenheit der Teams ist nach den Erfahrungen der DORA höher.

„Software-Projekte sind hochkomplexe Vorhaben, in die viele Mitarbeiter involviert sind und die hohe Anforderungen erfüllen müssen – vor allem was die Qualität und die Einhaltung von Lieferterminen betrifft. Agile Methoden wie CI und CD erhöhen die Flexibilität, reduzieren die Komplexität und helfen den Entwicklern, den steigenden Anforderungen gerecht zu werden“, sagt Oliver Henrich, Vice President Product Engineering bei Sage.

Gefragt sind Soft Skills und eine ausgeprägte Kommunikationskultur

Allerdings erfordert diese Arbeitsweise ein extrem hohes Maß an gegenseitigem Austausch. Die Teams treffen sich während eines Sprints täglich und stimmen sich in so genannten Daily Stand-ups ab. Alle zwei Wochen gibt es zudem ein Review, in dem festgehalten wird, was bis dato erreicht wurde und was verbessert werden kann. Voraussetzung sind daher eine ausgeprägte Kommunikationskultur sowie in zunehmendem Maße auch Soft Skills: Laut der Studie „Upskilling 2020“ des DevOps Institute, für die 1260 Führungskräfte aus IT-Unternehmen in verschiedenen Ländern befragt wurden, erfordert der DevOps-Ansatz Team-Player-Eigenschaften, Einfühlungsvermögen und Kreativität. Hinzu kommen hohe fachliche Anforderungen: Nach zwei Wochen wird jedes Ergebnis von der gesamten Mannschaft begutachtet. Das erhöht die Software-Qualität, aber gleichzeitig auch den Druck auf die Programmierer.

Unterstützung bei der CI-Methode bieten Tools, mit denen sich die programmierten Komponenten zusammensetzen und verlinken beziehungsweise unterschiedliche Versionen verwalten lassen. Dazu zählen auf Compiler-Ebene zum Beispiel der Microsoft Team Foundation Server sowie das Java-basierte Open-Source-Programm Jenkins. Und im Projekt-Management helfen Werkzeuge wie Jira oder Confluence, einen Sprint von zwei Wochen zu organisieren, neue Aufgaben aus dem Backlog zu ziehen und Zeitpläne aufzustellen.

www.sage.com
 


Artikel zu diesem Thema

Mitarbeiter Team
Feb 22, 2021

Der Faktor „Mensch“ in der Softwareentwicklung

Im Jahr 2021 wird das Konzept von DevOps noch stärker an Relevanz gewinnen. Immer mehr…
DevOps
Jan 15, 2021

Bei der Implementierung von DevOps gilt: Der Weg ist das Ziel

Die Erwartungen an Softwareentwickler sind in den letzten Jahren rasant gestiegen: Immer…
Softwareentwickler
Sep 18, 2020

Diese fünf Soft Skills zeichnen einen erfolgreichen Entwickler aus

Der Entwickler als Nerd der Informationsgesellschaft ist ein Stereotyp aus…

Weitere Artikel

Software

Was ist ein Litespeed Cache und wo liegen die Vorteile?

Ein Litespeed Cache ist ein anpassbarer und effizienter Seitencache, der durch einen LiteSpeed Webserver auf einer Linux-Plattform angeboten wird. Der Einsatz eines LiteSpeed Caches kann die Ladezeiten einer Wordpress-Webseite um einiges verkürzen. Die…
Geschäftsmann

Mein Companion, der Business Messenger

Bei aller Agilität, die New Work ermöglicht: Je mehr Nachrichten und unterschiedlichste Kommunikationstools eingesetzt werden, umso komplizierter wird der schnelle und mühelose Austausch unter Kollegen. Höchste Zeit, die interne Kommunikation in der New Work…
Software-Testing

Software-Testing der Zukunft in Low-Code/No-Code-Umgebungen

Mit der zunehmenden Digitalisierung hat Software in jedem Bereich unseres Lebens Einzug gehalten. Dadurch wächst der Bedarf an neuen Applikationen und Features rasant. Um wettbewerbsfähig zu bleiben, müssen Unternehmen immer kürzere Release-Zyklen bewältigen.
Weltkarte digital

IT-Dokumentation als infrastrukturelle Basis für Expansionsplanungen

Eine störungsfrei funktionierende IT-Infrastruktur ist für die Carl Zeiss AG erfolgskritisch, denn die Produktion in den Werken muss auf jeden Fall sichergestellt sein. ZEISS setzt dabei nun auf die cloudbasierte Software-Lösung FNT Command.

Anzeige

Jetzt die smarten News aus der IT-Welt abonnieren! 💌

Mit Klick auf den Button "Zum Newsletter anmelden" stimme ich der Datenschutzerklärung zu.