ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ



Σχετικά έγγραφα
ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

Ηλεκτρονικό Κατάστημα

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 4 7/02/2012

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

Εισαγωγή στα Πληροφοριακά Συστήματα

Σχεσιακό Μοντέλο. Σχεδιασμός Βάσεων Δεδομένων Μάθημα 2 ο Μαρία Χαλκίδη

Ενδεικτικές λύσεις ασκήσεων

Σχεδιασμός Βάσεων Δεδομένων

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε.

ΛΥΚΕΙΟ ΑΓΙΟΥ ΣΠΥΡΙΔΩΝΑ ΣΧΟΛΙΚΗ ΧΡΟΝΙΑ ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ 2014

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων κλάσης (2 ο Μέρος)

Μοντέλο Οντοτήτων-Συσχετίσεων

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 2 24/01/2012

Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων

Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Σχεσιακή δοµή δεδοµένων

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions)

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 5 21/02/2012

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub

ENTOURIUM Οδηγίες Χρήσης

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Άσκηση 1 (α) Να διατυπώσετε την πιο κάτω λογική έκφραση στη Visual Basic κάνοντας χρήση μεταβλητών:

Εργαστήριο 6 ο 7 ο / Ερωτήματα Ι

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Εισαγωγή στα Πληροφοριακά Συστήματα

Σχεδίαση και Χρήση Βάσεων Δεδομένων. Χρήση του DBDesigner. Γιώργος Πυρουνάκης - forky@di.uoa.gr

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 6: Διαγράμματα Κλάσης (2ο Μέρος)

QEMS TUTORIAL CRM. Οδηγίες για το νέο πρωτοποριακό πρόγραμμα της QEMS.

Τεχνολογία Πολιτισμικού Λογισμικού

ΛΥΚΕΙΟ ΣΟΛΕΑΣ Σχολική χρονιά

Βάσεις Δεδομένων 3η εργαστηριακή άσκηση

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Σχεδίαση Βάσεων Δεδομένων

Τμήμα Διοίκησης Επιχειρήσεων

Εργαστηριακές Ασκήσεις Σελίδα 1

ΟΝΟΜΑΤΕΠΩΝΥΜΟ : Αντικείμενα: Βάσεις δεδομένων, σχέσεις μεταξύ πινάκων, ερωτήματα, φόρμες και αναφορές.

Βάσεις Δεδομένων. Εισαγωγή για το Εργαστήριο. Δρ. Τιάκας Ελευθέριος. Τμήμα Πληροφορικής ΑΠΘ

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 8: Διαγράμματα Δραστηριοτήτων

Σχεδίαση Βάσεων Δεδομένων

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο -

Σχεδίαση Βάσεων. Τεχνητά, Σύνθετα, και Δευτερεύοντα Μοναδικά Χαρακτηριστικά (UIDs, Unique IDentifiers) Artificial, Composite, and Secondary UIDs

Σχεδίαση και λειτουργία βάσης δεδομένων Το παράδειγμα της μαιευτικής κλινικής Ευάγγελος Καρβούνης

Σχεδίαση Βάσεων Δεδομένων

Σχεδιασμός Βάσεων Δεδομένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

Εργαστήριο Βάσεων Δεδομένων. Triggers

Πατώντας το πλήκτρο Enter ή το κουμπί Enter από την γραμμή τύπων εκτελείται η μαθηματική πράξη και παρουσιάζει το αποτέλεσμα του κελιού.

Scheduling έργου 1 Τρίτη, 27 Οκτωβρίου 2015

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Document Scanning System Ιανουάριος, 2014

Διαχείριση Βάσης Δεδομένων (dbadmin)

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 7: Διαγράμματα Καταστάσεων

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model

Εισαγωγή στην Access 2007

Διαγραφή Επιλέγετε Διαγραφή για να διαγράψετε μία ήδη υπάρχουσα διαδικασία εισαγωγής ASCII

Ηλεκτρονικοί Υπολογιστές ΙI. Βάσεις Δεδομένων. Ακαδημαϊκό Έτος Εργαστήριο 2. Διαφάνεια 1. Κάπαρης Αναστάσιος

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.

Θέματα ανακεφαλαίωσης

«Οδηγίες χρήσης εφαρμογής Ενιαίου Συστήματος Πληρωμών»

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015

(1) Επιλέξτε την εντολή QUERIES για να μπείτε στο περιβάλλον δημιουργίας

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων καταστάσεων

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

Το Μοντέλο Οντοτήτων Συσχετίσεων

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΙΙ. Φοιτητής:... (ΑΕΜ: ) ΣΕΡΡΕΣ, Ιανουάριος 2010

Διάγραμμα Κλάσεων. Class Diagram

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Φυσική Σχεδίαση Υλοποίηση βάσης

Σχεδιασμός Πληροφοριακών Συστημάτων. Σημειώσεις

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Λίγα λόγια από το συγγραφέα Κεφάλαιο 1: Βάσεις δεδομένων και Microsoft Access Κεφάλαιο 2: Microsoft Access

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Ενδεικτικές λύσεις ασκήσεων

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

Επεξεργασία Ερωτήσεων

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

Βελτιώνω μια λεπτομέρεια, σε σχέση με την Ανακοίνωση από 22/6/2009 (1.4.3)

Το σχεσιακό μοντέλο βάσεων δεδομένων

Database Design. Documenting Business Rules Τεκμηρίωση Επιχειρησιακών κανόνων. 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved.

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Ενότητα 3:

Εισαγωγή στα Πληροφοριακά Συστήματα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων περίπτωσης χρήσης (1 ο επαναληπτικό μάθημα)

Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού

Βάσεις δεδομένων. (2 ο μάθημα) Ηρακλής Βαρλάμης

Διάγραμμα Οντοτήτων Συσχετίσεων (ΔΟΣ) Entity Relationship Diagram (ERD)

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL

Επεξεργασία Ερωτήσεων

Εγχειρίδιο Οδηγιών. BrainStorm. Περιβάλλον Τερματικού Σταθμού

Επίλυση προβλήματος με Access

