Der schlanke Herstellungsprozess

28.06.2007 Permalink

Heute hatte ich das riesige Glück, Alistair Cockburn life und in Farbe in der Bonner Uni zu erleben. Er gab dort einen Vortrag zum Thema Software Engineering in the 21st Century zum Besten.

Ich finde das, was ich von ihm kenne, sehr lesenswert, und ihn zu erleben, bereitet große Freude. Allerdings sehe ich bei seinen Ausführungen zur Anwendung des Lean Manufacturing im Software Engineering eine gewisse Gefahr, dass sie falsch in die Praxis überführt werden:

Die vielen kleinen Entscheidungen (decisions) die gleichsam Produktteilen durch den Herstellungsprozess wandern, sind nicht alle unabhängig voneinander. Ich benötige in der Regel eine konsistente Menge z.B. von Konzeptentscheidungen oder von Codeänderungsentscheidungen, damit das Produkt Softwaresystem insgesamt nicht in einen fachlich bzw. technisch inkonsistenten Zustand gerät.

Wendet man diese Idee des ständigen Flusses möglichst kleiner Teile unbedarft an, so könnte man denken, dass klug geschnittene Lieferstufen oder Inkremente verzichtbar sind.

Die andere negative Auswirkung eines kontinuierlichen "Entscheidungsflusses" betrifft die Stabilisierung eines Systems durch Test und Bugfixing. Eine Weiterentwicklung neuer Features in einem System, das kurz vor Inbetriebnahme steht, ist sehr sehr unklug, denn dadurch kommen neue Fehler hinzu und das Ergebnis ist Destabilisierung, also eine Verschlechterung der wahrnehmbaren Qualität des Systems.

Von daher finde ich die Analogie interessant, und es ist zweifelsohne eine Errungenschaft, dass das Software Engineering durch diese Analogie Zugang zu einer gut untersuchten Welt erhält, aber die Teile im Herstellungsprozess dürfen ganz und gar nicht beliebig klein werden... jedoch sicherlich noch ein ganzes Stück kleiner als es heute in den meisten Projekten zu beobachten ist.