UML Tutorial. Erik Gostischa-Franta. Vienna University of Technology Institute of Software Technology and Interactive Systems

Größe: px
Ab Seite anzeigen:

Download "UML Tutorial. Erik Gostischa-Franta. Vienna University of Technology Institute of Software Technology and Interactive Systems"

Transkript

1 E183 - Institut f. Rechnergestützte Automation Department of Automation Forschungsgruppe für Industrielle Software (INSO) E188 - Institut f. Softwaretechnik und Interaktive Systeme, Information & Software Engineering Group Quality Software Engineering (QSE) Research qse.ifs.tuwien.ac.at UML Tutorial Erik Gostischa-Franta Vienna University of Technology Institute of Software Technology and Interactive Systems gostischa-franta@qse.ifs.tuwien.ac.at Inhalt 1. UML Einführung & Domänen 2. Anwendungsfall-diagramm 3. Anwendungsfall-beschreibung 4. Klassendiagramme Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 2

2 UML Allgemein 1/2! UML, Unified Modelling Language, ist standardisiert! UML ist Standardsprache für Visualisierung, Spezifikation, Konstruktion und Dokumentation komplexer Softwaresysteme.! UML kombiniert Konzepte aus:! Objektorientierter Modellierung! Datenmodellierung (Entity Relationship Diagrams)! Business-Modellierung (work flow)! Component Modeling! UML bietet Entwicklern und Kunde die Möglichkeit zur Diskussion von z.b. Softwareentwürfen und -entwicklungen auf einer einheitlicher Basis. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 3 UML Allgemein 2/2 Die Unified Modelling Language ist: nicht perfekt nicht vollständig keine Programmiersprache keine rein formale Sprache nicht spezialisiert auf ein Anwendungsgebiet kein vollständiger Ersatz für Textbeschreibung keine Methode oder kein Vorgehensmodell Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 4

3 Diagramme der UML Strukturdiagramme Verhaltensdiagramme Klassen- Paket- Objekt- Kompositionsstruktur- Komponenten- Verteilungsdiagramm Use-Case- Aktivitäts- Zustandsdiagramm Interaktionsdiagramme Sequenz- Kommunikations- Timing- Interaktionsübersichtsdiagramm! Gekennzeichnete Diagramme werden häufig in der SE&PM LU verwendet. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 5 Zweck des UML-Tutorials! Using UML! Praktische Verwendung von UML im Software Engineering! Schon zu Projektbeginn wird mit UML Modelliert (z.b.domänenmodell), aber im weiteren Projektverlauf steht mehr und mehr echte Software hinter dem Konzeptionellen Modell.! Vorbereitung auf das Einzelbeispiel und Gruppenphase! Wo und Wie soll UML Verwendet werden?! UML Anwendungsfälle: Erhebung der Anforderungen! UML Klassendiagramme: Technisches Design & Projektplanung! Inhalt des UML Tutorials ist Prüfungsstoff für den Einstiegstest! Grundkenntnissen der Programmierung (EPROG, OOP) und Domänenmodellierung (Datenmodellierung, OOM) sind notwendig um die in diesem Tutorial beschriebenen Konzepte und Vorgehensweisen anzuwenden. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 6

4 Domäne "MP3-Player" Anhand einer MP3-Player Applikation soll hier im weiteren Verlauf UML an praktischen Beispielen erläutert werden. Es handelt sich um ein sehr einfaches System zum:! Abspielen von Musik! Playlist Verwaltung! Importieren/Suchen/Löschen/Sortieren! Verwalten von Musik Dateien! Create, Read, Update, Delete (CRUD)! Anzeigen von musikspezifischen Infos! LastFM, Lyric Wiki, MusicBrainz Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 7 Domäne "Bibliotheksverwaltungssystem" Anhand eines Bibliotheksverwaltungssystem soll hier im weiteren Verlauf UML an praktischen Beispielen erläutert werden. Es handelt sich um ein sehr einfaches System zur:! Verwaltung der Bücher! Buchdaten, Zustandsbeschreibungen, Standortinformationen! Verwaltung der personenbezogenen Daten! Mitarbeiter und Kunden! Tägliche Routine! Suchen und Ausleihen der Bücher Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 8

5 Inhalt 1. UML Einführung & Domänen 2. Anwendungsfall-diagramm 3. Anwendungsfall-beschreibung 4. Klassendiagramme Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 9 UML Anwendungsfälle Ein Anwendungsfall (engl. use case) beschreibt das Verhalten eines Aktors, welches einen Teil der Funktionalität des Gesamtsystems repräsentiert. Ein Anwendungsfall sollte primär einen logischen zusammengehörigen, wiederkehrende Ablauf von Aktionen innerhalb des Systems darstellen welcher ein beobachtbares Resultat für den Aktor zu folge hat. Was definiert einen Anwendungsfall?! Name: kurzer Ausdruck mit einem möglichst starken Verb! Primäre Aktoren, Vorbedingungen, Nachbedingungen, Szenario, Alternativszenario (Anwendungsfallbeschreibung) Anwendungsfälle können mit einem Anwendungsfalldiagramm graphisch dargestellt werden. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 10

6 UML Anwendungsfalldiagramm Übersicht Kommunikationslinie <include> Include Beziehung <extends> Extends Beziehung Generalisierung Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 11 UML Extension Points! Anwendungsfalldiagramm! Anwendungsfallbeschreibung 12 Name: Bücher suchen Primärer Aktor:... Vorbedingungen:... Szenario: Extension Point: Suchergebnis drucken 3....

7 Aktorenhierarchie Ein Aktor ist ein bestimmter Benutzer, der im System genau definierte Rechte und Aufgaben hat. Ein Aktor benützt das System und führt Anwendungsfälle aus. Aktorenliste Aktorename Rechte Anmerkungen Beziehungs- Hierarchie Admin (AD) Mitarbeiter (MA) Uneingeschränkte Rechte im System Darf neue Bücher anlegen und bestehende Bücherdaten ändern, kann auch neue Bücher bei diversen Büchhändlern bestellen Systemtechniker besitzen uneingeschränkten Zugriff auf alle Bereiche im System Keine Kunde (KD) Kann Bücher suchen, reservieren und bestellen Dieser User kann keine bestehenden Daten ändern außer die von ihm angelegten Reservierungen Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 13 Anwendungsfalldiagramm! Ein Anwendungsfall wird in Form einer Ellipse dargestellt.! Die Bezeichnung des Anwendungsfalls wird in die Ellipse eingeschrieben.! Ein Anwendungsfalldiagramm wird durch seine Systemgrenzen definiert.! Akteure stehen klar außerhalb des Systems! Ein Aktor hat genau dann eine Beziehung zu einem Anwendungsfall, wenn er ermächtigt ist, diesen durchzuführen bzw. mit diesen zu kommunizieren Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 14

