5. Klassen- und Objektbeziehungen
|
|
- Lothar Fuhrmann
- vor 7 Jahren
- Abrufe
Transkript
1 K ap.5: K lassenbeziehungen System analyse Seite von 5. Klassen- und Objektbeziehungen Bei der intuitiven Definition eines Objektes in Kap. 3 haben wir bereits darauf hingewiesen, dass wir in der Realität zwar Objekte wahrnehmen, aber Klassen modellieren, die als Baumuster für Objekte fungieren. Eine Klasse hat einen Namen, Attribute (Datenaspekt, "Wissen") und Operationen (funktionaler Aspekt, "Leistungen"). In der UML stellt man eine Klasse als dreiteiligen Kasten dar: Name Attribute Operationen( ) Objekt ist Exemplar einer Klasse modelliert werden Klassenbeziehungen 5.. Grundsätzliche Klassenbeziehungen Im UML-Klassendiagramm werden Beziehungen zwischen Klassen durch Pfeile dargestellt. Es gibt zwei grundsätzliche Klassenbeziehungen, die Spezialisierung und die Assoziation. Der Spezialisierung entspricht die Erweiterung einer Klasse in der Programmierung. Der Assoziation entspricht die Benutzung eines Objekts der Klasse. Von Assoziation gibt es zwei Spezialformen, die Aggregation und die Komposition, die eine datensatzartige Zugehörigkeit der Zielklasse zur Ausgangsklasse darstellen, während die Assoziation eher die Methodennutzung in den Vordergrund stellt. Implementiert werden Assoziationen in der Regel, Aggregation und Komposition immer als Attribute. A "ist ein" B Spezialisierung / Generalisierung C "kennt" D Assoziation E "hat" F Aggregration G "besteht aus" H Komposition
2 K ap.5: K lassenbeziehungen System analyse Seite 2 von 2 Während die Spezialisierung nicht weiter auszuführen ist, gibt es für Assoziationen eine Reihe von Qualifizierungen, mit denen die Art der Beziehung präzisiert werden kann: A "verkauft an".. B Name Kardinalitäten: 0., 0..n,,..n, n A Verkäufer Eigentümer B <<permanent>> Rollen Stereotyp A Verkäufer Eigentümer B assoziative Klasse Notar 5.2. Differenzierung der Objektbeziehungen HiFi-Anlage HeimAnlage Receiver Verstärker Fernbedienung Assoziation ("kennt") - die allgemeinste Beziehung bedeutet Nutzung der Methoden oder Attribute CD-Player MC-Doppeldeck
3 K ap.5: K lassenbeziehungen System analyse Seite 3 von 3 HiFi-Anlage HeimAnlage Receiver Verstärker Fernbedienung Aggregation ("hat") Spezialfall der Assoziation betont den Datenaspekt (ist Attribut) CD-Player MC-Doppeldeck HiFi-Anlage Receiver HeimAnlage Verstärker Fernbedienung CD-Player Komposition ("besteht aus") - Spezialfall der Komposition existenzabhängige Beziehung, modelliert oft materielles Enthaltensein in der Realität MC-Doppeldeck 5.3 Analyse-Muster Analysemuster (vgl. [Balzert 2000]) sind eine (ständig wachsende) Sammlung von Modellierungsmustern. Sie dienen als Vorlagen für die Modellierung häufig wiederkehrender Strukturen der Realität, sind also wiederverwendbare Modellierungen.
4 K ap.5: K lassenbeziehungen System analyse Seite 4 von 4 Im Gegensatz dazu geht es bei den in Kapitel 8 beschriebenen Entwurfsmustern nicht um die Frage, wie ein Zusammenhang aus der Realität im Modell abgebildet werden kann, sondern um die Frage, wie ein gegebener Objektzusammenhang implementiert werden kann. Die folgende Auswahl von Analysemustern ist im wesentlichen [Balzert 99] entnommen: Liste Exemplare Baugruppe Lagerhalle Nr Status LV Titel SWS StudienplanNr.. Seminar Lagerplatz Semester Koordinaten Zeit und Ort Zulassung Dozent Belegungsstatus Nummer Bezeichnung Dauer Stückliste Auto 4 Motor Rad Grafikelement Postition( ) Farbe( ) Größe( ) Linie Startpunkt Endpunkt Rechteck Lange Breite Text Font Grafik Autor 0.. Java-Paket 0..
5 K ap.5: K lassenbeziehungen System analyse Seite 5 von 5 Delegation Betankbar tanken( ) Auto tanken( ) Tank tanken( ) Rollen Wechselnde Rollen Dozent Name Fachgebiet PNr SeminarleiterReferent Teilnehme Seminar Nummer Bezeichnung Dauer Schüler Jugendlicher Name Schülerrolle Zeitraum Abiturient Klassensprecher Schulsprecher Historie Gruppenhisto rie Student Buch Zeitraum Team Zeitraum 0.. Mitarbeiter Zugehörigkeit Zeitraum
6 K ap.5: K lassenbeziehungen System analyse Seite 6 von UML-Ausdrucksmöglichkeiten für die Entwurfsphase Vererbungshierarchien Während in der Analysephase zumeist eine einfache Übereinstimmung zwischen realen Objekten, Konzepten oder Personen und ihrer Modellierung als Klasse besteht, treten in der Entwurfsphase konstruktive Aspekte in den Vordergrund, die weitere Ausdrucksmittel erforderlich machen. So wird man in der Analysephase z.b. den Spezialisierungspfeil nur für in der Realität vorhandene ist ein -Relationen einsetzen (außer in Analysemustern; hier stellen sie konstruktive Lösungsansätze für schwierig zu modellierende Objektbeziehungen dar). Im Entwurf dagegen stellt die Bildung von Klassenhierarchien ein wichtiges Instrument der Strukturierung der Problemlösung dar. Bei der Bildung solcher Klassenhierarchien oft zu Interfaces oder Abstrakten Klassen greifen. Die Kennzeichnung dieser besonderen Klassentypen erfolgt in der UML (am besten) durch die Verwendung von Stereotypen. Stereotypen sind in der UML Qualifizierungen, die jedem Modellelement zugeordnet werden können. Sie haben per se keine Bedeutung, d.h. die Interpretation kann vom Modellierer festgelegt werden. Stereotypen sind Bezeichner, die in doppelte spitze Klammern eingeschlossen werden: <<Beispiel- Stereotyp>>. Stereotypen sind gut geeignet, Interfaces und abstrakte Klassen als solche zu kennzeichnen. Sie <<Abstract Class>> können auch zur Baumschema Kennzeichnung vater( ) abstrakter Operationen naechsteskind( ) verwendet werden. <<abstract>> liesknoten( <<Interface>> Baum <<Abstract Class>> Baumschema Strukturbaum Dateibaum DeutscheEiche Meta-Klassen die UML ermöglicht die Definition von Metaklassen, das sind Klassenschemata, deren Exemplare Klassen sind. Für sie gibt es zwei hauptsächliche Verwendungen: zur isolierten Modellierung der (statischen) Klassenelemente und zur Modellierung von generischen Klassen In der Entwurfs-und Implementierungsphase hat man oft den Wunsch, Klassenelemente (statische Elemente) von Objektelementen abzusetzen. In der UML kann man den statischen Teil einer Klasse gewissermaßen herauslösen und als Metaklasse darstellen, von der die eigentliche Klassen ein Exemplar ist. Per Konvention hängt man Klasse (bzw. Class ) an den Klassennamen an. Meta-Bestandteile können aber auch direkt in der Klasse notiert werden und ein Streotyp zugeordnet bekommen (etwa <<meta>> oder <<static>>), z.b. wenn sie keine eigenständige Bedeutung im Modell haben..
7 K ap.5: K lassenbeziehungen System analyse Seite 7 von 7 <<Meta Class>> Kundenklasse kundesuchen( <<instance of>> Kunde <<static>> kundesuchen( ) Kunde Eine große Rolle spielen auch generische Klassen (parameterized classes, templates), die eine Familie von Klassen mit einem oder mehreren Parametern beschreiben. Die Parameter sind entweder Typen oder Konstanten. Eine Klasse entsteht durch Binden von konkreten Parametern an eine generische Klasse. Auch generische Klassen sind Meta-Klassen, für sie wurde allerding in der UML ein Stereotyp vordefiniert (ähnlich wie bei <<Actor>>), so dass die meisten CASE Tools dafür eine eigene Darstellung anbieten. Liste Elementtyp <<bind>> (String) <<bind>> (Adresse) StringListe Adressliste Container-Klassen Um die Analysephase nicht mit Details zu bleasten, wurde davon ausgegangen, dass jede klasse die Menge ihrer Objekte verwaltet. Im Entwurf muss die Objektverwaltung jedoch realisiert werden. Für Objektmengen, die nicht in einer objektorientierten Datenbank verwaltet werden, können Container-Klassen für die Objektverwaltung benutzt werden, deren Implementierung oft aus Bibliotheken entnommen werden kann. Containerklassen sind normale Kklassen, die Kennzeichnung durch ein Stereotyp ist möglich, aber meist nicht erforderlich. Stattdessen hängt für den Namen man per Konvetion das Wort Container an den Namen der verwalteten Klasse an, um den Zusammenhang zu verdeutlichen: KundenContainer kundesuchen( Kunde
8 K ap.5: K lassenbeziehungen System analyse Seite 8 von Modellierungsbeispiele (Analysemodelle) Reisebüro Ein Reisebüro stellt für seine Kunden Reisemappen zusammen: Eine Reisemappe enthält alle Reisedokumente, Fahrplanauszüge und evtl. touristisches Informationsmaterial Sie wird nur zusammengestellt, wenn mindestens ein Reisedokument verkauft wurde. Reisedokumente sind Tickets, Platzkarten und Voucher. Tickets gibt es für Bahn, Flug und Bus. Flug- und Bustickets enthalten Buchungen in Form von Kundenname, Reisezeitpunkt und Buchungsnummer. Für ein Bahnticket können maximal 5 Platzkarten ausgestellt werden, die sich auf das Ticket beziehen. Voucher (Gutscheine) enthalten Buchungen (s.o.). Es gibt Hotel-, Mietwagen- und Tourvoucher Ein Fahrplanauszug kann auf ein Ticket Bezug nehmen. Mehrere Fahrplanauszüge können sich auf dasselbe Ticket beziehen. Reisemappe.. Reisedokument Fahrplanauszug Tourismusinfo Voucher Platzkarte 0.. Ticket Hotelvoucher Mietwagenvoucher 0..5 Bahnticket Flugticket Busticket Buchung
9 K ap.5: K lassenbeziehungen System analyse Seite 9 von Walzwerk In einem Kaltwalzwerk (Metallverarbeitung) werden große Metallrollen (Coils) weiterverarbeitet (gewalzt, geschitten, geformt). aus der sicht der Lagerverwaltung ergibt sich folgendes Bild: Es gibt mehrere Werkshallen, von denen eine die Versandhalle ist (mit Eisenbahnanschluss) In jeder Halle gibt es mehrere Lager. Jedes Lager ist in Reihen von Lagerplätzen aufgeteilt. Jeder Lagerplatz kann genau ein Coil aufnehmen. Jedes Coil ist eindeutig identifiziert (Nummer). Es gibt Prismenlagerplätze und Hülsenauflage-Lagerplätze (für Coils mit empfindlichen Oberflächen) Jede Halle hat -3 Kräne und mehrere Gabelstapler. Jeder Kran und jeder Stapler kann genau ein Coil aufnehmen und ist damit auch ein Lagerplatz, jedoch immer vom Typ Hülsenauflage-Lagerplatz Jede Halle enthält mehrere Maschinen. Jede Maschine hat einen Einlauf und einen Auslauf, die jeweils aus ein oder mehreren Lagerplätzen bestehen. Eine Maschine gilt auch als Lagerplatz. Es gibt Schneidemaschinenn, nämlich Säumer, Längs- und Querteiler, Walz- und Formmaschinen. Zwischen den Hallen verkehren automatische Wagen, sog. Bundwagen. Jeder Bundwagen verbindet mindestens 2 Hallen. Ein Bundwagen kann genau ein Coil aufnehmen und ist ein Lagerplatz. Walzwerk.. Werkshalle Versandhalle Walzmaschine.... Kran Stapler 2..n.... Bundwagen Lager.. Reihe.... Lagerplatz.... Maschine Einlauf 0.. Auslauf Coil Coilnummer Formmaschine Schneidemaschine S?umer Querteiler L?ngsteiler H? lsenauflageplatz Prismenplatz
Modellierungsbeispiele. für die EERM-Modellierung
Modellierungsbeispiele für die EERM-Modellierung Freie Auswahl! 1. Spedition 2. Schulungsfirma 3. Chargenverfolgung 4. Reisebüro 5. Kaltwalzwerk 6. Multimediales Lehrmaterial Beispiel Spedition Eine Spedition
MehrReisebüro. (c) schmiedecke 07 SE1-Beispiele 2
Modellierungsaufgaben Reisebüro Ein Reisebüro stellt für seine Kunden Reisemappen zusammen: 1. Eine Reisemappe enthält alle Reisedokumente, Fahrplanauszüge und evtl. touristisches Informationsmaterial
MehrKurzeinführung in UML
Kurzeinführung in UML Die Unified Modeling Language (UML) ist eine Sprache zur Beschreibung von Softwaresystemen. Der Grundgedanke bei UML bestand darin, eine einheitliche Notation für viele Einsatzgebiete
MehrEinführung in die Programmierung
Skript zur Vorlesung: Einführung in die Programmierung WiSe 2009 / 2010 Skript 2009 Christian Böhm, Peer Kröger, Arthur Zimek Prof. Dr. Christian Böhm Annahita Oswald Bianca Wackersreuther Ludwig-Maximilians-Universität
MehrSoftware 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
MehrJava Einführung Objektorientierte Grundkonzepte
Java Einführung Objektorientierte Grundkonzepte Inhalt Verständnis der grundlegenden Konzepte der Objektorientierung: Objekte Nachrichten Kapselung Klassen und Instanzen Vererbung Polymorphismus Darstellung
MehrUML. Weiteres Vorgehen im Projekt
UML Download objectif Personal Edition (kostenlos): http://www.microtool.de/objectif/de/download.asp Weiteres Vorgehen im Projekt Komponenten, Klassen, Objekte Prozesse Nichtfunktionale Anforderungen Skizzen,
Mehr8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure
8. Objektorientierte Programmierung Informatik II für Verkehrsingenieure Grundbegriffe ALAN KAY, ERFINDER DER SPRACHE SMALLTALK, HAT DIE GRUNDBEGRIFFE DER OBJEKTORIENTIERTEN PROGRAMMIERUNG WIE FOLGT ZUSAMMENGEFASST:
MehrObjektorientierte Analyse (OOA) Strukturmodellierung
Strukturmodellierung Seite 1 Strukturmodellierung Seite 2 Anwendung im Projekt Strukturmodellierung Voraussetzung: Use Case Diagramm liefert die funktionelle Gliederung mit Angabe der Ein- und Ausgaben
MehrAufgabe 1: Strukturmodellierung mittels Klassendiagramm Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem Klassendiagramm beschäftigt.
Aufgabe 1: Strukturmodellierung mittels Klassendiagramm Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem Klassendiagramm beschäftigt. Was ist eine Klasse? Was ist ein Objekt? Geben Sie ein
MehrKlassendiagramm. (class diagram)
: Klassendiagramm http:///topic95.html Klassendiagramm (class diagram) Klassendiagramm Objektdiagramm Komponentendiagramm Kompositionsstrukturdiagramm Verteilungsdiagramm Einstieg Paketdiagramm Aufbau
MehrObjektorientiertes Programmieren
JL Ute Claussen Objektorientiertes Programmieren Mit Beispielen und Übungen in C++ Zweite, überarbeitete und erweiterte Auflage Mit 24 Abbildungen Springer Inhaltsverzeichnis 1 Einleitung 1 1.1 Was ist
MehrRückblick: Entity-Relationship-Modell
Rückblick: Entity-Relationship-Modell Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben
MehrUML Klassendiagramm. Igor Karlinskiy, Mikhail Gavrish
UML Klassendiagramm Igor Karlinskiy, Mikhail Gavrish Agenda Wichtigste Eigenschaften Syntaktische Elemente mit entsprechendem C++ Code Analysemodell Designmodell Quellen 2 Klassendiagramm gibt die Möglichkeit,
MehrObjektorientierte Modellierung (1)
Objektorientierte Modellierung (1) Die objektorientierte Modellierung verwendet: Klassen und deren Objekte Beziehungen zwischen Objekten bzw. Klassen Klassen und Objekte Definition Klasse Eine Klasse ist
Mehr15 Unified Modeling Language (UML) 7 UML und Java Informatik 2 (SS 07) 595
Überblick 15. Unified Modeling Language (UML) 15.1 Grundlagen 15.2 Klassen und Objekte 15.3 Vererbung 15.4 Schnittstellen 15.5 Generische Typen 15.6 Pakete 15.7 UML und Java 15.8 Zusammenfassung 15 Unified
Mehr5.2 Entity-Relationship-Modell
5.2 Entity-Relationship-Modell Mod-5.8 Entity-Relationship-Modell, ER-Modell (P. Chen 1976): Kalkül zur Modellierung von Aufgabenbereichen mit ihren Objekten, Eigenschaften und Beziehungen. Weitergehende
MehrUML -Klassendiagramme
UML -Klassendiagramme UML - offline: ArgoUML http://argouml.stage.tigris.org/ UML online: Links genmymodel.com umlet.com/umletino/umletino.html Arten von UML-Diagrammen Diagramm Strukturdiagramm Verhaltensdiagramm
MehrVgl. 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ß
MehrProgrammieren 2 C++ Überblick
Programmieren 2 C++ Überblick 1. Einführung und Überblick 2. Klassen und Objekte: Datenkapselung 3. Erzeugung und Vernichtung von Objekten 4. Ad-hoc Polymorphismus 5. Behälter und Iteratoren 6. Templates
MehrObjektorientierte und Funktionale Programmierung SS 2014
Objektorientierte und Funktionale Programmierung SS 2014 6 Objektorientierte Entwurfsmuster 1 6 Objektorientierte Entwurfsmuster Lernziele Einige wichtige Entwurfsmuster kennen und verstehen Einsatzmöglichkeiten
MehrRealität zu modellieren eine
Objektorientierung Objektorientierung ist zunächst einmal eine Möglichkeit, Realität zu modellieren dem menschlichen Denken ähnliche Art, an Probleme heran zu gehen Objektorientierung ist eine Vorgehensweise
MehrAbschnitt 15: Unified Modeling Language (UML)
Abschnitt 15: Unified Modeling Language (UML) 15. Unified Modeling Language (UML) 15.1 Grundlagen 15.2 Klassen und Objekte 15.3 Vererbung 15.4 Schnittstellen 15.5 Generische Typen 15.6 Pakete 15.7 UML
MehrÜ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
MehrAufgabe Entity-Mengen: Relationship-Mengen: Integritätsbedingungen:
Notation HPI Aufgabe Entity-Mengen: ABTEILUNG mit Attributen ANR, ANAME, AMNR PERSONAL mit Attributen PNR, PNAME MASCHINEN mit Attributen MNR, MBEZ TEILE mit Attributen TNR, TBEZ, Farbe Relationship-Mengen:
MehrWeb Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H)
Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H) Dominik Kirsten Daniel Schäferbarthold Trier, 21.01.2008 1 Gliederung 1. Einführung 1.1 Anforderungen an
MehrDatenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt
2. Datenbankentwurf Motivation Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt Fehler sind umso teurer zu beheben, je weiter die Entwicklung bzw. der Einsatz
MehrUnified 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
MehrAnalysemuster. Marc Monecke monecke@informatik.uni-siegen.de
Analysemuster Marc Monecke monecke@informatik.uni-siegen.de Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D-57068 Siegen 2. Mai 2003 Inhaltsverzeichnis Grundlagen
MehrProgrammiertechnik Objektorientierung
Programmiertechnik Objektorientierung Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was ist Objekt-Orientierung? Objekt-Orientierung (OO) ist nicht völlig scharf definiert, d.h. es gibt unterschiedliche
MehrProf. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Objektorientierung
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Objektorientierung Was ist Objektorientierung Es einige Grundprinzipien, die (fast) allen Definitionen des Begriffs Objektorientierung
MehrKapitel 6: Das E/R-Modell
Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2013/2014 Vorlesung: Prof. Dr. Christian Böhm Übungen:
MehrVU Objektorientierte Modellierung Übung 1
VU Objektorientierte Modellierung Übung Übungsgruppen: 3..2008-7..2008 Aufgabe : Strukturmodellierung mittels Klassendiagramm Theoriefragen Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem
MehrObjektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1. Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden:
Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1 Vergleich der Zerlegungsmethoden Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden: Vergleich nach Ergebnissen
MehrJava Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7
Java Einführung Umsetzung von Beziehungen zwischen Klassen Kapitel 7 Inhalt Wiederholung: Klassendiagramm in UML Java-Umsetzung von Generalisierung Komposition Assoziationen 2 Das Klassendiagramm Zweck
MehrHerzlich willkommen!
Programmiertechnik 1 Herzlich willkommen! Dozent: Dipl.-Ing. Jürgen Wemheuer Mail: wemheuer@ewla.de Online: http://cpp.ewla.de/ Disclaimer 2 Diese Vorlesungs-/Unterrichtsfolien wurden durch den Dozenten
MehrObjektorientierte Analyse (OOA) OOA-Pattern
OOA-Muster (Architektur Pattern) Ein Pattern (Entwurfsmuster) ist ein Problem mit seiner Lösung in einem Kontext. Der Kontext enthält in der Regel Zielkonflikte, die der Designer lösen muss, z.b. Performance
MehrSystemanalyse. - Folien zur Vorlesung für AI3 im Sommersemester Teil 5 -
Systemanalyse - Folien zur Vorlesung für AI3 im Sommersemester 2010 - -Teil 5 - Hans-Jürgen Steffens (by courtesy of Prof. Dr. Thomas Allweyer) Fachbereich Informatik und Mikrosystemtechnik Fachhochschule
MehrSoftware- und Systementwicklung
Software- und Systementwicklung Seminar: Designing for Privacy 11.11.2009 Moritz Vossenberg Inhalt Vorgehensmodelle Wasserfallmodell V-Modell Phasen (Pflichtenheft) UML Klassendiagramm Sequenzdiagramm
MehrBest Practice. Prozessmodellierung im Bereich der mittelbaren Bundesverwaltung: pm-ad Ergebnis der AG. BEST PRACTICE UML-Aktivitätendiagramm
Prozessmodellierung im Bereich der mittelbaren Bundesverwaltung: BEST PRACTICE UML-Aktivitätendiagramm Best Practice pm-ad 1.0.0 Ergebnis der AG Kurzbeschreibung In diesem Dokument werden die Best-Practice-
MehrSE Besprechung. Übung 1 Programmverständnis, Dokumentation
SE Besprechung Übung 1 Programmverständnis, Dokumentation SE, 11.10.11 Mengia Zollinger Teaching Assistant Mengia Zollinger 7. Semester Wirtschaftsinformatik Fasttrack bei A.
MehrEinfü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.
Mehr1 Klassen und Objekte
1 Klassen und Objekte Datentyp - Spezifikation des Typs von Datenobjekten Datenstruktur - logische Ordnung von Elementen eines Datentyps - zur (effizienten) Speicherung, Verwaltung, Zugriff - auf die Elemente
MehrObjektorientierte 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
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
MehrVORDIPLOMSPRÜFUNG FÜR ELEKTROINGENIEURE. Einführung in die Informatik III
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner VORDIPLOMSPRÜFUNG FÜR ELEKTROINGENIEURE Einführung in die Informatik III Name: Matrikelnummer:
MehrObjektdiagramm 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
MehrEinführung in die Programmierung
Skript zur Vorlesung: Einführung in die Programmierung WiSe 2009 / 2010 Skript 2009 Christian Böhm, Peer Kröger, Arthur Zimek Prof. Dr. Christian Böhm Annahita Oswald Bianca Wackersreuther Ludwig-Maximilians-Universität
MehrArbeitsblätter zu Teil I des Praktikums
Arbeitsblätter zu Teil I des Praktikums Allgemeine Hilfsmittel Bitte benutzen Sie bei Schwierigkeiten mit spezifischem Domänenwissen das Internet als Recherchemöglichkeit (beispielsweise Google oder Wikipedia).
MehrInstanz ist objeket einer klasse. bsp: elefant Name gewicht alter Frisst scheißt fliegt. Assoziation haben?
A u f g abe 1 : a ) Was ist eine Klasse? Was ist ein Objekt? Geben Sie ein Beispiel fur eine Klasse mit mindestens je 3 Attributen und je 3 Operationen. Finden Sie zu dieser Klasse mindestens 3 Instanzen.
MehrDatenmodelle. Einführung in das Entity-Relationship-Modell. Datenbankmodelle. Beispiel für ein ER-Schema. Kunde( Meier, , ) 41, Meier
Einführung in das Entity-Relationship-Modell Datenmodelle Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation Grundbestandteile von
MehrDatenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation
Einführung in das Entity-Relationship-Modell Datenmodelle Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation Grundbestandteile von
MehrAnalyse und Design mituml2.1
Analyse und Design mituml2.1 Objektorientierte Softwareentwicklung Von Bernd Oestereich 8., aktualisierte Auflage Oldenbourg Verlag München Wien nhaltsverzeichnis Objektorientierte Softwareentwicklung
MehrAnalyse und Design mit U ML 2.3
Analyse und Design mit U ML 2.3 Objektorientierte Softwareentwicklung von Bernd Oestereich unter Mitarbeit von Stefan Bremer 9., aktualisierte und erweiterte Auflage Ofdenbourg Verlag München Inhaltsverzeichnis
MehrBegriffe 1 (Wiederholung)
Begriffe 1 (Wiederholung) Klasse Eine Klasse ist der Bauplan für ein oder mehrere Objekte. In einer Klasse werden Dienste (Methoden) zur Verfügung gestellt. Klassennamen beginnen mit einem Großbuchstaben.
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
MehrKapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen
Kapitel 9 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Attribute von Klassen, Methoden und Variablen Interfaces WS 07/08 1/ 18 2/ 18
Mehrkonzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten n-stellige Relationships (n>2) (siehe nächste zwei Folien) schwache Entities
Datenbankentwurf bisher: konzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten (min, max)-notation n-stellige Relationships (n>2) (siehe nächste zwei Folien) schwache Entities nun: Generalisierung,
MehrInformatik II Modellierung Übung 5 Petrinetze/Klassendiagramme
I Informatik II Modellierung Übung 5 Petrinetze/Klassendiagramme Abgabetermin: 11. Juni 24.00 Uhr Per e-mail an Tutor Seite 1 / 9 Aufgabe 1 (3%) Klassendiagramme von einer abstrakten Klasse können keine
MehrUML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language
UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language ADV-Seminar Leiter: Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?
MehrSoftware-Engineering
FH Wedel Prof. Dr. Sebastian Iwanowski SWE42 Folie Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 4: Systemanalyse Teil 2: Datenorientierte Sicht FH Wedel Prof. Dr. Sebastian Iwanowski SWE42
MehrAnalyse und Design mituml2
Analyse und Design mituml2 Objektorientierte Softwareentwicklung von Bernd Oestereich 7, aktualisierte Auflage Oldenbourg Verlag München Wien Ш1!Н1Н1КД nhjektorientierte Softwareentwicklung - Analyse und
Mehr7. Objektorientierung. Informatik II für Verkehrsingenieure
7. Objektorientierung Informatik II für Verkehrsingenieure Klassen, Objekte und Attribute Buslinie und Haltestellen 3 Haltestellen und deren Eigenschaften Bauplan einer Haltestelle (Struktur) Konkrete
MehrSoftware Engineering. 3. Analyse und Anforderungsmanagement
Software Engineering 3. Analyse und Anforderungsmanagement Gliederung Vorlesung Einführung V-Modell XT Analyse und Anforderungsmanagement Benutzungsoberflächen Architektur Entwurf Entwurfsmuster Persistenz
MehrEinführung in die Informatik 1
Einführung in die Informatik 1 Objektorientierung Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00 Uhr, o.n.v.
MehrUML (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...
MehrKapitel 3: Datenbanksysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur : Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 3: Datenbanksysteme : PDDr. Peer
MehrSoftwarepraktikum: Enigma
Softwarepraktikum: Enigma Martin Steffen Sommersemester 2003 Abschnitt I Softwareentwurf Bereiche der Softwareentwicklung 1 Softwareentwurf eigentliche Softwareentwicklung Projektmanagement Konfigurationsmanagement
MehrTeil 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
MehrKapitel 2: OO Grundlagen
Kapitel 2: OO Grundlagen 2.1 Objekte zum Leben erwecken (und Grundmechanismen verstehen) 2.2 Statische Elemente nutzen & vererben 2.3 Kooperation über Interfaces Lothar Schmitz UniBwM (teils nach Prof.
MehrAnalyse 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
MehrKonzeptionelle Modellierung von XML-Dokumenttypen
Konzeptionelle Modellierung von XML-Dokumenttypen Rainer Eckstein Institut für Informatik LFE DBIS Humboldt-Universität zu Berlin Rainer Eckstein 1 Konzeptionelle Modellierung von XML: XML (extensible
MehrGeoinformation I Datenmodellierung
Seite 1 von 61 Geoinformation I Datenmodellierung Seite 2 von 61 Datenmodellierung Übersicht Datenverwaltung und Datenbanken objektorientierte Abbildung der Realität Grundlagen der Objektorientierung Darstellung
MehrHPI MOOC. n-äre Relationships. Rollen von Relationships. Konvertierung in binäre Relationships. Attribute an Relationships
HPI MOOC n-äre Relationships Rollen von Relationships Konvertierung in binäre Relationships Attribute an Relationships Entwurfskriterien Regeln zur Klassifikation von Entities und Attributen: Entities
MehrSoftware-Engineering
SWE42 Slide Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 4: Systemanalyse Teil 2: Datenorientierte Sicht SWE42 Slide 2 Systemanalyse: Datenorientierte Sicht Entity-Relationship-Modellierung
MehrJason 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,
Mehr8. Analyse Muster. Entwurfsprinzipien. Siehe auch Heide Balzert: Lehrbuch der Objektmodellierung. 8. Analyse Muster 1
8. Analyse Muster Entwurfsprinzipien Siehe auch Heide Balzert: Lehrbuch der Objektmodellierung. 8. Analyse Muster 1 Definition Analyse Muster (Analysis-Pattern) beschreiben eine Lösung für eine typische
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: 03.03.2011 Prüfungsdauer:
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
Mehr11/2009 Bernhard Gangl. Steuerungen mit OOP entwickeln 11 / 2009 1. Themenübersicht. Übersicht und Begriffsklärung: Objektorientierte Programmierung
Reduzierung der Engineeringzeiten und kosten durch objektorientierte Steuerungsprogrammierung 11/2009 Bernhard Gangl www.sigmatek-automation.com Steuerungen mit OOP entwickeln 11 / 2009 1 Themenübersicht
MehrSo#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
MehrKapitel 3: Statische Analyse mit FUSION
Die erste Phase Kapitel 3: Statische Analyse mit FUSION SoPra 2008 Kap. 3: Statische Analyse mit FUSION (1/44) Kapitel 3.1: Anforderungsdokument Vorgabe: Informelle Anforderungen (Requirements): Lastenheft
MehrInhaltsverzeichnis. Vorwort
Inhaltsverzeichnis Vorwort XI 1 C/C++-Grundlagen 1 1.1 Einführung................................ 1 1.1.1 Entwicklungsgeschichte: Von K&R-C nach C++........ 1 1.1.2 Beispielprogramme.......................
Mehr-02- Arbeitsunterlagen
-02- Arbeitsunterlagen DVT LK13.1 2014/2015 Erweiterung ER-Modell Übungsaufgaben ER-Modell Lehrkraft: Kurs: 0 Erweiterung zum Ersten Generalisierung Übergang zu einem allgemeineren (Super-)Typ Bsp.: Mitarbeiter
MehrEinführung in die Programmierung
Einführung in die Programmierung Teil 8: Interfaces Prof. Dr. Peer Kröger, Florian Richter, Michael Fromm Wintersemester 2018/2019 Übersicht 1. Einführung 2. Schnittstellen in Java 3. Exkurs: Marker-Interfaces
MehrModellierungstipps für die Anwendungsfallmodellierung
Modellierungstipps für die Anwendungsfallmodellierung Identifiziere nur relativ grobe Abläufe als Anwendungsfälle! Anwendungsfälle werden nicht in weitere Anwendungsfälle zerlegt, höchstens unter Verwendung
MehrNACHRICHTENTECHNISCHER SYSTEME
Einführung UML COMPUTERSIMULATION NACHRICHTENTECHNISCHER SYSTEME 11. Unified Modeling Language UML 220 Standardsprache d zur Visualisierung, i Spezifikation, Konstruktion und Dokumentation komplexer (Software-)
MehrKapitel 3: Datenbanksysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2018 Kapitel 3: Datenbanksysteme Vorlesung:
MehrKapitel 5: Das Design
Nach der Analyse kommt... Kapitel 5: Das Design SoPra 2008 Kap. 5: Das Design (1/20) Kapitel 5.1: Überblick Was ist Design? Ergebnis der Analyse: abstrakte Definitionen Objektmodell: Klassen, Assoziationen,
MehrSWE4 Slide 1. Software-Engineering. Vorlesung 4 vom Sebastian Iwanowski FH Wedel
SWE4 Slide Software-Engineering Vorlesung 4 vom 08..2004 Sebastian Iwanowski FH Wedel SWE4 Slide 2 Software-Engineering Vorlesungsthemen:. Überblick über das Thema und die Vorlesung 2. Grundlegende Prinzipien
MehrTheorie zur Übung 8 Datenbanken
Theorie zur Übung 8 Datenbanken Relationale Datenbanksysteme Ein relationales Datenbanksystem (RDBS) liegt vor, wenn dem DBS ein relationales Datenmodell zugrunde liegt. RDBS speichern Daten in Tabellenform:
MehrKlassen und ihre Beziehungen III: Mehrfache Vererbung, Rollen, Schnittstellen und Pakete
2 Klassen und ihre Beziehungen III: Mehrfache Vererbung, Rollen, und Pakete Martin Wirsing Ziele Den Begriff der einfachen und mehrfachen Vererbung verstehen Verstehen, wann Vererbung eingesetzt wird deklarationen
MehrAssoziationen in Java
Assoziationen in Java Michael Dienert 16. Oktober 2018 1 Wiederholung: Gerneralisierung und Vererbung Gerneralisierung ist das Gegenteil von Vererbung: Eine spezielle Klasse erbt von der allgemeineren
MehrAbstraktionsebenen des Datenbankentwurfs
Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 1. Konzeptuelle Ebene 2. Implementationsebene 3. Physische Ebene 1 Objektbeschreibung Uni-Angestellte - Anzahl: 1000 - Attribute PersonalNummer
MehrKapitel 3: Datenbanksysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008 Kapitel 3: Datenbanksysteme Vorlesung:
MehrVU Objektorientierte Modellierung Übung 2
VU Objektorientierte Modellierung Übung 2 Übungsgruppen: 2.4.2008-25.4.2008 Aufgabe : Objektdiagramm Gegeben ist folgendes Objektdiagramm: z = :A w = 3 :B x = 8 :C z = 2 :A w = 4 :B y = 9 :E w = 5 :B x
MehrAlgorithmen und Datenstrukturen 06
31. Mai 2012 1 Besprechung Blatt 5 Fragen 2 Objektorientierte Programmierung Allgemein Sichtbarkeit Konstanten 3 Unified Modeling Language (UML) Klassendiagramme Anwendungsfalldiagramme 4 Vorbereitung
Mehr