Y.A. de Boer
Een database van de exportstack van een Jumbo Container Terminal.
Computeropdracht,
Rapport 99.3.LT.5157, Transporttechnologie, Logistieke Techniek.
Dit verslag behandelt het ontwerp en de implementatie van een database
voor een exportstack van een Jumbo Container Terminal. De database is
eerst ontworpen volgens object-georiënteerde beginselen en later
geïmplementeerd in een relationeel Data Base Management Systeem (DMBS). De
database is nodig om een groot aantal simulaties te ondersteunen dat wordt
uitgevoerd naar aanleiding van een onderzoek naar een nieuw soort containerterminal.
De randvoorwaarden waarbinnen gewerkt wordt zijn die van het beoogde
ontwerp van de exportstack van de nieuwe containerterminal. Deze exportstack zal
bestaan uit een bepaald aantal stacking lanes. De stacking lanes
zijn weer onderverdeeld in dwars- en langs-partities. Combinaties van deze
partities vormen de stack zones. Deze stack zones bestaan weer uit één
of meer stack pillars, oftewel stapels slots. Het kleinste detailniveau van
deze onderverdeling van de exportstack is het slot niveau. De slots zijn
uiteindelijk de eenheden die de containers kunnen herbergen.
Deze opbouw van de exportstack is ook makkelijk terug te vinden in het
object-georiënteerde model van de database. Het object-georiënteerde
model, of kort objectmodel, is tot stand gekomen op de volgende wijze.
Eerst zijn alle relevante objectklassen gedefinieerd. Vervolgens zijn de
bijbehorende associaties en attributen hieraan toegevoegd. Tot slot is dit
geheel aangevuld met de operaties en methodes die nodig zijn om de
database te kunnen laten functioneren.
Op het moment dat het objectmodel geïmplementeerd moest worden in Delphi,
bleek dat Delphi geen object-georiënteerd DBMS bezat. Hierop is besloten
om gebruik te maken van het relationele DBMS dat wél aanwezig is in
Delphi. Het objectmodel moest hiervoor echter wel eerst omgevormd worden
tot een relationeel data schema.
Het relationeel dataschema is vervolgens geïmplementeerd in Paradox, wat
binnen Delphi het DBMS is met de meeste mogelijkheden. Bij de
geïmplementeerde database zijn vervolgens nog de queries geschreven die
nodig waren om de gewenste informatie uit de database te kunnen
halen.
Na de implementatie worden kort de verschillen in het ontwerp, de
implementatie en deze specifieke database, tussen een relationele en
object-georiënteerde database besproken. Dit verschil komt voornamelijk
neer op een grotere overeenkomst tussen het model en de werkelijkheid en
een groter gemak waarmee wijzigingen in de structuur van de database zijn
aan te brengen bij een object-georiënteerde database.
Uiteindelijk mag geconcludeerd worden dat:
- er een goed objectmodel te bouwen is van de beschreven exportstack
- het niet de moeite loont om een database eerst object-georiënteerd te
ontwerpen en vervolgens relationeel te implementeren
- Paradox niet het enige DBMS is waarmee deze database kan worden gebouwd.
Delphi kan weliswaar andere databases niet bouwen maar kan ze wel inlezen
- het in dit geval niet strikt noodzakelijk is om een object
georiënteerde database te bouwen in plaats van een relationele database
Rapporten studenten Logistieke Techniek
Gewijzigd: 1999.04.21;
logistics@3mE.tudelft.nl
, TU Delft
/ 3mE
/ TT
/ LT.