UML: Unterschied zwischen den Versionen

Aus FI-Wiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
Zeile 41: Zeile 41:
== Kurzmerksatz ==
== Kurzmerksatz ==
'''UML ist die universelle Sprache zur grafischen Beschreibung von Software für Klassen, Abläufe, Prozesse und Systemarchitekturen.'''
'''UML ist die universelle Sprache zur grafischen Beschreibung von Software für Klassen, Abläufe, Prozesse und Systemarchitekturen.'''
[[Kategorie:Programmieren]]
[[Kategorie:Semester2]]

Aktuelle Version vom 17. August 2026, 07:13 Uhr

UML (Unified Modeling Language) ist eine standardisierte Sprache zur Modellierung von Software- und Systemarchitekturen. Sie dient dazu, Strukturen, Abläufe und Beziehungen in der Softwareentwicklung verständlich darzustellen – unabhängig von Programmiersprache oder Technologie.

Ziele von UML

  • gemeinsame Sprache für Entwickler, Fachabteilungen und Kunden
  • klare Dokumentation von Softwarestrukturen
  • Unterstützung bei Analyse, Design und Architektur
  • Visualisierung komplexer Systeme

UML-Diagrammarten

UML umfasst verschiedene Diagrammtypen, die in zwei Hauptgruppen eingeteilt werden:

Strukturdiagramme

Beschreiben den statischen Aufbau eines Systems.

  • Klassendiagramm – zeigt Klassen, Attribute, Methoden und Beziehungen
  • Objektdiagramm – zeigt konkrete Objektinstanzen
  • Komponentendiagramm – Aufbau größerer Softwareteile
  • Paketdiagramm – Strukturierung von Modulen
  • Kompositionsstrukturdiagramm – interne Struktur einer Klasse

Verhaltensdiagramme

Beschreiben Abläufe und Verhalten im System.

Einsatzgebiete

  • Softwareanalyse
  • Softwaredesign und Architektur
  • Kommunikation zwischen Teams
  • Dokumentation bestehender Systeme
  • Modellierung von Geschäftsprozessen

Vorteile

  • grafische, leicht verständliche Darstellung
  • technologie- und sprachunabhängig
  • unterstützt sowohl agile als auch klassische Vorgehensmodelle
  • etabliert, weit verbreitet, standardisiert (OMG-Standard)

Kurzmerksatz

UML ist die universelle Sprache zur grafischen Beschreibung von Software für Klassen, Abläufe, Prozesse und Systemarchitekturen.