HPI MOOC. n-äre Relationships. Rollen von Relationships. Konvertierung in binäre Relationships. Attribute an Relationships

Ähnliche Dokumente
konzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten n-stellige Relationships (n>2) (siehe nächste zwei Folien) schwache Entities

SWE5 Slide 1. Software-Engineering. Vorlesung 5 vom Sebastian Iwanowski FH Wedel

Daten- und Informationsmodellierung

Daten- und Informationsmodellierung

Datenbanksysteme SS 2007

Inhalt. 2.1 Datenbankentwurf. 2.2 Relationales Modell. 2.3 Relationale Entwurfstheorie. 2.4 Relationale Algebra. 2.5 Structured Query Language (SQL)

Informatik für Ökonomen II: Datenintegrität. Prof. Dr. Carl-Christian Kanne

Datenbanksysteme SS 2007

Kapitel 5 Dr. Jérôme Kunegis. SQL: Grundlagen. WeST Institut für Web Science & Technologien

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure

Referentielle Integrität

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #5. SQL (Teil 3)

Objektorientierte Datenbanken

Kapitel 3: Hörsaalbeispiel Klassendiagramm (Analysesicht)

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Referentielle Integrität

Arbeitsblätter zu Teil I des Praktikums

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL.

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Datenbanksysteme 2011

Kurzeinführung in UML

Objektrelationale Datenbanken

Datenbanksysteme Vorlesung vom noch Kapitel 7: SQL. Oliver Vornberger. Institut für Informatik Universität Osnabrück

Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

Vorlesung Programmieren

Datenbanken: ER-Modell

Datenbanksysteme 2015

Prüfung Software Engineering I (IB)

Kapitel 4: Konzeptueller Datenbankentwurf

Modellieren mit der Unified Modeling Language: Klassen- und Objektdiagramme. 11. November 2014

Datenbankmodelle 1. Das Entity-Relationship-Modell. Prof. Dr. Bernhard Schiefer 2-1

Klausur "OOAD" im SS Name, Vorname: Matrikel-Nr:

Java Einführung Objektorientierte Grundkonzepte

Programmieren in Java

Aufgabe 1: Strukturmodellierung mittels Klassendiagramm Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem Klassendiagramm beschäftigt.

Software- und Systementwicklung

Kapitel DB:III (Fortsetzung)

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Orientierte Modellierung mit der Unified Modeling Language

7. Analyse-Phase: Datenmodellierung Software Engineering

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell

Grundlagen der UML-Modellierung. Modellierung. Elena Paslaru Seminar Praktische Modellierung SS

Datenbankmodelle 1. Das Entity-Relationship-Modell

Datenintegrität. Bisherige Integritätsbedingungen

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

Fundamentals of Software Engineering 1

Kapitel DB:III. III. Konzeptueller Datenbankentwurf

Abschnitt 15: Unified Modeling Language (UML)

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

Software Engineering Klassendiagramme weiterführende Konzepte

Systemanalyse. - Folien zur Vorlesung für AI3 im Sommersemester Teil 4 -

Einführung und Überblick

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren

RUP Analyse und Design: Überblick

Datenbankentwurf. Entwicklungsprozess Anforderungsanalyse & Miniwelt

2. Informationsmodellierung mit Entity-Relationship-Modell und UML

Vorlesung "Software-Engineering"

Softwaretechnik Unified Modeling Language (UML)

UML. Weiteres Vorgehen im Projekt

Einführung in das Entity-Relationship-Modell

VO Datenmodellierung. Katrin Seyr

Logische Datenmodelle

Assoziation und Aggregation

Einführung in die Programmierung für NF

Software Engineering Klassendiagramme Einführung

Studierende, die diese Vorlesung hören, haben sich auch für folgende Lehrveranstaltungen interessiert:

Code-Erzeugung aus UML-Klassendiagrammen

Objektorientierte Modellierung (1)

Carl-Christian Kanne. Einführung in Datenbanken p.1/513

Klausur Software-Engineering SS 2005 Iwanowski

Unified Modeling Language (UML )

Es wird empfohlen folgendes Material anzusehen:

Prüfung Software Engineering I (IB)

Friihjahr. Erste Staatsprüfilrg für ein Lehramt an öffentlichen Schulen.Prüfurgsaufgaben- Prüfungsüeilnehmer Prüfungsüermin Einzelprüfungsnummer

SS2010 BAI2-DBP Gruppe 1 Lösung zu Übungsblatt 3. R. C. Ladiges, D. Fast 29. April 2010

DAS ENTITY-RELATIONSHIP MODELL (E-R MODEL)

Informatik I - Programmierung Globalübung Objektorientierung. Objektorientierung Konzepte & Notationen

Klassendiagramm. Kurzer Überblick über UML - Stand BlaBla

3. Konzepte der objektorientierten Programmierung

Objektorientierte Analyse (OOA) Inhaltsübersicht

Einführung in die Programmierung mit Java. Hörsaalübung

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

UML Klassendiagramm. Igor Karlinskiy, Mikhail Gavrish

Inhaltsverzeichnis. 1. Fragestellung

Software Engineering Klassendiagramme Assoziationen

Das relationale Modell

Entwurf von Datenbanken

Algorithmen und Datenstrukturen 07

Architektur eines DBMS Logische Optimierung

Objektorientierte Softwareentwicklung

Software-Engineering

80/1RWDWLRQXQG6HPDQWLN. Dr. Eckhardt Holz Humboldt-Universität zu Berlin Institut für Informatik

Themen. Unified Modelling Language (UML) Assoziation. Aggregation. Komposition

PRÜFUNG. Grundlagen der Softwaretechnik

Von der UML nach C++

Oracle JDeveloper 10 g

