Zur Navigation Zur Suche Zum Inhalt
Kontakt

Die Kundenanforderungen an eine Software werden immer anspruchsvoller. Die Kosten müssen vor Projektbeginn bekannt sein, zugleich möchte man den Entwicklungsprozess im Auge behalten und laufend Anpassungen vornehmen können. Diese Flexibilität wird durch die Methode der agilen Softwareentwicklung sichergestellt. In folgendem Beitrag nehme ich den Prozess unter die Lupe.

flexibel dank agiler softwareentwicklung

 

Das Wasserfallmodell im Kontrast

Zu Beginn eines Projekts stellt sich die Frage, nach welcher Methode gearbeitet werden soll. Das Vorgehen nach dem Wasserfallmodell erfolgt strikt linear. Der Softwareentwicklungsprozess wird in 5 feste Phasen eingeteilt:

  • Anforderungen
  • Analyse
  • Entwurf
  • Implementierung
  • Test

Das Modell eignet sich für Abläufe, die präzise definiert werden können. Jede Phase muss abgeschlossen sein, damit die nächste starten kann. Es ist nicht möglich, nach Abschluss einer Phase zurückzugehen und Anpassungen vorzunehmen. Je nach Projekt sind Anpassungen während einer Projektphase jedoch unabdinglich. Es bedarf deshalb einer Methode, die schnell auf Änderungen eingehen und diese spontan umsetzen kann.

 

Was bedeutet Agilität?

Bei der agilen Softwareentwicklung kann man schneller auf ungeplante Situationen reagieren. Das Projekt wird in Arbeitsphasen, sogenannte „Iterations“, aufgeteilt. Dabei sind die Arbeitsabläufe während jeder Phase klar festgelegt. Der Kunde ist immer auf dem aktuellen Stand, da nach jeder Iteration eine Kommunikation mit dem Lieferanten erfolgt. Die Wünsche werden dann in der nächsten Iteration umgesetzt. Agilität bedeutet also auch einen intensiveren Informationsaustausch mit dem Kunden.

 

Zauberwort Flexibilität

Anforderungen werden zu Beginn eines Projekts definiert. Je nach Wettbewerbssituation können sich die Anforderungen jedoch ändern. Vielleicht hat der Kunde seine Strategie geändert? Vielleicht entstand eine Idee, welche am Projektbeginn noch nicht vorhanden war? Zeit und Geld ginge verloren, würde man das Projekt von vorne beginnen. Mit der Flexibilität der agilen Softwareentwicklung können solche spontanen Anpassungen direkt in das Projekt einbezogen werden.

 

Das Erfolgsrezept „Scrum“

Scrum ist das beliebteste und verbreitetste Vorgehensmodell der agilen Softwareentwicklung. Auch hier wird das Projekt in Phasen, sogenannte „Sprints“ eingeteilt. Der Entwicklungszyklus kann in folgende Stufen unterteilt werden:

  • Transparenz: Idee umsetzen, entwickeln
  • Überprüfung: kritische Prozessanalyse, Fehler erkennen
  • Anpassung: Prozesse verbessern

scrum
Ziel jedes Sprints ist immer, nach Abschluss ein funktionierendes Produkt mit «Mehrwert» für den Kunden zur Verfügung zu stellen. Der Kunde kann sich ein Bild des Prototyps machen und Verbesserungen für den nächsten Sprint vorschlagen. Somit werden die für den Kunden am wichtigsten befundenen Elemente zuerst fertiggestellt. Dies stellt einen entscheidenden Wettbewerbsvorteil dar, da die Software schon vor dem eigentlichen Ende des Projekts eingesetzt werden kann.

 

Kostenübersicht dank agilem Festpreis

Wie schon zu Beginn des Beitrags angesprochen, möchte der Kunde bereits im Voraus eine Übersicht über die Kosten haben. Bei der agilen Softwareentwicklung sind fixe Preise jedoch schwierig zu definieren, da sich die Prozesse innerhalb des Projekts ändern können. Mit dem agilen Festpreis gehen Kunde und Entwickler einen Kompromiss ein: Beide Parteien einigen sich auf einen Festpreis, sind sich aber den Veränderungen während des Projekts bewusst. Regelmässige Feedbacks sind Voraussetzung und bringen Transparenz sowie eine zeitnahe Kostenkontrolle.
In folgendem Beitrag von „Informatik Aktuell“ wird die Vertragsart „Agiler Fixpreis“ genau unter die Lupe genommen: Zum Beitrag.

 

Fazit

In der Softwareentwicklung kann es schwierig sein, die Übersicht über die einzelnen Modelle zu behalten. Letztendlich muss mit dem Kunden zusammen ein für ihn zugeschnittenes Modell erarbeitet werden. Mit der agilen Methode, vor allem mit Scrum, kann der Kunde die Bedürfnisse während des Projekts anpassen und der Entwickler flexibel auf die neuen Anforderungen reagieren. Dies fordert aber auch viel Zeit und Geduld. Regelmässige Meetings und eine offene Kommunikation sind von zentraler Bedeutung. Der Kunde erhält dafür Einsicht in das Projekt und kann aktiv daran teilnehmen und mitentscheiden.
Verwende also bei deinem nächsten Projekt die agile Methode, um die Flexibilität sicherzustellen und das Projekt erfolgreich abzuwickeln!

 

Als Berater und Dienstleister plant und konzipiert die Leuchter Software Engineering AG Ihre Softwarelösung vollumfänglich. Treffen Sie unser Team, damit wir Ihnen alle offnen Fragen beantworten zu können:



Unternehmensprozesse optimieren
Jetzt Beratungstermin vereinbaren