Diagrammtypen der UML 2.0

Größe: px
Ab Seite anzeigen:

Download "Diagrammtypen der UML 2.0"

Transkript

1 Diagrammtypen der UML 2.0 UML-Diagramme Strukturdiagramme Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Verteilungsdiagramm Paketdiagramm Verhaltensdiagramme Aktivitätsdiagramm Use-Case-Diagramm Zustandsautomat Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Unterschiede zwischen UML 1.x und UML 2.0: hoch mittel gering Timingdiagramm Interaktionsübersichtsdiagramm 1 Java-Praxiskurs I: Themenüberblick Objektorientierte Analyse und Design Modellierung in UML und Java Java-Programmiertechniken Datentypen, Kontrollstrukturen, Interfaces, Exception Handling,... Ein-/Ausgabe-Operationen Datei-System-Zugriffe, Streams,... Grafische Benutzungsoberflächen Swing, Model-View-Controller-Paradigma,

2 Java-Praxiskurs I: Organisatorisches zweiwöchige Kompaktveranstaltung (letzte zwei Wochen der Semesterferien) montags-freitags jeweils von 9-12 Uhr Vorlesung und Globalübung Ort: Hörsaal KH 2-07 (städtisches Kaufhaus) freie Übungsbearbeitung in Pools oder auf eigenem Rechner Anmeldung durch Eintragen auf der Mailingliste javakurs06i : weitere Informationen Lehre Sommersemester 2006 Malte Hülder (huelder@ebus.informatik.uni-leipzig.de) Vincent Wolff-Marting (wolff@ebus.informatik.uni-leipzig.de) 3 Use-Case-Diagramm Problem: Das externe Verhalten des Systems soll aus Nutzersicht dargestellt werden. Diese zentrale Frage beantwortet das Diagramm: Was leistet mein System für seine Umwelt (Nachbarsysteme, Stakeholder)? Diese Stärken hat das Diagramm: a. präsentiert die Außensicht auf das System b. geeignet zur Kontextabgrenzung c. hohes Abstraktionsniveau, einfache Notationsmittel Quelle: Jeckle et al.: UML 2 - glasklar 4 2

3 Notationselemente I Use-Case-Name Ein Use-Case beschreibt eine Menge von Aktionen, die zu einem fachlichen Ergebnis führen. Ein Use-Case ist eine abgeschlossene Einheit, seine innere Struktur ist zunächst nicht relevant. Systemname Das System ist diejenige Einheit, die durch die Use-Cases beschrieben wird. Akteur Ein Use-Case wird immer von einem Akteur ausgelöst. 5 Notationselemente II extension point Use-Case-Name A B <<extend>> condition: {} extension point: C A Die <<extend>>-beziehung zeigt an, dass ein Use-Case erweitert werden kann (durch A). Der erweiterbare Use-Case wird mit einer Linie in der Ellipse und dem Namen unter der Ellipse dargestellt. Generalisierung: B und C erben das Verhalten von A, das auch überschrieben werden kann. <<include>> A B <<include>> C Import: A importiert die Use- Cases B und C (während der Ausführung von A werden B und C aufgerufen). 6 3

4 Anwendungsbeispiel Gast Einweihungsfeier Unterhalten Tanzen extension points Nachschub Essen extension points Nachschub Trinken <<extend>> condition: {Kühlschrank leer} <<extend>> Pizzaservice anrufen Gastgeber Gäste hinausbegleiten <<include>> Feier auflösen Polizei <<include>> Feier abrupt beenden 7 Use-Case-Diagramm Änderungen gegenüber früheren UML-Versionen Akteure müssen benannt werden Die <<extend>>-beziehung kann Vorbedingungen und extension points besitzen. Besondere Hinweise Use-Cases sollten nicht zur detaillierten Beschreibung von Operationen oder Funktionen verwendet werden. Es sollten keine nicht-funktionalen Anforderungen beschrieben werden. Use-Cases sollten immer die Anwendersicht, nie die Entwicklersicht widerspiegeln. 8 4

5 Diagrammtypen der UML 2.0 UML-Diagramme Strukturdiagramme Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Verteilungsdiagramm Paketdiagramm Verhaltensdiagramme Aktivitätsdiagramm Use-Case-Diagramm Zustandsautomat Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Unterschiede zwischen UML 1.x und UML 2.0: hoch mittel gering Timingdiagramm Interaktionsübersichtsdiagramm 9 Zustandsautomaten Diese zentrale Frage beantwortet das Diagramm: Welche Zustände kann ein Objekt, eine Schnittstelle, ein Use-Case etc. bei welchen Ereignissen annehmen? Diese Stärken hat das Diagramm: a. präzise Abbildung eines Zustandmodells mit Zuständen, Ereignissen, Nebenläufigkeiten, Bedingungen, Ein- und Austrittsaktionen b. Schachtelung möglich Quelle: Jeckle et al.: UML 2 - glasklar 10 5

6 Annahmen Das System befindet sich zu einem bestimmten Zeitpunkt genau in einem Zustand. Eine Transition ist der Übergang von einem Ausgangs- zu einem Zielzustand. Der Übergang (Transition) von einem Zustand in den nächsten erfolgt ohne zeitlich Verzögerung. Vorteile Es können parallel Abläufe modelliert werden. 11 Anwendung Beschreibung des Verhaltens von Use-Cases Die formale Modellierung von Use-Cases hat folgende Vorteile: Sie sind eindeutig und weniger interpretierbar. Es können Testfälle abgeleitet werden. Beschreibung des Verhaltens von Klassen Dem Attribut einer Klasse wird im Allgemeinen ein Datentyp zugeordnet. Wenn der Datentyp eine endliche Menge von gültigen Werten besitzt, dann ergeben sich die verschiedenen Zustände der Klasse aus allen möglichen Kombinationen dieser Zustandsvariablen. Protokollzustandsautomaten Unter einem Protokoll versteht man hier die erlaubte Abfolge von Aufrufen der Operationen, die von einem Classifier angeboten werden. 12 6