3. Algorithmen und Programmierumgebung und Einführung in die Datenmodellierung Für die Implementierung von Algorithmen nutzen wir

Transkript:

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 sollten deskriptive Informationen enthalten. Mehrwertige Attribute sollten als Entities klassifiziert werden. Attribute sollten der Entity zugeordnet werden, die sie am direktesten beschreibt. Redundante Relationships sollten vermieden werden. Wie eine Informationseinheit repräsentiert wird, ist anwendungsabhängig.

Beispiel: Bestellung Als Entity: Kunde platziert N Bestellung M für_ein Als Relationship: Kunde M bestellt N Produkt Produkt Als Attribut: Bestell- Nr Kunde M kauft N Produkt

Aufgabe für nächste Woche Lesen und versuchen Sie zu verstehen aus Datenmanagement mit SQL, HPI open.hpi.de/courses/sql: Woche 2: 2.08 Designprinzipien Fragen dazu bitte nächste Woche!

Modellierung einer kleinen Beispielanwendung: E/R Studenten Vorlesungen Reale Welt: Universität Konzeptuelle Modellierung MatrNr Name Studenten hören Vorlesungen VorlNr Titel

Modellierung einer kleinen Beispielanwendung: UML

Datenmodellierung mit UML UML: Unified Modelling Language De-facto Standard für den objekt-orientierten Software-Entwurf Zentrales Konstrukt: Klasse (class), modelliert gleichartige Objekte hinsichtlich Struktur (~Attribute) Verhalten (~Operationen/Methoden) Assoziationen zwischen Klassen entsprechen Beziehungstypen Generalisierungshierarchien Aggregation Cheat sheet Class Diagram: http://www.code-meets-design.de/wpcontent/uploads/203/07/uml-classdiagram-cheat-sheet.pdf

UML Notation Assoziation: Generalisierung: Aggregation: (Teil-von) Komposition: (Spezialfall von Aggregation)

Multiplizität KlasseA +Att +Att2 +op() k..l Assoziation i..j.. KlasseB +Att +Att2 +op() Jedes Element von KlasseA steht mit mindestens i Elementen der KlasseB in Beziehung... und mit maximal j vielen KlasseB-Elementen Analoges gilt für das Intervall k..l Multiplizitätsangabe ist analog zur einfachen Funktionalitätsangabe im ER-Modell Nicht zur (min,max)-angabe: Vorsicht!

Assoziationsklasse Klasse A +Att +Att2 + op() Klasse B +Att +Att2 + op() Klasse C +Att +Att2 für Attribute der Assoziation

Klassen und Assoziationen Studenten +MatrNr : int +Name : String +Semester : int +Notenschnitt() : float +SummeWochenstunden() : short +Hörer.. hören +Nachfolger Vorlesungen +VorlNr : int +Titel : String +SWS : int voraussetzen +AnzHörer() : int +DurchfallQuote() : float Legende: +: public

Komposition Studenten +MatrNr : int +Name : String +Semester : int +Notenschnitt() : float +SummeWochenstunden() : short +Prüfling absolviert... +Prüfer Prüfungen +Note : Decimal +Datum : Date +verschieben() +Prüfungsstoff...

Begrenzungsflächendarstellung Polyeder (4, ) Hülle N (,) Flächen N (3, ) Begrenzung M (2, 2) Kanten N (2, 2) StartEnde M (3, ) Punkte PolyID FlächenID KantenID X Y Z Beispiel- Polyeder

Begrenzungsflächenmodellierung von Polyedern in UML Polyeder +PolyID : int +... +Gewicht() : float +Volumen() : float +skalieren() +verschieben() +rotieren() Flächen Kanten Hülle +FlächenID : int Begrenzung +KantenID : int StartEnde +... +... 4.... +Umfang() : float 2 3.. 3.. 2 +Länge() : float +Volumen() : float Punkte +X : float +Y : float +Z : float +rotieren() +verschieben() +skalieren()

Studenten +MatrNr : int +Name : String +Semester : int +Notenschnitt() : float +SummeWochenstunden() : short +Prüfling +Hörer.. hören voraussetzen +Nachfolger Vorlesungen +VorlNr : int +Titel : String +SW S : int +AnzHörer() : int +DurchfallQuote() : float Prüfungen +Note : Decimal +Datum : Date +verschieben() +Prüfer +Prüfungsstoff gelesenvon Assistenten +Fachgebiet : String +Gehalt() : short arbeitenfür +Boss Professoren +Rang : String +Notenschnitt() : float +Gehalt() : short +Lehrstundenzahl() : short +Dozent Angestellte +PersNr : int +Name : String +Gehalt() : short

Anwendungsfälle (use cases) Fakultäten -Lehrveranstaltung Vorlesungen anbieten -Hörer ProfessorIn -prüft «verwendet» -liest StudentIn -Prüfling Prüfungen durchführen -Beisitzer «verwendet» Studienplan überprüfen AssistentIn

Interaktions-Diagramm: Modellierung komplexer Anwendungen ProfessorIn Bibliothek Terminkalender Raumvergabe Vorlesungsverz. entleihe_buch() freiertermin() reservieretermin() eintragentermin() ankündigenvorlesung()

Interaktions-Diagramm: Prüfungsdurchführung StudentIn Prüfungsamt Vorlesung ProfessorIn AssistentIn anmelden() berechtigt?() gelesenvon() informieren() freiertermin() Prüfung create() benachrichtigen() bewerten() bestätigen() Beisitz() protokollieren() UML Notationsübersicht: http://www.oose.de/nuetzliches/fachliches/uml/uml-notationsubersicht/

Quiz UML Aus dem Stanford MOOC: https://lagunita.stanford.edu/courses/db/uml/selfpaced/ courseware/ch-unified_modeling_language/seq-quizuml/ Quiz Q2 + Q5 Q7