6.2 Vorstellung des Projekts 

Wir werden ein Verwaltungssystem für die Flüge der fiktiven Fluggesellschaft Railsair entwickeln.
Jeder Flug (»flight«) hat einen Abflughafen (»departure_airport«) und ein Zielflughafen (»arrival_airport«). Außerdem wird jeder Flughafen einem Land (»country«) zugeordnet.
Um das realisieren zu können, müssen mehrere Models miteinander interagieren:
Abbildung UML Railsair
Wir werden drei Models für unsere Beispielapplikation erstellen:
- Country (Datenbanktabelle countries )
- Airport (Datenbanktabelle airports )
- Flight (Datenbanktabelle flights )
Ein Airport hat einen code (dreistelliger Flughafencode, z. B. MUC für München oder DUS für Düsseldorf), einen Namen, und er gehört zu einem Land. Da sich mehrere Flughäfen in einem Land befinden können, hat ein Country keinen oder mehrere Airports, und jeder Airport gehört zu genau einem Land. Das heißt, es handelt sich von Country aus gesehen um eine 1:n-Beziehung zwischen Country und Airport.
Fremdschlüssel
Diese Beziehung wird über das Feld country_id in der Tabelle airports (Klasse Airport) hergestellt. Die Benennung des Feldes folgt der Konvention modelname_id.
Abbildung Country-Airport-Relation
Wir benötigen noch weitere Relationen, um unser Projekt abbilden zu können:
1:n-Relation
Ein Airport hat keine oder mehrere Flüge, was einer 1:n-Relation zwischen Airport und Flight entspricht. Ein Flug hat einen Abflughafen und einen Ankunftsflughafen, die beide eine Relation zu Airport haben. Da es sich um zwei Verweise auf einen Flughafen handelt, können wir die zugehörigen IDs nicht nach der Konvention modelname_id benennen, sondern benennen diese departure_airport_id und arrival_airport_id.
Abbildung Aiport-Flight-Relation
Die Flughäfen und Länder werden nicht über das System anlegbar oder editierbar sein. Hier werden wir nur die Models Airport und Country anlegen und die Datenbank mit Beispielwerten füllen. Ihrer Phantasie sind natürlich keine Grenzen gesetzt, die Beispielapplikation um diese Funktionalität zu erweitern.
Die Flüge sollen gepflegt werden können. Das heißt, es sollen neue Flüge angelegt und vorhandene editiert oder gelöscht werden können.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.