Strukturierte Analyse und Entwicklung - Neue Methoden des Software-Engineering

16.01.1987

Strukturierte Analyse und strukturierte Entwicklung befaßt sich in erster Linie mit der Entwicklung anwendungsbezogener Computersysteme. Dabei weist die Software-Entwicklung jedoch Gemeinsamkeiten mit anderen Formen der Entwicklung auf: Eine Verwandtschaft mit der Konstruktion von Gebäuden tritt klar zu Tage. Begriffe wie Spezifikationen, Anforderungen oder Modell sind gleich; werden jedoch, obwohl sie miteinander verwandt sind, in einem anderen Zusammenhang benutzt. In einem Punkt allerdings weisen Computersysteme und Gebäude eine wichtige Gemeinsamkeit auf: Um ein Projekt erfolgreich zum Abschluß zu bringen, muß eine genaue Analyse über die Anforderungen des Benutzers erfolgen.

Kommunikationsprobleme, veränderliche Anforderungen, Mangel an Hilfsmitteln sowie Bewertungsprobleme stehen an erster Stelle. Eine strukturierte Analyse versucht nun nicht, all diese Probleme zu lösen: sie bietet aber Werkzeuge und Möglichkeiten zu einer folgerichtigen und logischen Annäherung, die einige Einblicke in diese Probleme vermitteln kann.

Der Weg zu strukturierten Methoden

Mit Hilfe von Grafiken zur Darstellung der Anforderungen läßt sich sichtbar machen, was gewöhnlich nur in den Köpfen der Kunden existiert. Als Hilfsmittel der strukturierten Analyse lassen sich mit Grafiken auch die Spezifikationen besser und übersichtlicher darstellen sowie leichter auf den neuesten Stand bringen. Auch der zum Aufbau eines Systems erforderliche Arbeitsaufwand kann durch eine systematische Unterteilung des Problems wesentlich besser abgeschätzt werden.

Eine von Larry Constantine und anderen durchgeführte Untersuchung zeigt, daß Systeme, die in einer Modularstruktur erstellt wurden, sowohl in ihrer Produktion als auch in ihrer Wartung kostengünstiger sind als andere Systeme.

Der erste Schritt zur modular erstellten Qualitäts-Software besteht in der Definition des Problems. Diese Definition und die darauffolgende Spezifikation der Anforderung bedürfen einer gründlichen Analyse. In dieser Phase wird das Problem gegliedert, untersucht und ausgewertet, um ein gründliches Verständnis desselben zu gewährleisten. Das Ergebnis ist eine knappe, logisch aufgebaute und vollständige Definition der an die Software gestellten

Anforderungen. In ihr sollte das "WAS" der Entwicklung, jedoch nicht das "WIE" zur Erlangung der Lösung durch die Software dargelegt werden. Studien der TRW und der Hughes Aircraft Co. zeigen, daß diesem ersten Schritt erhebliche Bedeutungen zukommen. Innerhalb einer Entwicklung entstehen 64 Prozent der Fehler eines Softwaresystems in den Phasen Analyse und Gestaltung und nur 36 Prozent während der eigentlichen Codierung. Die Studie zeigt, daß im Bereich der Analyse aber nur 30 Prozent der möglichen Fehler vor dem ersten Testlauf entdeckt werden, während Fehler in der Codierung zu 75 Prozent vor einem Programmtest entdeckt werden. Daraus ergibt sich, daß die Kosten für eine Fehlerbehebung umso höher werden, je sparen die Fehler entdeckt werden. Strukturierte Analyse und strukturierte Entwicklung umspannen zusammen den gesamten Prozeß der Software-Entwicklung. Sie lenken den Arbeitseinsatz gezielt auf die Problemlösung, liefern die Hilfsmittel um verborgene Zusammenhänge sichtbar zu machen. Sie unterstützen bei der Erkennung und somit der Vermeidung von Widersprüchlichkeiten, bevor Zeitverlust und Fehlerbehebung relativ hohe Kosten verursachen.

Hewlett-Packard hält zu diesem Thema eine Management-Broschüre mit dem Titel "Strukturierte Analyse - strukturierter Software-Entwurf" für Sie bereit.

HP Teamwork/SA bietet eine computergestützte Umgebung für die strukturierte Analyse von Anforderungsdefinitionen.

HP Teamwork/SD bietet eine komplette Unterstützung für den strukturierten Entwurf von Software-Systemen.

HP Teamwork/RT erweitert die Möglichkeiten der strukturierten Analyse um Real-time-Fähigkeiten.

HP Today ist ein computerunterstütztes Programmierpaket für den Professionellen Software-

Entwickler. Es kombiniert die Vorteile der besten Sprachen der 4. Generation mit der Leistung und Flexibilität konventioneller Programmiersprachen. Alle vier Produkte laufen auf den Rechnermodellen der Familie HP 9000 unter dem Betriebssystem HP-UX.