zurück zur Startseite der Softwaretechnik-Trends , zu Band 15 Heft 4


     Buchbesprechungen



Heide Balzert: Methoden der objektorientierten Systemanalyse, B-I-Wissenschaftsverlag, 1995, 350 S., ISBN 3-411-17081-6, mit CD-ROM

Das Buch ist an den Praktiker gerichtet, der anhand eines originär deutschsprachigen Werkes in möglichst kurzer Zeit einen fundierten Überblick über Konzepte und Notationen der objektorientierten Systemanalyse (OOA) erlangen möchte und dieses auch weiterhin in der täglichen Arbeit zum raschen Nachschlagen nutzen möchte. Auch wenn die Autorin betont, daß sie eine von ihr neu entwickelte OOA- Methodik vorstellt, werden erfreulicherweise keine neuen Notationen eingeführt. Es wird vielmehr gezeigt, wie mit den von Coad/Yourdon, Rumbaugh et al. und Booch eingeführten Diagrammen gearbeitet werden kann und unter welchen Voraussetzungen sie alternativ einsetzbar bzw. kombinierbar sind.

Das Buch bietet zunächst eine Einführung in die Grundlagen der Objektorientierung und grenzt die Aktivitäten und die Ergebnisse der Systemanalyse gegenüber der Design-Phase ab. Drei für die Analyse relevante Modelle werden beschrieben: Das Basismodell umfaßt Objekte, Klassen, Attribute, Operationen und Polymorphismus und wird im statischen Modell um Vererbung, Assoziationen, Aggregationen und die Bildung bzw. Identifikation von Subsystemen ergänzt. Das dynamische Modell beschreibt schließlich den Austausch von Botschaften, die Spezifikation von Operationen und den Objekt-Lebenszyklus. Insbesondere für Quereinsteiger aus der strukturierten Analyse aber auch für Neulinge stellen sich häufig die Fragen, wie denn überhaupt Klassen, Attribute und Operationen gefunden werden, wie man Vererbungsstrukturen bildet, wann eine Assoziation und wann eine Aggregation zu modellieren ist usw. Bei der Beantwortung dieser Fragen hilft das Kapitel über die Methodik, welches zugleich das Kernstück dieses Buches bildet. Es enthält darüber hinaus zahlreiche Checklisten, die den Anwender anleiten, die Aktivitäten der Systemanalyse zu strukturieren, und die auch die Aufdeckung von Defiziten und Inkonsistenzen der erstellten Modelle unterstützen. Mit einem zunehmenden Maß an praktischer Erfahrung wird sich der Systemanalytiker jedoch zunehmend von dieser eher starren Vorgehensweise lösen und die einzelnen Aktivitäten problemgetrieben durchführen.

Wo immer es angebracht und erforderlich ist, verweist die Verfasserin auf weitere Methoden wie z.B. Responsibility-Driven Design von Wirfs-Brock et al., Object-Oriented Software Engineering und Use-Case Analysis von Jacobson et al., Object Behavior Analysis von Rubin und Goldberg u.a.m. Insbesondere bei der Verbindung von statischem und dynamischem Modell wird in der Darstellung noch ein großes Bedürfnis zur besseren Integration der beiden Modelle sichtbar, worin sich in erheblichem Maße aktueller Forschungsbedarf widerspiegelt.

Ein Abschnitt dieses Kapitels geht auch auf das Thema Muster (Patterns), hier speziell Analysemuster, ein. Die Ausführungen darin stützen sich im Wesentlichen auf die Publikationen bis einschließlich 1992 von Peter Coad hierzu. An dieser Stelle dürften für kommende überarbeitete Auflagen vor dem Hintergrund intensivster Auseinandersetzungen mit der Muster- Thematik die größten Änderungen zu erwarten sein, die dann auch zu einer stärkeren Einbindung der Verwendung und des Einsatzes von Analysemustern in die übrigen Ausführungen zur OOA führen sollten.

Das anschließende Kapitel behandelt drei Fallbeispiele: eine Artikelverwaltung, die Verwaltung eines Frisörsalons und ein Programm zur Pferdefütterung. Das Beispiel zur Verwaltung des Frisörsalons wir in angemessener Ausführlichkeit behandelt, das Pferdefütterungsprogramm wird jedoch zu kurz beschrieben, was umso bedauerlicher ist, da auf der beigefügten CD-ROM ein ausführbarer Benutzungsoberflächenprototyp zu dieser Anwendung enthalten ist. Sicher würde der neugierige Leser desweitere gerne erfahren, auf welche Weise der Prototyp zur Erhebung und Evaluation der Anforderungen der Anwender genutzt wurde, und mit welchem Werkzeug er erstellt wurde. Was die Anforderungsermittlung angeht, hätten die Informationen des Buches ebenfalls ausführlicher ausfallen können. So finden sich lediglich einige Lesehinweise und eher vage Andeutungen, daß die eine oder die andere Technik in diesem Kontext eingesetzt werden kann.

Das Buch wird durch ein Literaturverzeichnis, eine Kurzübersicht mit vergleichender Gegenüberstellung der Notationen und einem Abriß der Methodik, zwei Anhängen über multimediale Lernprogramme zur Objektorientierung und zum Inhalt der beigefügten CD- ROM, eine Kurzbiographie der Autorin und ein knappes, aber ausreichendes Stichwortverzeichnis abgerundet.

