First page Back Continue Last page Overview Graphics

UML


Notes:

Das Paradigma der Objektorientierten Programmierung steht im Wesentlichen auf den drei Säulen Kapselung, Vererbung und Polymorphie. Zunächst im Rahmen von Programmiersprachen vorgestellt weckte es große Erwartungen an die Wiederverwendbarkeit von Code, die sich allerdings nur teilweise erfüllten. Klassenbibliotheken, Rahmenwerke und Entwurfsmuster bieten dank Vererbung tatsächlich deutlich bessere Wiederverwendungsmöglichkeiten als konventionelle Ansätze, die allerdings weitgehend ungenutzt bleiben. Dabei handelt es sich eher um ein Managementproblem als um ein technisches: solange das Management nicht willens ist, Aufwand zu betreiben, um später Früchte ernten zu können, wird sich daran auch wenig ändern.
Der große Vorteil eines objektorientierten Ansatzes besteht in der Durchgängigkeit der Methoden von der Anforderungsermittlung über den Entwurf bis zur Implementierung. Insbesondere Brüche zwischen Anforderungsanalyse und Entwurf , wie sie von konventionellen Methoden bekannt sind, werden vermieden bzw. deutlich verringert. Man ist dem Traum der Softwareentwicklung durch Verfeinerung ein gutes Stück näher gekommen: beginnend bei abstrakten, unscharfen Modellen verfeinert man Schritt für Schritt, bis die gewünschte Software beinahe kanonisch von selbst entsteht.
Strukturelle Modelle, z.B. das Klassenmodell, beschreiben die relevanten Objekte sowie deren Beziehungen untereinander.
Funktionale Modelle, z.B. Anwendungsfälle, charakterisieren die globalen Funktionalitäten, also gewissermaßen die Funktionen zu den in den strukturellen festgehaltenen Modellen.
Verhaltensorientierte Modelle lassen sich einteilen in Modelle zur Beschreibung des Ablaufverhaltens (z.B. Interaktionsdiagramme) und des Objektverhaltens (z.B. Zustandsdiagramme).