8 Anwendungsfall Beispiele! MP3-Player: save playlist, delete song listen to playlist-mix, play recently imported songs maintain music library, collect song information = system-level use case = user-level use case = enterprise-level use case! Bibliotheksverwaltung: verschicke Benachrichtigung, Buch speichern Buch entlehnen, Buch reservieren, Student eintragen Buch katalogisieren, gesamten Buchbestand erfassen = system-level use case = user-level use case = enterprise-level use case Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 15 Abstraktionsstufen! Es werden drei Arten von Anwendungsfällen unterschieden! System Level: Buch speichern (z.b. in der Datenbank)! User Level: Buch entlehnen (auch User Goals genannt)! Enterprise-Level: Buchbestand katalogisieren! Alle UML Diagrammarten haben Abstraktionsstufen! Z.B. Klassendiagramme:! Domänenmodell! Komponentendiagramm! Klassendiagramm (Impl)! Ein gutes UML Tool erlaubt Einfügen eines Modelelements in mehreren UML Diagrammen! Ein UML Diagramm ist ein Ausschnitt des UML Models. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 16

9 Modelle und Diagramme! Im Anwendungsfalldiagramm udx1 realisiert die Kollaboration einen Anwendungsfall.! Jene Kollaboration wird im Klassendiagramm cdx2 von Klassen A und B implementiert.! Verhalten der Klassen in X2 wird im Sequenzdiagramm sdx3 dargestellt.! Ein UML-Modell ist eine Menge von Modellelementen (Klassen, Attribute, Interaktionen, Anwendungsfälle, etc.)! Ein UML-Diagramm ist eine graphische Darstellung eines Ausschnitts des Modells (eine Sicht auf ein Modell)! Elemente in unterschiedlichen Diagrammen können sich auf ein und das selbe Modellelement beziehen. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research UML Anwendungsfälle Übungsbeispiel 1! Welcher User hat mehr Rechte im System, Admin oder Mitarbeiter?! Welche Anwendungsfälle kann der Mitarbeiter ausführen?! Welche Anwendungsfälle kann der Admin ausführen? Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 18

10 UML Anwendungsfälle Übungsbeispiel 2! Modellieren Sie folgende Anwendungsfälle:! Im System gibt es die User Mitarbeiter und Admin.! User Admin hat mehr Rechte im System als Mitarbeiter.! Beide können sich im System einloggen.! Nach dem Einloggen können beide ihr persönliches Passwort ändern.! Weiters haben beide die Möglichkeit neue Buchdaten einzugeben.! Der Admin hat außerdem noch die Möglichkeit Benutzer zu sperren und neue Benutzer anzulegen. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 19 UML Anwendungsfälle Übungsbeispiel 2 Lösung Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 20

11 UML Anwendungsfälle Übungsbeispiel 3! Modellieren Sie folgende Anwendungsfälle:! Ein Student kann sich in der Bibliotheksverwaltung entweder per Matrikelnummer/Passwort oder per Retinascan einloggen.! Der Student kann Bücher suchen! Beim Suchen nach Bücher kann entschieden werden ein bestimmtes Buch zu entlehnen.! Um ein Buch zu entlehnen muss der Student eingeloggt sein. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 21 UML Anwendungsfälle Übungsbeispiel 3 Lösung Student Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 22

12 Inhalt 1. Einführung in UML 2. Anwendungsfalldiagramm 3. Anwendungsfallbeschreibung 4. Klassendiagramme Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 23 UML Anwendungsfallbeschreibung Jeder Anwendungsfall bedarf einer genauen Beschreibung, die man wie folgt einteilen kann: 1. Identification summary : Titel des Anwendungsfalles (2-7 Wörter mit starkem Verb) Scope (Use Case Package) Level (User, System, Enterprise) Welche Aktoren sind beteiligt Kurzbeschreibung des Anwendungsfalles ( Aktor interests ) 2. Scenarios : Vorbedingungen Hauptszenario Fehlersituationen Alternativszenario Voraussetzungen für erfolgreiche Ausführung (andere Use Cases) was soll abgebildet werden was passiert im Fehlerfall, Systemzustand gibt es Alternativabläufe, wo sind die Abweichungen? Nachbedingungen Systemzustände nach erfolgreicher Ausführung (andere Use Cases) 3. Non-functional constraints - NFAs, Bemerkungen, Angaben über Häufigkeit, Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 24

13 Anwendungsfallbeschreibung Beispiel 1/2 1. Identification summary Titel: Buch suchen Scope: Suche Level: User Goal Aktoren: Student Kurzbeschreibung: Der Student sucht nach einem bestimmten Buch. 2. Scenarios : Vorbedingungen: Student authentifizieren/einloggen Hauptszenario: Der Anwender gibt die Suchkriterien für ein Buch ein (Titel, Autor, Verlag, Kategorie). Das System zeigt die zu den Kriterien gefundenen Bücher an. Der Anwender wählt einen Datensatz aus und die Liste mit den Suchergebnissen wird geschlossen. Fehlerszenario: Kann der Connect zur Datenbank nicht aufgebaut werden, dann wird noch 2x versucht den Connect zur DB herzustellen. Sind alle 3 Versuche erfolglos wird eine Fehlermeldung ausgegeben. Alternativszenario: Das System kann kein Buch zu den angegebenen Kriterien finden, es wird eine Fehlermeldung ausgegeben. Nachbedingungen: Student kann ein gefundenes Buch entlehnen (andere Use Cases) Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 25 Anwendungsfallbeschreibung Beispiel 2/2 1. Identification summary 2. Scenarios : 3. Nonfunctional Constraints oder Special Requirements Der User sollte nicht zu lange auf das Suchergebnis warten müssen (max. 10 sek) Der Anwendungsfall Buch suchen wird sehr häufig in einer Bibliothek Verwendung finden. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 26

14 Scenario Darstellungsformen 1. User Story 1. Eine User Story (Benutzergeschichte) ist eine in Alltagssprache formulierte Anforderung an die Software und umfasst in der Regel nicht mehr als ein paar Sätze. 2. Liste von Aktivitäten 1. Der Ablauf des Anwendungsfalls wird in Teil-Abläufe (Aktivitäten) zerteilt und als nummerierte Liste aufgeschrieben. Dieser Stil ermöglicht leichtes referenzieren von anderen Anwendungsfällen (extend, include). 3. Ereignis/Aktions Stil ( Flow of Events ) 1. Um viele Verzweigungen im Ablauf oder viele Alternativ- bzw. Fehlerszenarien übersichtlich darzustellen ist der Ereignis/Aktions Stil sehr hilfreich. 4. Aktivitätsdiagramm 1. Um den Ablauf eines Anwendungsfalls übersichtlich darzustellen, etwa für ein Management Review, kann von einer User Story oder Liste von Aktivitäten ein UML Aktivitätsdiagramm gezeichnet werden. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 27 Flow of Events Scenario Häufige Anwendung finden auch Beschreibungen die in Ereignis und Aktion aufgegliedert werden: E1) Der Anwender gibt Suchkriterien für ein Buch ein. (Titel, Autor, Kategorie) A1) Das System sucht nach Büchern, die den eingegebenen Suchkriterien entsprechen. E2) Es existieren Bücher, die den angegeben Suchkriterien entsprechen A2) Die Daten der Bücher werden angezeigt AE2) Es wurde kein Buch mit den angegeben Suchkriterien gefunden AA2) Fehlermeldung ausgeben AE3) Mit diesen Kriterien wurden zu viele Bücher gefunden AA3) Der Benutzer wird aufgefordert, die Suchkriterien zu verfeinern E3) Der Anwender wählt einen der angezeigten Datensätze aus A3) Die Liste mit den Suchergebnissen wird geschlossen und der ausgewählte Datensatz eventuell als Parameter an einen weiteren Anwendungsfall übergeben Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 28

