Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

FH-Prof. Christian V. Madritsch Systems Engineering www.cti.ac.at/rts Informatik und Programmieren 3 Objektorientierte Programmierung und UML.

Ähnliche Präsentationen


Präsentation zum Thema: "FH-Prof. Christian V. Madritsch Systems Engineering www.cti.ac.at/rts Informatik und Programmieren 3 Objektorientierte Programmierung und UML."—  Präsentation transkript:

1 FH-Prof. Christian V. Madritsch Systems Engineering Informatik und Programmieren 3 Objektorientierte Programmierung und UML

2 Copyright Notice All rights reserved. No part of this publication may be reproduced, stored in a retrieval system or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without prior written permission of the author except for student usage. Copyright © 2008 by Christian V. Madritsch Co-Copyright © 2008 by Andreas Sucher Titelbild: Tron, 1982, Buena Vista Pictures

3 Unified Modeling Language - UML Die UML ist ein standardisiertes System, das die besten Analyse- und Entwurfsmethoden der Software-Entwicklung zusammenfasst. Die UML ist eine Standardsprache mit grafischer Notation zur Visualisierung, Spezifikation, Konstruktion und Dokumentation von Software- Modellierung. Jim Rumbaugh, Grady Booch und Ivar Jacobson entwickelten um 1995 gemeinsam bei Rational Software Corp. die UML. Heute im Besitz von IBM

4 Diagrammarten Die UML unterstützt unterschiedliche Diagrammarten, welche die unterschiedlichen Aspekte der Software-Modellierung ausdrücken. Anwendungsdiagramme Aktivitätsdiagramme Klassen-/Objektdiagramme Interaktionsdiagramme Sequenzdiagramme Kollaborationsdiagramme Zustandsdiagramme Komponentendiagramm Verteilungsdiagramme

5 Anwendungsdiagramme (Use Case Diagram) Ein Use Case beschreibt die Funktionalität des Softwaresystems, die ein Benutzer des Systems (Akteur) ausführen muss, um ein gewünschtes Ergebnis zu erhalten oder ein bestimmtes Ziel zu erreichen. Das Anwendungsdiagramm beschreibt die Beziehung zwischen Akteuren und Use Cases.

6 Aktivitätsdiagramm (Activity Diagram) Das Aktivitätsdiagramm ist ein Ablaufdiagramm, mit dem die einzelnen Schritte eines Arbeitsablaufs anschaulich modelliert werden können.

7 Klassen-/Objektdiagramme Klassendiagramme beschreiben Klassen und deren statische Beziehungen untereinander. Vererbungsbeziehung Assoziationsbeziehung Benutzung Aggregationsbeziehung Enthalten sein Kompositionsbeziehung Enthalten sein Abhängigkeitsbeziehung

8 Vererbungsbeziehung Vespa ist von Motorrad abgeleitet

9 Assoziationsbeziehung (i) Die Vespa benutzt einen Motor,...

10 Assoziationsbeziehung (ii) AB Bidirektionale Assoziation A und B sind assoziiert gerichtete Assoziation A beinhaltet B Kardinalität A beinhaltet 1 bis N B 1..* Kardinalität: 0..*, 1..*, 0..2, *, 1,... 1 Rollenname ARollenname B Assoziationsname

11 Aggregationsbeziehung Aggregation ist gleichzusetzen mit Assoziation by reference AB 1..* A beinhaltet 1 bis N B

12 Kompositionsbeziehung Der Teil kann ohne das Ganze nicht existieren by value AB 1..* A beinhaltet 1 bis N B Der Motor einer Vespa kann nicht gleichzeitig in einer anderen Vespa sein

13 Sequenzdiagramm (Sequenze Diagram) Das Sequenzdiagramm zeigt, wie Objekte miteinander komm- unizieren, um eine bestimmte Aufgabe zu erfüllen. Im Gegensatz zum Kollabora- tionsdiagramm steht hier der zeitliche Aspekt im Vordergrund.

14 Kollaborationsdiagramm (Collaboration Diagram) Wie Sequenzdiagramm, allerdings liegt die Betonung auf den Beziehungen zwischen den Objekten und ihrer Topologie. Wer mit wem?

15 Zustandsdiagramm (State Diagram) Zustandsdiagramme dienen der dynamischen Beschreibung eines Systems mittels Automaten

16 Komponentendiagramm (Component Diagram) Komponentendiagramme zeigen den physischen oder logischen Aufbau eines Systems. Dateien, Bibliotheken, DLLs,...

17 Verteilungsdiagramm (Deployment Diagram) Diagramm, das die Konfiguration der verarbeitenden Knoten und der auf ihnen eingesetzten Komponenten zeigt.

18 UML Tools Es gibt eine Menge kommerzieller und auch freier UML Tools. Einen guten Überblick bietet der Link: Ein freies Tool gibt es unter: Einige UML Tools haben einen Codegenerator eingebaut, der aus dem Klassendiagramm Sourcecode für Java, C++ oder C# erzeugen kann.


Herunterladen ppt "FH-Prof. Christian V. Madritsch Systems Engineering www.cti.ac.at/rts Informatik und Programmieren 3 Objektorientierte Programmierung und UML."

Ähnliche Präsentationen


Google-Anzeigen