Angenehm fällt die aufwendige und sorgfältige Gestaltung des Buches auf. Zahlreiche Abbildungen erhöhen die Verständlichkeit und eine Marginalienspalte erleichtert die schnelle Orientierung. Aufgrund des stabilen Einbandes und der guten Bindung hält das Werk sicherlich auch dem Verschleiß durch täglichen Gebrauch eine Weile stand.

Eine Besonderheit ist sicherlich die beigefügte CD- ROM. Sie enthält zahlreiche Demoversionen, eingeschränkte Vollversionen, Produktinformationen und Präsentationen zu Entwicklungsumgebungen, CASE- Werkzeuge, Programmiersprachen, Datenbanken und Klassenbibliotheken zur objektorientierten Software- Entwicklung. Desweiteren gibt es auch mehrere Public- Domain-Programme als Vollversion, so z.B. GNU C++ und Oberon. Wer den gesamten Inhalt der CD-ROM einmal sichten oder ausprobieren möchte, wird damit sicherlich einige Zeit beschäftigt sein. Die Qualität der Herstellerbeigaben ist recht unterschiedlich. Auf der einen Seite gibt es nur leicht eingeschränkte Vollversionen, die sich mühelos installieren lassen und die dem Anwender einen fundierten Eindruck vermitteln, ob ihm dieses Produkt bei seiner Arbeit nützlich sein kann. Andere Programme verursachen hingegen erhebliche Schwierigkeiten, bis sie installiert sind und gestartet werden können. Zu einigen Produkten gibt es schließlich nur Werbetexte, die kaum aussagekräftige Informationen vermitteln. Hier hätte bei der Zusammenstellung der CD-ROM stärker auf die Einhaltung eines Mindestniveaus der Qualität des von den Herstellern zur Verfügung gestellten Materials geachtet werden können. Ein weiteres Problem besteht sicherlich darin, daß die Inhalte der CD-ROM relativ rasch durch Neuerungen überholt werden. Das ist jedoch in der Natur des Mediums begründet. Abhilfe könnte etwa über kontinuierliche Neuauflagen oder durch über FTP- oder WWW-Server beziehbare Aktualisierungen geschaffen werden.

Das Buch ist jedem Praktiker zu empfehlen, der sich effizient in die objektorientierte Systemanalyse einlesen möchte oder ein entsprechendes Nachschlagewerk benötigt. Ich würde auch nicht zögern, es als Begleitlektüre in einem Einführungskurs zur OOA einzusetzen. Die CD-ROM bietet insbesondere dem Neuling in eingeschränktem Maße die Möglichkeit, gerade Gelesenes auszuprobieren. Ihr größter Nutzen eröffnet sich allerdings dann, wenn man sich zielgerichtet über Produkte einer bestimmten Sparte informieren möchte.


Ulrich W. Eisenecker, Fachhochschule Heidelberg, FB Informatik
eiseneck@miro.fh-heidelberg.de





Objektorientierte Softwareentwicklung erfrischend beschrieben

Bernd Oesterreich: Objektorientierte Softwareentwicklung von der Analyse bis zur Spezifikation, Verlag R. Oldenbourg, 1995, Hardcover, 58 Mark

Dem Autor Bernd Oesterreich ist es mit seinem Buch zur objektorientierten Softwareentwicklung gelungen, den komplexen Stoff überraschend lesefreundlich und übersichtlich darzustellen. Es ist mit comic-ähnlichen Zeichnungen und jeweils kurzen Beispielen angereichert und selbst 'objektorientiert' konzipiert: modular aufgebaut wie ein Hypertext und mit zahlreichen Querverweisen versehen. Man kann es kreuz und quer lesen. Vor allem kann man bedenkenlos Abschnitte überspringen, überfliegen oder nachträglich vertiefen. Man findet seinen individuellen Weg durch das Thema. Auch zum Nachschlagen ist es geeignet.

Das Buch behandelt vor allem die frühen Phasen der Softwareentwicklung: das Erkennen der Anforderungen und ihre Umsetzung in ein Modell. Es richtet sich an Modellierer, Realisierer und Entscheider.

Das Buch gliedert sich in zwei Grundlagenkapitel, die die einzelnen Konzepte zur Anforderungsanalyse und zur Modellierung von statischem und dynamischem Modell vorstellen. Nach einem kurzen Einschub über das Management von OO-Projekten folgen dann drei Kapitel, welche die Analyse, Konzeption und Spezifikation an einem durchgängigen Beispiel demonstrieren. Wobei jeweils Verweise auf die entsprechenden Grundlagen gegeben werden (ebenso umgekehrt).

Die Methodik orientiert sich an Booch und Rumbaugh, angereichert durch Ideen von Jacobsen und anderen. Das Buch kommt mit 240 Seiten aus -- das Kapitel zur Spezifikation hätte ausführlicher dargestellt werden können.

Nach der Lektüre dieses Buches wünscht man sich mehr solcher benutzerfreundlichen Fachbücher.


Jens-Peter Hücker



zurück zur Startseite der Softwaretechnik-Trends , zu Band 15 Heft 4