7 Notationselemente I Zustand Ein einfacher Zustand wird durch ein Rechteck mit abgerundeten Ecken dargestellt. Ein Zustandsautomat hat immer genau einen Start- und einen Endzustand. Zustand entry / Aktivität exit / Aktivität do / Aktivität Ein Zustand wird durch ein Rechteck mit abgerundeten Ecken dargestellt. Die Bezeichnung des Zustands steht über der horizontalen Linie. Es sind Aktivitäten mit ihren Auslösern definiert: entry Eintrittsaktivität exit Austrittsaktivität do Andauernde Aktivität 13 Notationselemente II sm Bezeichnung Zustandsautomaten sind in einem Rahmen mit Angabe des Namens untergebracht (sm = state machine). Trigger [Guard] / Aktvität Trigger sind Auslöser von Transitionen. Der Guard ist eine Bedingung, die wahr sein muss, damit die Transition ausgelöst wird. Aktivität ist die Aktivität, die beim Durchlaufen der Transition ausgelöst wird. Startzustand Endzustand 14 7

8 Notationselemente III Pseudozustände werden genutzt, um komplexe Beziehungen zwischen Zuständen einfach darzustellen. Das System kann sich nicht im Pseudozustand aufhalten (kein Zeitverbrauch). Eine Entscheidung ermöglicht es, die Auswahl der nächsten Transition von einem aktuellen Ergebnis abhängig zu machen. Eine Kreuzung ermöglicht es, Zustände hintereinander zu schalten (im Gegensatz zur Entscheidung steht der Weg der Ausführung von Beginn an fest). Eine Gabelung teilt ein eingehende Transition auf mehrere parallel Ziele auf (Guards/Trigger an ausgehenden Verbindungen nicht erlaubt). Eine Vereinigung dient dazu, um aufgeteilte Transitionen wieder zusammenzuführen (Guards/Trigger an eingehenden Verbindungen nicht erlaubt). 15 Anwendungsbeispiel Bankautomat Kontostand überprüfen Bankkunde Authentifizieren Geld abheben sm Authentifizieren Karte eingeführt [Karte = keine Bankkarte] / Karte ausgeben [Karte = Bankkarte] korrekte Bankkarte [Pin = richtig] entry / Karte prüfen Pin eingegeben Pincode- Eingabe [Gültigkeit = gültig] [Gültigkeit = abgelaufen] / Bankkarte einziehen [Pin = falsch] / #++ [# <3] [# >= 3] / Bankkarte einziehen 16 8

9 Zustandsautomaten Änderungen gegenüber früheren UML-Versionen verbesserte Verknüpfung von statischen Elementen und dahinter liegenden Zustandsmodellen Protokollzustandsautomaten wurden zur präzisen Definition von Schnittstellen und Ports eingeführt. Besondere Hinweise Es sollten niemals Zustände existieren, die nur eingehende, aber keine ausgehenden Transitionen besitzen (ansonsten ist das Modell unvollständig). 17 Diagrammtypen der UML 2.0 UML-Diagramme Strukturdiagramme Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Verteilungsdiagramm Paketdiagramm Verhaltensdiagramme Aktivitätsdiagramm Use-Case-Diagramm Zustandsautomat Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Unterschiede zwischen UML 1.x und UML 2.0: hoch mittel gering Timingdiagramm Interaktionsübersichtsdiagramm 18 9

10 Sequenzdiagramm Diese zentrale Frage beantwortet das Diagramm: Wer tauscht mit wem welche Informationen in welcher Reihenfolge aus? Diese Stärken hat das Diagramm: a. stellt detailliert den Informationsaustausch zwischen Kommunikationspartnern dar b. sehr präzise Darstellung der zeitlichen Abfolge auch mit Nebenläufigkeiten c. Schachtelung und Flusssteuerung (Bedingungen, Schleifen, Verzweigungen) möglich Quelle: Jeckle et al.: UML 2 - glasklar 19 Sequenzdiagramm Bedeutung des Diagramms Das Sequenzdiagramm ist das meistverwendeste unter den Interaktionsdiagrammen. Gegenstand des Diagramms Es zeigt den zeitlichen Verlauf der Interaktion zwischen mehreren Kommunikationspartnern (2 Dimensionen). Häufige Anwendungsfälle Die Abfolge der Nachrichten ist wichtig. Die durch Nachrichten verursachten Zustandsübergänge sind kaum relevant. Die Interaktionen sind kompliziert. Die strukturelle Verbindung zwischen den Kommunikationspartner ist nicht relevant. Es stehen Ablaufdetails im Vordergrund

