Bei der agilen Entwicklung geht es nicht nur um Entwickler.

Niemand möchte Software mit unzähligen Bugs und Performanceproblemen ausliefern und die Kunden nicht zufriedenstellt. Continuous Integration und Code-Reviews tragen dazu bei, dies zu verhindern ... aber wer hat schon die Zeit dazu, oder? Nun, agile Teams nehmen sich Zeit.

Agile Entwickler konzentrieren sich auf eine nachhaltige Entwicklung – nicht auf Heldentaten. Nachhaltigkeit bedeutet eine gute Schätzung, effektive Branching-Strategien für das Codemanagement, automatisierte Tests zum Schutz der Qualität und Continuous Deployment, um schnelles Feedback von Benutzern zu erhalten. Die Einführung von nachhaltigen Entwicklungsverfahren erfordert eine Disziplin, nach der die meisten von uns als Individuen streben – die wir aber oft nur schwer realisieren können. Deshalb lassen sich agile Methoden nicht in einem Vakuum umsetzen. Die Kultur des gesamten Unternehmens muss dahinter stehen. Das bedeutet, dass Projektleiter die Auffassung vertreten müssen, dass Qualität wichtiger ist als Umfang oder Zeitplanung, was oft der schwierigste Teil der Einführung agiler Methoden ist.

Aber es lohnt sich! Entwickler erhalten die Freiheit und Verantwortung, Software nachhaltig zu entwickeln, aber gleichzeitig eine großartige Beziehung mit dem Unternehmen aufrechtzuerhalten. Und das Unternehmen bringt ein hochwertigeres Produkt auf den Markt, was diese großartige Beziehung mit der Entwicklung weiter verstärkt. Darüber hinaus (und das ist der beste Aspekt) erleben agile Entwickler nur selten "Todesmarsch-Projekte". Wenn die Entwicklung hinter der Zeitplanung zurückbleibt, weil die Aufrechterhaltung einer hohen Qualität mehr Aufwand als erwartet bedeutet, kann sich der Projektumfang des magischen Dreiecks an diese Realität anpassen – und niemand muss seine Wochenenden opfern.

Alle Softwareentwickler kennen das "magische Dreieck" des Projektmanagements: Projektumfang, Zeit und Qualität. Und die meisten von uns haben bereits an Projekten gearbeitet, bei denen der Projektumfang unflexibel war, die Zeit durcheinander geriet und die Entwicklung durch wachsende technische Schulden überfordert war. Manchmal – um das Ganze noch zu verschlimmern – war das Endprodukt nicht einmal vom Markt gewünscht. Das ist frustrierend und tragisch vertraut.

Aber keine Sorge, es gibt gute Neuigkeiten.

Bei der agilen Entwicklung wird der Projektumfang zu einer dynamischen Variable, sodass Teams die Qualität schützen, eine lebhafte Entwicklungskultur aufbauen und eng mit dem Unternehmen verbunden bleiben können. Bei Atlassian stehen agile Methoden im Zentrum jedes Entwicklungsteams (und vieler anderer Teams!). Und das aus gutem Grund.

Agile Methoden sind nicht nur eine Sammlung von Ritualen, sondern eine kulturelle und technische Philosophie.

Sie unterstützen Einzelne mit Verfahren, die eine solide technische Grundlage für ihr Produkt und eine Kultur der Zusammenarbeit für ihr Team bedeuten. Entwickler in agilen Teams sind engagierter, schreiben besseren Code und haben mehr Spaß. 

Robuste Verbindungen für ein überzeugenderes Produkt

Bei agilen Methoden geht es um Teamarbeit, was nicht weiter überraschend ist, da die meiste Software heute von Teams entwickelt wird. Entwickler bauen robuste Beziehungen zu den Bereichen Produktmanagement, Design, QA und Betrieb auf, da das Schreiben von nachhaltigem Code bedeutet, mit allen Facetten des Projekts in Verbindung zu bleiben. Atlassian hat große Vorteile in Bezug auf die Codequalität und Entwicklerzufriedenheit erzielt, indem Entwickler unterstützt werden, direkt mit anderen Bereichen des Unternehmens zusammenzuarbeiten. Besserer Code, weniger "Überlastung" (d. h. doppelter Aufwand und/oder widersprüchliche Arbeitsabläufe) und effektivere funktionsübergreifende Arbeiten sind nur einige der Vorteile.

Auch Mentoring spielt eine große Rolle. Agile Teams schulen einander übergreifend, um dafür zu sorgen, dass das gesamte Team die Codebasis kennt. Eine Möglichkeit dafür bieten Code-Reviews, die nicht nur die Qualität sichern, sondern auch dafür sorgen, dass das gesamte Team funktionsübergreifend mit dem Code vertraut ist. Unabhängig davon, wie sich das Wissen verbreitet, sind Entwickler in agilen Teams nicht auf einem kritischen Pfad, der bedeuten würde, dass sie nicht in den Urlaub gehen können, weil sie die einzigen sind, die einen bestimmten Bereich des Codes verstehen. Denn niemand möchte dieser Entwickler sein.

Agile Entwickler können außerdem den Technologie-Stack ihres Produkts auf einfachere Weise als ihre Pendants in Wasserfallmodell-Teams abarbeiten, da agile Teams sich selbst organisieren und Mitgliedern ermöglichen, neue Kompetenzen zu erwerben. Es ist eine Tatsache, dass Entwickler, die alle Features – von der Benutzeroberfläche bis zur Datenbank – bereitstellen, ihren Code stärker in Besitz nehmen. Bei Atlassian kultivieren wir Full-Stack-Entwickler, weil wir daran glauben, Wissen im gesamten Team und im gesamten Unternehmen zu teilen.

Programmieren, Kultur und Spaß an der Entwicklung

Eine Umstellung auf agile Methoden basiert darauf, eine großartige Entwicklungskultur im Unternehmen aufzubauen. Lies weiter, um mehr über effektive Branching-Strategien, automatisierte Testtechniken, Continuous Integration und den Aufbau wirkungsvoller Beziehungen mit anderen Bereichen des Unternehmens zu erfahren. In den nächsten Artikeln tauchen wir tiefer in die spezifischen Änderungen ein, die Tausende von Entwicklern während der Umstellung auf agile Methoden vorgenommen haben, um ihren Erfolg zu sichern.

Die agile Entwicklung ist eine Reise. Und wir stehen bei jedem Schritt auf deinem Weg hinter dir. 

Dargestelltes Produkt
Jira Software-Logo
Projekt- und Vorgangsnachverfolgung