26
UML 2.0 als Architekturbeschreibungssprache ? Seminar: Architekturbeschreibungssprachen Manuel Wickert

UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

Embed Size (px)

Citation preview

Page 1: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als Architekturbeschreibungssprache ?

Seminar: Architekturbeschreibungssprachen

Manuel Wickert

Page 2: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 2

Motivation

• UML 2.0 nicht als ADL im Sinne von Taylor/Medvidovic entworfen.

• Warum UML als ADL ?– weit verbreitet

– hoher Tool-Support

– etablierter Standard in der Modellierung von Software

– seit UML 2.0 näher an einer ADL

Page 3: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 3

Überblick

• Einleitung UML 2.0

• Komponentendiagramme

• weitere Diagramme– Sichten

– Kompositionsstrukturdiagramme

– Protokoll Zustandsautomat

– Sequenzdiagramme

• Ausblick / Fazit

Page 4: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 4

UML 2.0• UML (Unified Modelling Language)

• seit 2004 UML 2.0 Standard

• OMG (Object Management Group)– IBM, Apple, Sun

– CORBA, IDL, MDA

• visuelle Modellierungssprache

• MDA als wichtiges Ziel der UML

• 13 Diagrammtypen

Page 5: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 5

UML 2.0 vs. ADL• allgemeine

Modellierungssprache• kann viele Aspekte eines

Systems modellieren• Semantik relativ weich um

viel Interpretationsraum zu lassen

• nicht nur für Softwaresysteme auch Business Prozesse

• Ziel � Modellierung von (Objektorientierten) Systemen / MDA

• meist domainspezifisch

• auf die Architektur eines Systems spezialisiert

• Semantik recht präzise um die Simulation zu unterstützen.

• ausschließlich um Hardware-/Softwaresysteme zu modellieren

• Ziel � Architektur modellieren, Simulation, Analyse

Page 6: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 6

Diagramme der UML 2.0

Page 7: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 7

Komponentendiagramme• komponentenbasierte Entwicklung• Wiederverwendbarkeit• Sichtweise näher an der Laufzeit eines

Systems• besteht hauptsächlich aus:

– Komponenten– Schnittstellen– Ports– Artefakten– Klassen– Beziehungen– (Konnektoren)

Page 8: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 8

Komponente

• modularer Systemteil

• definiert durch ihre Schnittstellen

• austauschbar in ihrer Umgebung

• Blackbox vs. Whitebox

Page 9: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 9

Schnittstelle einer Komponente• Schnittstelle aus

Klassendiagramm• definiert einen Kontrakt

den die implementierenden Komponenten einhalten müssen

benötigte Schnittstelle

angebotene Schnittstelle

Page 10: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 10

Schachtelung von Komponenten

• White-Box Darstellung

• Stereotyp: <<subsystem>>

Page 11: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 11

Artefakte• konkretes Element

in der realen Welt

• Komponente wird mit Artefakt manifestiert

• Stereotypen:

statische/dynamische

Bibliothek

«libary»

Quelldatei«source»

ausführbare Datei«executable»

weder Quell- noch

Zieldatei

«document»

Datei«file»

Page 12: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 12

Ports

• Interaktionspunkt zwischen der Komponente und der Umgebung

• Funktionen direkt implementiert oder weitergeleitet.

Page 13: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 13

Konnektoren• andere Bedeutung als in ADLs

Delegationskonnektor

Kompositionskonnektor

Page 14: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 14

Beziehungen• Verwendungsbeziehung

– <<use>>

• unvollst. Element verwendet benötigtes Element

• Realisierungsbeziehung– <<realize>>

• Spezifikation wird durch Implementierung realisiert

Page 15: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 15

Beziehungen

• Substitutionsbeziehung– <<substitute>>

• eine Komponente kann zur Laufzeit durch eine andere ersetzt werden

Page 16: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 16

Architectural Configuration

Page 17: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 17

weitere Diagramme / Sichten um UML als ADL zu nutzen

• Kompositionsstrukturdiagramme– Beschreibung der Feinstruktur von

Komponenten

• Protokoll Zustandsautomat– Beschreibung von dynamischen

Schnittstellen

• Sequenzdiagramme – Beschreibung des Verhaltens

Komponenten

Page 18: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 18

Sichten und Diagramme

Page 19: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 19

Diagramme der UML 2.0

Page 20: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 20

Kompositionsstrukturdiagramme

Page 21: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 21

Protokoll Zustandsautomaten

Page 22: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 22

Sequenzdiagramme

Page 23: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 23

Ausblick

• Profil für die Architekturbeschreibung in UML– Syntax und Semantik einschränken

– Werkzeugsystem zur Analyse und Simulation

– vielleicht zukünftiges ADL-Profil was auf Komponentendiagrammen aufbaut?

Page 24: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 24

Fazit• Modellierung von Architektur in UML möglich

(Ausnahme von Konnektoren)• restliche Spezifikation in UML � Architektur

in UML• Profile

– Semantik einschränken– Werkzeugsysteme müssten erstellt werden

• domainspezifische Probleme �domainspezifische ADL

• allgemeine Probleme �möglicherweise UML 2.0

Page 25: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

Vielen Dank für Ihre Aufmerksamkeit

Fragen ?

Page 26: UML 2.0 als Architekturbeschreibungssprachebtn1x4.inf.uni-bayreuth.de/publications/dotor_buchmann/UML/UML2.pdf · UML 2.0 vs. ADL • allgemeine Modellierungssprache • kann viele

UML 2.0 als ADL? von Manuel Wickert Seite 26

Quellen

• UML 2.0 glasklar, Chris Rupp, Jürgen Hahn, … , 2. Auflage, 2005 Carl HanserVerlag, ISBN: 3-446-22952-3,

• UML Superstructure, version 2.0, formal/05-07-04

• A Classification and ComparisonFramework for Software ArchittectureDescription Languages, Taylor and Medvidovic

• Wikipedia