Table Of ContentX p e r t  . p r e s s
Die Reihe Xpert.press vermittelt Professionals
in den Bereichen Softwareentwicklung,
Internettechnologie und IT-Management aktuell
und kompetent relevantes Fachwissen über
Technologien und Produkte zur Entwicklung
und Anwendung moderner Informationstechnologien.
Rainer Gerlich · Ralf Gerlich
111 Thesen zur
erfolgreichen
Softwareentwicklung
Argumente und Entscheidungshilfen
für Manager
Konzepte und Anleitungen für Praktiker
Mit 55 Abbildungen und 9 Tabellen
123
Rainer Gerlich
Ralf Gerlich
Auf dem Ruhbühl 181
88090 Immenstaad
[email protected]
[email protected]
Bibliografische Information der Deutschen Bibliothek
Die Deutsche Bibliothek verzeichnet diese Publikation in der Deutschen
Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über
http://dnb.ddb.de abrufbar.
ISSN 1439-5428
ISBN-10 3-540-20910-7 Springer Berlin Heidelberg New York
ISBN-13 978-3-540-20910-2 Springer Berlin Heidelberg New York
Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbe-
sondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von
Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der Ver-
vielfältigung auf anderen Wegen und der Speicherung in Datenverarbeitungs-
anlagen bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Verviel-
fältigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den
Grenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik
Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulässig.
Sie ist grundsätzlich vergütungspflichtig. Zuwiderhandlungen unterliegen den Straf-
bestimmungen des Urheberrechtsgesetzes.
Springer ist ein Unternehmen von Springer Science+Business Media
springer.de
© Springer-Verlag Berlin Heidelberg 2005
Printed in Germany
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in die-
sem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass
solche Namen im Sinne der Warenzeichen- und Markenschutzgesetzgebung als frei zu be-
trachten wären und daher von jedermann benutzt werden dürften. Text und Abbildungen
wurden mit größter Sorgfalt erarbeitet. Verlag und Autor können jedoch für eventuell ver-
bliebene fehlerhafte Angaben und deren Folgen weder eine juristische Verantwortung noch
irgendeine Haftung übernehmen.
Satz: Druckfertige Daten des Autors
Herstellung: LE-TeX Jelonek, Schmidt & Vöckler GbR, Leipzig
Umschlaggestaltung: KünkelLopka Werbeagentur, Heidelberg
Gedruckt auf säurefreiem Papier    33/3142/YL - 5 4 3 2 1 0
Danksagung 
Für die Unterstützung unserer Arbeiten bedanken wir uns bei 
(cid:120) unseren Mitarbeitern Thomas Boll und Daniel Sigg,  
die engagiert und kreativ bei der erfolgreichen Implementie-
rung der Produktionsprozesse mitgearbeitet haben. 
(cid:120) der ESA (European Space Agency),  
die durch Vergabe zahlreicher Projekte zu diesem Thema we-
sentlich dazu beigetragen hat, dass wir in Richtung automati-
scher Produktionsprozesse arbeiten konnten und können, und 
die die Technologie im Rahmen ihres "Technology Transfer 
Programme" (TTP) unterstützt. 
(cid:120) dem Raumfahrtmanagement des DLR (Deutsches Zentrum für 
Luft- und Raumfahrt) 
für die Förderung unserer Arbeiten durch Projekte und Ver-
breitung unserer Ergebnisse im Rahmen der "Initiative für den 
Technologietransfer aus der Raumfahrt" (INTRA). 
(cid:120) MST Aerospace GmbH für die wertvolle Unterstützung im 
Rahmen von TTP und INTRA. 
(cid:120) unseren Ansprechpartnern im Bereich DG IST (Information 
Society Technologies) der EU für die Unterstützung im Rah-
men der "Framework Programme" FP4 und FP 6. 
(cid:120) allen unseren Auftraggebern und Kunden, 
durch die wir in der Lage waren, unsere Technologie in realen 
Projekten einsetzen und dadurch weiterentwickeln zu können. 
(cid:120) allen Diskussionspartnern, die uns durch Kritik und Rat Anre-
gungen für weitere Anwendungen gegeben und uns damit zur 
Erschließung weiterer Einsatzbereiche ermutigt haben. 
(cid:120) unseren Ansprechpartnern beim Springer-Verlag, für ihre Ge-
duld (es hat leider etwas länger gedauert) und ihre Hilfe bei der 
Erstellung dieses Buches.. 
(cid:120) und – last but not least – allen unseren Teamkollegen aus den 
ESA- und EU-Projekten, für Gedankenaustausch, Anregungen 
und auch Kritik, die für uns sehr wertvoll waren, um unseren 
Ansatz weiterzuentwickeln. 
Danksagung ■ V
■
■
Vorwort 
Ziel dieses Buches ist es, 
(cid:120) Managern  Argumente  und  Entscheidungshilfen  für  die 
Einführung  effizienter  Techniken  der  Softwareentwick-
lung zu geben, und  
(cid:120) Praktiker von der Notwendigkeit effizienter Softwareent-
wicklung zu überzeugen und Wege zur erfolgreichen An-
wendung aufzuzeigen. 
Unter "effizienter Softwareentwicklung" verstehen wir die Um-
setzung von Anforderungen in "qualitativ hochwertige" Software zu 
"angemessenem" Preis innerhalb "angemessener" Zeit. 
"Qualitativ hochwertig" steht für fehlerfrei, zuverlässig, robust 
und  voll  den  Anforderungen  entsprechend.  Unter  "angemessen" 
verstehen wir minimale Komplexität bei voller Abdeckung der An-
forderungen, bezahlbar und kurzfristig verfügbar. 
Im ersten Teil dieses Buches (Kap. 2 - 5) führen wir den Leser 
hin zum "automatischen Softwareproduktionsprozess", durch Prä-
sentation  von  Thesen  und  Analysen.  Anleitungen  und  Beispiele 
folgen im zweiten Teil (Kap. 6 und 7). Wir schließen mit Betrach-
tungen zur gesellschaftspolitischen Relevanz einer Technologie, die 
auf Automation beruht (Kap. 8). 
Wie in anderen Bereichen, in denen Automation bereits ange-
wendet  wird,  haben  automatische  Softwareproduktionsprozesse 
Einfluss auf die Arbeitsplätze. Präziser ausgedrückt, es fallen be-
stimmte Arten von Arbeitsplätzen weg, während andere entstehen. 
Für Manager und Entwickler, aber auch Ausbilder, ist es wichtig, 
sich frühzeitig auf die Möglichkeiten und Folgen dieser Technologie 
einzustellen.
Zur Zeit wird durch "Outsourcing", "Nearshoring" oder "Offsho-
ring" versucht, die Softwareentwicklungskosten zu senken. "Auto-
mation" in der Softwareentwicklung geht darüber hinaus. Nicht nur 
Kosten sinken, auch Entwicklungszeit und -risiken, die Flexibilität 
Vorwort ■ VII
■
■
erhöht sich, und Know-how muss nicht nach außen weitergegeben 
werden.
Softwareentwickler müssen daher informiert werden, dass Auto-
mation mehr zur Sicherung ihrer Arbeitsplätze beiträgt als sie zu 
gefährden. Die Gefahr, den eigenen Arbeitsplatz zu verlieren, ist 
ohnehin durch das momentane Gefälle des Preis-Leistungsverhält-
nisses zwischen In- und Ausland gegeben. Nur durch Verbesserung 
dieses Verhältnisses kann ein Entwickler seinen Arbeitsplatz si-
chern. Automatische Softwareproduktion gibt ihnen die Chance, die 
Leistung zu erbringen, die ihre höhere Bezahlung im Vergleich zu 
Niedriglohnländern  rechtfertigt.,  bei  gleichzeitiger  Erhöhung  der 
Arbeitsplatzqualität. 
Um konkurrenzfähig zu bleiben, müssen Firmen sogar hoch be-
zahlte Arbeitsplätze schaffen, da die Entwicklung spezifischer und 
automatisierter Entwicklungsprozesse eine hochwertige Ausbildung 
voraussetzt.
"Qualität hat ihren Preis" ist eine bekannte Aussage. Bei kriti-
schen Anwendungen, wie beispielsweise in der Luft- und Raum-
fahrt, sind die Entwicklungskosten mindestens um eine Größenord-
nung  höher  als  bei  anderen  Anwendungen,  weil  sorgfältiges 
Vorgehen gefordert wird, einschließlich Maßnahmen zum Nachweis 
der Qualität. Bedeutet dies nun, dass andere Bereiche darauf ver-
zichten müssen, wenn sie die Kosten für höhere Qualität nicht über 
Marktpreise abdecken können?  
Wir sagen "Nein"! Und diese Aussage gilt prinzipiell für alle Be-
reiche. Unser Ziel ist es, die bisher nur unter hohen Kosten zu be-
friedigenden Qualitätsansprüche zu akzeptablen Kosten zu erfüllen, 
und damit die bisher nur in Bereichen wie Luft- und Raumfahrt 
realisierbare Qualität auch auf anderen Gebieten zu ermöglichen. 
Dazu sind neue Verfahren und Vorgehensweisen bei der Ent-
wicklung notwendig. Die Erfahrung zeigt uns, dass immer dann eine 
Qualitätssteigerung bei gleichzeitiger Kostensenkung möglich ist, 
wenn eine neue Technologie eingesetzt wird. Thema dieses Buches 
ist daher eine Methodik, mit der die gesteckten Ziele erreicht werden 
können.
Die Einführung einer neuen Technologie und die Erschließung 
breiter Anwendungsbereiche ist nicht einfach. Zunächst muss sie für 
den industriellen Einsatz reif sein. Diese Reife kann nur durch reale 
Anwendungen nachgewiesen werden, was in der Regel Aufträge 
von Anwendern voraussetzt. Dann muss sie auch von den Anwen-
dern akzeptiert werden. Die Anwender müssen ihr vertrauen, was in 
der Regel erfolgreiche Anwendungen voraussetzt. Am Anfang ist es 
daher schwierig, einen neuen Weg zu beschreiten und durchzuset-
zen, weil diese beiden Bedingungen konträr zueinander sind. Von 
VIII ■  Vorwort
■ 
■
der ersten Idee bis zum beherrschbaren Einsatz in der Praxis ist da-
her ein langer Weg. 
Wir werden ausführlich die Verfahren sowie die grundlegenden 
Konzepte und Strategien beschreiben und die Vorteile durch erfolg-
reich abgeschlossene Projekte und Beispiele belegen. 
Insbesondere werden wir aus unserer Sicht darlegen, warum die 
beiden folgenden – weithin akzeptierten – Aussagen falsch sind: 
(cid:120) Software ist teuer, und 
(cid:120) mangelhafte Software ist ein unvermeidbares Schicksal. 
In unserem täglichen Leben beobachten wir ständig, dass die Quali-
tät von Produkten und Dienstleistungen steigt während Preis und 
Kosten sinken. Warum soll dies nicht auch für Software gelten? 
Die Bedeutung von Software in unserem Umfeld nimmt konti-
nuierlich zu, wodurch auch die Auswirkungen schlechter Qualität 
größer werden. Der Bogen spannt sich hierbei von begrenzten, mate-
riellen Auswirkungen wie Programmabstürzen, fehlerhafter Funkti-
onalität, die „nur“ Zeitverlust und Unkosten verursachen, hin zu 
sicherheitskritischen,  gesundheits-  oder  lebensgefährdenden  Aus-
wirkungen  beispielsweise  bei  Anwendungen  in  der  Transport-,  
Energie- und Medizintechnik, in Luft- und Raumfahrt. 
DiepotenziellenEinflüssegehenabernochweiter.Diezukünftige
Wettbewerbsfähigkeit unserer Wirtschaft erfordert hohe Flexibilität
hinsichtlich der Produkteigenschaften, bei kurzer Entwicklungszeit
undniedrigenProduktionskosten.Wirtschaftsräume,dieSoftwarezu
teuer produzieren, verlieren schon jetzt Marktanteile bzw. Arbeits-
plätze, weil die hohen Softwareentwicklungskosten durch Vergabe
vonArbeitinsog.Niedriglohnländerverringertwerden.
Aus dieser Sicht wird es immer dringlicher, einen Weg aus dieser 
“Softwarekrise“ aufzuzeigen. Zu der technischen und wirtschaftli-
chen Brisanz des Themas kommen damit sozial- und wirtschaftspo-
litische Aspekte hinzu. 
Warum geschieht nun anscheinend nichts Wesentliches, um die-
ses Problem in naher Zukunft lösen zu können? Die Antwort ist: es 
geschieht schon etwas, nur sind die Auswirkungen so gering, dass 
sie sich kaum oder überhaupt nicht auswirken. Auch fehlen geeigne-
te Hilfsmittel, um Fortschritte messen zu können, was zur Folge hat, 
dass nicht genügend zielgerichtet vorgegangen wird. 
Die hohen Umsätze, die mit Software bereits heute erzielt wer-
den, sagen nichts über die Effizienz der Herstellungsmethoden aus. 
Ein besserer Indikator dafür ist die Verlagerung von Arbeitsplätzen 
in Niedriglohnländer. Dieses Verhalten der Wirtschaft zeigt, dass 
eine technische Lösung für das Kostenproblem offensichtlich noch 
nicht gefunden wurde. Daher werden  Möglichkeiten nichttechni-
Vorwort ■ IX
■
■
scher Art wie Unterschiede im Lohnniveau benutzt, um Wettbe-
werbsvorteile zu erhalten. 
Die heutige Situation im Bereich der Softwareentwicklung ist 
vergleichbar mit dem Festhalten am Ptolomäischen Weltbild. Durch 
immer neue Erker versucht man das eigentlich ungeeignete System 
mit der Realität in Übereinstimmung zu bringen. Damals waren dies 
die neuen Erkenntnisse der Astronomen, die zu immer neuen “Ver-
renkungen“ führten, ohne das Problem grundsätzlich lösen zu kön-
nen. Im Bereich der Softwareentwicklung sind es heute neue Anfor-
derungen  und  Qualität,  Menge  und  Komplexität,  die  zwar  zu 
„hektischen“ Bemühungen fuhren, aber keine befriedigenden Er-
gebnisse bringen. 
Erst ein neuer Ansatz, das Kopernikanische Weltbild, brachte den 
Durchbruch. Plötzlich war alles einfach und klar, die Komplexität 
sank drastisch, vorhandene Limitierungen verschwanden, neue An-
wendungsfelder wie Schiffsnavigation durch sphärische Geometrie 
öffneten sich. 
Wie sieht nun unser neues Weltbild bezüglich der Softwareent-
wicklung aus? Die Antwort heißt: Rationalisierung und Automati-
sierung. Präziser ausgedrückt: die Beschränkung des Menschen auf 
die kreativen und handhabbaren Anteile des Herstellungsprozesses 
von Software. Dies ist eine Vorgehensweise, die seit Ende des 19. 
Jahrhunderts in anderen Bereichen erfolgreich angewendet wurde 
und wird. 
Natürlich wird der Ingenieur nicht völlig entbehrlich werden, aber 
er wird höherwertige Tätigkeiten übernehmen und den Rechner dazu 
stärker als bisher als Hilfsmittel nutzen, um bei niedriger Komplexi-
tät an der Mensch-Maschine-Schnittstelle große Komplexität des 
Produktes zu bewältigen. Dieses Ziel ist gegenläufig zum von uns 
beobachteten Trend, möglichst viel Komplexität handhaben zu wol-
len, um eigene Fähigkeiten demonstrieren zu können. 
Unserer Auffassung und Erfahrung nach ist es aber eine viel grö-
ßere  Herausforderung,  die  geforderte  Funktionalität  in  einfacher 
Weise zu implementieren. Durch die Verringerung der Komplexität 
an der Schnittstelle zum Produktionsprozess und dem Einsatz eines 
hinsichtlich Komplexität skalierbaren Produktionsprozesses wird die 
Herstellung hochkomplexer Systeme beherrschbar. 
Der Beweis eigener hervorragender Fähigkeiten ist nach wie vor 
möglich, nur auf einer höheren Abstraktionsebene, bei gleichzeitiger 
Erfüllung  der  wirtschaftlichen  Randbedingungen.  Die  kreativen 
Fähigkeiten der Entwickler rücken in den Vordergrund und werden 
somit  in  Relation  zum  Produktionsaufwand  deutlich  wertvoller. 
Aufgabe von Ausbildern und Managern wird es daher sein, den 
X ■  Vorwort
■ 
■
Entwicklern die neuen Möglichkeiten und Anforderungen zu vermit-
teln.
Ein Beispiel für das geänderte "Weltbild" ist die Vereinheitli-
chung von "Entwicklung" und "Wartung". Wir werden zeigen, dass 
zwischen Entwicklung und Wartung nicht mehr unterschieden wer-
den muss, sondern Entwicklung als kontinuierliche Wartung reali-
siert werden kann. 
Durch den Übergang von der handwerklichen zu der industriellen 
Fertigung wie wir sie aus der Produktion von Massengütern kennen, 
sinken die Kosten drastisch, und die Qualität steigt entsprechend, die 
Produktions- bzw. Entwicklungsrisiken sinken. Zwischen solchen 
mechanischen,  chemischen,  pharmazeutischen  oder  lebensmittel-
technischen Produktionsweisen – um nur einige typische Felder zu 
nennen – und der Herstellung von Software gibt es viele Analogien, 
aber natürlich auch Unterschiede, die vor allem durch den immate-
riellen Charakter der Software bedingt sind. Wie wir später erläutern 
werden, lassen sich aus  diesem Unterschied entscheidende Vorteile 
und Fähigkeiten zugunsten der Softwareentwicklung ableiten. 
Es wird also notwendig sein, das Software Engineering von der 
handwerklichen, vorindustriellen Phase auf eine industrielle Vorge-
hensweise umzustellen. Ein solcher, von uns als notwendig betrach-
teter Übergang stößt üblicherweise zunächst auf Widerspruch, da 
mit ihm strukturelle Änderungen verbunden sind, die von den Betei-
ligten erst akzeptiert werden müssen. 
Die Einführung einer erfolgsorientierten Softwareentwicklungs-
strategie ist nur möglich, wenn Entscheidungsträger wie Manager, 
Kosten-  und  Technologieverantwortliche  sowie  Projektleiter  mit 
Softwareentwicklern kooperieren. Manager müssen sich ihrer Ver-
antwortung für die Einführung und erfolgreiche Anwendung effi-
zienter Softwareentwicklungsmethoden bewusst sein. Ebenso müs-
sen  Softwareentwickler  wissen,  dass  sie  nur  bei  Anwendung 
effizienter Methoden mittel- bis langfristig ihren Arbeitsplatz si-
chern.
Voraussetzung für die Akzeptanz optimierter Produktionsmetho-
den ist die Messbarkeit der Ergebnisse. Der dafür notwendige Ein-
satz von Metriken ist weitgehend unbekannt, wird von den aktuellen 
Methoden und Werkzeugen kaum bzw. nicht unterstützt, oder erfor-
dert zuviel Aufwand. Würden Forderungen wie „10 % Produktivi-
tätssteigerung pro Jahr“ vorgegeben werden, könnte ihre Umsetzung 
gar nicht festgestellt werden. Daher bleibt es beim Glauben, mit 
einer bestimmten Vorgehensweise eine positive Änderung bewirken 
zu können, weil Beweise für eine erfolgreiche Umsetzung kaum 
erbracht werden können. Während die Produktionskosten für Hard-
ware durch Prozessoptimierung kontinuierlich sinken, bleiben we-
Vorwort ■ XI
■
■