Einführungsseminar in die UML

Die Konzepte und die Elemente der Unified Modeling Language

Die moderne Softwareentwicklung hat viel mit konzeptioneller Arbeit und wenig mit dem Entwurf mathematisch-numerischer Algorithmen zu tun. In der Gesellschaft hält sich das Bild vom Informatiker als Zwilligsbruder des Mathematikers zwar hartnäckig. In der Realität jedoch hat diese Vorstellung nur wenig Berechtigung. Softwareentwicklung heute bedeutet in den seltensten Fällen die Beschäftigung mit Themen der Mathematik. Die Hauptaufgabe des Entwicklers ist üblicherweise die Nutzbarmachung und Strukturierung vorhandenen Wissens mit Hilfe eine Programmiersprache. Dementsprechend müssen die Methoden der Softwareentwicklung heute Hilfestellung bei der Strukturierung von Wissen und bei der Kommunikation von Wissensinhalten dienen. Die Objektorientierte Software­entwicklung ist eine solche Methode, die sich an sprachlichen Strukturen anlehnt, um die genannten Leistungen für die technische Realisierung von Software zu ermöglichen.

Um Inhalte objektorientierter Lösungen zu beschreiben kann man neben der Textform auch grafische Darstellungen wählen. Damit diese grafischen Darstellungen eindeutig interpretierbar sind wurde durch die Object Management Group - kurz OMG - ein Standard geschaffen, der Symbole und Semantik einer grafischen Repräsentation für objektorientierte Software festschreibt: die Unified Modelling Language.
Die Vereinheitlichung der Diagramtypen durch die UML bringt auch eine Vereinfachung mit sich, die die Hürde für den Einsatz von Diagrammen in der Beschreibung von Softwareartefakten senkt.

Hoppala..

Es gibt zahlreiche Tools, die dem Softwareentwickler beim Erstellen von Diagrammen behilflich sind. Allerdings muss an dieser Stelle auch ein sanft kritischer Ton in einer bestimmten Sache angeschlagen werden: es gibt auch einige Tools, die eine Art komplette grafische Modellierung von Software über den gesamten Entwicklungs­prozess versprechen. Diese Modellierungs­tools folgen einer eigenen Logik, die nicht in der UML angelegt ist. Die UML ist keine Vorgehensmethode, sie ist Prozessneutral! Modellierungs­versprechen die durch namhafte Hersteller von UML Tools gemacht werden, sind nicht in der UML angelegt und sollten durch die selben Hersteller auch gehalten werden, die solche Erwartungen in ihrer Werbung wecken. Auf keinen Fall kann ich als Anbieter und Trainer dieses Seminars ein solches Versprechen erfüllen. Ich durfte persönlich schon in mehreren Softwareprojekten bei unterschiedlichen Firmen schlechte Erfahrungen mit solcherlei geweckten Erwartungen sammeln.
Zwischen vielen Entwicklern herrscht eine Art Übereinkunft, dass die UML sich zur Software­entwicklung gar nicht eignen würde, da unter dem Einsatz der UML häufig der Einsatz eines überteuerten und nicht geeigneten Modellierungstools verstanden wird.

..zurück zur Seminarbeschreibung

Im Seminar werden alle Diagrammarten der UML besprochen und in den Kontext der objektorientierten Entwicklung gebracht. Dafür werden Beispiele herangezogen, die gemeinsam geübt und diskutiert werden. Als methodisches Gerüst des Kurses dient der Software-Lifecycle. Die verschiedenen Phasen des SW-Lebenszyklus werden mit UML-Diagrammen vorbereitet und dokumentiert. Einen Schwerpunkt hat der Kurs in der Unterstützung der Analyse- und Designdisziplin. Dabei wird auch gezeigt, wie die UML in einen beliebigen Softwareentwicklungsprozess eingebunden werden kann.

Die folgenden Diagrammtypen werden durchgenommen:

  • Use Cases Diagramme
  • Aktivitätsdiagramme
  • Sequenzdiagramme
  • Kollaborationsdiagramme
  • Analyseklassendiagramme
  • Entwurfsklassendiagramme
  • Einführung in die Entwurfsmuster
  • Zustandsdiagramme
  • Moduldiagramme
  • Installationsdiagramme

Die Diskussion der Diagrammtypen findet vor dem Hintergrund einer prozessorientierten Softwareentwicklung statt. Es werden praktische Übungen anhand von wirklichkeitsnahen Problemstellungen durchgeführt. Dabei kann auch ein beliebiges UML-Tool eingesetzt werden.

      Eine Übersicht über die wesentlichen UML Diagrammarten.
      Die Originaldatei wurde aus Wikipedia geladen und geändert. Die Lizenz und die Änderungen sind in der SVG Datei dokumentiert.

Zuletzt geändert am 19.11.2023