Definition „Agile Development“

Was ist agile Softwareentwicklung?

| Autor / Redakteur: il1411 / Stephan Augsten

Agile Softwareentwicklung erfordert Teamarbeit und agile Methoden wie Scrum, um möglichst effizient zu sein.
Agile Softwareentwicklung erfordert Teamarbeit und agile Methoden wie Scrum, um möglichst effizient zu sein. (© bakhtiarzein - Fotolia.com)

Agile Softwareentwicklung soll dafür sorgen, dass Entwicklungsprojekte einfach, unbürokratisch und iterativ ablaufen. Agile Methoden und Prozesse wie Scrum können somit Zeit und Kosten sparen.

Hintergrund der agilen Softwareentwicklung

Den Begriff „Agile Softwareentwicklung“ gibt es erst seit Anfang der 2000er Jahre, jedoch sind erste Aspekte dieser Methode schon in den frühen Neunzigern zu verzeichnen. Das vom Informatiker Kent Beck im Jahr 1999 veröffentlichte Buch „Extreme Programmierung“ bildete schließlich die theoretische Grundlage für die Beschreibung agiler Prozesse.

Kent Beck und sein Forschungsteam waren es auch, die 2001 das sogenannte „Agile Manifesto“ veröffentlichten, in dem die Grundprinzipien der agilen Softwareentwicklung festgehalten sind. Ein Blick in dieses Manifest zeigt, dass die dort beschriebene Art der Softwareentwicklung sich vom damals üblichen Standard deutlich unterschied: Der User und die Funktionalität der Software standen nun im Mittelpunkt des Entwicklungsprozesses. Verträge und Pläne wurden der Veränderung und der Kooperation untergeordnet.

Die agile Softwareentwicklung gewann schon kurz nach Veröffentlichung des Manifests an Bedeutung. 2005 nutzen einer Umfrage von Forrester Research zufolge 14 Prozent der Unternehmen agile Prozesse. 2013 wurde die agile Softwareentwicklung bereits von 80 Prozent der Unternehmen eingesetzt.

Die Bestandteile der agilen Softwareentwicklung

Das Agile Manifesto enthält insgesamt zwölf Prinzipien, die es bei der Programmierung und Softwareentwicklung zu beachten gilt. Die Kunden sollen zum einen durch die schnelle Entwicklung einer funktionierenden Software zufrieden gestellt werden. Zum anderen sollen sie durch kontinuierliche Veränderungen während des Entwicklungsprozesses einen Wettbewerbsvorteil erhalten.

Ein weiteres Prinzip lautet, dass Fachleute und Entwickler während der einzelnen Projektphasen intensiv zusammenarbeiten sollten. Außerdem soll für die am Softwareprojekt Beteiligten ein motivierendes Arbeitsumfeld geschaffen werden. Die Kommunikation unter den Projektbeteiligten soll möglichst Face-to-Face erfolgen.

Passen IT-Compliance und agile Methoden zusammen?

Security muss kein Spielverderber sein

Passen IT-Compliance und agile Methoden zusammen?

09.05.17 - Die Stärke agiler Methoden besteht in der übergreifenden Teamzusammenarbeit mit möglichst geringen Hürden. Software-Entwickler nehmen dabei IT-Compliance oder den Security Officer als vermeintliche Spielverderber wahr. Wollen Unternehmen agil arbeiten, funktioniert das aber nur Compliance-konform. lesen

Weitere Prinzipien besagen, dass bei der agilen Softwareentwicklung der Fokus auf der Entwicklung einer perfekten Technik und eines perfekten Designs liegen soll, jedoch stets das Prinzip der Einfachheit zu beachten ist. Außerdem sollen die einzelnen an einem agilen Entwicklungsprojekt beteiligten Teams selbstgesteuert arbeiten und ihren Fortschritt selbst reflektieren.

Ergänzendes zum Thema
 
Die 12 Prinzipien agiler Softwareentwicklung im Überblick

Um diese Prinzipien umzusetzen, setzt man bei einem Softwareprojekt verschiedene agile Prozesse ein. Zu den beliebtesten agilen Prozessen zählt Scrum. Bei Scrum handelt es sich um eine Form des Projektmanagements, die auf Projektmanager verzichtet. Auch die Projektmanagement-Methoden Kanban wird häufig eingesetzt. Mit Hilfe des Kanban-Prinzips lässt sich das Aufgabenmanagement agiler gestalten.

Vor- und Nachteile der agilen Softwareentwicklung

Agile Entwicklungsprojekte zeichnen sich dadurch aus, dass weniger Zeit benötigt wird, bis Ergebnisse vorliegen. Außerdem lässt sich agile Software leicht anpassen, insbesondere dann, wenn sich während des Entwicklungsprozesses Veränderungen ergeben. Hierbei kann es sich sowohl um marktspezifische Veränderungen handeln als auch um allgemeine Anforderungen, die die Software erfüllen muss.

Um die gesteckten Ziele zu erreichen, kann es sich als hilfreich erweisen, eine Liste mit allen durchzuführenden Aufgaben zu erstellen. Eine solche Liste wird als Sprint Backlog bezeichnet. Das Sprint Backlog ist wiederum Bestandteil des in der agilen Softwareentwicklung verwendeten Projektmanagements und das Ergebnis der Sprint-Planung.