Transcript:

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Εργασία στην Oracle ΔΙΑΧΕΙΡΙΣΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ ΚΡΑΤΗΣΕΩΝ ΘΕΣΕΩΝ ΜΙΑΣ ΑΕΡΟΠΟΡΙΚΗΣ ΕΤΑΙΡΙΑΣ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΔΑΣΚΩΝ: Ε.ΓΙΑΚΟΥΜΑΚΗΣ Ε Ε ΕΠΙΜΕΛΕΙΑ ΕΡΓΑΣΙΑΣ: ΒΑΣΙΛΕΙΟΥ ΘΕΩΝΗ ΚΥΠΡΙΟΥ ΕΙΡΗΝΗ ΟΙΚΟΝΟΜΙΔΗΣ ΔΗΜΗΤΡΗΣ Ακαδημαϊκό Έτος 2001-2002

ΠΕΡΙΕΧΟΜΕΝΑ Περιεχόμενα...2 Σχήματα...2 Κεφάλαιο 1 ο : Εισαγωγή...3 Κεφάλαιο 2 ο : Περιγραφή συστήματος...4 Κεφάλαιο 3 ο : Μοντέλο Βασικών λειτουργιών του Συστήματος...5 (Process Model)...5 Κεφάλαιο 4 ο : Το Μοντέλο Οντοτήτων Συσχετίσεων...6 Κεφάλαιο 5 ο : Ιεραρχικό Διάγραμμα Λειτουργιών...11 Κεφάλαιο 6 ο : Το φυσικό σχήμα...22 6.1 Πίνακες...23 6.2 Domains...25 Κεφάλαιο 7 ο : Modules...26 7.1 Μενού του συστήματος...26 7.2 Φόρμες του συστήματος...27 7.3 Αναφορές του συστήματος...32 Παράρτημα : Παραδείγματα Κώδικα PL/SQL...39 ΣΧΗΜΑΤΑ Σχήμα 1 Μοντέλο βασικών λειτουργιών της εφαρμογής...5 Σχήμα 2 Το E-R Diagram της εφαρμογής...6 Σχήμα 3 Το F-H Diagram της εφαρμογής...11 Σχήμα 4 Το φυσικό σχήμα της εφαρμογής...22 Σχήμα 5 Management Menu...26 Σχήμα 6 Reports Menu...26 Σχήμα 7 Φόρμα Book_a_Ticket...27 Σχήμα 8 Αναφορά Print_Ticket...28 Σχήμα 9 Φόρμα Manage_Airplanes...29 Σχήμα 10 Φόρμα Manage_Airports...30 Σχήμα 11 Φόρμα Manage_Types_of_Planes...30 Σχήμα 12 Φόρμα Manage_Flight...31 Σχήμα 13 Αναφορά Airplanes_per_Type...33 Σχήμα 14 Αναφορά Instances_of_Flights...34 Σχήμα 15 Αναφορά Passenger_Lists...35 Σχήμα 16 Αναφορά Waiting_Lists...36 Σχήμα 17 Αναφορά Direct_Flights...37 Σχήμα 18 Αναφορά Intermediate_Flights...38 OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 2

ΚΕΦΑΛΑΙΟ 1 Ο : ΕΙΣΑΓΩΓΗ Η εργασία αυτή πραγματοποιήθηκε στα πλαίσια του μαθήματος «Τεχνολογία Λογισμικού», υπό την επίβλεψη του καθηγητή κ. Ε. Γιακουμάκη, από τους ακόλουθους μεταπτυχιακούς φοιτητές: ΟΝΟΜΑΤΕΠΩΝΥΜΟ Βασιλείου Θεώνη Κυπρίου Ειρήνη Οικονομίδης Δημήτρης Η εφαρμογή που αναπτύχθηκε ονομάζεται «Διαχείριση του Συστήματος Κρατήσεων Θέσεων μιας Αεροπορικής εταιρίας» και για την υλοποίησή της χρησιμοποιήθηκε ο Oracle Designer 6.0. Για την εκτέλεση των φορμών και των αναφορών χρησιμοποιήθηκε ο Oracle Developer 6.0. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 3

ΚΕΦΑΛΑΙΟ 2 Ο : ΠΕΡΙΓΡΑΦΗ ΣΥΣΤΗΜΑΤΟΣ Η αεροπορική εταιρία BLUE AIRLINES του συστήματος μας πετάει σε 15 πόλεις στην Ελλάδα και σε 30 πόλεις στον κόσμο. Το δίκτυο αυτών των προορισμών καλύπτεται από 40.000 πτήσεις ετησίως. Οι λειτουργίες διαχείρισης της αεροπορική εταιρία πραγματοποιούνται σε δύο επίπεδα. Το πρώτο επίπεδο είναι η Γενική Διαχείριση των backoffice συστημάτων της εταιρίας και το δεύτερο είναι η διαχείριση των συστημάτων εξυπηρέτησης πελατών. Η Γενική Διαχείριση των backoffice συστημάτων κρατάει στοιχεία για τις πτήσεις που εκτελούνται, για τα αεροπλάνα που έχει η εταιρία (όπως τι τύπος είναι το αεροπλάνο, τι χωρητικότητα και ταχύτητα διαθέτει κ.τ.λ) καθώς και για τα αεροδρόμια στα οποία υπάρχουν ανταποκρίσεις πτήσεων. Από την άλλη, το σύστημα Διαχείρισης Εξυπηρέτησης Πελατών κρατάει στοιχεία και για τους πελάτες της εταιρίας και για τις πτήσεις που έχει κλείσει ο κάθε πελάτης. Υπάρχει ένας Υπεύθυνος Διαχείρισης που ενημερώνει συνεχώς την βάση δεδομένων της εταιρίας για τις καινούργιες πτήσεις που πρόκειται να πραγματοποιηθούν και διαγράφει αυτές που έχουν ήδη πραγματοποιηθεί. Συγκεκριμένα εισάγει στοιχεία όπως ημερομηνία, ώρα και αεροδρόμιο αναχώρησης / άφιξης μιας πτήσης καθώς και το κόστος της πτήσεως ανάλογα με την θέση (economic, business). Επιπλέον το σύστημα δίνει την δυνατότητα τροποποίησης αυτών των στοιχείων σε περίπτωση που έχει γίνει κάποιο λάθος ή αλλάξουν τα σχέδια των πτήσεων. Τέλος ο υπεύθυνος αυτός μπορεί να έχει πρόσβαση σε στατιστικά στοιχεία Συγκεκριμένα μπορεί να δει ανάλογα με τον τύπο του αεροπλάνου πόσα αεροπλάνα διαθέτει η εταιρία, την λίστα επιβατών καθώς και τη λίστα αναμονής για μια συγκεκριμένη πτήση και δίνοντας τον κωδικό μιας πτήσης (π.χ. η πτήση Αθήνα-Θεσσαλονίκη έχει τον κωδικό Β607) να ενημερωθεί για τα δρομολόγια ημερομηνία και ώρα αναχώρησης / άφιξης που πρόκειται να εκτελεστούν. Οι πελάτες που επιθυμούν να κλείσουν ένα εισιτήριο απευθύνονται στα αντίστοιχα γραφεία εξυπηρέτησης πελατών. Εκεί ενημερώνουν τον αρμόδιο υπάλληλο για την ημερομηνία και τον τόπο προορισμού που επιθυμούν να ταξιδέψουν και ο υπάλληλος τους πληροφορεί για τις πτήσεις που υπάρχουν καθώς και αν υπάρχουν διαθέσιμες θέσεις. Σε περίπτωση που υπάρχουν διαθέσιμες θέσεις, γίνεται κράτηση και υπάρχει η δυνατότητα να εκδοθεί το εισιτήριο εκείνη τη στιγμή ή κάποια άλλη στιγμή εντός ενός καθορισμένου χρονικού διαστήματος, ενημερώνοντας ταυτόχρονα τον πελάτη και για την τιμή του εισιτηρίου και για το συνολικό κόστος εάν ο πελάτης έχει κλείσει θέση για δύο πτήσεις. Στην αντίθετη περίπτωση που δεν υπάρχουν διαθέσιμες θέσεις, ο πελάτης μπορεί να μπει στην λίστα αναμονής και να του δοθεί ένας αριθμός προτεραιότητας. Εάν λοιπόν γίνει κάποια ακύρωση, τότε ο αρμόδιος υπάλληλος βρίσκει από την λίστα αναμονής τον πελάτη που έχει την μικρότερη προτεραιότητα και αυτόματα κάνει κράτηση στο όνομα του πελάτη για την συγκεκριμένη πτήση. Τέλος η αεροπορική εταιρία πραγματοποιεί και απευθείας πτήσεις ανάμεσα στον τόπο αναχώρησης και προορισμού και με ενδιάμεσους σταθμούς. Και στις δύο περιπτώσεις η διαδικασία κράτησης εισιτηρίων που ακολουθείται είναι η παραπάνω και είναι στην ευχέρεια του πελάτη να αποφασίσει τι από τα δύο θέλει. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 4

