Modellieren mit der Unified Modeling Language: Verhaltensdiagramme. 18. November 2014
|
|
- Tristan Kranz
- vor 6 Jahren
- Abrufe
Transkript
1 Modellieren mit der Unified Modeling Language: Verhaltensdiagramme 18. November 2014
2 Überblick Was ist das Verhalten eines Softwaresystems? Wie analysiert man das Verhalten? Anwendungsfallbeschreibungen Verfeinerung von Anwendungsfällen durch Aktivitätsdiagramme Testfallbeschreibung durch Interaktionsdiagramme Wie lässt sich das Verhalten eines Softwaresystems genauer modellieren? Ablauf von Aktivitäten, an denen ein oder mehrere Objekte beteiligt sein können Änderungen von Objektstrukturen Interaktionen zwischen Objekten Taentzer Einführung in die Softwaretechnik 157
3 Was ist das Verhalten eines Softwaresystems? Das Verhalten eines Systems wird durch eine Menge von Prozessen beschrieben. Ein Prozess ist eine Folge von Einzeltätigkeiten, die schrittweise ausgeführt werden, um ein vorgegebenes Ziel zu erreichen. Ein Prozess kann Teil eines anderen sein. Prozesse beschreiben z.b. Arbeitsabläufe, Berechnungen, reaktives und proaktives Verhalten Taentzer Einführung in die Softwaretechnik 158
4 Welche Verhaltensaspekte können modelliert werden? Abläufe, an denen ein oder mehrere Objekte beteiligt sein können Aus welchen Aktivitäten bestehen diese Abläufe? Wie sind sie zueinander angeordnet? (Kontrollfluss?) Welche Auswirkungen haben Aktivitäten auf Objektstrukturen? Wie kann man diese modellieren? Interaktionen zwischen Objekten Wie kommunizieren Objekte untereinander? Welche Informationen tauschen welche Objekte wann aus? Taentzer Einführung in die Softwaretechnik 159
5 Modellierung von objektorientiertem Verhalten Zwei von der UML angebotenen Verhaltensdiagramme: Aktivitätsdiagramme beschreiben Abläufe, die aus Aktivitäten bestehen. Die Aktivitäten werden in Kontrollstrukturen angeordnet. Aktivitäten können Änderungen auf Objektstrukturen modellieren. Interaktionsdiagramme (auch: Sequenzdiagramme) beschreiben die Dynamik, die sich aus der Interaktion mehrerer Objekte miteinander ergibt. Diese Verhaltensmodelle sind komplementär zueinander und geeignet, verschiedene Aspekte von Systemverhalten zu beschreiben. Taentzer Einführung in die Softwaretechnik 160
6 Aktivitätsdiagramm...beschreibt einen Ablauf (z.b. Geschäftsprozess oder Berechnung) als strukturierte Folge von Aktivitäten,...ist geeignet, wenn Systemzustände mit Aktivitäten verbunden sind und sequentiell bzw. nebenläufig verknüpft sind,...enthält Kontrollflusselemente, wie z.b. Verzweigungen,...ist entweder einem Anwendungsfall, einer Operation oder einer Klasse zugeordnet, kann durch Objektfluss verfeinert werden. Taentzer Einführung in die Softwaretechnik 161
7 Szenario: Analyse von Systemverhalten Beschreibung eines Anwendungsfalls Modellierung des groben Ablaufs Identifikation von Aktivitäten aus der Ablaufbeschreibung des Anwendungsfalls weitere Strukturierung des Ablaufs Verwendung von Kontrollkonstrukten falls nötig, in mehreren Verfeinerungsschritten Verfeinerung der Aktivitäten durch Objektdiagramme Modellierung von dynamischen Objektstrukturen Taentzer Einführung in die Softwaretechnik 162
8 Analyse von Anwendungsfällen Anwendungsfall Bestellung bearbeiten Der Anwendungsfall Lagerbestand ermitteln wird benutzt, um für jeden Posten der gerade bearbeiteten Kundenbestellung den aktuellen Lagerbestand des zugehörigen Produktes zu ermitteln (S11). Wenn das Zentrum eine Bestellung entgegennimmt, wird jeder Bestellposten in eine der beiden folgenden Karteien eingeordnet: (a) Lieferkartei, (b) Wartekartei (S13). Falls für einen Bestellposten genügend Waren auf Lager sind, dann wird dieser in die Lieferkartei eingetragen und der Lagerbestand entsprechend korrigiert (S14). Anderenfalls wird der Bestellposten in die Wartekartei eingetragen (S15). Grobmodellierung: Taentzer Einführung in die Softwaretechnik 163
9 Beispiel: Analyse von Anwendungsfällen Grobmodellierung: verfeinerte Modellierung: Taentzer Einführung in die Softwaretechnik 164
10 Beispiel: Verfeinerte Aktivitäten Bestellung beginnen :Firma <<create>> :Kundenbestellung datum = d Taentzer Einführung in die Softwaretechnik 165
11 Beispiel: Verfeinerte Aktivitäten Bestellposten hinzufügen <<create>> :Kundenbestellung datum = d <<create>> :Bestellposten nummer = n menge = m :Produkt Taentzer Einführung in die Softwaretechnik 166
12 Beispiel: Verfeinerte Aktivitäten auf Lager :Bestellposten menge = m :Lagerbestand menge = me :Produkt m < me Taentzer Einführung in die Softwaretechnik 167
13 Beispiel: Verfeinerte Aktivitäten in die Lieferkartei aufnehmen :Bestellposten menge = m <<create>> :Lieferkartei :Produkt Taentzer Einführung in die Softwaretechnik 168
14 Beispiel: Verfeinerte Aktivitäten Bestand korrigieren :Bestellposten menge = m :Produkt :Lagerbestand menge = me - m Taentzer Einführung in die Softwaretechnik 169
15 Beispiel: Verfeinerte Aktivitäten in die Wartekartei aufnehmen :Bestellposten menge = m <<create>> :Wartekartei Taentzer Einführung in die Softwaretechnik 170
16 Beispiel: parallele Ausführung Auftragsbestand feststellen Taentzer Einführung in die Softwaretechnik 171
17 Aktivitätendiagramme: Modellierungselemente Aktivität mit Bezeichnung Aufeinanderfolge von Aktivitäten, ggf. geknüpft an Bedingung <B> "Splitting": Aufspalten in parallele oder unabhängig voneinander auszuführende Schritte Synchronisation paralleler oder unabhängig voneinander auszuführender Schritte Entscheidung Anfangs- / Endzustand Taentzer Einführung in die Softwaretechnik 172
18 Verfeinerte Aktivitäten: Modellierungselemente :<Typ> <<create>> :<Typ> <<delete>> :<Typ> :<Typ> <attribut> = <wert> :<Typ> :<Typ> <<create>> Vorhandenes und zu erhaltendes Objekt mit Typangabe Neu zu erzeugendes Objekt, der Typ muss konkret sein Vorhandenes und zu löschendes Objekt Objekt mit Typ und Attributangabe, <wert> kann eine Konstante oder eine Variable sein. Multiobjekt: Wird so oft wie möglich instanziiert Link zwischen Objekten, wird gelöscht bzw. erzeugt, wenn ein anhängendes Objekt gelöscht bzw. erzeugt wird. Link zwischen vorhandenen Objekten wird erzeugt Taentzer Einführung in die Softwaretechnik 173
19 Endzustand Anfangszustand [alle Einträge bearbeitet oder Wartekartei leer] [Eintrag betrifft Produkt] [Eintrag betrifft Produkt nicht] [aktueller Bestand < bestellte Menge] [aktueller Bestand >= bestellte Menge] Bedingung Aktion Eintrag in Wartekartei löschen Aktivitätsdiagramm zur Operation Produkt:: wareneingangbearbeiten Taentzer Einführung in die Softwaretechnik 174
20 Interaktionsdiagramme zeigen Interaktionen zwischen einer Menge von Objekten in zeitlicher Folge Objekte (genauer: deren "Lebenszyklen") werden durch senkrechte Linien dargestellt Zeit Objekte ob1: A ob2: B ob3: C f() create g() h() Nachrichten (= Aufrufe von Operationen) werden durch bezeichnete horizontale Pfeile dargestellt destroy X Taentzer Einführung in die Softwaretechnik 175
21 Einsatz von Interaktionsdiagrammen Modellierung von Anwendungsfällen: Interaktionsdiagramme lassen sich oft aus der Ablaufbeschreibung von Anwendungsfällen ableiten. Ein Interaktionsdiagramm beschreibt einen Ablauf (eventuell mit Variation). Verfeinerung kann helfen, weitere (spezifische) Objekte, Klassen und Operationen zu finden. Bei Interaktionsdiagrammen steht die Interaktion von Objekten im Vordergrund. Zunächst Normalfall entwerfen, dann Ausnahmefälle. Modellierung von Testfällen: Interaktionsdiagramme können auch zur Modellierung von Testfällen (Beispielen und Gegenbeispielen) verwendet werden. Taentzer Einführung in die Softwaretechnik 176
22 Interaktionsdiagramm zum Anwendungsfall Bestellung annehmen Objekt der Umgebung, hier: Benutzer Bedingung Operation von Kunde Objekte (mit Lebenslinien) Taentzer Einführung in die Softwaretechnik 177
23 Übermittlung von Nachrichten Nachrichten gehen von Objekt zu Objekt: "Objekt a sendet Nachricht z an Objekt b mit dem Inhalt inh" Dies kann in einen Aufruf der Operation z() von b durch a führen. bzw. z(p), falls parametrisiert durch Parameterfolge p: a z(p) z(p) implementiert den Inhalt inh der Nachricht. Ähnliches Verhalten sollte durch gleiche Bezeichner signalisiert werden. b Taentzer Einführung in die Softwaretechnik 178
24 Objekte erzeugen und löschen "Lebende" Objekte kreieren (und zerstören) andere Objekte durch Versenden spezieller Nachrichten. Das Erzeugen von Objekten wird durch eine Konstruktornachricht, die auf ein Objekt zeigt, modelliert. Das Löschen eines Objekts wird durch ein Kreuz am Ende seiner Lebenslinie angezeigt. o1:c1 new() nachricht() delete() antwort o2:c2 Taentzer Einführung in die Softwaretechnik 179
25 Interaktionsdiagramm für "Bestellung bearbeiten" Taentzer Einführung in die Softwaretechnik 180
26 Kontrollstrukturen in Interaktionsdiagrammen In UML 2 wurden weitere Möglichkeiten geschaffen, bedingte (sich verzweigende) und wiederholte Abläufe darzustellen. Erweiterungen für Sequenzdiagramme: - Schleifen ("loop") - optionale Ausführung ("opt") abhängig von Bedingung - alternative Ausführung ("alt") abhängig von Bedingung - Interaktionsverweis ("ref") Bezug auf eine andere Interaktion Interaktionsdiagramme heißen auch Sequenzdiagramme, da sie überwiegend Sequenzen von Objektinteraktionen darstellen. obj1: A obj2: B obj3: C loop [i>o] alt [a <b] [e lse ] [n>= 0] opb() [n< 0] opc() * opbd() Objekte obj4: D : A obj1 : B obj2 : C obj3 : D op1() op2() op14() Taentzer Einführung in die Softwaretechnik 181
27 Test-First-Ansatz Ansatz innerhalb der testgetriebenen Entwicklung, die wiederum Teil des Extremen Programmierens ist. Kleine Einheiten werden zeitnah getestet. Im Extremfall werden erst die Tests und dann die Einheiten entwickelt. Zur Analyse von möglichen Tests können Interaktionsdiagramme verwendet werden. Die Basis bilden Anwendungsfälle, aus denen Testfälle abgeleitet werden: positive Testfälle: Szenarien, die vom späteren System erfolgreich ausgeführt werden sollen. negative Testfälle: Szenarien, die zu definierten Fehlerfällen führen und das System geordnet hinterlassen sollen. Taentzer Einführung in die Softwaretechnik 182
28 Beispiel: Testfallbeschreibung mit Interaktionsdiagrammen Anwendungsfalltitel: Geld abheben Kurzbeschreibung: Kunde hebt am Geldautomat einen bestimmten Geldbetrag ab. Vorbedingung: Kunde kann sich identifizieren. Ablauf: Der Kunde identifiziert sich. Der Kunde bestimmt den angeforderten Geldbetrag. Das System prüft die Auszahlungsmöglichkeit. Das System verbucht die Auszahlung auf das Konto des Kunden. Das System überträgt den Geldbetrag. Auswirkungen: Das System bezahlt den Geldbetrag aus. Welche Testfälle gibt es für diesen Anwendungsfall? Taentzer Einführung in die Softwaretechnik 183
29 Beispiel: Testfallbeschreibung Kunde hebegeldab() :Automat :Bank Identifikation? identifiziere(324436, 987) überprüfe(324436, 987) gibbetragein(500) Geldbetrag? überprüfe(500) okay 500 okay Taentzer Einführung in die Softwaretechnik 184
30 Beispiel: Testfallbeschreibung Kunde hebegeldab() :Automat :Bank Identifikation? identifiziere(324436, 987) überprüfe(324436, 987) x alt [x ==okay] Geldbetrag? [else] Fehler: Identifizierung fehlgeschlagen Taentzer Einführung in die Softwaretechnik 185
31 Zusammenfassung Das Verhalten eines Systems wurde bisher nur textuell in Anwendungsfällen beschrieben. Zur besseren Analyse von Verhalten bieten sich die folgenden UML-Diagrammtypen an: Aktivitätsdiagramme zur Modellierung von Prozessaktivitäten und ihren Kontrollfluss Durch Objektdiagramme verfeinerte Aktivitäten modellieren Zustandsänderungen. Interaktionsdiagramme zur Analyse der Interaktionsszenarien zwischen Objekten und zur Testfallmodellierung Zusätzliche Literatur: J. H. Hausmann, R. Heckel, G. Taentzer: Detection of conflicting functional requirements in a use case-driven approach: a static analysis technique based on graph transformation. Proc. of the 22rd International Conference on Software Engineering, ACM 2002, Taentzer Einführung in die Softwaretechnik 186
Modellieren mit der Unified Modeling Language: Klassen- und Objektdiagramme. 11. November 2014
Modellieren mit der Unified Modeling Language: Klassen- und Objektdiagramme 11. November 2014 Überblick Was ist die Unified Modeling Language (UML)? die Standardmodellierungssprache für Softwaresysteme
MehrSEQUENZDIAGRAMM. 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
MehrUnified 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
MehrEinfü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:
Mehr3. 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
MehrSoftware Engineering Interaktionsdiagramme
Software Engineering Interaktionsdiagramme Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Nachrichtenaustausch Welche Nachrichten werden ausgetauscht? (Methodenaufrufe)
MehrWorkflows: 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
MehrSoftware 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
MehrVgl. 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
MehrEINFÜ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
MehrOrientierte Modellierung mit der Unified Modeling Language
UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language Michael Hahsler Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?
MehrSoftware Engineering I
Vorlesung Software Engineering I Dynamische Basiskonzepte 2 Kontrollstrukturen Aktivitätsdiagramme Sequenzdiagramme 1 Basiskonzepte Beschreiben die feste Struktur des Systems, die sich während der Laufzeit
MehrEine 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,
MehrGrundlagen der Software- Modellierung. 4. November 2014
Grundlagen der Software- Modellierung 4. November 2014 Überblick Wozu modellieren wir in der Softwareentwicklung? Definition des Modellbegriffs in der Softwareentwicklung Welche Aspekte eines Softwaresystems
MehrInformationssystemanalyse Use Cases 11 1
Informationssystemanalyse Use Cases 11 1 Use Cases Slide 1 Als ein populäres Mittel um Anforderungen zu erfassen und Systeme zu beschreiben, werden Use Cases benutzt. Sie bilden die Basis für eine umfassendere
Mehr3.4 Unified Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process.
1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process. 1996 Philippe Kruchten: Rational Unified Process Produkt der Firma Seit 2002 Teil des IBM Konzerns Objektorientiertes
MehrSoftware 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
MehrObjektorientierter Software-Entwurf Die Unified Modeling Language 4 1
Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Die Unified Modeling Language Die UML (hier in der Version 0.9) ist ein Satz von Notationen zur Beschreibung objektorientierter Softwaresysteme.
MehrUML - 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
MehrMotivation. Motivation
Vorlesung Modellierung nebenläufiger Systeme Sommersemester 2012 Universität Duisburg-Essen Was sind nebenläufige Systeme? Ganz allgemein: Systeme, bei denen mehrere Komponenten/Prozesse nebenläufig arbeiten
MehrObligatorische Literatur. Überblick Teil III: Objektorientierte Analyse (OOA) 35.1 Anwendungsfalldiagramme
35 Szenarienanalyse mit Anwendungsfalldiagrammen (Querschneidende dyn. Modellierung) Obligatorische Literatur Zuser, Kap. 7-9, insbes. 7.3+7.5 Störrle Kap 9, Kap 12 Prof. Dr. rer. nat. Uwe Aßmann Institut
Mehr09.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)
MehrVorlesung 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)
MehrSoftware-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
MehrInhaltsverzeichnis. Literatur. 4 Rational Unified Process [JBR98, Kru03] und UML [BRJ02, FS00, Bal01]
Inhaltsverzeichnis 1 Einleitung 4 1.1 CVS (Concurrent Version System) [Pru03, Zee02, Ced05]....... 5 1.2 Eclipse als Java Entwicklungsumgebung................. 22 2 Planungsmethoden 29 2.1 Definitionsphase..............................
MehrPRÜFUNG. Grundlagen der Softwaretechnik
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG Grundlagen der Softwaretechnik Musterlösung Name: Matrikelnummer: Note: Prüfungstag:
MehrBEDEUTUNG VON AUSGANGSZUSTÄNDEN BEIM TESTEN VON OBJEKTORIENTIERTER SOFTWARE IMPORTANCE OF INITIAL STATES BY TESTING OF OBJECT-ORIENTED SOFTWARE
CO-MAT-TECH 2004 14-15 October 2004 BEDEUTUNG VON AUSGANGSZUSTÄNDEN BEIM TESTEN VON OBJEKTORIENTIERTER SOFTWARE IMPORTANCE OF INITIAL STATES BY TESTING OF OBJECT-ORIENTED SOFTWARE Roman NAGY External doctorand
MehrRhapsody in J Modellierung von Echtzeitsystemen
Rhapsody in J Modellierung von Echtzeitsystemen Tobias Schumacher tobe@uni-paderborn.de Rhapsody in J - Modellierung von Echtzeitsystemen p.1/17 Anspruch des Tools Einsatzbereiche/Features Modellierung
MehrAnalyse und Entwurf objektorientierter Systeme
Analyse und Entwurf objektorientierter Systeme Teil 3 Modellbildung in der Analysephase 3.1 Statische und dynamische Notationselemente Modul WI111: Objektorientierte Programmierung Fachrichtung Wirtschaftsinformatik
MehrErfahrungsbericht: Einsatz objektorientierter Methoden in Flugkörper-Software
Erfahrungsbericht: Einsatz objektorientierter Methoden in Flugkörper-Software Michael Erskine LFK-Lenkflugkörpersysteme GmbH KOM-0253 Erwartungen OOA/OOD sind standardisierte Methoden UML eignet sich als
MehrPRÜFUNG. Grundlagen der Softwaretechnik
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG Grundlagen der Softwaretechnik Name: Matrikelnummer: Note: Prüfungstag: 21.09.2012 Prüfungsdauer:
MehrProgrammieren in Java
FG TECHNISCHE INFORMATIK V JV A00 00 TH 0 Programmieren in Java Anhang A A. Modellierung von OOP-Programmen A.. Klassenkategorien A.2. Klassembeziehungen A.3. Klassendiagramm und Sequenzdiagramm der UML
MehrSoftwareentwicklung mit UML
Softwareentwicklung mit UML Die Unified Modeling Language im Projekteinsatz 2.12.2003, Seite 1 Übersicht 1 Einleitung 2 Die Unified Modeling Language (UML) 3 Vorgehensmodelle und UML 4 Ausblick 4.1 UML
MehrSoftware Engineering. 7. Sequenz- und Zustandsdiagramme. Franz-Josef Elmer, Universität Basel, HS 2012
Software Engineering 7. Sequenz- und Zustandsdiagramme Franz-Josef Elmer, Universität Basel, HS 2012 Software Engineering: 7. Sequenz- und Zustandsdiagramme 2 Sequenzdiagramme Häufigstes Verhaltensdiagramm
MehrActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0
Jens Kohlmeyer 05. März 2007 Institut für Programmiermethodik und Compilerbau ActiveCharts Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Seite 2 Übersicht
MehrRequirements 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
MehrGliederung 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Übung 1 Einführung, Wiederholung Methoden des Software Engineering WS 2012/13. Christian Kroiß
Übung 1 Einführung, Wiederholung Methoden des Software Engineering WS 2012/13 Christian Kroiß Inhalt heute Organisatorisches & Ablauf der Übung Auffrischung Vorlesung Softwaretechnik: Aktivitäten bei der
MehrFolien zum Textbuch. Kapitel 2: Planung, Entwicklung und Betrieb von IS. Teil 4: Modellierung von betrieblichen Informationssystemen
Folien zum Textbuch Kapitel 2: Planung, Entwicklung und Betrieb von IS Teil 4: Modellierung von betrieblichen Informationssystemen Textbuch-Seiten 209-245 WI Planung, Entwicklung und Betrieb von IS IS-Modellierung
MehrMethodische objektorientierte Softwareentwicklung
Methodische objektorientierte Softwareentwicklung Eine Integration klassischer und moderner Entwicklungskonzepte von Mario Winter 1. Auflage Methodische objektorientierte Softwareentwicklung Winter schnell
MehrGuido 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
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22
Kapitel 19 Vererbung, UML Seite 1 von 22 Vererbung - Neben der Datenabstraktion und der Datenkapselung ist die Vererbung ein weiteres Merkmal der OOP. - Durch Vererbung werden die Methoden und die Eigenschaften
MehrObjektorientierte Analyse für. Projekt Warenautomat. Entwicklung einer objektorientierten Applikation zur Steuerung für einen Warenautomaten
Seite: 1 Objektorientierte Analyse für Entwicklung einer objektorientierten Applikation zur Steuerung für einen Warenautomaten Martin Zimmermann Thomas Letsch Seite: 2 Inhaltsverzeichnis: 1 Einführung
MehrKlassendiagramm. Kurzer Überblick über UML - Stand 2006. BlaBla
BlaBla Diese Kennzeichnungen sind nur Erläuterungen und nicht Bestandteil des Diagramms Quelle: P.Grässle, H.Baumann, P.Baumann, UML projektorientiert, Galileo Verlag, 2003 21 Primäre Begriffe Kapselung
MehrKapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung?
Kapitelübersicht Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge Was bedeutet Objektorien+erung? ObjektorienCerte Analyse und Design die Objektmodellierung
Mehr6. Modellierung von Informationssystemen. 6.1 Einleitung 6.2 Konzeptuelles Modell 6.3 OASIS Spezifikation 6.4 Execution Model 6.
6. Modellierung von Informationssystemen Spezialseminar Matr. FS 2000 1/10 Volker Dobrowolny FIN- ITI Quellen: Oscar Pastor, Jaime Gomez, Emilio Insfran, Vicente Pelechano The OO-Method approach for information
MehrInhalt: Version 1.7.5
Inhalt: Objekte ohne Methoden Objekte mit einfachen Methoden Objekte und Methoden mit Parametern Objekte und Methoden mit Rückgabewert Objekte mit einem Array als Attribut Beziehungen zwischen Objekten
MehrÜbersicht der UML Diagramme
Dieser Fachbeitrag ist ein Service der InfraSoft Profis für Ihre professionelle Softwareentwicklung. Übersicht der UML Diagramme Die Unified Modeling Language (UML) ist eine Sprache zur Beschreibung von
MehrModellierung von Verhalten OOPM, Ralf Lämmel
Wer ist das dann wieder? Modellierung von Verhalten OOPM, Ralf Lämmel 878 Strukturelle Modellierung vs. Verhaltensmodellierung Klassendiagramm für die Modellierung einer Universität Aktivitätsdiagramm
MehrPRÜFUNG. Grundlagen der Softwaretechnik
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG Grundlagen der Softwaretechnik Vorname: Name: Matrikelnummer: Prüfungstag: 19.02.2015
MehrUnternehmensmodellierung
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
MehrObjektorientierte Konzepte und Notation in UML. Objekt Klasse Attribut Operation
Objektorientierte Konzepte und Notation in UML Objekt Klasse Attribut Operation Objekt Wodurch zeichnet sich ein Objekt aus? - Zustand - Verhalten - Identität Objektdiagramm - Notationsregeln :Kuh Elsa:Kuh
Mehr7. Analyse-Phase: Datenmodellierung Software Engineering
7. Analyse-Phase: Datenmodellierung Software Engineering Hochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm Hochschule Darmstadt, 20. November 2006 Einordnung in den Kontext
MehrKapitel 4: Dynamische Analyse mit FUSION. SoPra 2008 Kap. 4: Dynamische Analyse mit FUSION (1/30)
Kapitel 4: Dynamische Analyse mit FUSION SoPra 2008 Kap. 4: Dynamische Analyse mit FUSION (1/30) Dokumente der dynamischen Analyse Analyse des Systemverhaltens (dynamischer Aspekt). Zu entwickeln sind:
MehrSoftwaretechnik. Fomuso Ekellem WS 2011/12
WS 2011/12 Inhalt Wiederholung Weitere Begriffe Programmierung im Großem (Programmierung von Software als Ganzes) Prozess-Modelle 2 Wiederholung: Prozesse Prozesse sind hierarchische Gruppierungen von
MehrSoftware Engineering 5. UML. Franz-Josef Elmer, Universität Basel, HS 2012
Software Engineering 5. UML Franz-Josef Elmer, Universität Basel, HS 2012 Software Engineering: 5. UML 2 Unified Modeling Language (UML) Standardisierte grafische Notationen um Strukturen und Abläufe eines
MehrModellierung verteilter Systeme Grundlagen der Programm und Systementwicklung
Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Wintersemester 2009/10 Prof. Dr. Dr. h.c. Manfred Broy Unter Mitarbeit von Dr. K. Spies, Dr. M. Spichkova, L. Heinemann, P.
MehrSoftwaretechnik 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.
MehrKapitel 2: Der Software-Entwicklungsprozess
Wie konstruiert man Software? Kapitel 2: Der Software-Entwicklungsprozess SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (1/10) Der Software-Entwicklungs-Prozess Historisches 1960JJ adhoc Techniken
MehrJ.2 Objektorientiertes Modellieren mit UML
Modellieren mit UML Objektorientiertes Modellieren mit UML 2002 Prof. Dr. Rainer Manthey Informatik II 1 UML: Übersicht in den 1980er Jahren: Entstehen einer Vielzahl objektorientierter Entwurfsmethoden
MehrObjektorientierter Softwareentwurf mit UML. Ricardo Hernández Garcia, Joachim Palmer 1. Ausgabe, Januar 2010. Grundlagen. Neubearbeitung 2010
Ricardo Hernández Garcia, Joachim Palmer 1. Ausgabe, Januar 2010 Objektorientierter Softwareentwurf mit UML Grundlagen Neubearbeitung 2010 PGOS2010 I Objektorientierter Softwareentwurf mit UML - Grundlagen
MehrOO-Design. Klausur FHF * WI1 / WI2 * SS 2000 MUSTERLÖSUNG
OO-Design Klausur FHF * WI / WI2 * SS 2000 MUSTERLÖSUNG Aufgabe : (28 Punkte) - Ergänzen Sie zum Fallbeispiel "Seminaranmeldung" (s. Anhang) das vorgegebene Use-Case- Diagramm um die fehlenden Use Cases,
MehrProjektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I)
Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I) Historisch Kulturelle Informationsverarbeitung Hauptseminar: KLIPS 2.0 Dozent: Prof. Dr. Thaller Referent:
MehrGeschäftsabläufe und Beziehungen zwischen. (Mitarbeitende / Geschäftsobjekte)
BusinessModel Geschäftsabläufe und Beziehungen zwischen Mitarbeitenden und Geschäftsobjekten: Arbeitsabläufe, Mitarbeitende, Hilfsmittel und Organisationsstruktur. Was läuft manuell, was IT-gestützt, wer
Mehr2. Analyse: Anforderungen und Anwendungsfälle Softwaretechnik (CNAM)
2. Analyse: Anforderungen und Anwendungsfälle Softwaretechnik (CNAM) Wintersemester 2011 / 2012 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 1 Einordnung in den gesamten Kurs 1. Einführung
MehrObjektorientierte Geschäftsprozessmodellierung mit der UML
Bernd bestereich Christian Weiss Claudia Schröder Tim Weilkiens Alexander Lenhard 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com
MehrGrundzüge der Programmierung. Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN
Grundzüge der Programmierung Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN Inhalt dieser Einheit JAVA ist objektorientiert! Grundbegriffe der objektorientierten Programmierung:
MehrVon 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
MehrAnalyse 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:
MehrRUP Analyse und Design: Überblick
Inhaltsverzeichnis Übersicht [, 2, 8] 3. Vorgehensweise............................... 5 2 Planungsmethoden 37 2. Definitionsphase.............................. 6 3 Rational Unified Process [5, 6] und
Mehr(BABOK-v3-Technik 10.47)
(BABOK-v3-Technik 10.47) Allgemeines Use-Cases geben Antworten auf die Frage Was soll das geplante System leisten? Diese Frage sollte generell zu Beginn jeder Systementwicklung stehen. Use-Cases genauer
MehrSoftware Engineering und Projektmanagement
Software Engineering und Projektmanagement Motivation! Fachliche Sicht trifft auf technische Realisierung Entwurf 2009W - 5. November 2009 Andreas Mauczka Email: andreas.mauczka@inso.tuwien.ac.at Web:
MehrSoftwaretechnik Unified Modeling Language (UML)
Softwaretechnik Unified Modeling Language () Karsten Weicker, Nicole Weicker HTWK Leipzig, FHTW Berlin David Shayne: She s so charismatic, and she s brilliant and beautiful. I mean, a real artist, and,
MehrDrei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI
Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer
MehrSoftwarearchitekturen I Softwareentwicklung mit Komponenten
Softwarearchitekturen I Softwareentwicklung mit Komponenten Detlef Streitferdt Technische Universität Ilmenau TU-Ilmenau, Softwaresysteme / Prozessinformatik, KBSE Softwarearchitekturen I 1 Beispiel: Bibliothekssystem
MehrPIWIN 1 Übung Blatt 5
Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:
MehrSoftware-Engineering SS03. Zustandsautomat
Zustandsautomat Definition: Ein endlicher Automat oder Zustandsautomat besteht aus einer endlichen Zahl von internen Konfigurationen - Zustände genannt. Der Zustand eines Systems beinhaltet implizit die
Mehr3. Konzepte der objektorientierten Programmierung
3. Konzepte der objektorientierten Programmierung 3.1 Basiskonzepte 3.2 Generalisierung / Spezialisierung 3.3 Aggregation 3.4 Assoziation 3.5 Nachrichten 3.6 Polymorphismus 3. Konzepte der Objektorientierung
MehrVgl. Oestereich Kap 2.6 Seiten 127-133
Vgl. Oestereich Kap 2.6 Seiten 127-133 4. Zustände 1 Aktivitäts- und Zustands-Diagramm werden oft verwechselt. Es ist darum wichtig zu unterscheiden, dass im Aktivitätsdiagramm die Aktionen im Zentrum
MehrSystemdenken und Gestaltungsmethodik System-Modellierung
Systemdenken und Gestaltungsmethodik System-Modellierung Prof. Dr.-Ing. Stefan Brunthaler TFH Wildau 2008ff Master Telematik Ausgangsbasis Es liegt ein kosten-nutzen-optimales Lösungskonzept vor. Die Architektur
Mehr6. Analyse-Phase: Geschäftsprozesse Software Engineering
6. Analyse-Phase: Geschäftsprozesse Software Engineering Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 15. November 2005 Einordnung in den Kontext der
MehrUI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18
UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 Software Testing Automatisiert Manuell 100% 70% 1 Überwiegender Teil der Testing Tools fokusiert auf automatisiertes Testen Microsoft
MehrBlock R (Rahmen): SE Aktivitäten 21.10.04 2. Vorlesung Methoden des Software Engineering. Block R Rahmen Aktivitäten der Software-Entwicklung
Block R (Rahmen): SE Aktivitäten 21.10.04 1 Vorlesung Methoden des Software Engineering Block R Rahmen Aktivitäten der Software-Entwicklung Martin Wirsing Einheit R.2, 21.10.2004 Block R (Rahmen): SE Aktivitäten
MehrSoftware-Design. Definition Der Prozess Prinzipien Strategien und Methoden Notationen. Aufgabe. HS Mannheim
Software- Der Strategien und ist der zum Definieren der Architektur, der Komponenten, der Schnittstellen und anderer Charakteristika (Datenstrukturen, Algorithmen etc.) eines Systems oder einer Komponente
MehrSoftware Engineering. 2. Requirements Engineering. Franz-Josef Elmer, Universität Basel, HS 2012
Software Engineering 2. Requirements Engineering Franz-Josef Elmer, Universität Basel, HS 2012 Software Engineering: 2. Requirements Engineering 2 Definitionen Anforderungen (Requirements) legen fest,
MehrSoftware Engineering. 3. Anforderungsanalyse. Franz-Josef Elmer, Universität Basel, HS 2010
Software Engineering 3. Anforderungsanalyse Franz-Josef Elmer, Universität Basel, HS 2010 Software Engineering: 3. Anforderungsanalyse 2 Definitionen Anforderungen (Requirements): Beschreibung aller Leistungen,
Mehreffektiv erstellen Use Cases Alistair Cockburn Das Fundament für gute Software-Entwicklung Geschäftsprozesse modellieren mit Use Cases
Alistair Cockburn Use Cases effektiv erstellen Das Fundament für gute Software-Entwicklung Geschäftsprozesse modellieren mit Use Cases Die Regeln für Use Cases sicher beherrschen A Abdeckung Grad der 163
MehrKapitel 6. Vererbung
Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen
MehrSoftware Engineering in der Praxis Praktische Übungen
Software Engineering in der Praxis Praktische Übungen Pinte, Spisländer FAU Erlangen-Nürnberg Objektorientierte Analyse 1 / 14 1 Inhalt 2 Überblick 3 Werkzeuge 4 Aufgaben Pinte, Spisländer FAU Erlangen-Nürnberg
MehrModellierung einer Android-App. 2. Mai 2013
Modellierung einer Android-App 2. Mai 2013 Taentzer Software-Praktikum 2013 42 Überblick Modellierung der wesentlichen Aspekte Welche Anwendungsfälle haben wir? Übersicht durch Anwendungsfalldiagramme
MehrAbschnitt 9: Schnittstellen: Interfaces
Abschnitt 9: Schnittstellen: Interfaces 9. Schnittstellen: Interfaces 9.1 Die Idee der Schnittstellen 9.2 Schnittstellen in Java 9.3 Marker-Interfaces 9.4 Interfaces und Hilfsklassen 9.5 Zusammenfassung
MehrSoftware Engineering Analyse und Analysemuster
Software Engineering Analyse und Analysemuster Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassendiagramme in der Analyse Im Rahmen der Anforderungsanalyse
MehrSascha Schreier. Softwaretechnik: Übung 11.12.09
Sascha Schreier Softwaretechnik: Übung 11.12.09 Unklarheiten und Fragen Sascha Schreier 11.12.2009 # 2 Systementwurf: Objektentwurf + Einbettung in die Systemumgebung (Pakete, DB, GUI, ) So viele verschiedene
MehrEinführung in UML. Überblick. 1. Was ist UML??? 2. Diagrammtypen. 3. UML Software. Was ist ein Modell??? UML Geschichte,...
Vorlesung GIS Einführung in UML Stephan Mäs 28. Mai 2009 Überblick 1. Was ist UML??? Was ist ein Modell??? UML Geschichte,... 2. Diagrammtypen Schwerpunkt: Klassendiagramme 3. UML Software Arbeitsgemeinschaft
MehrKapitel 6. Vererbung
1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben
MehrSoftware Engineering Klassendiagramme weiterführende Konzepte
Software Engineering Klassendiagramme weiterführende Konzepte Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassenattribut: static Implementierung in Java public
MehrSoftware Engineering Klassendiagramme Einführung
Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt
MehrVisual C# 2008 Grundlagen und Profiwissen
Walter Doberenz, Thomas Gewinnus Visual C# 2008 Grundlagen und Profiwissen ISBN-10: 3-446-41440-1 ISBN-13: 978-3-446-41440-2 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41440-2
MehrObjektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ
Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit BlueJ stellt die Daten, ihre Struktur und ihre Beziehungen zueinander in den Vordergrund. Weniger im Blickpunkt: die
MehrMinisterium für Kultus, Jugend und Sport Baden-Württemberg
Anlage zu 45-6512-2420/31 Ministerium für Kultus, Jugend und Sport Baden-Württemberg Schulversuch 51-6624.20/100 (früher: /84) vom 26. August 2003 Lehrpläne für das berufliche Gymnasium der sechs- und
Mehr