15 Liste von Aktivitäten mit UML Aktivitätsdiagramm Auch UML Aktivitätsdiagramme können verwendet werden um das Szenario eines Anwenungsfalls zu beschreiben: Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 29 Inhalt 1. Einführung in UML 2. Anwendungsfalldiagramm 3. Anwendungsfallbeschreibung 4. Klassendiagramme Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 30

16 UML Klassendiagramm Sichtbarkeit 1. Abschnitt 2. Abschnitt 3. Abschnitt Public (+) Private (-) Protected (#) Package (~) Jedes andere Element hat uneingeschränkten Zugriff. Nur Instanzen der Klasse, die das Attribut definiert, dürfen zugreifen. Nur Instanzen der Klasse, die das Attribut definiert, und Instanzen abgeleiteter Klassen dürfen zugreifen. Das Attribut ist für alle Elemente, die sich im selben Packet wie die definierte Klasse befinden, sicht- und zugreifbar. Ad 1) Klassename und Schlüsselwörter (Zwingend) Ad 2) Attribute (Attributname: Typ) (Optional) Ad 3) Methoden, die die Klasse ausführen kann (Verhalten der Klasse) (Optional) Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 31 UML Klassendiagramm Assoziationen 1/2 Klassen stehen zueinander in unterschiedlichen Beziehungen. Dies wird in Assoziationen dargestellt. Jede Assoziation wird durch eine Kardinalität mitbestimmt. Diese gibt an, wie viele Instanzen einer Klasse zu einer Instanz der Klasse am gegenüberliegenden Ende der Assoziation in Beziehung stehen können. An den Enden der Linie werden die Kardinalitäten angegeben, welche folgende Formen haben können:! Ein beliebiger Wert aus den natürlichen Zahlen wird durch einen Stern dargestellt (d.h. 0 bis beliebig viele) Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 32

17 UML Klassendiagramm Assoziationen 2/2 Ein einzelner ganzzahliger positiver Wert (z.b. 1) Ein Bereich von Werten, wobei der niedrigste vom höchsten Wert durch zwei Punkte getrennt ist Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 33 UML Klassendiagramm Generalisierung! Allgemeine Gemeinsamkeiten werden in so genannten Oberklassen zusammengefasst. Generalisierung ist eine Relation zwischen einem allgemeineren (Eltern-) und einem spezielleren (Kind-) Element.! Das Kindelement ist mit dem Elternelement verträglich und fügt weitere Informationen hinzu.! Ein typisches Beispiel dafür ist Mitarbeiter und Kunde. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 34

18 UML Klassendiagramm Aggregation! Eine Aggregation drückt eine Teile-Ganzes-Beziehung aus.! Im Kern ist die Aggregationsbeziehung nichts anderes als eine abkürzende Schreibweise der Rollen besteht aus und ist Teil von! Dieses Beispiel bedeutet, dass ein Mensch Teil keiner, einer oder mehrerer Personengruppen ist. Eine Personengruppe besteht aus mind. einer Personen, kann aber auch mehrere Personen beinhalten. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 35 UML Klassendiagramm Komposition! Eine strengere Form des Zusammenhanges wird durch die Komposition definiert. Teile und Ganzes bilden eine Einheit.! Deshalb gilt hier auch die verschärfende Einschränkung, dass ein Teil zu einem Zeitpunkt genau einem Ganzen zugeordnet sein darf.! Die Lebensdauer der Teile hängt von der Leibensdauer des Ganzen ab. Wird das Ganze zerstört, sterben auch die dazugehörigen Teile. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 36

19 UML Sichten auf Softwarestrukturen! Konzeptionelle Sicht Gibt eine Übersicht über den zu untersuchten Problembereich z.b. Domänenmodell! Spezifizierende Sicht Hier betrachten wir Software, aber wir betrachten Schnittstellen, keine Implementierungen. z.b. Komponentendiagramm! Implementierende Sicht Bei dieser Sichtweise haben wir wirklich Klassen, und wir legen die Grundlage für die Implementierung. Dies ist vermutlich die am häufigsten eingenommene Betrachtungsweise. z.b. Klassendiagramm nach Martin Fowler und Kendall Scott: UML konzentriert Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 37 Konzeptionelle Sicht! Beispiel: MP3-Player Domänenmodell! Klassifizierung der Objekte der Realen Welt (Anwendungsbereich der Applikation) Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 38

20 Spezifizierende Sicht! Beispiel:! MP3-Player Komponente Persistance! Interfaces! ITaggingDAO! ISongDAO! Benötigte Typen (Interfaces)! javax.sql.datasource Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 39 Implementierende Sicht! Beispiel:! MP3-Player Playlist Feature Klassendiagramm! Patterns:! Interface! Facade! Data Access Object Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 40

21 Komponentenorientierter Entwurf mit UML Klassendiagrammen! Das Domänenmodell entsteht im Projektverlauf als erstes! Multiplizitäten der Assoziationen, auch Aggregats und Kompositionsbeziehungen, sollen Verwendet werden.! Falls bereits bekannt bzw. wichtig, können Attribute der Klassen eingezeichnet werden.! UML Stereotypen << >> können verwendet werden um Klassen zu typisieren für eine spätete Verfeinerung (sog. UML-Profiles) Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 41 UML Klassendiagramm Übungsbeispiel 1/2 (Implementations-Sicht)! Ein Buch kann entweder ein Sachbuch oder ein Roman sein.! Ein Sachbuch hat einen Titel, eine Nummer und ein Wissenschaftsgebiet.! Ein Roman hat eine Nummer, einen Titel und Seitenzahlen als Attribute.! Die Nummer des Buches wird immer mit 1 initialisiert.! Eine Roman ist entlehnbar. Ein Sachbuch nicht. Bei beiden kann man sich jedoch ein Datenblatt ausdrucken lassen.! Jeder Raum einer Bibliothek enthält Bücher.! Eine Bibliothek kann mehrere Räume haben, hat eine Adresse, eine Bezeichnung, einen Fachbereich und eine eindeutige Nummer.! Ein Raum hat eine Raumnummer, die mit 01 initialisiert wird, und eine Bezeichnung Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 42

22 UML Klassendiagramm Übungsbeispiel 1/2 Lösung Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 43 UML Klassendiagramm Übungsbeispiel 2/2 (Konzeptionelle-Sicht) Entwerfen Sie ein neues Domänenmodel aus folgendem Sachverhalt:! Eine Bibliothek besteht aus mehreren Fachabteilungen und aus mehreren Räumen.! Jede Fachabteilung hat verschiedene Kategorien bzw. ist auf mehrere Räume aufgeteilt.! In jedem Raum kann 1 oder mehrere Regale stehen.! Eine Kategorie besteht aus mehreren Büchern. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 44

23 UML Klassendiagramm Übungsbeispiel 2/2 Lösung1 Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 45 UML Klassendiagramm Übungsbeispiel 2/2 Lösung2 Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 46

24 UML Klassendiagramm Zusammenfassung Mit Hilfe der Notation von UML Klassendiagrammen können in der SE&PM Übung folgende Arten von Daten modelliert werden! Domäneninformationen (Domänenmodell)! Systemkomponenten/Schnittstellen (UML Komponentendiagramm)! Struktur der implementierten OO Klassen (UML Klassendiagramm)! Auch Datenbankschemata können in UML Klassendiagrammnotation ausgedrückt werden, ER oder EER ist jedoch üblicher. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 47 UML Ausblick: Management Reviews In der SE&PM Gruppenphase wird beim MR-2 verlangt die Systemarchitektur dem Assistenten zu präsentieren.! Architektur in SE&PM entsteht durch die Interaktion von vielen verschiedenen Arbeitsvorgängen! Modellierung, Design! Konfiguration; Verwendete Werkzeuge, Frameworks! Implementation; Patterns und Algorithmen! UML Diagramme für Management Reviews! Klassendiagramm aus der Konzeptionellen Sichtweise (Domänenmodell)! Anwendungsfälle, Use Cases! Verteilungsdiagramm, Komponentendiagramm (Spez. Sichtweise)! Klassendiagramme aus der Implementierenden Sichtweise eher Gruppen- (Entwickler-) interne Artefakte Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 48

25 Kritik: UML Diagramme zu fad für Management Reviews! UML & Beschreibung der Systemarchitektur! Aber:! Model: Domänenobjekte + Teile der Persistenz und Service(BL) Schicht! Struktur: Klassen-, Komponenten-, Verteilungsdiagramm! Verhalten: Anwendungsfall-, Aktivitäts-, (Zustands-, Sequenzdiagramm)! Bei MR s sollten Diagramme verwendet werden um eine Übersicht der Architektur zu bekommen.! Die meisten besprochenen Struktur Diagramme sind sehr technisch, kompliziert bzw. fad! UML & Erweiterungen (in SE&PM)! <<Stereotypen>>! Einbindung von Graphiken bzw. Farbliche Markierungen für Stereotypen Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 49 Bad-Practice Systemarchitektur! Unnötiges Eye-Candy! Statt Stereotypen, Wolke und Zylinder Graphiken verwendet! Die Komponenten selbst sagen wenig aus! Was wirklich interessant ist, sind die Verbindungen zwischen den Komponenten! Davon abgesehen, dass dies zwei völlig unterschiedliche Diagramme sind. Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 50

26 Verteilungsdiagramm Beispiel (ASE LU) Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 51 Komponentendiagramm Beispiel (ASE LU) Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 52

27 Andere nützliche UML Diagramme (SE&PM Eingangsphase)! Struktur der Software Schichtendiagramme Können mittels UML-Packages modelliert werden Schicht impliziert Zugriff (Access) nach unten! Verhalten der Software UML Aktivitätsdiagramme Als Unterstützung bei Use Cases Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 53 UML Book to get for SE&PM and ASE! Beginner Perdita Stevens; Using UML: Software Engineering Objects and Components; 2nd Edition, , Addison Wesley, 272 Seiten, ! Intermediate Grady Booch, James Rumbaugh, Ivar Jacobson; The Unified Modeling Language User Guide; 2nd Edition, , Addison Wesley, 496 Seiten, ! Advanced Craig Larman; Applying UML and Patterns: An Introduction to Object Oriented Analysis and Design and Interactive Development; 3rd Edition, , Prentice Hall, 736 Seiten, ! OR: Any UML Book that has using or applying as a Focus Point " Institut f. Softwaretechnik und Interaktive Systeme, IFS, Quality Software Engineering (QSE) Research 54

UML (Unified Modelling Language) von Christian Bartl

UML (Unified Modelling Language) von Christian Bartl UML (Unified Modelling Language) von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 UML Unified Modelling Language... 3 2 Diagrammtypen... 3 2.1 Aktivitätsdiagramm... 3 2.1.1 Notation... 4 2.1.2 Beispieldiagramm...

Mehr

Unified. Copyright Adriano Gesué UML 2.0 UML 1.4 UML 1.3 UML 1.2 UML 1.1 UML 1.0 UML 0.9. Method 0.8

Unified. Copyright Adriano Gesué UML 2.0 UML 1.4 UML 1.3 UML 1.2 UML 1.1 UML 1.0 UML 0.9. Method 0.8 Literatur Martin Fowler and Kendall Scott: UML Distilled: Applying the Standard Object Modeling Language. Addison-Wesley 1997. James Rumbaugh, Ivar Jacobson, and Grady Booch: The Unified Language Reference

Mehr

NACHRICHTENTECHNISCHER SYSTEME

NACHRICHTENTECHNISCHER SYSTEME Einführung UML COMPUTERSIMULATION NACHRICHTENTECHNISCHER SYSTEME 11. Unified Modeling Language UML 220 Standardsprache d zur Visualisierung, i Spezifikation, Konstruktion und Dokumentation komplexer (Software-)

Mehr

Analyse und Modellierung von Informationssystemen

Analyse und Modellierung von Informationssystemen Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2013 1 / 18 UML Einführung Klassendiagramme in der UML Relationen zwischen Klassen 2 / 18 UML: Grundsätzliches

Mehr

INSPIRE - Modellierung

INSPIRE - Modellierung INSPIRE - Modellierung Inhalt Motivation Modellierung UML Diagramme INSPIRE-Schulung LKROS 2 Motivation Was ist ein Modell, und warum wollen wir modellieren? Warum brauchen wir eine Modellierungssprache

Mehr

Übungen Softwaretechnik I

Übungen Softwaretechnik I Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Übungen Softwaretechnik I Übung 5: Objektorientierte Analyse Einführung Objektorientierung in der

Mehr

Oracle JDeveloper 10 g

Oracle JDeveloper 10 g Oracle JDeveloper 10 g Modellierung Evgenia Rosa Business Unit Application Server ORACLE Deutschland GmbH Agenda Warum Modellierung? UML Modellierung Anwendungsfall (Use Case)-Modellierung Aktivitätenmodellierung

Mehr

Requirements Engineering I

Requirements Engineering I Martin Glinz Requirements Engineering I Kapitel 9 UML Unified Modeling Language Universität Zürich Institut für Informatik 2006, 2008 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe sind

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Unified Modeling Language (UML) Dr. Dennis Pfisterer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/pfisterer Unified Modeling Language (UML)

Mehr

Die Unified Modeling Language UML

Die Unified Modeling Language UML Informatik II: Modellierung Prof. Dr. Martin Glinz Kapitel 4 Die Unified Modeling Language UML Universität Zürich Institut für Informatik Inhalt 4.1 Hintergrund 4.2 Grundkonzepte der UML 4.3 Die Rolle

Mehr

Objektorientierte Analyse (OOA) Inhaltsübersicht

Objektorientierte Analyse (OOA) Inhaltsübersicht Inhaltsübersicht Einführung Anforderungen an die UML-Diagramme Verhalten: Use-Case-Diagramm Verhalten: Aktivitätsdiagramm Verhalten: Zustandsautomat Struktur: Klassendiagramm Seite 1 Einführung In der

Mehr

Inhalt. 1 Einführung 17. Strukturdiagramme. 2 Klassendiagramm 37

Inhalt. 1 Einführung 17. Strukturdiagramme. 2 Klassendiagramm 37 Vorwort... 13 1 Einführung 17 1.1 Weshalb muss Software modelliert werden?... 17 1.2 Die Phasen bei der Softwareentwicklung... 18 1.2.1 Analyse... 18 1.2.2 Entwurf... 19 1.2.3 Implementierung und Dokumentation...

Mehr

TEIL I Strukturdiagramme 1 Einführung Klassendiagramm Objektdiagramm Kompositionsstrukturdiagramm...

TEIL I Strukturdiagramme 1 Einführung Klassendiagramm Objektdiagramm Kompositionsstrukturdiagramm... Auf einen Blick TEIL I Strukturdiagramme 1 Einführung... 13 2 Klassendiagramm... 29 3 Objektdiagramm... 111 4 Kompositionsstrukturdiagramm... 125 5 Komponentendiagramm... 145 6 Verteilungsdiagramm... 161

Mehr

Objektorientierte Analyse (OOA) Übersicht

Objektorientierte Analyse (OOA) Übersicht Übersicht UML ist die Notation für ein objektorientiertes Vorgehensmodell, sowohl für die Analyse als auch für das Design. Analyse (WAS?) Use Cases Aktivitätsdiagramme (für die Use Cases) Klassendiagramme

Mehr

Vgl. Oestereich Kap 2.4 Seiten

Vgl. Oestereich Kap 2.4 Seiten Vgl. Oestereich Kap 2.4 Seiten 99-110 1 Vgl. Oestereich Kap 2.41 Seiten 99ff 2 Wie das Klassendiagramm ist auch das Objektdiagramm ebenfalls ein Strukturdiagramm. Da die Anzahl der Attribute sehr groß

Mehr

Christoph Kecher, Alexander Salvanos UML 2.5. Das umfassende Handbuch. Rheinwerk. Computing

Christoph Kecher, Alexander Salvanos UML 2.5. Das umfassende Handbuch. Rheinwerk. Computing Christoph Kecher, Alexander Salvanos UML 2.5 Das umfassende Handbuch Rheinwerk Computing Inhalt Vorwort 13 1 Einführung 17 1.1 Weshalb muss Software modelliert werden? 17 1.2 Die Phasen bei der Softwareentwicklung

Mehr

Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl

Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl 26.07.21 Themenübersicht Objektorientierte Software-Entwicklung Objektorientierte Analyse und Design OOA OOD Objektorientierte

Mehr

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML) Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

