LU01a - Agile Methoden

Agile_Softwareentwicklung

Agile Methoden wollen die Prozesse bei der Softwareentwicklung möglichst schlank und effizient gestalten. Dabei wird versucht, den bürokratischen Aufwand zu minimieren und sich auf die menschliche Interaktion zu konzentrieren. Typisch für agile Methoden sind:

  • Möglichst kurze Entwurfsphasen.
  • Konzentration auf die frühzeitige Realisierung von lauffähiger Software.
  • In regelmässigen, kurzen Abständen wird das Teilergebnis mit dem Kunden abgestimmt.

Die Grundlage bilden die Werte im Manifest für agile Softwareentwicklung:

Wir erschließen bessere Wege, Software zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt:

  • Individuen und Interaktionen mehr als Prozesse und Werkzeuge
  • Funktionierende Software mehr als umfassende Dokumentation
  • Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung
  • Reagieren auf Veränderung mehr als das Befolgen eines Plans

Das heisst, obwohl wir die Werte auf der rechten Seite wichtig finden, schätzen wir die Werte auf der linken Seite höher ein.

Die agilen Prinzipien basieren auf den agilen Werten und beschreiben Handlungsgrundsätze bei der Entwicklung von Software. In den Prinzipien hinter dem Agilen Manifest sind die 12 Prinzipien aufgelistet.

Zu den traditionellen Vorgehensmodellen gehören unter anderem Rational Unified Process, das V-Modell oder HERMES. Diese Modelle unterteilen den Entwicklungsprozess in inhaltlich und zeitlich klar abgegrenzte Phasen. Zum Beispiel:

  1. Anforderungen
  2. Entwurf
  3. Realisierung
  4. Testen
  5. Auslieferung, Einsatz
  6. Wartung

Zu jeder Phase sind die Tätigkeiten und die zu erarbeiteten Resultate definiert. Eine der Schwierigkeiten der traditionellen Methoden ist, dass sehr früh im Projekt wichtige Entscheidungen zur Umsetzung getroffen werden. Zu diesem Zeitpunkt ist aber in der Regel noch wenig Wissen über die benötigte Software und deren Umfeld vorhanden.

Im Verlauf des Projekts steigt unser Wissen und Verständnis an, aber es können nur noch Details der Umsetzung beeinflusst werden.


Marcel Suter

  • modul/m426/learningunits/lu01/agilemethoden.txt
  • Last modified: 2023/11/13 08:56
  • by 127.0.0.1