SOFTWARE TECHNOLOGY 2009/2010 Faculty of Electrical Engineering and Technical Informatics Budapest University of Technology and Economics OO problems 4de.

Slides:



Advertisements
Ähnliche Präsentationen
Dauermagnete Bei magnetischen Materialien unterscheidet man Eisenkerne bzw. Weicheisenstücke und Dauermagnete bzw. Hart-magnetische Materialien. Dauermagnete.
Advertisements

TAGUNG DER DEUTSCH-LUSITANISCHEN JURISTENVEREINIGUNG O processo penal português Panorâmica introdutória Der portugiesische Strafprozess ein einführender.
Ach wie gut, daß niemand weiß Der Schutz von Wissen
Herzlich Willkommen bei SIMPLE STABLE BULDING
Adjektivendungen Tabellen und Übungen.
ZWILLING Neuheiten 2008.
Das Hexenkochbuch Nicht Rattenschwänze, Spinnenbein
 Präsentation transkript:

SOFTWARE TECHNOLOGY 2009/2010 Faculty of Electrical Engineering and Technical Informatics Budapest University of Technology and Economics OO problems 4de

Software technology © dr. R.Hadik2 STD und Zustandsdiagramm | a | s | k A1 | A1/to | S2/be | A1/or S2 | S2/ | S2/not | A1/tobe 1.Was ist der Eingang der Steuereinheit ? 2.Wie heissen die Prozessen ? 3. UML-2 Zustandsdiagramm und STD ?

Software technology © dr. R.Hadik3 1.[a|s|k] 2. To, be, or, not, tobe 3.

Software technology © dr. R.Hadik4 ERD und Klassendiagramm Bei der Firma eWarenhaus werden die Bestellungen der Kunden (Name, Adresse, Steuernummer) durch Referenten (Name, Beschäftigung, Erfahrung) bearbeitet. Jede Kunde wird zu einen Referent zugeordnet. Ein Referent behandelt mehrere Kundenverbindungen. Die Bestellung (Datum, Lieferungsadresse) soll mindestens einen Titel enthalten. Ein Titel wird durch (ArtikelNr, bestellte Menge) angegeben. Die Artikel werden vom Hersteller (HerstellerNr, ArtikelNr ) besorgt. Wenn alle Titel einer Bestellung vorrätig sind, wird ein oder mehrere Paketen zusammengestellt, und dem Kunde zugesendet. Ein Packet gehört aber nur zur einen Bestellung. Es werden ein oder mehr Artikel einer Bestellung in ein Paket eingepackt.

Software technology © dr. R.Hadik5

Software technology © dr. R.Hadik6 Anmerkungen: Artikel speichert die Artikel Daten mit ArtikelNr identifiziert. Freie Menge im Lager wird hier angegeben. Die Hersteller-Tabelle enthält die Daten der Herstellerfirmen. Es ist ratsam allen Entitäten eine (laufenden) Nr als primary Key zuzuordnen, was die eindeutige Identifizierung im SW sichert. Packet enthält zum Anfang kein Rekord, nur wenn die Bestellung geliefert wird. Hersteller vorläufig können ohne Artikel existieren. Artikel ohne Titel können jederzeit existieren Kunden können ohne Bestellung existieren.

Software technology © dr. R.Hadik7 Weitere Anmerkungen: Bestellung ohne Titel kann nicht existieren. Es ist logisch, aber so kann man die Bestellungen alleine nicht einfügen, weil die constraints der Tabelle 'Bestellung' im Datenbank es verhindern. Also lieber ein o mehr als weniger bei den Füßen, es heißt es muss erlaubt werden, dass Bestellungen ohne Titel existieren können.

Software technology © dr. R.Hadik8 UML Klassendiagramm.

Software technology © dr. R.Hadik9 UML Klassendiagramm-Anmerkungen Alle Entitäten haben einen (numerischen) primären Schlüssel, immer als erstes aufgelistet. Prim. Schlüssel wird durch fremden Schlüssel (primäre Schlüssel einer anderen Tabelle) gefolgt. Fremde Schlüssel in der fremden Tabelle müssen existieren (automatisch geprüft). Titel und Packet werden durch BestNr und eine laufende Nummer (in einer Bestellung läuft ab 1...n) als zusammengesetzte primäre Schlüssel identifiziert.

Software technology © dr. R.Hadik10 UML Klassendiagramm-Anmerkungen Die mindestens 1 Assoziation kann als constraint realisiert werden. ( musthaveTitel() ). Aber mit so einem constraint, was immer wieder automatisch aufgerufen wird bei jedem Insert in diese Tabelle verhindert man seine eigene Arbeit, siehe die frühere Anmerkungen. Unschön und überflüssig ist es ArtikelName in Titel auch zu speichern. Es sollte von Artikel Datenbank-Tabelle mit ArtikelNr geholt werden. Beachten Sie die Rombus bei der Verbindungen. Warum wurden die so, und nicht auf die andere Ende der Verbindung gestellt? (Weil in der Klasse wozu das Rombus angeschlossen ist gibt es ein Referenz (z.B. Key) auf die andere Klasse.)