Softwaretechnik 2015/2016

Softwaretechnik 2015/2016 Softwaretechnik 2015/2016 PST Lehrstuhl Prof. Dr. Matthias Hölzl HAUPT-/ BACHELOR- SEMINAR ADAPTIVE SYSTEME PST Joschka PROF. DR. Rinke WIRSING 14. JUNI 2009 VORNAME NAME AGENDA Übung 11: 14.01.2016 Schon

Mehr

Das umfassende Handbuch

Das umfassende Handbuch Christoph Kecher UML 2.0 Das umfassende Handbuch. Jfjf- Ali' ' w v^i* >" '-«(."', Galileo Press Inhalt Vorwort 11 1 Einführung 1.1 Weshalb muss Software modelliert werden? 13 1.2 Was ist die UML? 15 1.3

Mehr

Gliederung des Vortrages

Gliederung des Vortrages Gliederung des Vortrages Unified Modeling Language Rational Rose Sergej Schwenk Oktober 1999 0. Einführung 1. Historie 2. Der Entwicklungsprozeß 3. UML 3.1 Anwendungsfalldiagramme 3.2 Klassendiagramme

Mehr

Unified Modeling Language 2

Unified Modeling Language 2 Unified Modeling Language 2 Marvin Frommhold 17.11.2008 Gliederung Einleitung Geschichte Strukturierung der Spezifikation Diagrammtypen Strukturdiagramme Verhaltensdiagramme CASE-Werkzeuge Quellen Was

