Tom DeMarco: Neue Köpfe, alte Fehler
Tom DeMarco: Neue Köpfe, alte Fehler
Warum scheitern so viele Softwareprojekte? Managementberater Tom DeMarco, Autor von "Wien wartet auf Dich" und Verfasser des Projektmanagement-Romans "Der Termin", hat sich darüber Zeit seiner Karriere Gedanken gemacht. Um die Ursachen zu ergründen, stellte er eine Reihe von Schlüsselfragen (siehe unten). Mit ihrer Hilfe kam er zu dem Ergebnis: Nicht fehlerhafte Prozesse, sondern missglücktes Management ist der Hauptschuldige am Software-Dilemma - Managementmethoden, die sich in vier Jahrzehnten der Softwareentwicklung kaum verbessert haben.
Tom DeMarco liefert keine Patentrezepte; er fordert vielmehr den Leser auf, die eigene Position zu überdenken und nach Lösungen zu suchen, die im eigenen Projekt machbar sind.
"Warum ist Software-Projektmanagement so schwierig?"
Barry Boehm* mit seinem "CoCoMo"-Projekt - das stattliche 30 Jahre gedauert hat - hat daran mitgewirkt, die wichtigsten Ursachen für die besonderen Schwierigkeiten in der Softwareentwicklung zu identifizieren. Seit der ersten Veröffentlichung seines bedeutenden Werks "Software Engineering Economics" im Jahr 1981 bezeichnete er konsequent das Management als Hauptschuldigen. Und Boehm untersuchte die Bedeutung von gutem Management im Vergleich zu schlechtem: Er kam zu dem Ergebnis, dass der Einfluss des Managements auf den Projekterfolg größer ist als die Summe aller anderen Gründe zusammen.
Auf den ersten Blick erscheint die Aufgabe, ein Softwareprojekt zu managen, nicht so viel schwieriger, als die, irgend eine andere komplexe menschliche Unternehmung zu leiten. Doch die Bedeutung von Managementfähigkeiten erweist sich bei genauem Hinsehen bei Softwareprojekten als weit größer als in anderen Gebieten.
Das Schlimmste ist: Die vielen guten Managementbeispiele, die es ja auch gibt, haben - obwohl sie wirklich inspirierend waren - offenbar nicht die althergebrachten Handlungsweisen in der Softwareindustrie geändert. Der Anteil gut gemanagter Projekte ist heute nicht signifikant höher ist als in der Anfangsphase des Softwarezeitalters.
(*Anm.d.Red.:Mathematiker, Professor für Softwareentwicklung, tätig in vielen Projekten u.a. im US-Verteidigungsministerium, Forschung in Prozessmodellierung, Software-Architektur und verwandten Gebieten, bekannt für sein "Constructive Cost Model" (CoCoMo))
"Warum haben wir noch heute die Managementprobleme der 60er Jahre?"
Es sind nicht neue Managementprobleme, die uns zu schaffen machen, sondern die sehr alten Managementprobleme aus den Sechziger Jahren. Wir haben noch immer nicht unsere Zeitpläne im Griff, wir erreichen noch immer keine wirklich hilfreiche - weil aussagekräftige -Vereinheitlichung unserer Prozesse, wir schaffen es noch immer nicht, die "großen Unbekannten" in den fortgeschrittenen Projektstadien unter Kontrolle zu bekommen, wir bekommen noch immer nicht die Requirements, die Anforderungen, gebacken, und wir haben es noch immer nicht heraus, die wichtigste Schnittstelle, nämlich die zu den Vertretern der Business-Seite im Unternehmen, auf richtige Art und Weise zu managen. Die Redewendung "zu 95% erledigt" ("95% done") ist heute noch genauso ein Witz wie 1960.
Neue Managergeneration mit den alten Problemen
"Warum hat sich das Softwareprojekt-Management nicht verbessert, als eine neue Managergeneration mit Softwareentwicklungs-Erfahrung das Ruder übernahm?"
Als ich 1963 meine Karriere als Softwareentwickler begann, wurden Softwareprojekte von Hardware-Ingenieuren geleitet. Es gab einfach keine Software-Fachleute mit ausreichender Erfahrung für diese Aufgabe. Das Ergebnis war, dass meine jungen Kollegen und ich an Manager berichteten, die nie auch nur ein eigenes Programm geschrieben hatten. Sie waren nicht einmal in der Lage, den Code zu verstehen, um zu erkennen, ob er stimmte. Sie konnten uns zu den wichtigsten Tätigkeiten in unserer Projektarbeit keinen Rat geben. Sie konnten einen guten nicht von einem schlechten Ansatz unterscheiden.
Während dieser frühen prägenden Jahre prophezeite ich noch voller Zuversicht, dass diese auf schmerzliche Art offensichtlichen Managementprobleme drastisch abnehmen würden, wenn Softwareprojekte von Leuten geleitet würden, die selbst Erfahrung als Softwareentwickler hatten.
Zu meiner Überraschung waren die Vertreter der neuen Generation von Ex-Programmierern, die Anfang der 70er Jahre begannen, überall Projekte zu übernehmen, aber keine besseren Manager als ihre Vorgänger. Sie waren sogar deutlich schlechter. Die erste Generation von Managern, die aus den Reihen der Softwareentwickler kam, lieferte eine viel schlechtere Leistung ab als die Hardware-Manager, die unsere Projekte während der 60er Jahren geleitet hatten.