ΚΕΦΑΛΑΙΟ 3 Ο : ΜΟΝΤΕΛΟ ΒΑΣΙΚΩΝ ΛΕΙΤΟΥΡΓΙΩΝ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ (PROCESS MODEL) Οι λειτουργίες παίζουν πολύ σημαντικό ρόλο στον τρόπο με τον οποίο λειτουργεί μια επιχείρηση. Η μοντελοποίηση των λειτουργιών / διαδικασιών βοηθάει και στο να κατανοήσει και να βελτιώσει κανείς τις υπάρχουσες διαδικασίες και να σχεδιάσει καινούργιες. Με τον Oracle Designer, μπορείς να μοντελοποιήσεις τις επιχειρηματικές διαδικασίες χρησιμοποιώντας το διάγραμμα λειτουργιών (process diagram). Αυτό το διάγραμμα δείχνει την σειρά των βημάτων που ακολουθούνται για την δημιουργία ενός προϊόντος ή μιας υπηρεσίας μέσα στην επιχείρηση καθώς και την ροή της πληροφορίας ανάμεσα τους. Το μοντέλο των βασικών λειτουργιών της εφαρμογής μας απεικονίζεται στο παρακάτω σχήμα. Σχήμα 1 Μοντέλο βασικών λειτουργιών της εφαρμογής Ουσιαστικά περιγράφει τις λειτουργίες που αναφέραμε στο προηγούμενο κεφάλαιο που ήταν η περιγραφή του συστήματος. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 5

ΚΕΦΑΛΑΙΟ 4 Ο : ΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ Στο μοντέλο αυτό περιγράφονται τα στοιχεία που είναι σημαντικά για την εταιρία, όπως προέκυψε από την περιγραφή του συστήματος, οι ιδιότητες αυτών και ο τρόπος που συσχετίζονται αυτά μεταξύ τους (συσχετίσεις). ROUTE # ID_ROUTE * CUST_SURNAME * CUST_NAME * CUST_PHONE includes AIRPORT # ID_AIRPORT * CITY * COUNTRY * NAME _ accepts accepts ROUTE_INSTANCE * SEAT_CATEGORY o PRIORITY * STATUS _ departs from arrives to has INSTANCE_FLIGHT # DATE instance of a has FLIGHT # ID_FLIGHT * TIME_OF_DEPARTURE * TIME_OF_ARRIVAL * COST_FOR_ECONOMY * COST_FOR_BUSINESS is performed by is dedicated AIRPLANE # ID_AIRPLANE * NAME of a for a TYPE # ID_TYPE * CAPACITY_FOR_BUSINESS * CAPACITY_FOR_ECONOMY * NAME o SPEED Σχήμα 2 Το E-R Diagram της εφαρμογής OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 6

Το παραπάνω E-R diagram αποτελεί μια απεικόνιση των οντοτήτων που περιλαμβάνονται στην εφαρμογή μας και των συσχετίσεων που συνδέουν αυτές τις οντότητες μεταξύ τους. Οντότητα AIRPLANE Γνωρίσματα της οντότητας AIRPLANE Γνώρισμα Τύπος Σχόλια ID_AIRPLANE NUMBER To αναγνωριστικό της οντότητας NAME VARCHAR2 Το όνομα του αεροπλάνου Συσχετίσεις της οντότητας AIRPLANE Οντότητα Σχέση Οντότητα Σχόλια AIRPLANE M-1 TYPE Ένα αεροπλάνο είναι ενός συγκεκριμένου τύπου, ενώ σε ένα τύπο αεροπλάνου μπορεί να αντιστοιχούν πολλά αεροπλάνα. AIRPLANE 1-Μ INSTANCE_FLIGHT Ένα αεροπλάνο μπορεί να εκτελεί πολλές διαφορετικές πτήσεις, ενώ μια συγκεκριμένη πτήση εκτελείται από μόνο ένα αεροπλάνο. Οντότητα AIRPORT Γνωρίσματα της οντότητας AIRPORT Γνώρισμα Τύπος Σχόλια ID_AIRPORT INTEGER To αναγνωριστικό της οντότητας NAME VARCHAR2 Το όνομα του αεροδρομίου CITY VARCHAR2 Το όνομα της πόλης που βρίσκεται το αεροδρόμιο COYNTRY VARCHAR2 Το όνομα της χώρας που βρίσκεται το αεροδρόμιο OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 7