Mehr

Objektdiagramm Komponentendiagramm Paketdiagramm. 6. Weitere Strukturdiagramme

Objektdiagramm Komponentendiagramm Paketdiagramm. 6. Weitere Strukturdiagramme 6. Weitere Strukturdiagramme Objektdiagramm Komponentendiagramm Paketdiagramm 1 6.1 Objekte Ausprägungsspezifikation von Klassen und Assoziationen 2 Definition Das Objektdiagramm zeigt eine bestimmte Sicht

Mehr

Das UML Benutzerhandbuch

Das UML Benutzerhandbuch Grady Booch James Rumbaugh Ivar Jacobson Das UML Benutzerhandbuch Aktuell zur Version 2.0 Inhalt Vorwort 15 Ziele 15 Publikum 16 Wie Sie dieses Buch verwenden sollten 16 Aufbau und besondere Merkmale 17

Mehr

SWE6 Slide 1. Software-Engineering. Vorlesung 6 vom Sebastian Iwanowski FH Wedel

SWE6 Slide 1. Software-Engineering. Vorlesung 6 vom Sebastian Iwanowski FH Wedel SWE6 Slide 1 Software-Engineering Vorlesung 6 vom 22.11.2004 Sebastian Iwanowski FH Wedel SWE6 Slide 2 Software-Engineering Vorlesungsthemen: 1. Überblick über das Thema und die Vorlesung 2. Grundlegende

Mehr

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel Jason T. Roff UML IT Tutorial Übersetzung aus dem Amerikanischen von Reinhard Engel Inhaltsverzeichnis Inhaltsverzeichnis Einführung 11 Grundlagen der UML 15 Warum wir Software modellieren 16 Analyse,

Mehr

Software- und Systementwicklung

Software- und Systementwicklung Software- und Systementwicklung Seminar: Designing for Privacy 11.11.2009 Moritz Vossenberg Inhalt Vorgehensmodelle Wasserfallmodell V-Modell Phasen (Pflichtenheft) UML Klassendiagramm Sequenzdiagramm

Mehr

Requirements Engineering I

Requirements Engineering I Martin Glinz Requirements Engineering I Kapitel 9 UML Unified Modeling Language Universität Zürich Institut für Informatik 2006, 2009 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für

Mehr

Unified Modeling Language (UML)

Unified Modeling Language (UML) Kirsten Berkenkötter Was ist ein Modell? Warum Modellieren? Warum UML? Viele, viele Diagramme UML am Beispiel Was ist ein Modell? Ein Modell: ist eine abstrakte Repräsentation eines Systems, bzw. ist eine

Mehr

Objektorientiertes Design

Objektorientiertes Design Objektorientiertes Design Yi Zhao Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg Zhao, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1

Mehr

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel. EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG

Mehr

So#waretechnologie für Fortgeschri4ene Teil Eide. Stunde IV: UML. Köln 26. Januar 2017

