Warum UML?
Wenn über einen Prozess immer wieder in Projektbesprechungen gesprochen wird und Klärungsbedarf besteht, ein Softwareentwickler erst die Antwort auf eine Frage kennt nachdem er im Source-Code länger gesucht hat, die Komplexität immer weiter steigt und der Durchblick langsam verloren geht, nur Achselzucken von Kollegen sieht, weil der Mitarbeiter mit dem Knowhow im Urlaub ist, dann ist die letzte Rettung UML.
Was ist UML?
UML ist für den Softwareentwickler, was für den Hausbauer die Baupläne sind.
Wohl kaum einer käme heutzutage auf die Idee ein Haus zu bauen, ohne vorher Pläne zu erstellen. Bei der Softwareentwicklung sieht es in einigen Betrieben leider noch so aus. Und das ganz unabhängig von dessen Größe.
Mithilfe von Diagrammen wird das statische „Haus“ der Software und dynamische Abläufe grafisch festgehalten.
Wer hat’s erfunden?
In den 80’er Jahren kristallisierten sich die Verfahren von Booch, Jacobson und Rumbaugh heraus. Also zu Zeiten als die objektorientierte Programmierung verstärkt Einzug hielt. Es gab natürlich viele Diagrammarten zuvor, wie beispielsweis das Flussdiagramm, Petrinetze, SADT u.v.m, die ihre Berechtigung hatten und auch ihren Einfluss auf UML.
Der Durchbruch gelang, als sich Rumbaugh und Jacobson zusammentaten und später auch Booch zu der Gruppe hinzustieß. Die drei Amigos machten sich viele Gedanken, brachten bewehrtes zusammen und verwarfen entbehrliches. Heraus kam in den 90’ern UML.
Was gibt es für Pläne?
Anwendungsfalldiagramm, Paketdiagramm, Klassendiagramm, Zustandsdiagramm, Interaktionsübersichtsdiagramm, Sequenzdiagramm sind die bekanntesten, aber nicht alle. Mehr als ein duzend Diagramme kennt mittlerweile UML.
Wer kann’s gebrauchen?
Anfangs von Softwarearchitekten eingesetzt sind die Einsatzgebiete nicht mehr auf die Softwareentwicklung beschränkt. In vielen Bereichen, bei denen es um Konzepte, Analyse und Zusammenhänge geht, werden sie eingesetzt.
Was heißt UML?
Ausgesprochen heißt UML Unified Modeling Language, also vereinheitlichte Modellierungssprache. Sprache, wieso Sprache und nicht Grafik?
Wie bei einer Sprache definiert UML Begriffe, Bezeichner und deren Beziehungen zueinander und dessen Formulierung. Klingt ein wenig abstrakt, doch wer sich tiefer in der Materie befindet, setzt sich vor allem mit dem Aufbau einer Sprache auseinander.
Wann kommt es zum Einsatz?
Wie am Anfang des Artikels beschrieben, sollte UML nicht erst bei Softwareentwicklung verwendet werden, sondern bereits in der Planungsphase. Ganz nach dem Motto: Erst nachdenken und dann umsetzen.
UML hilft die Ideen festzuhalten, Prozesse und Zusammenhänge abzubilden und auf einfache Lösungen hinzuarbeiten. Besonders der letzte Punkt braucht allerdings ein paar Jahre Übung.
Welches ist das richtige Maß?
Geht es um eine kleine Handy-App, aufwendigere Applikationen mit mathematische Algorithmen oder gar um ein Softwaresystem für Medizin oder Flugzeugtechnik? Je nach Einsatz verwirklicht man mehr oder weniger mit UML. Ich fühlte mich auf jeden Fall wohler, wenn ich wüsste dass für die letzten Beispiele sehr viel Zeit für die Planung und möglichst eine hundertprozentige Abbildung der Software in UML existiert.
Das richtige Maß ergibt sich aus diesen Beispielen in Verbindung mit den Fragestellungen während der Planung und Umsetzung. Wie so oft hängt dies am Ermessen und der Erfahrung.
Mit den UML-Diagrammen werden Ansichten erstellt, die bestimmt Fragen beantworten und Detailkonzepte festhalten. Abraten, kann man daher von zu vielen Diagrammen für die ersten beiden Beispiele. Denn man muss bedenken, dass diese auch gepflegt werden müssen. Und so wie eine falsche Entwicklerdokumentation hinderlich und verwirrende wäre, ist dies auch bei veralteten UML-Diagrammen.
Aber nur Mut, am Anfang macht man vielleicht zu viel. Aber erst Übung macht den Meister.
Falls Sie Unterstützung mit UML benötigen, beraten oder schulen wir Sie gerne. Fragen Sie einfach einmal nach.