Συσχετίσεις της οντότητας AIRPORT Οντότητα Σχέση Οντότητα Σχόλια AIRPORT 1-M FLIGHT Ένα αεροδρόμιο δέχεται πολλές πτήσεις, ενώ μια πτήση αναχωρεί από ένα συγκεκριμένο αεροδρόμιο. AIRPORT 1-Μ FLIGHT Ένα αεροδρόμιο δέχεται πολλές πτήσεις, ενώ μια πτήση φτάνει σε ένα συγκεκριμένο αεροδρόμιο. Οντότητα FLIGHT Γνωρίσματα της οντότητας FLIGHT Γνώρισμα Τύπος Σχόλια ID_ FLIGHT INTEGER To αναγνωριστικό της οντότητας COST_FOR_ECONOMY MONEY Το κόστος που έχει η οικονομική θέση της πτήσης COST_FOR_BUSINESS MONEY Το κόστος που έχει η business θέση της πτήσης TIME_OF_ARRIVAL TEXT Ώρα αναχώρησης της πτήσης TIME_OF_DEPARTURE TEXT Ώρα άφιξης της πτήσης Συσχετίσεις της οντότητας FLIGHT Οντότητα Σχέση Οντότητα Σχόλια FLIGHT M-1 AIRPORT Μια πτήση φτάνει σε ένα συγκεκριμένο αεροδρόμιο, ενώ ένα αεροδρόμιο δέχεται πολλές πτήσεις. FLIGHT M-1 AIRPORT Μια πτήση αναχωρεί από ένα συγκεκριμένο αεροδρόμιο, ενώ ένα αεροδρόμιο δέχεται πολλές πτήσεις. FLIGHT 1-Μ INSTANCE_FLIGHT Μια πτήση έχει πολλά στιγμιότυπα πτήσεων, ενώ ένα στιγμιότυπο πτήσης αντιστοιχεί σε μια πτήση. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 8

Οντότητα INSTANCE_FLIGHT Γνωρίσματα της οντότητας INSTANCE_FLIGHT Γνώρισμα Τύπος Σχόλια DATE DATE Ημερομηνία εκτέλεσης της πτήσης Συσχετίσεις της οντότητας INSTANCE_FLIGHT Οντότητα Σχέση Οντότητα Σχόλια INSTANCE_FLIGHT Μ-1 FLIGHT Ένα στιγμιότυπο πτήσης αντιστοιχεί σε μια πτήση, ενώ μια πτήση έχει πολλά στιγμιότυπα πτήσεων. INSTANCE_FLIGHT 1-Μ ROUTE_INSTANCE Σχέση τομής INSTANCE_FLIGHT M-1 AIRPLANE Μια συγκεκριμένη πτήση εκτελείται από μόνο ένα αεροπλάνο, ενώ ένα αεροπλάνο μπορεί να εκτελεί πολλές διαφορετικές πτήσεις Οντότητα ROUTE Γνωρίσματα της οντότητας ROUTE Γνώρισμα Τύπος Σχόλια ID_ ROUTE INTEGER To αναγνωριστικό της οντότητας CUST_NAME VARCHAR2 Το όνομα του πελάτη που έχει κάνει κράτηση σε μια συγκεκριμένη πτήση CUST_SURNAME VARCHAR2 Το επίθετο του πελάτη που έχει κάνει κράτηση σε μια συγκεκριμένη πτήση CUST_PHONE VARCHAR2 Το τηλέφωνο του πελάτη που έχει κάνει κράτηση σε μια συγκεκριμένη πτήση Συσχετίσεις της οντότητας ROUTE Οντότητα Σχέση Οντότητα Σχόλια ROUTE 1-M ROUTE_INSTANCE Σχέση τομής. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 9

Οντότητα ROUTE_INSTANCE Γνωρίσματα της οντότητας ROUTE_INSTANCE Γνώρισμα Τύπος Σχόλια PRORITY INTEGER Αριθμός προτεραιότητας SEAT_CATEGORY VARCHAR2 Δηλώνει την κατηγορία της θέσης (economy, business) STATUS CHAR Δηλώνει εάν ένας πελάτης έχει κλείσει μια θέση ή βρίσκεται σε λίστα αναμονής Συσχετίσεις της οντότητας ROUTE_INSTANCE Οντότητα Σχέση Οντότητα Σχόλια ROUTE_INSTANCE M-1 INSTANCE_FLIGHT Σχέση τομής. ROUTE_INSTANCE M-1 ROUTE Σχέση τομής. Οντότητα TYPE Γνωρίσματα της οντότητας TYPE Γνώρισμα Τύπος Σχόλια ID_TYPE INTEGER To αναγνωριστικό της οντότητας NAME VARCHAR2 Tο όνομα του τύπου του αεροπλάνου CAPACITY_FOR INTEGER Η χωρητικότητα των οικονομικών θέσεων ECONOMY του αεροπλάνου CAPACITY_FOR INTEGER Η χωρητικότητα των business θέσεων του BUSINESS αεροπλάνου SPEED INTEGER H ταχύτητα που έχει ο συγκεκριμένος τύπος αεροπλάνου Συσχετίσεις της οντότητας TYPE Οντότητα Σχέση Οντότητα Σχόλια TYPE 1-Μ AIRPLANE Σε ένα τύπο αεροπλάνου μπορεί να αντιστοιχούν πολλά αεροπλάνα, ενώ ένα αεροπλάνο είναι ενός συγκεκριμένου τύπου. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 10