11 Notationselemente I sd Interaktionsname Das Sequenzdiagramm (sd) ist in einem Rahmen gefasst, in der Kopfzeile wird der Name des Diagramms angegeben. Name des Kommunikationspartners Startereignis Aktionssequenz Endereignis Ein Kommunikationspartner wird durch einen Kasten mit dessen Namen und einer angeschlossenen Lebenslinie dargestellt. Auf der Lebenslinie werden Aktionssequenzen eingezeichnet, die eine Tätigkeit des Kommunikationspartners beschreiben. Eine Aktionssequenz wird durch ein Startereignis ausgelöst, schließt mit einem Endereignis ab und kostet Zeit. 21 Notationselemente II Eine Lebenslinie verläuft immer bis an das Ende des Sequenzdiagramms. Soll der Kommunikationspartner vorher gelöscht werden, kann das durch ein Kreuz an der Lebenslinie ausgedrückt werden (Destruktion). Eine asynchrone Nachricht wird versendet, ohne auf die Antwort des Empfängers zu warten. Eine synchrone Nachricht (durchgehende Linie) wird versendet, die Abarbeitung stoppt solange, bis eine Antwort vom Empfänger (gestrichelte Linie) eintrifft

12 Notationselemente III Name des Kommunikationspartners Bedingung Eine Zustandsinvariante ist eine Bedingung für eine Interaktion. Sie wird zur Laufzeit unmittelbar vor einem Ereignis ausgewertet. Gilt sie nicht (Lebenslinie nicht in angegebenem Zustand), ist die Interaktion fehlerhaft implementiert. Diese Bedingung wird durch das entsprechende oder durch geschweifte Klammern angegeben. ref Innerhalb der Sequenzdiagramms können andere Interaktionen referenziert werden (Interaktionsreferenzen), es handelt sich dabei um einen Interaktionsaufruf. 23 Notationselemente IV Interaktionsoperator Kombinierte Fragmente können verwendet werden, um für einen Teil der Interaktion besondere Regeln anzugeben. Interaktionsoperatoren werden durch Interaktionsbedingungen (eckige Klammern) gesteuert. sd Interaktionsname alt [x==1] [else] A m n B Interaktionsoperatoren sind z.b.: alt alternative Ablaufmöglichkeiten, par nebenläufige Interaktionen, opt optionale Interaktionsteile...und viele mehr

13 Anwendungsbeispiel Hausmann Waschmaschine Use-Case-Diagramm Wäsche trocknen Sequenzdiagramm sd Wäsche waschen :Benutzer :Steuerung :Wasserventil :Heizelement :Motor :Pumpe Wäsche waschen <<extend>> einschalten öffnen Wasser erhitzen (Temperatur=30) schließen Benutzer Wasserventil waschen Steuerung + einschalten() + öffnen() + schließen() abpumpen Motor Pumpe + abpumpen() + waschen() + schleudern() par schleudern abpumpen Heizelement + Wasser erhitzen (Temperatur) Klassendiagramm 25 Sequenzdiagramm Änderungen gegenüber früheren UML-Versionen ist strukturier- und zerlegbar Sequenzen können damit beliebig ineinander verschachtelt werden. viele Möglichkeiten zur Steuerung von Kontrollflüssen und Nebenläufigkeiten Alle wesentlichen Konstrukte aus den beliebten Message Sequence Charts (MSC) wurden übernommen. Besondere Hinweise Es sollten häufig Interaktionsreferenzen genutzt werden, um das Diagramm übersichtlich zu gestalten. Es sollten an kritischen Stellen auch die falschen Abläufe mit den entsprechenden kombinierten Fragmenten modelliert werden

14 Diagrammtypen der UML 2.0 UML-Diagramme Strukturdiagramme Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Verteilungsdiagramm Paketdiagramm Verhaltensdiagramme Aktivitätsdiagramm Use-Case-Diagramm Zustandsautomat Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Unterschiede zwischen UML 1.x und UML 2.0: hoch mittel gering Timingdiagramm Interaktionsübersichtsdiagramm 27 Kommunikationsdiagramm Problem: Es soll modelliert werden, wie Interaktionspartner in einem komplexen System miteinander kommunizieren. Diese zentrale Frage beantwortet das Diagramm: Wer kommuniziert mit wem? Wer arbeitet im System zusammen? Diese Stärken hat das Diagramm: a. stellt den Informationsaustausch zwischen Kommunikationspartnern dar b. Überblick steht im Vordergrund (Details und zeitliche Abfolge sind weniger wichtig) Quelle: Jeckle et al.: UML 2 - glasklar 28 14

15 Notationselemente sd Interaktionsname Das Kommunikationsdiagramm wird mit einem rechteckigen Rahmen gefasst und mit dem Interaktionsnamen versehen (irreführenderweise steht sd für sequence diagramm). Sequenzbezeichner: Nachrichtenname Name des Kommunikationspartners Eine Nachricht wird als durchgezogene Linie dargestellt, ein Pfeil kennzeichnet die Richtung der Nachricht. Die zeitliche Reihenfolge der Nachrichten wird durch eine Gliederungshierarchie abgebildet (Sequenzbezeichner). Kommunikationspartner werden als Rechteck dargestellt. 29 Anwendungsbeispiel sd Gassi gehen 1: Gassi gehen Hundehalter Hund 3: entfernen 2.1 schimpfen 1.1 machen Passant Häufchen 2. reintreten 30 15

16 Kommunikationsdiagramm Änderungen gegenüber früheren UML-Versionen war früher das Kollaborationsdiagramm sonst keine wesentlichen Änderungen Besondere Hinweise Die Modellierung sollte nie aus Sicht eines bestimmten Kommunikationspartners erfolgen, sondern immer aus der Vogelperspektive. Für nebenläufige und iterative Nachrichten sollte lieber das Sequenzdiagramm verwendet werden. 31 Diagrammtypen der UML 2.0 UML-Diagramme Strukturdiagramme Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Verteilungsdiagramm Paketdiagramm Verhaltensdiagramme Aktivitätsdiagramm Use-Case-Diagramm Zustandsautomat Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Unterschiede zwischen UML 1.x und UML 2.0: hoch mittel gering Timingdiagramm Interaktionsübersichtsdiagramm 32 16