So#waretechnologie für Fortgeschri4ene Teil Eide. Stunde IV: UML. Köln 26. Januar 2017 So#waretechnologie für Fortgeschri4ene Teil Eide Stunde IV: UML Köln 26. Januar 2017 Model of vs. model for TheoreKcal model model for comparison calibra9on verifica9on Empirical model model of deduc9on

Mehr

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Analyse- und Designmethoden Analyse- & Designmethoden Strukturierte, traditionelle Methoden Objektorientierte Methoden Funktionsorientierte Methoden Datenorientierte

Mehr

Comelio GmbH - Goethestr Berlin. Course Catalog

Comelio GmbH - Goethestr Berlin. Course Catalog Comelio GmbH - Goethestr. 34-13086 Berlin Course Catalog 2 Table Of Contents a. Locations... 3 1. UML... 4 i. Design und Analyse... 4 ii. Notation und Konzepte...6 iii. OCUP Zertifizierung (Advanced)...8

Mehr

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Thomas Röfer Motivation Entwicklung Spracheinheiten Diagramme (Struktur-/Verhaltensdiagramme) Rückblick Textsuche Naive Suche abrakadabra Boyer-Moore abrakadabra a Knuth-Morris-Pratt

Mehr

Wirtschaftsinformatik 6a: Modellierung. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte

Wirtschaftsinformatik 6a: Modellierung. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Wirtschaftsinformatik 6a: Modellierung Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Computertechnik Man kann Software auf 2 Arten herstellen: Entweder macht man sie so klar und einfach,

Mehr

Rückblick: Entity-Relationship-Modell

Rückblick: Entity-Relationship-Modell Rückblick: Entity-Relationship-Modell Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben

Mehr

Das UML Benutzerhandbuch

Das UML Benutzerhandbuch Grady Booch James Rumbaugh Ivar Jacobson Das UML Benutzerhandbuch Aktuell zur Version 2.0 ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario

Mehr

Unified Modeling Language (UML )

Unified Modeling Language (UML ) Unified Modeling Language (UML ) Seminar: Programmiersprachenkonzepte Inhalt Einleitung UML 2.0 Diagrammtypen 2 Einleitung Objektorientierte Modellierungssprache Definiert vollständige Semantik Dient der

Mehr

UML - Tutorial. Hubert Baumgartner. www.inso.tuwien.ac.at

UML - Tutorial. Hubert Baumgartner. www.inso.tuwien.ac.at UML Tutorial UML - Tutorial SS 06 Hubert Baumgartner www.inso.tuwien.ac.at INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt

Mehr

UML -Klassendiagramme

UML -Klassendiagramme UML -Klassendiagramme UML - offline: ArgoUML http://argouml.stage.tigris.org/ UML online: Links genmymodel.com umlet.com/umletino/umletino.html Arten von UML-Diagrammen Diagramm Strukturdiagramm Verhaltensdiagramm

Mehr

Martin Fowler, Kendall Scott. UML konzentriert. Eine strukturierte Einführung in die Standard-Objektmodellierungssprache. 2., aktualisierte Auflage

Martin Fowler, Kendall Scott. UML konzentriert. Eine strukturierte Einführung in die Standard-Objektmodellierungssprache. 2., aktualisierte Auflage Martin Fowler, Kendall Scott UML konzentriert Eine strukturierte Einführung in die Standard-Objektmodellierungssprache 2., aktualisierte Auflage Deutsche Übersetzung von Arnulf Mester, Michael Sczittnick

Mehr

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language ADV-Seminar Leiter: Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?

Mehr

Softwaretechnologie für Fortgeschrittene Wohce 4 Modellierung UML

Softwaretechnologie für Fortgeschrittene Wohce 4 Modellierung UML Softwaretechnologie für Fortgeschrittene Wohce 4 Modellierung UML The role of UML Theoretical model model for comparison calibration verification Empirical model model of deduction induction Generating

Mehr

Tamagotchi-Spezifikation in UML

Tamagotchi-Spezifikation in UML Tamagotchi-Spezifikation in UML Christian Becker Steffen Glomb Michael Graf Gliederung Grundlagen Notation Werkzeug Modellierung Details der Spezifikation Erfahrungen Beurteilung von Notation und Werkzeug

Mehr

Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML2 glasklar. UNIFIED MODELING LANGUAGE l HANSER

Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML2 glasklar. UNIFIED MODELING LANGUAGE l HANSER Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins UML2 glasklar UNIFIED MODELING LANGUAGE l V HANSER Inhalt Vorwort 1 Einleitung 2 Liebe Leserin, lieber Leser 2 Ihre Meinung ist uns

Mehr

UML 2.0 Das umfassende Handbuch

UML 2.0 Das umfassende Handbuch Christoph Kecher V.-M \MM UML 2.0 Das umfassende Handbuch Galileo Computing Inhalt Vorwort 11 1 Einführung 13 1.1 Weshalb muss Software modelliert werden? 13 1.2 Was ist die UML? 15 1.3 Die Geschichte

Mehr

Einführung in die objektorientierte Programmierung

Einführung in die objektorientierte Programmierung Einführung in die objektorientierte Programmierung Seminarunterlage Version: 4.04 Copyright Version 4.04 vom 17. Juni 2016 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten.

Mehr

UML Crashkurs v0.1. UML für Fachinformatiker. von Hanjo Müller

UML Crashkurs v0.1. UML für Fachinformatiker. von Hanjo Müller UML Crashkurs v0.1 UML für Fachinformatiker von Hanjo Müller 3. Mai 2005 Inhaltsverzeichnis Inhaltsverzeichnis 1 UML - Unified Modeling Language 3 2 UML im Software Entwurf 4 2.1 Ablauf der Softwareentwicklung.............................

Mehr

Vorlesung Informationssysteme

Vorlesung Informationssysteme Saarbrücken, 07.05.2015 Information Systems Group Vorlesung Informationssysteme Vertiefung zu Kapitel 3: Von (E)ER nach UML Erik Buchmann (buchmann@cs.uni-saarland.de) Foto: M. Strauch Aus den Videos wissen

Mehr

Requirements Engineering I

Requirements Engineering I Martin Glinz Requirements Engineering I Kapitel 4 Modellierungssprachen Universität Zürich Institut für Informatik 2006 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe sind für den persönlichen,

Mehr

Algorithmen und Datenstrukturen 06

Algorithmen und Datenstrukturen 06 31. Mai 2012 1 Besprechung Blatt 5 Fragen 2 Objektorientierte Programmierung Allgemein Sichtbarkeit Konstanten 3 Unified Modeling Language (UML) Klassendiagramme Anwendungsfalldiagramme 4 Vorbereitung

Mehr

Analyse und Design mituml2

Analyse und Design mituml2 Analyse und Design mituml2 Objektorientierte Softwareentwicklung von Bernd Oestereich 7, aktualisierte Auflage Oldenbourg Verlag München Wien Ш1!Н1Н1КД nhjektorientierte Softwareentwicklung - Analyse und

Mehr

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler Übungen zur Vorlesung Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler Übungsblatt 7 Lösungshilfe Aufgabe 1. Analysephase (12 Punkte) Eine Firma hat den Auftrag erhalten eine

Mehr

Software-Engineering

