PUTZ 9/00
Forschung
Halb so hoch wie der Fernsehturm
Informatiker des Hasso-Plattner-Instituts hielten Antrittsvorlesungen
Mit Problemen rund um die Softwaresystemtechnik setzten sich Siegfried Wendt und Peter Liggesmeyer in ihren Antrittsvorlesungen auseinander. Sie sind die ersten beiden Professoren, die gemeinsam vom Hasso-Plattner-Institut und der Universität Potsdam berufen wurden.
Es gab einmal eine Zeit, in der ein Computerprogramm eine überschaubare Sache war. Rund 500 Zeilen hatte der Quellcode eines Programms vor 40 Jahren. Ein Programmierer war einige Wochen damit beschäftigt, es zu schreiben.
Seitdem ist die Entwicklung stürmisch vorangeschritten. Schon zehn Jahre später stieg die Länge der Programme auf das 50fache an. Heute umfasst ein umfangreiches Programm bis zu 100 Millionen Zeilen. Um es zu entwickeln, werden etwa 30 000 Mannjahre benötigt.“Würde man das Programm R3 von SAP in seinem kompletten Umfang ausdrucken, entstünde ein Papierstapel, der etwa die halbe Höhe des Fernsehturms am Alexanderplatz hätte.” Siegfried Wendt wählte dieses Beispiel, um‘seinen Zuhörern die Komplexität heutiger Softwaresysteme vor Augen zu führen.
Gemeinsam mit seinem Kollegen Peter Liggesmeyer war der Geschäftsführende Direktor des Hasso-Plattner-Instituts zur Antrittsvorlesung in das Verfügungsgebäude nach Golm gekommen. Die beiden Professoren ermöglichten Kollegen und Studierenden einen Einblick in die komplexe Welt der Softwaresystemtechnik.
Das Wesentliche ist unsichtbar Wendts Beispiel machte schnell klar, dass ein einzelner Programmierer heute nicht mehr in der Lage ist, ein umfangreiches Programm alleine zu entwickeln. Arbeitsteilung ist deshalb oberstes Gebot. Zunächst muss eine Programmarchitektur entwickelt werden, die einzelne Bestand
20
teile definiert, sie miteinander verknüpft und ihr Zusammenspiel festlegt. Diese Arbeit umfasst etwa 30 Prozent der Softwareentwicklung. Die einzelnen Teile können dann in unterschiedlichen Arbeitsgruppen programmiert und am Ende zusammengefügt werden. Funktionieren kann das alles nur dann, wenn das Wissen über die zu erstellenden Softwaresysteme unter allen Beteiligten verständlich und eindeutig vermittelt werden kann.
Geht man davon aus, dass der erforderliche Wissensumfang größer ist als das individuelle Aufnahmevermögen der Beteiligten, dann muss das Wissen so verteilt sein, dass ein Überlappen der Kenntnisse besteht.
Bis hierher unterscheidet sich die Softwaresystemtechnik nicht
Erklärte, wie abstrakte Ideen in konkrete Pläne passen: Siegfried
Wendt Foto: HPI
von anderen traditionellen Ingenieurwissenschaften, wie dem Maschinenbau, der Elektrotechnik oder der Architektur.
Ein bedeutender Unterschied liegt, so Wendt, jedoch in der Sichtbarkeit der einzelnen Objekte. Das vom Architekten geplante‘ Gebäude‘, ist‘ ein konkretes Objekt, das auch als solches dargestellt werden kann. Das Wesentliche der Softwaresystemtechnik ist dagegen
unsichtbar.“Bei Software handelt es sich zunächst um Ideen, die keine grundsätzliche Sichtbarkeit haben”, erklärte Wendt. Trotzdem steht am Ende der Programmentwicklung ein konkretes System, das ganz reale Ergebnisse liefert. Es bestehen also zwei getrennte, unterschiedliche konkrete“Welten” nebeneinander: auf der Seite die Beschreibung des Systems, wie es in der Realität beobachtet werden kann. Auf der anderen Seite‘ der Programmtext, oder, wie Wendt sagt,“der maschinenverständlich formulierte Wille”. Um zwischen beiden Bereichen zu vermitteln, braucht ‚man eine passende Notation. Dazu wird das System unter verschiedenen Aspekten betrachtet, in Plänen festgehalten und damit graphisch sichtbar gemacht. Beispielsweise gibt es Aufbaustrukturpläne. Ihr Aussehen ähnelt ein wenig dem elektronischer Schaltpläne. Sie stellen dar, wie die verschiedenen Bausteine eines Programms miteinander verknüpft sind. Ablaufstrukturpläne machen deutlich, wie die Eingabe eines Befehls nacheinander bestimmte Teile eines Programm aktiviert. Wertebereichsstrukturpläne machen die Informationen verständlich, die an den verschiedenen Speicherorten im System im Laufe der Programmausführung vorkommen können. Durch verschiedene Symbole unterscheiden die Pläne zwischen aktiven und passiven Komponenten im Programm.
Auf diese Art kann die Komplexität eines Programms auf verschiedene Darstellungen verteilt, seine Architektur und Funktionsweise sichtbar gemacht werden. Dadurch gelingt es, die vielen tausend Programmzeilen so zu bündeln und auf wenigen Plänen graphisch darzustellen, dass alle Beteiligten darüber kommunizieren können.
Darin besteht, so Wendt, der Unterschied zwischen der Informatik, die sich lediglich mit dem Programmtext beschäftigt, und der Softwaresystemtechnik,
einen
welche kommentierte Pläne zum Aufbau des Programms aufstellt
Nur wenn beide verständlich miteinander kommunizieren
können, wird ein Programm erfolgreich die erwarteten Funktionen ausführen.
Kleine Fehler—
Katastrophale Folgen
Der Einsatz einer Software in technischen Systemen ist damit aber noch nicht gewährleistet. Dazu muss das System in der täglichen Anwendung vor allem sicher und zuverlässig arbeiten. Dies sollte. bereits bei der Konstruktion berücksichtigt, vor allem aber. durch anschließende Qualitätskontrolle nachgewiesen werden.
Über das Qualitätsmanagement technischer Software Peter Liggesmeyer. Es wurde schnell klar, dass Qualitätskontrolle ein hochkomplizierter Prozess ist— und absolute Sicherheit beim Einsatz von Software in technischen Systemen nur selten besteht. Schon winzige Fehler können katastrophale Auswirkungen zur Folge haben. Betroffen sind die unterschiedlichsten Gebiete, von der Telekommunikation übeı die Medizintechnik bis hin zu Verkehrssystemen. Eines der spektakulärsten Beispiele ist Ssicher das Unglück der Ariane 5, die aufgrund eines Softwarefehlers beim Start explodierte oder das Sterben mehrerer Patienten 1985/86 an
eine
sprach
auch‘ die
den Folgen einer fälsch dosierten Bestrahlung. Auch hier war ein Softwarefehler
Ursache des Unglücks. Dass die Auswirkungen solcher Fehler nicht lokal beschränkt sein müssen, zeigt sich am Beispiel der Telekommunikation. 1990
fiel aufgrund einer Kettenreaktion.“nach. einem Softwarefehler das
Fernsprechnetz der Firma AT& T aus.
In diesen, wie in vielen anderen Anwendungsbereichen, ist eine umfangreiche Software Bestand
Fortsetzung auf Seite 21