17 Timingdiagramm Problem: Das exakte zeitliche Verhalten eines Systems soll beschrieben werden. Diese zentrale Frage beantwortet das Diagramm: Wann befinden sich verschiedene Interaktionspartner in welchem Zustand? Diese Stärken hat das Diagramm: a. visualisiert das exakte zeitliche Verhalten von Klassen, Schnittstellen etc. b. geeignet für Detailbetrachtungen, bei denen es wichtig ist, zu welchem Zeitpunkt ein Ereignis eintritt Quelle: Jeckle et al.: UML 2 - glasklar 33 Notationselemente I td Interaktionsname Min Das gesamte Timing-Diagramm wird von einem Rahmen umschlossen. Der Name des Diagramms und eine Zeitskala können angegeben werden. Ausprägung:Klasse Ausprägung:Klasse Lebenslinie Lebenslinie Eine Lebenslinie steht für einen Teilnehmer der Interaktion. Die Zeitachse beginnt links und endet rechts. Jede Lebenslinie trägt den Namen des Interaktionspartners (es kann auch nur die Klasse oder beides angegeben werden)

18 Notationselemente II Zustand 1 Zustand 2 Zustand 3 Auslöser asynchrone Nachricht synchrone Nachricht Antwortnachricht Nachricht Auslöser Die Zeitverlaufslinie zeigt die Zustandsänderungen einer Lebenslinie an. Die Zustände werden links untereinander notiert. Die Zeitverlauslinie gibt die zeitliche Reihenfolge der Zustände an. Ein waagerechter Verlauf zeigt einen ruhenden Zustand an. Ein senkrechter Verlauf zeigt einen Zustandswechsel an. Semantik und Syntax der Nachrichten wie im Sequenzdiagramm Sprungmarken können an Nachrichtenlinien benutzt werden, um die Lesbarkeit zu verbessern. 35 Anwendungsbeispiel td Alkoholkontrolle fluchen Pusten-Ende :Alkomat :Polizist :Fahrer pusten warten warten reden auswerten Alkomat erklären pusten beende pusten Pusten-Ende Alkoholwert Strafhöhe betriebsbereit Sekunden 36 18

19 Timing-Diagramm Änderungen gegenüber früheren UML-Versionen Das Timing-Diagramm wurde in UML 2.0 neu eingeführt. Besondere Hinweise Dieses Diagramm ist besonders für sicherheitskritische und technische Systeme geeignet (z.b. ABS-System, Auto- Waschstraße). Vor der Anwendung des Timing-Diagramms sollten Use-Case-, Klassen-, Aktivitäts- oder Zustandsdiagramme angefertigt werden, damit die notwendigen Klassen, Objekte oder Aktionen bekannt sind. 37 Diagrammtypen der UML 2.0 UML-Diagramme Strukturdiagramme Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Verteilungsdiagramm Paketdiagramm Verhaltensdiagramme Aktivitätsdiagramm Use-Case-Diagramm Zustandsautomat Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Unterschiede zwischen UML 1.x und UML 2.0: hoch mittel gering Timingdiagramm Interaktionsübersichtsdiagramm 38 19

20 Interaktionsübersichtsdiagramm Problem: Interaktionsdiagramme liegen oft in großer Zahl vor und werden schnell unübersichtlich. Diese zentrale Frage beantwortet das Diagramm: Wann läuft welche Interaktion ab? Wie behalte ich die Übersicht über meine Interaktionen? Diese Stärken hat das Diagramm: a. verbindet Interaktionsdiagramme auf Top-Level-Ebene b. hohes Abstraktionsniveau Quelle: Jeckle et al.: UML 2 - glasklar 39 Interaktionsübersichtsdiagramm Idee Die leicht lesbare Notation der Aktivitätsdiagramme wird mit der von kommunikationsorientierten Interaktionen kombiniert. Alternativen Das Diagramm kann auch komplett als Sequenzdiagramm dargestellt werden. Das Diagramm kann auch komplett als Aktivitätsdiagramm dargestellt werden

21 Notationselemente sd Interaktionsname Das Interaktionsübersichtsdiagramm wird in einem Rahmen dargestellt. Auch hier wird irreführenderweise die Bezeichnung sd verwendet. Interaktionen können geschachtelt werden. ref Innerhalb der Interaktionsübersichtsdiagramms können andere Interaktionen referenziert werden (Interaktionsreferenzen), es handelt sich dabei um einen Interaktionsaufruf. Kontrollelemente (Verzweigung, Synchronisation etc.) werden wie bei Aktivitätsdiagrammen verwendet. 41 Anwendungsbeispiel sd Fahrstuhl ref ref Fahrstuhlruf Etagenwahl [Fahrstuhltür.Zustand == geschlossen ] td Türautomatik :Fahrstuhltür offen beim öffnen beim schließen geschlossen :Lichtschranke unterbrochen nicht unterbrochen ref Fahrstuhlstart 42 21

22 Zusammenfassung Änderungen gegenüber früheren UML-Versionen Das Interaktionsübersichtsdiagramm wurde in UML 2.0 neu eingeführt. Besondere Hinweise Dieses Diagramm dient zur Wahrung von Klarheit und Kontrolle. Es sollte daher immer mit möglichst wenig Elementen und viel mit Schachtelung gearbeitet werden. Zur Erhöhung der Lesbarkeit sollten besser Referenzierungen anstatt Inline-Interaktionen verwendet werden. 43 Diagrammtypen der UML 2.0 UML-Diagramme Strukturdiagramme Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Verteilungsdiagramm Paketdiagramm Verhaltensdiagramme Aktivitätsdiagramm Use-Case-Diagramm Zustandsautomat Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Unterschiede zwischen UML 1.x und UML 2.0: hoch mittel gering Timingdiagramm Interaktionsübersichtsdiagramm 44 22