Software-Engineering SWE43 Slide 1 Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 4: Systemanalyse Teil 3: Der Systemanalysestandard UML SWE43 Slide 2 UML: Was ist das? UML = Unified Modelling Language ist ein Standard,

Mehr

Christoph Kecher UML2. Das umfassende Handbuch. Galileo Press

Christoph Kecher UML2. Das umfassende Handbuch. Galileo Press Christoph Kecher UML2 Das umfassende Handbuch Galileo Press Vorwort 11 TEIL I Strukturdiagramme i '...,....,...,.;..,,,...,, 1.1 Weshalb muss Software modelliert werden? 13 1.2 Was ist die UML? 15 1.3

Mehr

CARL HANSER VERLAG. Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML 2 glasklar

CARL HANSER VERLAG. Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML 2 glasklar CARL HANSER VERLAG Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins UML 2 glasklar 3-446-22575-7 www.hanser.de Einleitung... 1 Liebe Leserin, lieber Leser... 1 Ihre Meinung ist uns

Mehr

Analyse und Design mit U ML 2.3

Analyse und Design mit U ML 2.3 Analyse und Design mit U ML 2.3 Objektorientierte Softwareentwicklung von Bernd Oestereich unter Mitarbeit von Stefan Bremer 9., aktualisierte und erweiterte Auflage Ofdenbourg Verlag München Inhaltsverzeichnis

Mehr

Datenbanken. Teil 2: Informationen. Kapitel 7: Objektorientierte Sicht. UML-Diagramme. Vorstellung der unterschiedlichen UML-Diagramme

Datenbanken. Teil 2: Informationen. Kapitel 7: Objektorientierte Sicht. UML-Diagramme. Vorstellung der unterschiedlichen UML-Diagramme Datenbanken objektorientierte Sicht Seite 1 von 76 Datenbanken Teil 2: Informationen Kapitel 7: Objektorientierte Sicht UML-Diagramme Vorstellung der unterschiedlichen UML-Diagramme 1. Diagrammtypen 2.

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Pinte, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1 / 17 Objektorientiertes Design Florin Pinte Marc Spisländer Lehrstuhl für Software

Mehr

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren Einführung in die Informationsverarbeitung Teil Thaller Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 18. Dezember 2014 Rekapitulation Der Gang der Argumentation 1. Der Rohstoff:

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Skript zur Vorlesung: Einführung in die Programmierung WiSe 2009 / 2010 Skript 2009 Christian Böhm, Peer Kröger, Arthur Zimek Prof. Dr. Christian Böhm Annahita Oswald Bianca Wackersreuther Ludwig-Maximilians-Universität

Mehr

Modellbasierter Test mit der UML. Vortragender: Lars Westmeier Seminar: Spezifikationsbasierter Softwaretest

Modellbasierter Test mit der UML. Vortragender: Lars Westmeier Seminar: Spezifikationsbasierter Softwaretest Modellbasierter Test mit der UML Vortragender: Lars Westmeier Seminar: Spezifikationsbasierter Softwaretest Inhalt Einleitung und Motivation UML Testgenerierung Fazit Inhalt Einleitung und Motivation UML

Mehr

Analyse und Design mituml2.1

Analyse und Design mituml2.1 Analyse und Design mituml2.1 Objektorientierte Softwareentwicklung Von Bernd Oestereich 8., aktualisierte Auflage Oldenbourg Verlag München Wien nhaltsverzeichnis Objektorientierte Softwareentwicklung

Mehr

Inhaltsverzeichnis.

Inhaltsverzeichnis. Wegweiser durch das Buch 1 1 Problembereich und Lösungsbereich 10 1.1.Unterschiede zwischen Problembereich und Lösungsbereich 10 1.2 Paradigmen der Softwareentwicklung 12 1.3 Methoden für die verschiedenen

Mehr

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure 8. Objektorientierte Programmierung Informatik II für Verkehrsingenieure Grundbegriffe ALAN KAY, ERFINDER DER SPRACHE SMALLTALK, HAT DIE GRUNDBEGRIFFE DER OBJEKTORIENTIERTEN PROGRAMMIERUNG WIE FOLGT ZUSAMMENGEFASST:

Mehr

Objektorientierte Modellierung (1)

Objektorientierte Modellierung (1) Objektorientierte Modellierung (1) Die objektorientierte Modellierung verwendet: Klassen und deren Objekte Beziehungen zwischen Objekten bzw. Klassen Klassen und Objekte Definition Klasse Eine Klasse ist

Mehr

Unified Modelling Language

Unified Modelling Language Unified Modelling Language SEP 72 Software-Entwicklung Software-Entwicklung ist Prozess von Anforderung über Modellierungen zu fertigen Programmen Anforderungen oft informell gegeben fertige Programme

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Pinte, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1 / 17 Objektorientiertes Design Florin Pinte Marc Spisländer Lehrstuhl für Software

Mehr

UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert

UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert Motivation UML 2.0 nicht als ADL im Sinne von Taylor/Medvidovic entworfen. Warum UML als ADL? weit

Mehr

UML (UNIFIED MODELING LANGUAGE)

UML (UNIFIED MODELING LANGUAGE) NT Druckdatum: 31.03.13 InI I UML (UNIFIED MODELING LNGUGE) Ziel: Einheitliche Darstellung einer Vielzahl von Elementen von Softwaresystemen mittels einer einheitlichen Notation. Übersicht Zusammenhang

Mehr

Exkurs 1: Hintergrund zu Java und UML

Exkurs 1: Hintergrund zu Java und UML Exkurs 1: Hintergrund zu Java und UML Warum gerade Java? Entwicklung Eigenschaften, speziell Portabilität Warum UML? Entwicklung Diagrammarten und CRC-Karten Lothar Schmitz UniBwM (teils nach Prof. Hußmann

Mehr

Martin Fowler, Kendali Scott. UML - konzentriert. Die Standardobjektmodellierungssprache anwenden

Martin Fowler, Kendali Scott. UML - konzentriert. Die Standardobjektmodellierungssprache anwenden Martin Fowler, Kendali Scott 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. UML - konzentriert Die Standardobjektmodellierungssprache

Mehr

Anwendungsfalldiagramm UseCaseDiagramm

Anwendungsfalldiagramm UseCaseDiagramm Anwendungsfalldiagramm UseCaseDiagramm Notation und Beispiele Prof. DI Dr. Erich Gams htl wels.e.gams@eduhi.at UML Seminar HTL-Wels 2010 Anwendungsfall und SE Prozess Ein Anwendungsfalldiagramm ist ein

Mehr

Comelio GmbH - Goethestr Berlin. Kurskatalog

Comelio GmbH - Goethestr Berlin. Kurskatalog Comelio GmbH - Goethestr. 34-13086 Berlin Kurskatalog 2 Inhaltsverzeichnis a. Standorte...3 1. BPMN...4 i. Business Process Model and Notation mit Altova UModel...4 ii. Business Process Model and Notation

Mehr

Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H)

Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H) Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H) Dominik Kirsten Daniel Schäferbarthold Trier, 21.01.2008 1 Gliederung 1. Einführung 1.1 Anforderungen an

Mehr

