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 3.2.1 Basiselemente 3.2.2 Beziehungselemente 3.3 Verhaltensdiagramme 3.3.1 Aktivitätsdiagramm 3.3.2 Kollaborationsdiagramm 3.3.3 Sequenzdiagramm 3.3.4 Zustandsdiagramm 3.4 Implementierungsdiagramme 3.4.1 Komponentendiagramm 3.4.2 Verteilungsdiagramm 4. Rational Rose 5. Vor – und Nachteile von UML / Rose 6. Literaturhinweise UML Unified Modeling Language Wie ist die UML entstanden ? Sprache und Notation zur Spezifikation, Konstruktion, Visualisierung und Dokumentation von Modellen für Softwaresysteme Aktuelle Version 1.3 Rational Rose Ein Designwerkzeug, das die graphische Notation UML zur Beschreibung von Softwaresystemen nutzt. Rose98 ermöglicht die Generierung von Coderahmen aus UML-Beschreibungen ebenso wie die Generierung von UML-Diagrammen aus Programmtexten. Abbildung Error! Unknown switch argument. Quelle: [Oestereich98], S. 20 Der Entwicklungsprozeß UML Diagrammtypen Beschreibt die Vorgehensweise der SE In der UML nicht enthalten Objectory Prozeß Iterativ-inkrementeller Prozeß Anwendungsfalldiagramme Klassendiagramme Verhaltensdiagramme Implementierungsdiagramme Begleitendes Beispiel (digitales Aufnahmegerät) Abbildung Error! Unknown switch argument. Quelle: [Fowler98], S.28 Vier Phasen Einstieg Ausarbeitung Konstruktion Überleitung (engl. inception) (engl. elaboration) (engl. construction) (engl. transition) Abbildung Error! Unknown switch argument. Quelle : [DSR99] Begriffe Wie sieht es in unserem Beispiel aus ? Anwendungsfall (engl. use case) Akteur (engl. actor) Definierte Rolle (engl. role) Beziehungen Notation Abbildung Error! Unknown switch argument. Quelle: [Oestereich98] Abbildung Error! Unknown switch argument. Anwendungsfalldiagramm des digitalen Aufnahmegerätes Basiselemente Klasse Zusicherungen, Eigenschaftswerte, Stereotypen Schnittstelle Parametrisierbare Klasse Objekt Pakete Beziehungselemente Assoziation Generalisierung / Spezialisierung Aggregation Komposition Mehrfachvererbung Abhängigkeitsbeziehung Beispiel (Klassendiagramm) Paketdiagramm Subsystem User Interface Verlauf der Objektkommunikation Vorgänger Bedingung Sequenzausdruck Antwort Nachrichtenname (Parameterliste) Beispiel (Aufnahme eines Audioblockes) Aktivität Transitionen Bedingungen Synchronisation Beispiel (Stand By Modus) Zeitlicher Verlauf der Kommunikation zwischen ausgewählten Objekten Beispiel (Zeiteinstellung) Startzustand, Endzustand Ereignisse Zustandsvariablen Aktionen (Entry / Exit /Do) Beispiel (Hardware vom digitalen Aufnahmegerät) Physische Sicht Quellcode, Binärcode, DLL Ausführbares Programm Hardwaresicht Rational Rose Logical View Component View Use-Case View Deployment View Vorteile von UML Literaturhinweise [Booch95] Objektorientierte Modellierung Flexibel Erweiterungsmöglichkeiten Standard Sehr verbreitet Nachteile von UML Grady Booch, Addison – Wesley Publishing Company , 1995 Objektorientierte Analyse und Design [Fowler98] Martin Fowler, Kendall Scott Addison Wesley Longman , Inc. UML konzentriert [Oestereich98] Bernd Oestereich Objektorientierte Softwareentwicklung Sehr großer Umfang der Sprache Langes Einarbeiten notwendig Analyse und Design mit der UML 4.Auflage, R.Oldenbourg Verlag München,1998 [DSR99] Digital Sound Recorder: A case study on Vorteile Rational Rose designing embedded systems using the UML Unterstützung von UML Einsatz virtueller Bildschirme Objektorientierte Codegenerierung Reverse Engineering Nachteile Rational Rose Manuelle Eingriffe beim Reengineering notwendig notation Ivan Porres Paltor, Johan Lilius Technical Report No 234 Turku Centre for Computer Science , Finnland WWW-Seiten www.rational.com www.omg.org www.oose.de