23 Methodik Vom Klassenmodell und den wichtigsten Anwendungsfällen zu Ergänzungen 45 Datenstrukturen und Algorithmen Komplexität und Effizienz 46 23

24 Datenstrukturen und Algorithmen Bestandteile von Programmen: Benutzerschnittstelle (Presentation Layer) Verarbeitungs- / Bearbeitungsteile / Business Logik (Application oder Business Layer) Persistenzteil (Persistence Layer) 2 wichtige Faktoren: Qualität der Ergebnisse Laufzeit 47 Überlegungen zur Laufzeit Typisches Problem: Datenmigration / Anwendung auf relevante Menge von Daten und/oder echte Daten. Häufig ist die Laufzeit auf echten Daten zunächst völlig inakzeptabel. Von mitentscheidender Bedeutung sind dabei die passenden Zugriffe auf gespeicherte Daten und das Einfügen in Datenmengen. Damit wird deutlich: Algorithmen müssen zur gewählten Datenstruktur passen! Für viele Standardprobleme sind geeignete Algorithmen und passende Datenstrukturen bekannt

25 Wichtige Klasse von Algorithmen: Suchen und Sortieren Beispiel: Suchen im Telefonbuch Zur raschen Suche nutzen wir aus, dass die Einträge alphabetisch sortiert sind nach Name, Vorname, Adresse. Intuitiv sucht man binär. Bei 1000 Einträgen Umfang, brauchen wir höchstens 10 Schritte, bei 2000 Einträgen auch nur 11. Nehmen wir mal an, dass wir feststellen wollen, ob in einem Telefonbuch eine Telefonnummer vorkommt. Dann muss linear gesucht werden. Im Schnitt benötigen wir bei 1000 Einträgen 500 Schritte. Im schlimmsten Fall sogar Wenn man öfter Telefonnummern sucht, macht es wohl Sinn, nach Telefonnummern zu sortieren. 49 Allgemeine Formulierung des Suchproblems Suchproblem: In einem Behälter A befinden sich viele Elemente. Prüfe, ob ein Element e in A existiert, das eine bestimmte Eigenschaft P(e) erfüllt. Behälter steht dabei ganz allgemein für unterschiedliche Datenstrukturen wie: Array Datei Menge Liste Baum Graph Stack Queue 50 25

26 Allgemeine Suche in Behältern Entferne der Reihe nach Elemente aus dem Behälter, bis dieser leer ist oder ein Element mit der gesuchten Eigenschaft gefunden wurde. Programmähnlich: Prüfen, ob Behälter leer ist: istleer Ergreifen und Entfernen eines Elements aus dem Behälter: nimmeines 51 26

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

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

OOA-Dynamische Konzepte

OOA-Dynamische Konzepte Proseminar UML im SS 2005 OOA-Dynamische Konzepte Teil 2 von Benjamin Daeumlich 1 Übersicht Szenario Definition Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Sequenz- vs. Kommunikationsdiagramm

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

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

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

Sequenz- und Kommunikationsdiagrammen. Systemmodellierung mit SysML von Michel Manthey

Sequenz- und Kommunikationsdiagrammen. Systemmodellierung mit SysML von Michel Manthey Sequenz- und Kommunikationsdiagrammen von Michel Manthey 1 Interaktionsdiagramme Sequenzdiagramme (auch in SysML) Kommunikationsdiagramme Zeitdiagramme Interaktionsübersichtsdiagramme von Michel Manthey

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

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 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

Verhaltensdiagramme. 3.5 Sequenzdiagramm 3.6 Kommunikationsdiagramm. Prof. Mario Jeckle

Verhaltensdiagramme. 3.5 Sequenzdiagramm 3.6 Kommunikationsdiagramm. Prof. Mario Jeckle Verhaltensdiagramme 3.5 Sequenzdiagramm 3.6 Kommunikationsdiagramm Prof. Mario Jeckle Fachhochschule Furtwangen mario@ http://www. Fachhochschule Furtwangen, Sommersemester 2004 Das Sequenzdiagramm Dient

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

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

UML 2.0 und die Modellierung von Realtime-Systemen

UML 2.0 und die Modellierung von Realtime-Systemen UML 2.0 und die Modellierung von Realtime-Systemen Seminararbeit im Fach Informatik im Rahmen des Seminars Sicherheitskritische Systeme an der Universität Siegen, Fachgruppe für Praktische Informatik eingereicht

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

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

UML 2 glasklar Praxiswissen für die UML-Modellierung

UML 2 glasklar Praxiswissen für die UML-Modellierung Chris Rupp, Stefan Queins, Barbara Zengler UML 2 glasklar Praxiswissen für die UML-Modellierung ISBN-10: 3-446-41118-6 ISBN-13: 978-3-446-41118-0 Inhaltsverzeichnis Weitere Informationen oder Bestellungen

Mehr

Objektorientierte Analyse (OOA) Dynamisches Modell. Objektorientierte Analyse (OOA) Sequenzdiagramm

Objektorientierte Analyse (OOA) Dynamisches Modell. Objektorientierte Analyse (OOA) Sequenzdiagramm Inhalte Sequenzdiagramm Kollaborationsdiagramm Dynamisches Modell Seite 1 Sequenzdiagramm Ein Sequenzdiagramm beschreibt die zeitliche Abfolge von Interaktionen zwischen einer Menge von Objekten innerhalb

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

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

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

