Glenn Vanderburg hielt auf der „Lone Star Ruby Conference 2010“ einen interessanten Vortrag mit dem Titel „Real Software Engineering“. Er bezeichnete dabei heutiges „Software Engineering“ (dt. „Software-Technik„) als Karikatur einer Ingenieursdisziplin und versuchte, über „Real Engineering“ (also traditionelles Ingenieurswesen) zum „Real Software Engineering“ zu gelangen.
Inhalt
Zunächst unternahm Vanderburg ein kurzen Ausflug in die Geschichte der Software-Technik:
- die erste Konferenz zum Thema,
- dem in seiner Auswirkung desaströsen Paper zum Wasserfallmodell – als Negativbeispiel für Informationsdarstellung -,
- dem nachfolgenden Versuch, ein definiertes Prozess-Steuerungsmodell zu definieren
- der Annahme, das Ingenieure als Arbeitsergebnisse Dokumente haben (daher dokumentenlastige Vorgehensmodelle)
In anderen Ingenieursdisziplinen gehe der Fortschritt meist von Praktikern aus. (Mathematische) Modelle würden als Kosteneinsparung genutzt, um weniger physische Modelle zu bauen. Die physischen Modelle werden genutzt, um die mathematischen Modelle zu überprüfen.
In der Software-Technik würden Modelle (im Sinne von physisch) und Tests wenig kosten, daher könne man sich die Nutzung von mathematischen Modellen (à la UML etc.) im Vergleich zu anderen Ingenieursdisziplinen verringern. Mehr noch, Code sei letztlich das Modell und Compiler/Linker/etc. seien in der Analogie zur Baustelle die Arbeiter. Dies sei heute um eher einsehbar, da heute Code mehr denn je so einfach zu lesen wie zu schreiben ist.
Schließlich stellte Vanderburg agile Vorgehensweisen als „empirisches Prozess-Steuerungsmodell“ vor. Derartige Modelle würden auch in anderen Ingenieursdisplinen genutzt.
In Anlehnung einer Definition für das Bauingenieurswesen schlägt er folgende Definition für Software-Technik vor:
… ist die Wissenschaft und Kunst, System ökonomisch und elegant so zu entwerfen und zu erstellen, dass sie sich leicht den Situationen anpassen, denen sie ausgesetzt sind.
Hier kämen die Spannungsfelder Wissenschaft (Mathematik) – Kunst – Ökonomie gut zum Ausdruck.
Highlights
Toll fand ich die Darstellung, wie das Waterfall-Paper missverstanden werden konnte.
Interessant auch die Feststellung, dass die der Fehlerkostenkurve von Boehm zugrundeliegende Projekte nach dem Wasserfall-Modell waren und die Kurve daher in Wahrheit die Kosten von großen Rückkoppelungsschleifen darstellt.