ΚΕΦΑΛΑΙΟ 5 Ο : ΙΕΡΑΡΧΙΚΟ ΔΙΑΓΡΑΜΜΑ ΛΕΙΤΟΥΡΓΙΩΝ Το διάγραμμα αυτό χρησιμοποιήθηκε για να αποτυπώσει τις βασικές λειτουργίες της επιχείρησης, τον τρόπο που αυτές συνδέονται μεταξύ τους, δηλαδή την ιεραρχία τους και τον τρόπο που αυτές οι λειτουργίες χρησιμοποιούν τα δεδομένα του συστήματος. Σχήμα 3 Το F-H Diagram της εφαρμογής RES 1 Λειτουργία: FLIGHT TICKET RESERVATION SYSTEM Περιγραφή: Όλο το σύστημα κρατήσεων αεροπορικών εισιτηρίων RES 1.1 Λειτουργία: HANDLE CUSTOMER REQUEST Περιγραφή: Η λειτουργία αυτή διαχειρίζεται τις απαιτήσεις των πελατών που επιθυμούν να κάνουν μια κράτηση RES 1.1.1 Λειτουργία: SHOW DIRECT FLIGHTS SATISFYING CUSTOMER REQS Περιγραφή: Αναζήτηση των υπάρχοντων απευθείας πτήσεων σύμφωνα με τις απαιτήσεις του πελάτη Response: Overnight OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 11

Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPLANE AIRPORT FLIGHT INSTANCE_FLIGHT TYPE Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPLANE NAME της AIRPLANE ID_AIRPORT NAME της AIRPORT CITY COUNTRY ID_FLIGHT COST_FOR_BUSINESS COST_FOR_ECONOMY TIME_OF_ARRIVAL TIME_OF_DEPARTURE ID_TYPE CAPACITY_FOR_BUSINESS CAPACITY_FOR_ECONOMY NAME της TYPE SPEED DATE OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 12

RES 1.1.2 Λειτουργία: SHOW ROUTE WITH INTERMEDIARY STOPS Περιγραφή: Αναζήτηση των υπάρχοντων πτήσεων που έχουν ενδιάμεση στάση σύμφωνα με τις απαιτήσεις του πελάτη Response: Overnight Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPLANE AIRPORT FLIGHT INSTANCE_FLIGHT TYPE Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPLANE NAME της AIRPLANE ID_AIRPORT NAME της AIRPORT CITY COUNTRY ID_FLIGHT COST_FOR_BUSINESS COST_FOR_ECONOMY TIME_OF_ARRIVAL TIME_OF_DEPARTURE ID_TYPE CAPACITY_FOR_BUSINESS CAPACITY_FOR_ECONOMY NAME της TYPE SPEED DATE OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 13

RES 1.1.3 Λειτουργία: RESERVE AND MAINTAIN CUSTOMER S ROUTE/TICKET Περιγραφή: Κάνει εισαγωγή, αναζήτηση και διαγραφή της κράτησης μιας θέσης. Επιπλέον εισάγει και διαγράφει τους πελάτες από την λίστα αναμονής. Response: Immediate Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPLANE AIRPORT FLIGHT INSTANCE_FLIGHT ROUTE ROUTE_INSTANCE TYPE Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPLANE NAME της AIRPLANE ID_AIRPORT NAME της AIRPORT CITY COUNTRY ID_FLIGHT COST_FOR_BUSINESS COST_FOR_ECONOMY TIME_OF_ARRIVAL TIME_OF_DEPARTURE DATE ID_ROUTE OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 14

Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή PRIORITY SEAT_CATEGORY ID_TYPE CAPACITY_FOR_BUSINESS CAPACITY_FOR_ECONOMY NAME της TYPE SPEED RES 1.1.4 Λειτουργία: PRINT CUSTOMER S TICKET Περιγραφή: Εκτύπώση του εισιτηρίου του πελάτη Response: Overnight Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPLANE AIRPORT FLIGHT INSTANCE_FLIGHT ROUTE ROUTE_INSTANCE Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPLANE NAME της AIRPLANE ID_AIRPORT NAME της AIRPORT CITY COUNTRY OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 15

Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_FLIGHT COST_FOR_BUSINESS COST_FOR_ECONOMY TIME_OF_ARRIVAL TIME_OF_DEPARTURE DATE ID_ROUTE PRIORITY SEAT_CATEGORY RES 1.2 Λειτουργία: MANAGE BACKOFFCE OPERATIONS Περιγραφή: Διαχειρίζεται τις λειτουργίες της εισαγωγής, αναζήτησης, ενημέρωσης και διαγραφής των στοιχείων για τις πτήσεις, τα αεροπλάνα, τα αεροδρόμια και τους τύπους των αεροπλάνων RES 1.2.1 Λειτουργία: ENTER NAD MAINTAIN FLIGHTS AND THEIR INTANCES Περιγραφή: Εισαγωγή, ενημέρωση ή διαγραφή των στοιχείων που αφορούν τις πτήσεις και τα στιγμιότυπα τους Response: Immediate Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPLANE AIRPORT FLIGHT INSTANCE_FLIGHT OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 16

Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPLANE NAME της AIRPLANE ID_AIRPORT NAME της AIRPORT ID_FLIGHT COST_FOR_BUSINESS COST_FOR_ECONOMY TIME_OF_ARRIVAL TIME_OF_DEPARTURE DATE RES 1.2.2 Λειτουργία: ENTER AND MAINTAIN AIRPORTS Περιγραφή: Εισαγωγή, ενημέρωση ή διαγραφή των στοιχείων που αφορούν τα αεροδρόμια Response: Immediate Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPORT Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPORT NAME της AIRPORT CITY COUNTRY OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 17

RES 1.2.3 Λειτουργία: ENTER AND MAINTAIN AIRPLANE TYPES Περιγραφή: Εισαγωγή, ενημέρωση ή διαγραφή των στοιχείων που αφορούν τους τύπους των αεροπλάνων Response: Immediate Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPLANE TYPE Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPLANE NAME της AIRPLANE ID_TYPE CAPACITY_FOR_BUSINESS CAPACITY_FOR_ECONOMY NAME της TYPE SPEED RES 1.2.4 Λειτουργία: ENTER AND MAINTAIN AIRPLANES Περιγραφή: Εισαγωγή, ενημέρωση ή διαγραφή των στοιχείων που αφορούν τα αεροπλάνα Response: Immediate Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPLANE TYPE OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 18

Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPLANE NAME της AIRPLANE ID_TYPE CAPACITY_FOR_BUSINESS CAPACITY_FOR_ECONOMY NAME της TYPE SPEED RES 1.3 Λειτουργία: ADMINSTRATE INTSTANCES OF FLIGHTS Περιγραφή: Η λειτουργία αυτή εμφανίζει διάφορες πληροφορίες που αφορούν τα στιγμιότυπα των πτήσεων RES 1.3.1 Λειτουργία: SHOW/PRINT PASSENGER LIST Περιγραφή: Εκτύπωση της λίστας επιβατών για μια συγκεκριμένη πτήση Response: Overnight Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPORT FLIGHT INSTANCE_FLIGHT ROUTE ROUTE_INSTANCE Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPORT NAME της AIRPORT OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 19

Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή CITY COUNTRY ID_FLIGHT COST_FOR_BUSINESS COST_FOR_ECONOMY TIME_OF_ARRIVAL TIME_OF_DEPARTURE DATE ID_ROUTE PRIORITY SEAT_CATEGORY RES 1.3.2 Λειτουργία: SHOW/PRINT WAITING LIST Περιγραφή: Εκτύπωση της λίστας αναμονής των επιβατών για μια συγκεκριμένη πτήση Response: Overnight Χρήσεις Οντοτήτων Οντότητα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή AIRPORT FLIGHT INSTANCE_FLIGHT ROUTE ROUTE_INSTANCE Χρήσεις Γνωρισμάτων Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή ID_AIRPORT NAME της AIRPORT OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 20