Techniken der Projektentwicklungen

Techniken der Projektentwicklungen Dynamische Modellierung 8. Termin Rückblick auf statische Modellierung Dynamische Modellierung Basiskonzepte Beispiel Erweiterungen Eigenschaften Syntax Rückblick auf statische Modellierung Dynamische

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 glasklar. Mario Jeckle, Jürgen Hahn, Stefan Queins, Barbara Zengler, Chris Rupp. Praxiswissen für die UML-Modellierung und -Zertifizierung

UML 2 glasklar. Mario Jeckle, Jürgen Hahn, Stefan Queins, Barbara Zengler, Chris Rupp. Praxiswissen für die UML-Modellierung und -Zertifizierung UML 2 glasklar Mario Jeckle, Jürgen Hahn, Stefan Queins, Barbara Zengler, Chris Rupp Praxiswissen für die UML-Modellierung und -Zertifizierung ISBN 3-446-22952-3 Inhaltsverzeichnis Weitere Informationen

Mehr

State diagrams (Zustandsautomaten)

State diagrams (Zustandsautomaten) State diagrams (Zustandsautomaten) Allgemeines Zustandsautomaten geben Antworten auf die Frage Wie verhält sich das System in einem bestimmten Zustand bei gewissen Ereignissen?. Sie spezifizieren somit

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

UML Grundlagen, Zustandsautomat. Zustandsautomaten bilden eine Erweiterung der endlichen Automaten

UML Grundlagen, Zustandsautomat. Zustandsautomaten bilden eine Erweiterung der endlichen Automaten Zustandsautomaten bilden eine Erweiterung der endlichen Automaten angereichert um zusätzliche Elemente Bedingungen Verzweigungen theoretische Wurzeln: David Harel, 1985 DI. Helmut Tockner 1 Zustandsautomaten

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

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

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

Software-Engineering

Software-Engineering FH Wedel Prof. Dr. Sebastian Iwanowski SWE43 Folie 1 Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 4: Systemanalyse Teil 3: Der Systemanalysestandard UML FH Wedel Prof. Dr. Sebastian Iwanowski

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

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Grundkonzepte der UML Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind viele Teile direkt aus der Vorlesung

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

SEQUENZDIAGRAMM. Christoph Süsens

SEQUENZDIAGRAMM. Christoph Süsens SEQUENZDIAGRAMM Christoph Süsens DEFINITION Das Sequenzdiagramm gibt Auskunft darüber: Welche Methoden für die Kommunikation zwischen ausgewählten Objekten zuständig sind. Wie der zeitliche Ablauf von

Mehr

(BABOK-v3-Technik 10.42)

(BABOK-v3-Technik 10.42) (BABOK-v3-Technik 10.42) Allgemeines Sequenzdiagramme geben Antworten auf die Frage Wie läuft die Kommunikation in meinem System ab?. Sie ermöglichen die Modellierung von festen Reihenfolgen, zeitlichen

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Inhalt Nachlese Aufgaben Literatur Software Engineering in der Praxis Praktische Übungen Inhalt Nachlese Aufgaben Literatur Marc Spisländer Dirk Wischermann Lehrstuhl für Software Engineering Friedrich-Alexander-Universität

Mehr

UML 2 glasklar. Praxiswissen für die UML-Modellierung. Bearbeitet von Chris Rupp, Stefan Queins, die SOPHISTen

UML 2 glasklar. Praxiswissen für die UML-Modellierung. Bearbeitet von Chris Rupp, Stefan Queins, die SOPHISTen UML 2 glasklar Praxiswissen für die UML-Modellierung Bearbeitet von Chris Rupp, Stefan Queins, die SOPHISTen 4., aktualisierte und erweiterte Auflage 2012. Buch. XX, 560 S. ISBN 978 3 446 43057 0 Format

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

Vorlesung "Software-Engineering"