7. Objektorientierung. Informatik II für Verkehrsingenieure

7. Objektorientierung. Informatik II für Verkehrsingenieure 7. Objektorientierung Informatik II für Verkehrsingenieure Klassen, Objekte und Attribute Buslinie und Haltestellen 3 Haltestellen und deren Eigenschaften Bauplan einer Haltestelle (Struktur) Konkrete

Mehr

Application Engineering Grundlagen für die objektorientierte Softwareentwicklung mit zahlreichen Beispielen, Aufgaben und Lösungen

Application Engineering Grundlagen für die objektorientierte Softwareentwicklung mit zahlreichen Beispielen, Aufgaben und Lösungen I " t3ildungsmedien Informatik Application Engineering Grundlagen für die objektorientierte Softwareentwicklung mit zahlreichen Beispielen, Aufgaben und Lösungen Hansruedi Tremp und Markus Ruggiero Application

Mehr

Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis

Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0 Für den Einsatz in der Praxis Seite 2 Überblick 1. Ziele 2. Warum das alles? 3. Was ist UML 4. Diagrammarten 5. Umfeld Seite 3 1. Ziele 1. Ziele dieses

Mehr

Requirements Engineering I

Requirements Engineering I Norbert Seyff Requirements Engineering I UML Unified Modeling Language! 2006-2012 Martin Glinz und Norbert Seyff. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen

Mehr

Geoinformation I Datenmodellierung

Geoinformation I Datenmodellierung Seite 1 von 61 Geoinformation I Datenmodellierung Seite 2 von 61 Datenmodellierung Übersicht Datenverwaltung und Datenbanken objektorientierte Abbildung der Realität Grundlagen der Objektorientierung Darstellung

Mehr

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Objektmodellierung. Grundkurs C++

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Objektmodellierung. Grundkurs C++ Grundkurs C++ Objektmodellierung Grundkurs C++ Objektmodellierung welche Objekte bzw. Klassen werden benötigt? welche Information wird benötigt, um ein Objekt zu beschreiben? welche Beziehungen bestehen

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Meitner, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1 / 16 Objektorientiertes Design Matthias Meitner Marc Spisländer Lehrstuhl für

Mehr

Analyse und Modellierung von Informationssystemen

Analyse und Modellierung von Informationssystemen Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2014/2015 1 / 29 UML Einführung Klassendiagramme in der UML Relationen zwischen Klassen Einführung:

Mehr

Von der UML nach C++

Von der UML nach C++ 22 Von der UML nach C++ Dieses Kapitel behandelt die folgenden Themen: Vererbung Interfaces Assoziationen Multiplizität Aggregation Komposition Die Unified Modeling Language (UML) ist eine weit verbreitete

Mehr

Kapitel 2 - Die Definitionsphase

Kapitel 2 - Die Definitionsphase Kapitel 2 - Die Definitionsphase SWT I Sommersemester 2010 Walter F. Tichy, Andreas Höfer, Korbinian Molitorisz IPD Tichy, Fakultät für Informatik KIT die Kooperation von Forschungszentrum Karlsruhe GmbH

Mehr

SOFTWAREPROJEKT (WI) Anforderungsanalyse. Projektveranstaltung im Wintersemester 2012/13 FG System- und Softwareengineering Dr.-Ing.

SOFTWAREPROJEKT (WI) Anforderungsanalyse. Projektveranstaltung im Wintersemester 2012/13 FG System- und Softwareengineering Dr.-Ing. SOFTWAREPROJEKT (WI) Anforderungsanalyse Projektveranstaltung im Wintersemester 2012/13 FG System- und Softwareengineering Dr.-Ing. Ralph Maschotta Inhalt Das Pflichtenheft Das UML-Modellierungswerkzeug

Mehr

Entwicklung eines Klassengraphen

Entwicklung eines Klassengraphen Vortrag zur Diplomarbeit von Carsten Stocklöw Fachbereich Biologie und Informatik Johann Wolfgang Goethe - Universität 1/39 Überblick Einleitung UML Stand der Technik Konzept Implementierung Demonstration

Mehr

Die Unified Modeling Language (UML)

Die Unified Modeling Language (UML) Die Unified Modeling Language (UML) Mario Jeckle Abteilung Angewandte Informationsverarbeitung (SAI) / DaimlerChrysler Forschung Ulm (FT3/EK) mario.jeckle@mathematik.uni-ulm.de / mario.jeckle@daimlerchrysler.com

Mehr

Kurzeinführung in UML

Kurzeinführung in UML Kurzeinführung in UML Die Unified Modeling Language (UML) ist eine Sprache zur Beschreibung von Softwaresystemen. Der Grundgedanke bei UML bestand darin, eine einheitliche Notation für viele Einsatzgebiete

Mehr

Visual Studio 2010 Jetzt auch für Architekten

Visual Studio 2010 Jetzt auch für Architekten TeamConf 2010 Visual Studio 2010 Jetzt auch für Architekten 06. Mai 2010 München Thomas Hemmer Chief Technology Officer thomas.hemmer@conplement.de Daniel Meixner Consultant daniel.meixner@conplement.de

Mehr

Analyse und Entwurf von Softwaresystemen mit der UML

Analyse und Entwurf von Softwaresystemen mit der UML Analyse und Entwurf von Softwaresystemen mit der UML Bearbeitet von Horst A. Neumann 2. Auflage 2002. Buch. XVI, 480 S. Hardcover ISBN 978 3 446 22038 6 Format (B x L): 17,7 x 24,5 cm Gewicht: 1049 g Zu

Mehr

Universität Karlsruhe (TH)

Universität Karlsruhe (TH) Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Kapitel 2 Die Definitionsphase Prof. Walter F. Tichy Wo sind wir gerade? Planung Lastenheft (funktionales Modell) Definition (Analyse) Pflichtenheft

Mehr

UML 1.4 Referenz. Matthias Niete Dirk M. Sohn Orientation in Objects GmbH Weinheimer Str Mannheim

UML 1.4 Referenz. Matthias Niete Dirk M. Sohn Orientation in Objects GmbH Weinheimer Str Mannheim Matthias Niete niete@oio.de Dirk M. Sohn sohn@oio.de Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim 1 Allgemeine Notationselemente Paketnamen {Eigenschaftswerte} Notiz Paketnamen

Mehr

Übung Einführung in die Softwaretechnik

Übung Einführung in die Softwaretechnik Lehrstuhl für Informatik 3 RWTH Aachen Übung Einführung in die Softwaretechnik Lösungshinweise zum Übungsblatt 12 Aufgabe 28 Sichtbarkeits-Symbol UML Java + public # protected private (default) Sichtbar

Mehr

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig.

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig. Inhalt Vorwort Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig Danksagungen Die Autoren XIII XV XV XVII XVIII XVIII XIX Teil I:

Mehr

Objektorientierter Entwurf. Grundlagen des Software Engineerings

Objektorientierter Entwurf. Grundlagen des Software Engineerings Objektorientierter Entwurf Grundlagen des Software Engineerings Lernziele } Verstehen, wie der Softwareentwurf als Menge von interagierenden Objekten dargestellt werden kann, die ihren eigenen Zustand

Mehr