Γνώρισμα Δημιουργία Ανάκτηση Ενημέρωση Διαγραφή CITY COUNTRY ID_FLIGHT COST_FOR_BUSINESS COST_FOR_ECONOMY TIME_OF_ARRIVAL TIME_OF_DEPARTURE DATE ID_ROUTE PRIORITY SEAT_CATEGORY OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 21

ΚΕΦΑΛΑΙΟ 6 Ο : ΤΟ ΦΥΣΙΚΟ ΣΧΗΜΑ Μετά την ολοκλήρωση της κατασκευής του μοντέλου οντοτήτων συσχετίσεων ακολούθησε η κατασκευή του φυσικού σχήματος με χρήση του Database Design Transformer. Σχήμα 4 Το φυσικό σχήμα της εφαρμογής OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 22

6.1 Πίνακες Πίνακας AIRPLANES Πεδία του πίνακα AIRPLANES Πεδίο Τύπος Domain Σχόλια ID_AIRPLANE Number Πρωτεύον κλειδί NAME Varchar2 Όνομα του αεροπλάνου TYPE_1_ID_TYPE Integer Ξένο κλειδί Πίνακας AIRPORT Πεδία του πίνακα AIRPORT Πεδίο Τύπος Domain Σχόλια ID_AIRPORT Integer Πρωτεύον κλειδί NAME Varchar2 Όνομα του αεροδρομίου CITY Varchar2 Όνομα της πόλης που βρίσκεται το αεροδρόμιο COUNTRY Varchar2 Όνομα της χώρας που βρίσκεται το αεροδρόμιο Πίνακας FLIGHTS Πεδία του πίνακα FLIGHTS Πεδίο Τύπος Domain Σχόλια ID_FLIGHT Integer Πρωτεύον κλειδί COST_FOR_BUSINESS Number Κόστος για την οικονομική θέση COST_FOR_ECONOMY Number Κόστος για την business θέση TIME_OF_ARRIVAL Varchar2 Ώρα αναχώρησης TIME_OF_DEPARTURE Varchar2 Ώρα άφιξης AIRPT_ID_AIRPORT Integer Ξένο κλειδί OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 23

AIRPT_ID_AIRPORT_ARRIVES_TO Integer Ξένο κλειδί Πίνακας INSTANCE_FLIGHTS Πεδία του πίνακα INSTANCE_FLIGHTS Πεδίο Τύπος Domain Σχόλια INST_DATE Date Σύνθετο κλειδί FLI_ID_FLIGHT Integer Σύνθετο κλειδί AIRPL_ID_AIRPLANE Number Ξένο κλειδί Πίνακας ROUTES Πεδία του πίνακα ROUTES Πεδίο Τύπος Domain Σχόλια ID_ROUTE Integer Πρωτεύον κλειδί CUST_SURNAME Varchar2 Επώνυμο του πελάτη CUST_NAME Varchar2 Όνομα του πελάτη CUST_PHONE Varchar2 Τηλέφωνο του πελάτη Πίνακας ROUTE_INSTANCES Πεδία του πίνακα ROUTE_INSTANCES Πεδίο Τύπος Domain Σχόλια RT_ID_ROUTE Integer Σύνθετο/ Ξένο κλειδί INST_INST_DATE Date Σύνθετο/ Ξένο κλειδί INST_FLI_ID_FLIGHT Integer Σύνθετο / Ξένο κλειδί PRIORITY Integer Προτεραιότητα για την λίστα αναμονής SEAT_CATEGORY Varchar2 Seat_category Κατηγορία θέσης (economy or business) STATUS Char Status Κατάσταση της θέσης του πελάτη (booked or waiting) OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 24

Πίνακας TYPES Πεδία του πίνακα TYPES Πεδίο Τύπος Domain Σχόλια ID_TYPE Integer Πρωτεύον κλειδί NAME Varchar2 Όνομα του τύπου του αεροπλάνου CAPACITY_FOR_ECONOMY Integer Χωρητικότητα των οικονομικών θέσεων CAPACITY_FOR_BUSINESS Integer Χωρητικότητα των business SPEED Integer Η ταχύτητα του συγκεκριμένου τύπου του αεροπλάνου 6.2 Domains Τα domains χρησιμοποιήθηκαν προκειμένου να δοθεί στους χρήστες ένα περιορισμένο και προκαθορισμένο σύνολο σταθερών τιμών και να αποφευχθούν σφάλματα που θα δυσκόλευαν την αναζήτηση. Όνομα Τύπος Τιμές SEAT_CATEGORY Varchar2 Economy Business STATUS Char B W OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 25

ΚΕΦΑΛΑΙΟ 7 Ο : MODULES Εκτελώντας το εργαλείο Application Design Transformer στο Function Hierarchy Diagram προέκυψε ένα σύνολο υποψήφιων modules. Από την επεξεργασία αυτών και σύμφωνα με τις ανάγκες και τις απαιτήσεις του συστήματος δημιουργήσαμε μια σειρά modules τα οποία παρουσιάζουμε στη συνέχεια κατηγοριοποιώντας τα σε τρεις κατηγορίες: φόρμες, αναφορές και μενού. 7.1 Μενού του συστήματος Η πρώτη κατηγορία module που θα περιγράψουμε είναι το μενού. Ουσιαστικά το μενού δεν είναι τίποτε άλλο από μια φόρμα με την διαφορά ότι δεν χρησιμοποιεί κανένα από τους πίνακες του συστήματος μας αλλά περιλαμβάνει μόνο κουμπιά, τα οποία σε παραπέμπουν στις υπόλοιπες φόρμες / αναφορές της εφαρμογής μας. Οι επιλογές που προσφέρει το μενού φαίνονται στο ακόλουθο σχήμα: Σχήμα 5 Management Menu Σχήμα 6 Reports Menu OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 26