Vorlesung Software-Engineering Vorlesung "Software-Engineering" Prof. Ralf Möller, TUHH, Arbeitsbereich STS Übung: Miguel Garcia Heute: Spezifikation mit UML Verhaltensdiagramme 1 Objektdiagramm Aufgabe: Darstellung einer (inhärent

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

Tabellarische Kurzreferenz der UML-Elemente

Tabellarische Kurzreferenz der UML-Elemente Tabellarische Kurzreferenz der UML-Elemente Version 2.0 Vanessa Petrausch 1 Klassendiagramm Die folgenden Tabellen fassen die einzelnen Elemente abstrahiert zusammen. In Spalte 1 steht der Name des Elements,

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

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 11. UML: Sequenzdiagramm 1 Motivation Es

Mehr

Übungsaufgaben UML Zertifizierung Fundamental-Level

Übungsaufgaben UML Zertifizierung Fundamental-Level Übungsaufgaben UML Zertifizierung Fundamental-Level Kapitel 15: Sequenzdiagramm Die folgenden Aufgaben behandeln die Inhalte aus Kapitel 15 von UML 2 glasklar (4. Auflage), die die OMG für die Zertifizierung

Mehr

Vgl. Oestereich Kap 2.7 Seiten 134-147

Vgl. Oestereich Kap 2.7 Seiten 134-147 Vgl. Oestereich Kap 2.7 Seiten 134-147 1 Sequenzdiagramme beschreiben die Kommunikation/Interaktion zwischen den Objekten (bzw. verschiedenen Rollen) eines Szenarios. Es wird beschrieben, welche Objekte

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

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

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

1. Erläutere ausführlich, welche Beziehung zwischen den Klassen bzw. Interfaces

1. Erläutere ausführlich, welche Beziehung zwischen den Klassen bzw. Interfaces UML Klassen Diagramm Aufgaben UML Klassendiagramm 1. Erläutere ausführlich, welche Beziehung zwischen den Klassen bzw. Interfaces AdressbuchGui und JFrame, AdressbuchGui und AdressbuchGuiListener AdressbuchGuiListener

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

Teil II: OOP und JAVA (Vorlesung 9)

Teil II: OOP und JAVA (Vorlesung 9) Teil II: OOP und JAVA (Vorlesung 9) Modul: Programmierung B-PRG Grundlagen der Programmierung II Prof. Dot.-Ing. Roberto Zicari Professur für Datenbanken und Informationssysteme (FB 12) 14.06.06 1 Teil

Mehr

ANWENDUNGSFALLDIAGRAMM:

ANWENDUNGSFALLDIAGRAMM: EINFÜHRUNG Ein UML Modell kann folgende unterschiedliche Sichtweisen auf den Problemlösungsbereich (Aspekte) enthalten: Dynamische Aspekte Softwareorganisatorische Aspekte Statische Aspekte Welche Aussagen

Mehr

Formale Modellierung Vorlesung vom : Beyond JML

Formale Modellierung Vorlesung vom : Beyond JML Rev. 1702 1 [12] Formale Modellierung Vorlesung vom 07.05.12: Beyond JML Till Mossakowski & Christoph Lüth Universität Bremen Sommersemester 2012 2 [12] Heute im Programm Grenzen der JML Nach JML: UML

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

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

Ü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

Besteht aus Aktoren (actors) und use-cases sowie deren Verbindungen.

Besteht aus Aktoren (actors) und use-cases sowie deren Verbindungen. Besteht aus Aktoren (actors) und use-cases sowie deren Verbindungen. Shop Käufer Einkauf Verkauf Verwaltung Händler Hersteller Actor: Jemand oder etwas, der/das mit dem zu entwickelnden System interagiert

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

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

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

Inhaltsverzeichnis. Teil I Einführung 13. Teil II Struktur 41. Vorwort 11

Inhaltsverzeichnis. Teil I Einführung 13. Teil II Struktur 41. Vorwort 11 UML 2 für Studenten Inhaltsverzeichnis Vorwort 11 Teil I Einführung 13 Kapitel 1 UML (nicht nur) für Studenten 15 1.1 Zielgruppen 16 1.2 Konventionen 17 1.3 Abgrenzung 18 1.4 Aufbau dieses Buches 18 Kapitel

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

Klassendiagramm. (class diagram)

Klassendiagramm. (class diagram) : Klassendiagramm http:///topic95.html Klassendiagramm (class diagram) Klassendiagramm Objektdiagramm Komponentendiagramm Kompositionsstrukturdiagramm Verteilungsdiagramm Einstieg Paketdiagramm Aufbau

Mehr

Von UML 1.x nach UML 2.0

Von UML 1.x nach UML 2.0 Zürich Soft Summer 2005 Fortgeschrittene Aspekte der Software Technologie Von UML 1.x nach UML 2.0 Prof. Dr. Martin Glinz www.ifi.unizh.ch/req Ergänzendes Material zur Vorlesung Spezifikation und Entwurf

Mehr

2. Übung zu Software Engineering

2. Übung zu Software Engineering 2. Übung zu Software Engineering WS 2009/2010 Henning Heitkötter Projektplanung, Netzplantechnik AUFGABE 3 1 Aufgabenstellung Ausgangspunkt ist die Anforderungsermittlung, an die sich eine Durchführbarkeitsstudie

Mehr

Dipl.-Inform. Lars Ebrecht

Dipl.-Inform. Lars Ebrecht Konsistente Verknüpfung von Aktivitäts-, Sequenzund Zustandsdiagrammen Darstellungsunabhängige und formale Semantik zur Verhaltensbeschreibung von Echtzeit-Systemen Dipl.-Inform. Lars Ebrecht Mobilität

Mehr

Universität Karlsruhe (TH)

Universität Karlsruhe (TH) Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Kapitel 2.2 Weitere UML- Diagrammtypen Walter Tichy Guido Malpohl Tom Gelhausen UML-Diagramme Ablauf Anwendungsfalldiagramm Szenarien Interaktionsdiagramm

Mehr

Unternehmensmodellierung

Unternehmensmodellierung Josef L. Staud Unternehmensmodellierung Objektorientierte Theorie und Praxis mit UML 2.0 4ü Springer Inhaltsverzeichnis EINLEITUNG 1 1.1 Unternehmensmodellierung 1 1.2 Objektorientierung als solche 6 1.3

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

Objektorientierte Modellierung

Objektorientierte Modellierung Objektorientierte Modellierung Sequenzdiagramm Business Informatics Group Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3, 1040 Vienna,

Mehr

Objektorientierte Softwareentwicklung

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

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

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

Kapitel Weitere UML-Diagrammtypen

Kapitel Weitere UML-Diagrammtypen Kapitel 2.2 - Weitere UML-Diagrammtypen 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

Mehr

Softwaretechnik SS 2006

Softwaretechnik SS 2006 Softwaretechnik SS 2006 7. Vorlesungseinheit Prof. Dr. Urs Andelfinger Darmstadt, 22. Mai 2006 Softwaretechnik (SWT) Vorlesung und Praktikum SS 2006 Inhaltsübersicht SW-Management SW-Entwicklung SW-Qualitätsmgmt.

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

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

Objektorientierte Systementwicklung

Objektorientierte Systementwicklung Karl-Heinz Rau Objektorientierte Systementwicklung Vom Geschäftsprozess zum Java-Programm Mit 162 Abbildungen vieweg Überblick und Vorbemerkungen 1 1 Objektorientierte Software-Entwicklung 5 1.1 Überblick

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

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

Bei Sitzungen im Team oder mit dem Kunden erleichtert eine grafische Darstellung des Software-Systems die Kommunikation.

Bei Sitzungen im Team oder mit dem Kunden erleichtert eine grafische Darstellung des Software-Systems die Kommunikation. UML Was ist UML UML (=Unified Modeling Language) ist eine weit verbreitete, standardisierte Notationsschrift, die das grafische Darstellen von Software-Systemen ermöglicht und dadurch eine grosse Unterstützung

Mehr

27. Oktober 2005 Florian Marwede

27. Oktober 2005 Florian Marwede Ausgewählte Aspekte zur Einführung in UML und XMI 27. Oktober 2005 Florian Marwede Carl von Ossietzky Universität Oldenburg Fakultät II Department für Informatik Abteilung Entwicklung korrekter Systeme

Mehr

Softwaretechnik SS Vorlesungseinheit

Softwaretechnik SS Vorlesungseinheit Softwaretechnik SS 2006 7. Vorlesungseinheit Prof. Dr. Urs Andelfinger Darmstadt, 22. Mai 2006 Softwaretechnik (SWT) Vorlesung und Praktikum SS 2006 Inhaltsübersicht SW-Management SW-Entwicklung SW-Qualitätsmgmt.

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

Aktivitäts-, Sequenz- und Zustandsdiagramme

Aktivitäts-, Sequenz- und Zustandsdiagramme Aktivitäts-, Sequenz- und Zustandsdiagramme Tutorium 17 Fabian Miltenberger 19.05.2014 INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD) KIT Universität des Landes Baden-Württemberg und nationales

