Freitag, 5. Juli 2013

Anforderungen beim Start eines Hardware Projektes



Herr Vitalji, der eine Diplomarbeit über das agile Entwicklungsvorgehen schreibt, hat sich mit 4 Fragen an mich gewandt. Die 2. davon ist:

Die Änderung von Anforderungen ist in der Hardwareentwicklung nicht so problemlos wie im Softwarebereich. Wie detailliert müssen die Anforderungen zu Beginn eines Hardwareentwicklungsprojektes vorliegen und die Umsetzung geplant werden? 

Wenn wir für ein neues Projekt viele detaillierte Anforderungen hätten, wäre eine agile Vorgehensweise nicht sinnvoll. 
Wir haben uns für scrum entschieden da anfangs sehr wenig Anforderungen vorhanden sind. Meistens gibt es eine Idee oder eine spezielle Anfrage des Kunden die zu einer neuen Maschine führt. Wie die Idee umgesetzt werden könnte ist höchstens in groben Ansätzen vorhanden. Aus den Ideen und Vorstellungen wird gemeinsam ein Vision erstellt. Sachen wie Lastenheft, Pflichtenheft,... fallen komplett weg. Und bei einer Ausgangslage wie dieser macht es Sinn agil zu entwickeln.
Wir machen ein Inkrement und stellen es dann vor. Sobald die Stakeholder den 1. Entwurf sehen findet sofort die gewünschte Feedback Diskussion statt. " ... das ist so wie wir uns das vorstellen... , ...aber das wäre besser wenn es so funktioniert... , ...könnte man nicht...". Mit diesen Inputs erstellen wir neue user storys die dann wieder priorisiert und in den folgenden Sprints abgearbeitet werden.

Mit diesem Vorgehen beim aktuellen Projekt haben wir erreicht das jetzt die Maschine in "real hardware" in der Montagehalle steht und jeder Stakeholder findet das sie so ist wie er sich das vorgestellt hat. Wir haben, im Vergleich zu früheren Projekten, keine Diskussionen, ob das so wie es da steht so ist wie man es wollte.

Will man scrum Projekte im Hardware Bereich durchführen, muss aus meiner Sicht ab dir 1. Projektidee agil gearbeitet werden.
Änderungen an den Anforderungen sind in der Planugsphase sehr leicht umzusetzen. Durch das agile Vorgehen sind weniger Änderungen an der "real Hardware" notwendig da die Qualität der 1. Maschine in vielerlei Hinsicht besser ist als bei nicht agilem Vorgehen.