Παρατηρούμε ότι χωρίσει το μενού σε δύο κατηγορίες : από την πρώτη κατηγορία μπορούμε να μεταβούμε στις φόρμες τους συστήματος και από την άλλη στις αναφορές. 7.2 Φόρμες του συστήματος Η δεύτερη κατηγορία modules που θα περιγράψουμε είναι οι φόρμες. Οι φόρμες που δημιουργήσαμε για να καλύψουμε τις ανάγκες εισαγωγής, ενημέρωσης και διαγραφής στοιχείων στους πίνακες του συστήματός μας περιγράφονται στη συνέχεια. Σε κάθε φόρμα υπάρχει μια σύντομη περιγραφή του τρόπου χρήσης της. Φόρμα Book_a_Ticket Σχήμα 7 Φόρμα Book_a_Ticket H φόρμα αυτή χρησιμοποιείται είτε για να γίνει κράτηση μιας αεροπορικής θέσης σε έναν πελάτη είτε για να μπει στην λίστα αναμονής. Έτσι αρχικά μπορούμε είτε να κάνουμε αναζήτηση των στοιχείων ενός πελάτη που ήδη υπάρχει είτε να κάνουμε εισαγωγή των στοιχείων ενός νέου πελάτη. Στη συνέχεια επιλέγουμε την ημερομηνία της πτήση που επιθυμούμε να κάνουμε την κράτηση από μια λίστα τιμών (list of value) η οποία δημιουργείται δυναμικά και τα υπόλοιπα δεδομένα (Departure, Country, Arrival, Time of Departure κ.τ.λ) εμφανίζονται αυτόματα. Το στοιχείο που διαφοροποιεί τις δύο λειτουργίες είναι το πεδίο STATUS. Όταν θέλουμε να κάνουμε κράτηση μιας θέσης του εκχωρούμε την τιμή Β, ενώ εάν θέλουμε ο πελάτης να μπει σε λίστα αναμονής τότε του εκχωρούμε την τιμή W. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 27

Το ιδιαίτερο χαρακτηριστικό αυτής της φόρμας είναι ότι πατώντας το κουμπί Print Ticket εκτελείται αυτόματα η αναφορά Print_Ticket η οποία παίρνει σαν παράμετρο το πεδίο Ticket_Code και εκδίδεται το εισιτήριο του συγκεκριμένου πελάτη, υπολογίζοντας ταυτόχρονα και το συνολικό κόστος. Σχήμα 8 Αναφορά Print_Ticket Τέλος μέσα από αυτήν την φόρμα υπάρχει η δυνατότητα όταν γίνει ακύρωση μιας κράτησης, ο αρμόδιος υπάλληλος πατώντας το κουμπί Find Min Priority να μεταφερθεί στην φόρμα του παρακάτω σχήματος και να βρει ποίος από τους πελάτες που βρίσκονται στην λίστα αναμονής έχει την μικρότερη προτεραιότητα και να του κάνει κράτηση στην αντίστοιχη πτήση. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 28

Φόρμα Manage_Airplanes Σχήμα 9 Φόρμα Manage_Airplanes Η φόρμα αυτή χρησιμοποιείται για την εισαγωγή των στοιχείων ενός αεροπλάνου στο σύστημα καθώς και για τη διαγραφή και ενημέρωση ήδη αποθηκευμένων εγγραφών στο σύστημά μας. Η επιλογή του τύπου του αεροπλάνου γίνεται από μια λίστα τιμών (list of value) η οποία δημιουργείται δυναμικά από τα περιεχόμενα του πίνακα των τύπων αεροπλάνων. Η λίστα αυτή εμφανίζεται πατώντας το κουμπί που βρίσκεται δίπλα στο πεδίο. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 29

Φόρμα Manage_Airports Σχήμα 10 Φόρμα Manage_Airports Η φόρμα αυτή χρησιμοποιείται για την εισαγωγή των στοιχείων ενός αεροδρομίου στο σύστημα καθώς και για τη αναζήτηση, ενημέρωση και διαγραφή ήδη αποθηκευμένων εγγραφών στο σύστημά μας. Φόρμα Manage_Types_of_Planes Σχήμα 11 Φόρμα Manage_Types_of_Planes OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 30

H φόρμα αυτή αποτελείται από δύο υποφόρμες. Στην πρώτη υποφόρμα Enter Airplane Type Data μπορούμε να κάνουμε εισαγωγή των στοιχείων (όνομα του τύπου, χωρητικότητα, ταχύτητα) ενός καινούργιου τύπου αεροπλάνου καθώς και αναζήτηση, ενημέρωση και διαγραφή ήδη αποθηκευμένων εγγραφών στο σύστημά μας. Στην δεύτερη υποφόρμα Enter Airplane Data μπορούμε να κάνουμε εισαγωγή ενός ή πολλών καινούργιων αεροπλάνων που έχουν όμως τον τύπο που έχουμε εισάγει στην παραπάνω υποφόρμα καθώς και αναζήτηση, ενημέρωση και διαγραφή ήδη αποθηκευμένων εγγραφών στο σύστημά μας. Ουσιαστικά πρόκειται για ένα υπερσύνολο της φόρμας Manage_Airplanes. Φόρμα Manage_Flights Σχήμα 12 Φόρμα Manage_Flight Παρομοίως η φόρμα αυτή αποτελείται από δύο υποφόρμες. Στην πρώτη υποφόρμα Enter Flight Data γίνεται εισαγωγή των στοιχείων της πτήσης όπως αεροδρόμιο και ώρα αναχώρησης / άφιξης και το κόστος της πτήσης ανάλογα με την θέση. Η επιλογή του αεροδρομίου γίνεται από μια λίστα τιμών (list of value) η οποία δημιουργείται δυναμικά από τα περιεχόμενα του πίνακα των αεροδρομίων. Στην δεύτερη υποφόρμα Enter Instances of Flight γίνεται εισαγωγή των ημερομηνιών που εκτελείται η συγκεκριμένη πτήση, ενώ ταυτόχρονα επιλέγεται και το αεροπλάνο που θα εκτελέσει αυτήν την πτήση για την συγκεκριμένη ημερομηνία. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 31