Mehr

Software Engineering, SoSe 07, WSI, D. Huson, May 7,

Software Engineering, SoSe 07, WSI, D. Huson, May 7, Software Engineering, SoSe 07, WSI, D. Huson, May 7, 2007 17 4 Modellierung in UML Nach einer Vorlesung von Prof. Andreas Zeller, Lehrstuhl Softwaretechnik Universität des Saarlandes, Saarbrücken. 4.1

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

Arbeitsgrundlagen Marktkommunikation

Arbeitsgrundlagen Marktkommunikation Anwendungshilfen BDEW Bundesverband der Energie- und Wasserwirtschaft e.v. Reinhardtstraße 32 10117 Berlin Telefon +49 30 300 199-0 Telefax +49 30 300 199-3900 E-Mail info@bdew.de www.bdew.de Arbeitsgrundlagen

Mehr

UML / Fujaba. Generierung von Java-Quellcode aus UML-Diagrammen. Marcel Friedrich

UML / Fujaba. Generierung von Java-Quellcode aus UML-Diagrammen. Marcel Friedrich UML / Fujaba Generierung von Java-Quellcode aus UML-Diagrammen Marcel Friedrich Agenda Einleitung Struktur Verhalten Klassendiagramme Storydiagramme Statecharts Action methods 2 Thema Codegenerierung mit

Mehr

3. Tutorium zu Softwaretechnik I

3. Tutorium zu Softwaretechnik I 3. Tutorium zu Softwaretechnik I Aktivitäts-, Sequenz- & Zustandsdiagramme Michael Hoff 20.05.2014 INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION KIT Universität des Landes Baden-Württemberg 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

Aktivitätsdiagramm (Activity Diagram)

Aktivitätsdiagramm (Activity Diagram) (Activity Diagram) Eine Präsentation von Christoph Süsens und Matthias Holdorf 1 C Diagrammtypen im Überblick 2 Definiton Problem: Es sollen Abläufe, z.b. Geschäftsprozesse, modelliert werden. Im Vordergrund

Mehr

Objektorientiertes Design

Objektorientiertes Design Objektorientiertes Design Beispiel-Anforderungen: Simple International (SIB) Interaktion mit der SIB: Ablauf von Interaktionen: UML Beispiel für OOD: Vorgehen Ergebnis Beispiel-Anforderungen: Simple International

Mehr

UML fürs Pflichtenheft

UML fürs Pflichtenheft UML fürs Pflichtenheft Sebastian Fischmeister Department of Computer Science University of Salzburg, Austria Sebastian.Fischmeister@cs.uni-salzburg.at Overview Use-Case Diagramm State-Machine Diagramm

Mehr

Workflows: Anforderungserhebung und analyse

Workflows: Anforderungserhebung und analyse Workflows: Anforderungserhebung und analyse Tutorium 4 9. März 2009 Svetlana Matiouk, Uni Bonn Ferientutorien zur Vorlesung Softwaretechnologie WS 2008 4. Treffen, Aktivitäten bei der Softwareentwicklung

Mehr

Klausur. Softwareentwurf. 14. Februar 2011 Bearbeitungszeit: 120 Minuten

Klausur. Softwareentwurf. 14. Februar 2011 Bearbeitungszeit: 120 Minuten Klausur Softwareentwurf 14. Februar 2011 Bearbeitungszeit: 120 Minuten FG Datenbank- und Informationssysteme Prof. Dr. Gregor Engels unbedingt vollständig und lesbar ausfüllen! Vorname: Matrikelnummer:

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

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