Obwohl die agile Softwareentwicklung zahlreiche Vorteile besitzt, unterliegt auch die agile Programmierung und Entwicklung allgemeinen Vorgaben wie Deadlines oder Budgets. Außerdem hängt auch bei dieser Form der Softwareentwicklung der Erfolg des Projekts maßgeblich von der Zusammenarbeit des Teams ab. Somit kann die agile Softwareentwicklung nicht als Pauschallösung für erfolgreiche Entwicklungsprojekte angesehen werden.

Software-Verträge und agile Entwicklung – passt das zusammen?

Rechtslage bei agilen Projektmethoden

Software-Verträge und agile Entwicklung – passt das zusammen?

01.06.17 - In der Softwareentwicklung – vor allem bei Großprojekten – gewinnen die agilen Projektmethoden mehr und mehr an Bedeutung. Aber sind rechtskonforme Verträge und innovative Entwicklungsansätze miteinander vereinbar? lesen

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Was ist Cloud Native?

Definition „Cloud-native Anwendung“

Was ist Cloud Native?

Cloud Native ist ein agiles und effizientes Konzept, um Software zu entwickeln und Neuerungen möglichst schnell zum Nutzer auszuliefern. Der Betrieb der Anwendung wird direkt über die zugrunde liegende Cloud-Plattform realisiert. lesen

Wie Kekse dem DevOps-Team Scrum schmackhaft machen

Umgang mit Betriebsaufgaben im Scrum-Prozess

Wie Kekse dem DevOps-Team Scrum schmackhaft machen

Nimmt ein Scrum Team einmal Fahrt auf, geht die kontinuierliche Veröffentlichung von Software-Versionen schnell zu Lasten der Zusammenarbeit zwischen Entwicklung und Betrieb. Mit einer ebenso einfachen wie leckeren Methode lässt sich das Effizienzproblem aber beheben. lesen

10 Tipps für die DevSecOps-Strategie

Sichere Entwicklungsprozesse in agilen Umgebungen

10 Tipps für die DevSecOps-Strategie

Agile Entwicklung und DevOps haben zwar die Software-Entwicklung und -Bereitstellung beschleunigt, doch darunter leidet mitunter die Sicherheit. Wenn die Qualitätssicherung nicht Schritt halten kann, entsteht fehlerhafter und anfälliger Code. Checkmarx gibt 10 Tipps für die DevOps-Strategie. lesen

5 Gründe, warum Scrum und Agile scheitern

Agile Softwareentwicklung in der Realität

5 Gründe, warum Scrum und Agile scheitern

In der Softwareentwicklung kommen zunehmend agile Methoden zum Einsatz. Zahlreichen erfolgreichen Projekten stehen aber auch viele missglückte gegenüber. Doch warum scheitert der agile Ansatz und wie lässt sich dieses Scheitern verhindern? lesen

SecDevOps – Sichere, agile Softwareentwicklung

Sicherheit sollte nicht an letzter Stelle stehen

SecDevOps – Sichere, agile Softwareentwicklung

Gegenüber linearen Entwicklungsmethoden wie dem Wasserfallmodell bietet agile Softwareentwicklung einige Vorteile. Bei der Sicherheit gibt es dabei aber einige Knackpunkte, die Janosch Maier von Crashtest Security genauer dargelegt hat. lesen

DevOps und „Shift left“ in drei Schritten

Agile Entwicklung erfordert Continuous Testing

DevOps und „Shift left“ in drei Schritten

Durch „Shift Left“ rückt das Testen auf dem Zeitstrahl des Software Development Lifecycle weiter nach links. Warum der Begriff bei DevOps und agiler Entwicklung aber etwas irreführend ist und was Unternehmen tun müssen, erläutert Malcom Isaacs von Micro Focus. lesen

Was agile Self-Organized Teams brauchen

Von 0 auf 100-prozentig selbstorganisiert

Was agile Self-Organized Teams brauchen

Agile Teams sind insbesondere in der Software-Entwicklung sehr gefragt, auch große Organisationen wagen sich an die Umstellung. Aber wie wird aus einem – womöglich speziell für ein Projekt zusammengewürfelten – Team ein selbstorganisiertes? Ein Bericht aus der Praxis. lesen

Agile Entwicklung hat Seltenheitswert

Studie zur Digitalisierung in Deutschland

Agile Entwicklung hat Seltenheitswert

Im Projektmanagement deutscher Unternehmen ist agile Entwicklung noch nicht in der Breite angekommen. Dies hat der Bitkom im Zuge einer Studie zur Digitalisierung im Auftrag von Tata Consultancy Services ermittelt. lesen

Wichtige Methoden agiler Softwareentwicklung

eBook-Exzerpt – Arbeitsmethoden der Entwicklerteams

Wichtige Methoden agiler Softwareentwicklung

Die agile Softwareentwicklung ermöglicht schnellere und effizientere Entwicklung bei minimalem Aufwand. Doch welche Methoden gibt es, um Software agil zu entwickeln? lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44432002 / Definitionen)