Και εδώ πάλι η επιλογή του ονόματος του αεροπλάνου γίνεται από μια λίστα τιμών (list of value) η οποία δημιουργείται δυναμικά από τα περιεχόμενα του πίνακα των αεροπλάνων. 7.3 Αναφορές του συστήματος Η τελευταία κατηγορία modules που θα περιγράψουμε είναι οι αναφορές. Αναφορά Airplanes_per_Type Αρχικά εμφανίζεται ένα παράθυρο παραμέτρων στο οποίο εμφανίζεται η παράμετρος με την οποία επιθυμούμε να γίνει αναζήτηση. Σε αυτή την αναφορά η αναζήτηση γίνεται με βάση τον τύπο του αεροπλάνου για τον οποίο θέλουμε να μάθουμε κάποιες πληροφορίες όπως για παράδειγμα τι χωρητικότητα έχει αυτός ο τύπος σε οικονομικές ή business θέσεις, ποια είναι η ταχύτητα του και πόσα και ποια αεροπλάνα διαθέτει η εταιρία μας αυτό του τύπου. Η παραπάνω αναφορά εκτελέστηκε δίνοντας για παράμετρο την τιμή Β747 και είχαμε τα παρακάτω αποτελέσματα (Σχήμα 10). OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 32

Σχήμα 13 Αναφορά Airplanes_per_Type Αναφορά INSTANCES_OF_FLIGHTS Σε αυτήν την αναφορά εισάγουμε τον τύπο της πτήσης για την οποία θέλουμε να μάθουμε κάποια στοιχεία όπως ώρα και τόπος αναχώρησης / άφιξης, κόστος πτήσης ανάλογα με την θέση κ.τ.λ. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 33

Σχήμα 14 Αναφορά Instances_of_Flights Αναφορά Passenger_Lists Σε αυτήν την αναφορά έχουμε αναζήτηση με βάση δύο παραμέτρους: τον κωδικό της πτήσης και την ημερομηνία που εκτελείται η πτήση για την οποία θέλουμε να πάρουμε πληροφορίες. Η αναφορά αυτή μας εμφανίζει την λίστα των επιβατών για μια συγκεκριμένη πτήση. OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 34

Σχήμα 15 Αναφορά Passenger_Lists Αναφορά Waiting_Lists OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 35

Η αναφορά αυτή είναι παρόμοια με την παραπάνω αναφορά με τη διαφορά ότι εμφανίζει την λίστα αναμονής των επιβατών για μια συγκεκριμένη πτήση. Σχήμα 16 Αναφορά Waiting_Lists Αναφορά Direct_Flights OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 36

Σε αυτήν την αναφορά έχουμε αναζήτηση με βάση τριών παραμέτρων: την ημερομηνία της πτήσης, το αεροδρόμιο αναχώρησης και το αεροδρόμιο άφιξης. Μας εμφανίζει τις πτήσεις που ικανοποιούν αυτές τις παραμέτρους καθώς και αν υπάρχουν διαθέσιμες θέσεις και στη οικονομική κατηγορία και στην business κατηγορία. Σχήμα 17 Αναφορά Direct_Flights Αναφορά Intermediate_Flights OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 37

Και σε αυτήν την αναφορά έχουμε αναζήτηση με βάση τριών παραμέτρων: την ημερομηνία της πτήσης, το αεροδρόμιο αναχώρησης και το αεροδρόμιο άφιξης. Όμως αυτή η αναφορά μας εμφανίζει τις πτήσεις που έχουν και ενδιάμεσο σταθμό. Σχήμα 18 Αναφορά Intermediate_Flights OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 38

ΠΑΡΑΡΤΗΜΑ : ΠΑΡΑΔΕΙΓΜΑΤΑ ΚΩΔΙΚΑ PL/SQL Η παρακάτω PL/SQL συνάρτηση available_seats_b υπολογίζει τις διαθέσιμες θέσεις της κατηγορίας BUSINESS για ένα συγκεκριμένο στιγμιότυπο της πτήσης με κωδικό flight_id που εκτελείται στην ημερομηνία inst_date. Παρόμοια είναι η συνάρτηση που υπολογίζει τις διαθέσιμες θέσεις της κατηγορίας ΕCONOMY. FUNCTION available_seats_b(flight_id IN NUMBER, inst_date IN DATE) RETURN NUMBER IS avail_seats NUMBER; counter NUMBER; b_capacity NUMBER; BEGIN SELECT COUNT(*) INTO counter FROM ROUTE_INSTANCES WHERE INST_FLI_ID_FLIGHT = flight_id AND INST_INST_DATE LIKE inst_date AND SEAT_CATEGORY = 'BUSINESS'; SELECT CAPACITY_FOR_BUSINESS INTO b_capacity FROM TYPES T, AIRPLANES A, INSTANCE_FLIGHTS I_F WHERE I_F.FLI_ID_FLIGHT = flight_id AND I_F.INST_DATE LIKE inst_date AND I_F.AIRPL_ID_AIRPLANE = A.ID_AIRPLANE AND A.TYPE_1_ID_TYPE = T.ID_TYPE ; IF (counter IS NULL) then counter :=0; END IF; avail_seats := b_capacity - counter; END; RETURN avail_seats; Η παρακάτω PL/SQL συνάρτηση incr_priority επιστρέφει αυξημένο κατά 1 τον αριθμό προτεραιότητας για την λίστα αναμονής της πτήσης με κωδικό flight_id που εκτελείται στην ημερομηνία inst_date. FUNCTION incr_priority (flight_id IN NUMBER, inst_date IN DATE, status IN CHAR) RETURN NUMBER IS next_priority NUMBER; BEGIN IF (status = 'W') THEN SELECT MAX(PRIORITY)+1 INTO next_priority FROM ROUTE_INSTANCES WHERE INST_FLI_ID_FLIGHT = flight_id AND INST_INST_DATE = inst_date AND STATUS = 'W'; END IF; IF (next_priority IS NULL) then next_priority := 1 ; END IF; RETURN next_priority; END; OIKONOMIKO ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ- ΜΠΣ στα Πληροφοριακά Συστήματα 39