Agile Softwareentwicklung

Lean Software Development

24.08.2010

2. Lernen unterstützen

Im Laufe eines Projekts lernen alle Beteiligten dazu - sowohl der Kunde als auch die Entwickler. Dies ist erwünscht und soll unterstützt werden. Ein Hilfsmittel dazu ist das Feedback, eine schnelle Rückmeldung auf die Arbeitsergebnisse. So kann man zum Beispiel anstelle umfangreicher Architektur- und Designdokumente verschiedene Varianten direkt im Sourcecode ausprobieren und erhält unmittelbar Feedback über die Lauffähigkeit. Und anstatt Anforderungen vollständig zu erheben, ist es besser, ein paar Bildschirmmasken zu entwerfen und mit dem Kunden zu diskutieren.

Damit das Feedback zielgerichtet ist, wird die Iteration eingesetzt. Wichtig ist allerdings, dass die Iterationen "Time-boxed" sind, also der Endtermin feststeht. Sollte es zu einem Engpass kommen, so wird der Umfang der Iteration verändert, nicht der Termin.

Als weiteres Hilfsmittel zur Unterstützung des Lernens dient das Set based Design. Dahinter steckt die Idee, sich möglichst lange möglichst viele Alternativen offen zu lassen. Die Festlegung auf eine Alternative erfolgt erst, wenn man meint genug gelernt zu haben, um eine Entscheidung zu treffen. Dies unterstützt auch ein weiteres Prinzip des Lean Software Developments, nämlich: