Zustandsdiagramm
Zustandsdiagramme werden in der UML beschrieben und dienen der Darstellung von Systemverhalten. Mit Zustandsdiagrammen kann das innere Verhalten von Objekten in GeschÀftssystemen oder IT-Systemen beschrieben werden. Das Verhalten bezeichnet die Wechselwirkung und Interaktion zwischen Objekten eines solchen Systems. Zustandsdiagramme sind vor allem in der Software-Entwicklung verbreitet, insbesondere bei Klassenobjekten, die ein sehr dynamisches Verhalten (ausgelöst durch viele Ereignisse) aufweisen.
Zustandsdiagramme zeigen die durch Ereignisse (Events) beeinflussten ZustÀnde, die ein Objekt annehmen kann, sowie die Ereignisse oder Nachrichten, die im kausalen Zusammenhang mit einem Zustandswechsel stehen. In einem GeschÀftssystem wird die ZustandsÀnderung der Objekte (Verhalten) durch GeschÀftsprozesse nach GeschÀftsregeln ausgelöst.
AktivitÀtsdiagramm
Die meisten UML-Diagramme sind fĂŒr die Darstellung von Hierarchien und Aufbaustrukturen unter dem Grundsatz der Objektorientierung geschaffen worden. AktivitĂ€tsdiagramme zeigen jedoch die funktionale Sicht und sind unabhĂ€ngig von dem Gedanken eines objektorientierten Aufbaus, gehören also zu den Verhaltensdiagrammen. Nur mit Funktionen bzw. Methoden (AktivitĂ€ten) lĂ€sst sich Bewegung im System darstellen.
AktivitĂ€tsdiagramme sind vergleichbar mit ProgrammablaufplĂ€nen oder Struktogrammen und nicht nur in der Software-Entwicklung nĂŒtzlich, sondern auch in der Prozessabbildung, beispielsweise zur Abbildung von GeschĂ€ftsprozessen. AktivitĂ€tsdiagramme ermöglichen die Abbildung von Verantwortungsbereichen ĂŒber Prozesse sowie die Parallelisierung von Prozessen, was AktivitĂ€tsdiagramme besonders fĂŒr die Darstellung und Analyse von GeschĂ€ftsprozessen in der Wirtschaftsinformatik und AktivitĂ€ten bei verteilten Anwendungen in der Software-Entwicklung qualifiziert. (mehr…)
Klassendiagramm (Class Diagramm)
Das Klassendiagramm ist wahrscheinlich eines der Diagramme, welches zum groĂen Erfolg von UML beigetragen haben.
Mit dem Klassendiagramm lassen sich die fĂŒr ein Programm entworfenen Klassen mit Atrributen und Methoden sowie den Beziehungen der Klassen zueinander visualisieren.
Ein Klassendiagramm ist daher nur auf die objektorientierte Software-Entwicklung anwendbar.
Ein Klassendiagramm muss nicht den vollstÀndigen Klassenentwurf wiedergeben, sondern kann sich auch nur auf einen Ausschnitt relevanter Klassen beziehen.
Beispiel:
Obiges Klassendiagramm zeigt die Beziehung zweier Klassen. Die linke Klasse Eurofighter steht in Beziehung mit einer anderen Klasse Rakete.
Die Klasse Eurofighter hat Attribute (obere, rote Liste), welche die Eigenschaften der Klasse beschreiben. AuĂerdem hat die Klasse Operationen (untere, grĂŒne Liste), welche die möglichen Funktionen (Methoden) der Klasse zeigen.
Dass in die Klasse Rakete keine Attribute und Operationen eingetragen wurden ist nicht weiter tragisch. Oft wird der Fokus auf die relevanten Klassen gelegt und nur bedingt relevante Klassen vereinfacht dargestellt; das Abstraktionslevel wird nicht selten bewusst gebrochen.
Ein UML-Klassendiagramm dient primĂ€r der Planung und Konzeption, als Hilfestellung fĂŒr Software-Entwickler.
Es gibt zudem Programme, welche ein, nach den Programmrichtlinien erstelltes, Klassendiagramm in Quellcode umsetzt. (mehr…)
Anwendungsfall-Diagramm (Use-Case)
Komplexe Programme bieten hÀufig unterschiedlichen Benutzern verschiedene Interaktionen an.
Dass ein Programm nur eine Art von Benutzer kennt, welcher das Programm nur starten muss und somit eine Kette von Aktionen auslöst bis sich das Programm automatisch beendet, kommt sehr selten und frĂŒher eher als heute vor (unabhĂ€ngig davon, dass es immer diese Art von Programmen geben wird).
Bei der Entwicklung z.B. eine Office-Anwendung oder einer Shop-Software können sich die Entwickler schnell in einem “Wirrwar” aus Benutzer-Rechten verlieren, “Wer darf was und was eigentlich nicht?”.
Im sogenannten Anwendungsfall-Diagramm (engl. Use-Case-Diagram) werden Benutzer (engl. User) als kleine StrichmÀnnchen dargestellt und so im Diagramm als Akteur, der auf das Programm Einfluss nehmen kann, symbolisiert. Aktionen, wie z.B. Anzeigen, Drucken oder Suchen, werden i.d.R. als Ovale dargestellt.
Um ein Anwendungsfall-Diagramm besser zu gliedern, kann es mehrere Anwender-Bereiche haben, z.B. Administrator-Bereich und GĂ€ste-Bereich. (mehr…)
Unified Modeling Language – UML
Die Unified Modeling Language (kurz: UML) ist eine eigene Sprache (von engl. “Language”) zur Darstellung von Softwaremodellierung. UML ist einer der vielen Teilbereiche des Software Engineering.
UML ist jedoch genau genommen nicht eine Sprache oder ein Verfahren, sondern eine Sammlung an verschiedenen Verfahren, welche unterschiedliche Views (zu Deutsch: Ansichten, Perspektiven) auf eine Software-Architektur bieten.
UML ist keine technisch definierte Sprache, sondern eine standarisierte abstrakte Konzeption. UML hat mehrere Versionen durchlaufen, von der Version 1.0 bis (aktuell) zur Version 2.0.
UML-Diagramme sind ein wichtiges Hilfsmittel bei der Konzeptionierung und Dokumentation von komplexer Software. Nicht selten sind UML-Diagramme Teil des Lasten-/Pflichtenhefts. Mit UML-Diagrammen lassen sich schon vor der Umsetzung Konzeptionierungsfehler entdecken und beheben. ZusÀtzlich kann die Software-Architektur mittels UML auch Laien nÀher gebracht werden.
Hier soll auf die wichtigsten UML 2.0 Diagramme eingegangen werden:
Strukturdiagramme
- Klassendiagramm
- Objektdiagramm
- Kompositionsstrukturdiagramm
- Verteilungsdiagramm
Verhaltensdiagramme
- AktivitÀtsdiagramm
- Anwendungsfalldiagramm
- Zustandsdiagramm
- Sequenzdiagramm
- Kommunikationsdiagramm