• Nenhum resultado encontrado

[PENDING] Διαδικτυακά εργαλεία για τη διαχείριση πτυχιακών εργασιών του τμήματος πληροφορικής

N/A
N/A
Protected

Academic year: 2024

Share "Διαδικτυακά εργαλεία για τη διαχείριση πτυχιακών εργασιών του τμήματος πληροφορικής"

Copied!
40
0
0

Texto

(1)

ΠΣΤΧΙΑΚΗ ΕΡΓΑ΢ΙΑ

Διαδικτυακά εργαλεία για τη διαχείριςη πτυχιακών εργαςιών του τμήματοσ πληροφορικήσ

Σου φοιτητή Επιβλζπων καθηγητήσ

Μασροθείδη Αθανάζιοσ Σιδηρόποσλος Ανηώνιος

Αρ. Μητρώου: 063050

Θεςςαλονίκη 2015

(2)

2 από 40

(3)

3 από 40 ΠΔΡΙΛΗΦΗ

΢ηελ παξνύζα εξγαζία παξνπζηάδνπκε κία εθαξκνγή δηαρείξηζεο πηπρηαθώλ εξγαζηώλ ην νπνίν ζρεδηάζηεθε γηα ην Αιεμάλδξεην Σερλνινγηθό Ίδξπκα Θεζζαινλίθεο ζηα πιαίζηα ηεο πηπρηαθήο εξγαζίαο ηνπ ηκήκαηνο Πιεξνθνξηθήο.

Η ζρεδίαζε απηήο ηεο εθαξκνγήο απνζθνπεί ζηε κεραλνγξάθεζε ησλ ζπγθεθξηκέλσλ ιεηηνπξγηώλ δηαρείξηζεο πνπ πεξηιακβάλεη ν ζεζκόο ησλ πηπρηαθώλ εξγαζηώλ. Κύξηεο ιεηηνπξγίεο ηεο εθαξκνγήο είλαη ε δπλαηόηεηα εύξεζεο πηπρηαθώλ εξγαζηώλ κε ηηο πιεξνθνξίεο ηνπο, αλάζεζεο ηνπο ζηνπο θνηηεηέο από θάπνηνλ αξκόδην, δεκηνπξγίαο ηνπο από ηνπο θαζεγεηέο θαη επηινγέο ησλ πηπρηαθώλ εξγαζηώλ από ηνπο θνηηεηέο. Μέζα ζε απηέο ηηο ιεηηνπξγίεο πξνζηίζεηαη θαη ε ιεηηνπξγία ηεο γξακκαηείαο πνπ είλαη ππεύζπλε γηα ηελ ύπαξμε ησλ βνεζεηηθώλ εγγξάθσλ πνπ αθνξνύλ ηνλ ζεζκό ησλ πηπρηαθώλ εξγαζηώλ.

(4)

4 από 40 ABSTRACT

In this paper we present a management application for the final theses, which was designed for the Alexander Technological Institute of Thessaloniki for the final theses of the IT department. The design of this application is aimed in office automation of certain procedures of service management which are included in the institution of final theses. Main functions of the application are the ability of finding final theses with their information, the assignment of them to possible candidates from someone who is responsible for that, the ability of creating final theses by the teachers and finally the ability for the students to choose their final theses. In addition we have the operation of secretary which is responsible for the existence of supporting documents which are relative to the institution.

(5)

5 από 40 ΠΔΡΙΔΥΟΜΔΝΑ

ΠΔΡΙΛΗΦΗ ... 3

ABSTRACT ... 4

ΠΔΡΙΔΥΟΜΔΝΑ ... 5

Δπξεηήξην εηθόλσλ ... 6

Δπξεηήξην πηλάθσλ ... 6

1.ΔΙ΢ΑΓΧΓΗ ... 7

1.1 ΢ηόρνο ... 7

1.2 Υξεζηκόηεηα ... 7

1.3 Δπηζθόπεζε ... 7

2.ΑΝΑΛΤ΢Η ... 8

2.1 Δηζαγσγηθή αλάιπζε ... 8

2.1.1 ΢θνπόο ... 8

2.1.2 Γεληθή πεξηγξαθή ... 8

2.2 Αλάιπζε ρξεζηώλ ... 8

2.2.1 Υαξαθηεξηζηηθά – Ιθαλόηεηεο – Δπηζπκίεο ρξεζηώλ ... 8

2.3 Αλάιπζε ιεηηνπξγηώλ ... 10

3. ΢ΥΔΓΙΑ΢Η ... 11

3.1 Απαηηήζεηο ζπζηήκαηνο ... 11

3.1.1 Πξνγξάκκαηα πνπ ρξεζηκνπνηήζεθαλ ... 11

3.1.2 Πεξηγξαθή ηερλνινγηώλ ... 12

3.2 Πεξηγξαθή ηεο βάζεο δεδνκέλσλ ... 17

3.3 Βάζε δεδνκέλσλ θαη πίλαθεο ... 18

3.4 Η κνξθή ηεο εθαξκνγήο ... 29

3.5 Η ξνή ησλ εξγαζηώλ ... 29

3.6 Λνγηθή θώδηθα ... 31

3.7 Παξνπζίαζε εθαξκνγήο ... 34

4. ΑΠΟΣΔΛΔ΢ΜΑΣΑ ΚΑΙ ΠΡΟΣΑ΢ΔΙ΢ ... 39

5. ΒΙΒΛΙΟΓΡΑΦΙΑ ... 40

(6)

6 από 40 Δσρεηήριο εικόνων

Δικόνα 3.1 Το ανηικείμενο XMLHttpRequest ... 15

Δικόνα 3.2 Τα βήμαηα ηηρ εθαπμογήρ ... 29

Δικόνα 3.3 Η ποή ηων επγαζιών ... 30

Δικόνα 3.4 Κώδικαρ addEditSaveCourse.php ... 32

Δικόνα 3.5 Κώδικαρ addNewCourse.php ... 33

Δικόνα 3.6 Αποδοσή – διαγπαθή νέων σπηζηών ... 34

Δικόνα 3.7 Η ζελίδα ηηρ ανάθεζηρ επγαζιών ... 35

Δικόνα 3.8 Καηασώπηζη ημεπομηνιών και οπιζμό ζςνεξεηαζηών ... 36

Δικόνα 3.9 Δπιλογή πηςσιακών επγαζιών ... 37

Δικόνα 3.10 Φιληπάπιζμα πηςσιακών επγαζιών από ηη γπαμμαηεία ... 38

Δσρεηήριο πινάκων Πίνακαρ 3.1 usrTypes ... 18

Πίνακαρ 3.2 users ... 19

Πίνακαρ 3.3 courses ... 20

Πίνακαρ 3.4 theses ... 21

Πίνακαρ 3.5 prerequisites ... 22

Πίνακαρ 3.6 assignments ... 22

Πίνακαρ 3.7 choices ... 23

Πίνακαρ 3.8 presentations ... 25

Πίνακαρ 3.9 necessaryDocs ... 26

Πίνακαρ 3.10 semesters ... 27

Γιάγπαμμα Βάζηρ Γεδομένων ... 28

(7)

7 από 40 1.ΔΙ΢ΑΓΧΓΗ

1.1 ΢ηότος

Ο ζηόρνο ηεο παξνύζαο εξγαζίαο είλαη ε δεκηνπξγία ινγηζκηθνύ δηαρείξηζεο πηπρηαθώλ εξγαζηώλ ηνπ ηκήκαηνο Πιεξνθνξηθήο ηνπ ΑΣΔΙΘ. Βέβαηα δελ είλαη έηνηκε αθόκε γηα λα ελζσκαησζεί ζην ζύζηεκα. Σν ζύζηεκα ππνζηεξίδεη θαη απεπζήλεηαη ζε θνηηεηέο, δηδάζθνληεο, ζηε γξακκαηεία θαη γεληθά εμσηεξηθνύο ρξήζηεο (επηζθέπηεο), πνπ έρνπλ ηελ δπλαηόηεηα πξαγκαηνπνηήζεο, πξνζπέιαζεο θαη αλάθηεζεο δεδνκέλσλ.

1.2 Υρηζιμόηηηα

Η εξγαζία πινπνηήζεθε κε ρξήζε ηεο γιώζζαο PHP, κηαο ζύγρξνλεο θαη κε πνιιέο δπλαηόηεηεο γιώζζαο γηα πξνγξακκαηηζκό δηαδπθηίνπ. Μεγάιν ξόιν ζηε δεκηνπξγία θαη νξγάλσζε ηνπ θώδηθα έπαημε ην PhpStorm έλα ηζρπξό IDE. Δπίζεο ρξεζηκνπνηήζεθε ε MySQL γηα ηελ δηαηύπσζε δνκεκέλσλ αηηεκάησλ θαη ηελ δηαρείξηζε ησλ δεδνκέλσλ ηεο βάζεο δεδνκέλσλ ηεο εθαξκνγήο. Δπίζεο απαηηήζεθε θαη ε ρξήζε ηεο γιώζζαο HyperText Markup Language (HTML).

1.3 Δπιζκόπηζη

Η επηζθόπεζε απνηειέη έλαλ νδεγό ηνπ ζπζηήκαηνο πνπ αλαπηύρζεθε.

Πεξηιακβάλεη ηα παξαθάησ θεθάιαηα:

2.Αλάιπζε 3.΢ρεδίαζε 4.΢πκπεξάζκαηα 5.Βηβιηνγξαθεία

Η αλάιπζε πεξηιακβάλεη ηνλ πξνζδηνξηζκό ησλ αλαγθώλ ηνπ ζπζηήκαηνο δηαρείξηζεο ππρηαθώλ εξγαζηώλ πνπ αλαπηύρζεθε. Δπίζεο πεξηιακβάλεη ιεπηνκεξή αλάιπζε ησλ δηάθνξσλ θαηεγνξηώλ ηνπ ζπζηήκαηνο. Δπηπιένλ, ππάξρεη θαη ε αλάιπζε ησλ δηαθόξσλ ιεηηνπξγεηώλ πνπ είλαη δηαζέζηκεο ζηνπο ρξήζηεο.

Η ζρεδίαζε αθνξά ηελ πεξηγξαθή ζεκάησλ ζρεηηθώλ κε ηελ ζρεδίαζε ηνπ ινγηζκηθνύ δηαρείξηζεο πηπρηαθώλ εξγαζηώλ. Πην αλαιπηηθά, αξρηθά παξνπζηάδεηαη κηα ιεπηνκεξήο πεξηγξαθή ηεο βάζεο δεδνκέλσλ πνπ ρξεζηκνπνηήζεθε. ΢ηε ζπλέρεηα, παξνπζηάδεηαη ην ζρέδην ηεο βάζεο δεδνκέλσλ θαη ε αλαιπηηθή ζρεδίαζε ησλ πηλάθσλ. Σέινο αθνινπζεί ην ηκήκα πνπ πεξηγξάθεη ηεο βαζηθόηεξεο νζόλεο ηεο δηεπηθάλεηαο ηνπ ζπζηήκαηνο κε επεμήγεζε ηεο ιεηηνπξγίαο ηνπο θαη ησλ βαζηθώλ ζηνηρείσλ πινπνίεζεο ηνπο.

(8)

8 από 40 2.ΑΝΑΛΤ΢Η

2.1 Διζαγωγική ανάλσζη 2.1.1 ΢κοπός

Ο ζθνπόο απηήο ηεο ελόηεηαο ηεο εξγαζίαο είλαη ν πξνζδηνξηζκόο ησλ θαη ησλ πεξηνξηζκώλ ηνπ ζπζηήκαηνο πνπ πινπνηήζεθε θαη ε αλάιπζε ησλ ρξεζηώλ ηνπ θαη ησλ θπξηόηεξσλ ιεηηνπξγεηώλ ηνπο πνπ κπνξνύλ λα εθηειέζνπλ.

2.1.2 Γενική περιγραθή

Η ζπγθεθξηκέλε εθαξκνγή απνηειεί έλα ζύζηεκα δηαρείξεζεο ησλ πηπρηαθώλ εξγαζηώλ θαη απνηειεί πξνηόλ ζρεδίαζεο πνπ απνζθνπεί ζηε κεραλνξγάλσζε ησλ ζπγθεθξηκέλσλ ιεηηνπξγεηώλ δηαρείξηζεο πνπ πεξηιακβάλεη ν ζεζκόο ησλ πηπρηαθώλ εξγαζηώλ.

Αξρηθά γίλεηαη ε ζρεδίαζε ηεο βάζεο δεδνκέλσλ κε πξνζδηνξηζκό ησλ πηλάθσλ, ησλ πεδίσλ ηνπο θαη ηνπ ηύπνπ δεδνκέλσλ ηνπ θαζελόο θαζώο θαη νη ζρέζεηο κεηαμύ ηνπο. Κεληξηθόο άμνλαο ηεο ζρεδίαζεο είλαη ε απνηειεζκαηηθή ππνζηήξημε ησλ ιεηηνπξγηώλ πνπ ζα επηηειεί ην ζύζηεκα.

΢ηε ζπλέρεηα γίλεηαη ν ζρεδηαζκόο ησλ δηεπηθαλεηώλ γηα θάζε θαηεγνξία ρξήζηε πνπ ππνζηεξίδεη ην ζύζηεκα, κε θξηηήξην ζρεδηαζκνύ ηελ επρξεζηία ηνπ ζπζηήκαηνο ζε ζρέζε κε ην είδνο ηνπ ρξήζηε. Πέληε είλαη νη θαηεγνξίεο ρξεζηώλ:

Δπηζθέπηεο Admin Φνηηεηήο Καζεγεηήο Γξακκαηεία

Η πξώηε θαηεγνξία πξέπεη λα έρεη εξγαιεία γηα ηελ εθηέιεζε αλάθιεζεο ζρεηηθώλ πιεξνθνξηώλ απν ην ζύζηεκα, ελώ νη ππόινηπεο ηξεηο έρνπλ απμεκέλα δηθαηώκαηα γηα ηελ πξνζζήθε, αθαίξεζε, ηξνπνπνίεζε δεδνκέλσλ ηνπ ζπζηήκαηνο κέζσ αληίζηνηρσλ ιεηηνπξγεηώλ.

2.2 Ανάλσζη τρηζηών

2.2.1 Υαρακηηριζηικά – Ικανόηηηες – Δπιθσμίες τρηζηών

Όπσο ζπκβαίλεη κε θάζε πξντόλ ινγηζκηθνύ, αξρηθά θαηαγξάθνληαη νη ιεηηνπξγηθέο απαηηήζεηο. Δίλαη ην ζεκείν όπνπ θαζνξίδνπκε ηνπο πηζαλνύο ρξήζηεο θαη ηνπο ηξόπνπο κε ηνπο νπνίνπο είλαη δπλαηό λα αιιειεπηδξνύλ κε ηελ εθαξκνγή.Πεξηγξάθνπκε ινηπόλ ηηο ιεηηνπξγίεο πνπ ππνζηεξίδεη ε εθαξκνγή πξάγκα πνπ ζπληζηά ην ελλνηνινγηθό ζρέδην, κε απιά ιόγηα ην «ηη» ηεο εθαξκνγήο. Γεληθά, ε αλάιπζε ρξεζηώλ αθνξά ηνλ πξνζδηνξηζκό ησλ ηππηθώλ ρξεζηώλ ηνπ ζπζηήκαηνο θαη ζηελ ζπλέρεηα ηελ αλάιπζε ησλ ραξαθηεξηζηηθώλ ηνπο από ηελ νπνία ζα πξνθύςνπλ ρξήζηκα ζπκπεξάζκαηα γηα ηνλ ζρεδηαζκό ηνπ ζπζηήκαηνο κε ηξόπν πνπ λα ηθαλνπνηεί ηηο αλάγθεο ησλ δηαθόξσλ θαηεγνξηώλ ρξεζηώλ. Πην ζπγθεθξηκέλα θαηαγξάθνληαη ηα αηνκηθά ραξαθηεξηζηηθά, νη

(9)

9 από 40

ηθαλόηεηεο, νη επηζπκίεο θαη νη πεξηνξηζκνί γηα ηηο δηάθνξεο θαηεγνξίεο ρξεζηώλ ηνπ ζπζηήκαηνο.

΢ην ζύζηεκα ππάξρνπλ πέληε θαηεγνξίεο ρξεζηώλ:

 Δπηζθέπηεο

 Admin

 Φνηηεηέο

 Καζεγεηέο

 Γξακκαηεία

Ο Admin έρεη δηθαηώκαηα γηα όινπο ηνπο ξόινπο. Μπνξεί λα θάλεη ηα πάληα θαη έρεη πξόζβαζε παληνύ κέζα ζηελ εθαξκνγή.

Γηα ηελ θαηεγνξία ησλ θνηηεηώλ, ζεσξείηαη απηνλόεην ε κεγάιε εμνηθείσζε κε ηελ ρξήζε ππνινγηζηώλ θαη παξόκνησλ ηέηνησλ ζπζηεκάησλ. Γεληθά νη ρξήζηεο ζέινπλ ην πεξηβάιινλ ηνπ ζπζηήκαηνο λα είλαη θαηαλνεηό, κε απινύο ηξόπνπο πινήγεζεο παξόκνηνπο κε απηνύο πνπ έρνπλ ζπλεζίζεη κέρξη ζήκεξα.

΢πγθεθξηκελα, νη θνηηεηέο ρξεζηκνπνηνύλ ην ζύζηεκα γηα ηελ αλάθηεζε πιεξνθνξηώλ, ζρεηηθά κε ην πνηέο εξγαζίεο δηελεξγνύληαη, από πνηνπο θνηηεηέο, ππό ηελ επίβιεςε πνησλ θαζεγεηώλ. Δπνκέλσο ην ζύζηεκα πξέπεη λα παξέρεη ζηνπο θνηηεηέο ηε δπλαηόηεηα εθηέιεζεο ιεηηνπξγηώλ αλαδήηεζεο γηα ηελ εκθάληζε ησλ πιεξνθνξηώλ πνπ ηνπο ελδηαθέξνπλ.

Γηα ηελ θαηεγνξία δηδάζθνληεο ην πεξηβάιινλ είλαη επίζεο πνιύ θηιηθό. Μπνξεί λα δηαρεηξίδεηαη ηηο πηπρηαθέο πνπ επηβιέπεη, λα βαζκνινγεί εξγαζίεο πνπ επηβιέπεη ή είλαη ζπλεμεηαζηήο, λα νξίδεη εκεξνκελία παξνπζίαζεο θιπ.

Σν πξνζσπηθό ηεο γξακκαηείαο επίζεο ζεσξείηαη απηνλόεην ην όηη έρεη ζηνηρεηώδεηο γλώζεηο ρξήζεο ππνινγηζηώλ θαη θάπνηα εκπεηξία θαη εμνηθείσζε κε παξόκνηα ζπζηήκαηα. Καη εδώ επηζπκία ησλ ρξεζηώλ είλαη ε επρξεζηία θαη ε επθνιία αληίιεςεο θαη εθκάζεζεο ηνπ ζπζηήκαηνο. Πην ζπγθεθξηκέλα, ζηνπο εμνπζηνδνηεκέλνπο απηνύο ρξήζηεο ζα πξέπεη λα εμαζθαιίδεηαη ε δπλαηόηεηα αλαδήηεζεο πηπρηαθώλ εξγαζηώλ αλά έηνο ή αλά δηδάζθνληα ή αλά θνηηεηή.

Δπίζεο, θύξηα αξκνδηόηεηα ηεο γξακκαηείαο είλαη λα κπνξεί λα βιέπεη ηελ βαζκνινγία ησλ θνηηεηώλ θαζώο επίζεο θαη ηηο πηπρηαθέο πνπ βξίζθνληαη ζε εμέιημε. Φπζηθά, όιεο απηέο νη ιεηηνπξγίεο ζα πξέπεη λα είλαη απιέο ζηελ εθηέιεζε, εύθνιεο ζηελ εθκάζεζε, θαη θαηαλνεηέο δηόηη απνηεινύλ ηαθηηθέο εξγαζίεο ηνπ πξνζσπηθνύ θαη θπζηθά ζα πξέπεη λα γίλνληαη κε ηξόπν πνπ λα εμαζθαιίδεηαη ε πξνζηαζία ησλ δεδνκέλσλ από κε εμνπζηνδνηεκέλε πξόζβαζε.

(10)

10 από 40 2.3 Ανάλσζη λειηοσργιών

΢‟ απηή ηελ ελόηεηα ζα παξνπζηαζηνύλ νη δηάθνξεο δηεξγαζίεο ηεο εθαξκνγήο αλάινγα κε ηνλ ρξήζηε.

Δπιζκέπηης

Αλαδήηεζε γηα παιαηόηεξεο νινθιεξσκέλεο εξγαζίεο κε βάζε:

 Ηκεξνκελία

 Θέκα ηεο πηπρηαθήο

 Δπηβιέπνληα θαζεγεηή

 Φνηηεηή

Σα απνηειέζκαηα κπνξνύλ λα εκθαληζηνύλ ηαμηλνκεκέλα (αύμνπζα ή θζίλνπζα ζεηξά) θαηά: Ηκεξνκελία ή ζέκα ή επηβιέπνληα. Βέβαηα ε ηαμηλόκεζε κπνξεί λα γίλεη θαη κεηά ηελ πξνβνιή κε βάζε ηα θξηηήξηα πνπ ζέινπκε.

Φοιηηηής

 Αλαδήηεζε ηεο δηαζέζηκεο πηπρηαθήο κε ιέμεηο θιεηδηά ή κε ηνλ επηβιέπνληα θαζεγεηή

 Δκθάληζε πηπρηαθώλ πνπ έρεη εθδειώζεη ελδηαθέξνλ

 Γηαρείξηζε νκάδσλ: Γεκηνπξγία κηαο θαηλνύξηαο νκάδαο θαη πξνζζήθε κειώλ

 Γηαρείξηζε νκάδσλ: Να ζπκκεηέρεη ζηελ νκάδα θάπνηνπ άιινπ Καθηγηηής

 Γεκηνπξγία ζέκαηνο πηπρηαθήο (ηίηινο, πεξηγξαθή, νκαδηθή ή όρη, κέγηζην αξηζκό κειώλ, αξρείν πεξηγξαθήο)

 Δκθάληζε πηπρηαθώλ πνπ επηβιέπεη

 Γηαρείξηζε αλαζέζεσλ πνπ επηβιέπεη

 Οξηζκό ζπλεμεηαζηώλ

 Οξηζκό εκεξνκελίαο παξνπζίαζεο

 Δκθάληζε βαζκνινγίαο

 Οινθιήξσζε βαζκνινγίαο

 Δκθάληζε απελεξγνπνηήκελσλ ζεκάησλ

 Απνζήθεπζε εληύπνπ βαζκνινγίαο

(11)

11 από 40

 Δθηύπσζε εληύπνπ βαζκνιόγεζεο Γραμμαηεία

 Δκθάληζε βαζκνινγίαο

 Δκθάληζε αλαζέζεσλ πηπρηαθώλ πνπ είλαη ζε εμέιημε

 Οια ηα έγγξαθα πνπ είλαη απαξαίηεηα γηα ηελ αλάιπςε θαη νινθιήξσζε ηεο πηπρηαθήο ζε κνξθή pdf

Admin

Έρεη πξόζβαζε παληνύ θαη είλαη ππεύζπλνο γηα ηελ έγθξηζε ησλ πηπρηαθώλ εξγαζηώλ.

3. ΢ΥΔΓΙΑ΢Η

3.1 Απαιηήζεις ζσζηήμαηος

΢ην ππνθεθάιαην απηό ζα γίλεη κηα ζύληνκε παξνπζίαζε ησλ πξνγξακκάησλ πνπ ρξεζηκνπνηήζεθαλ γηα ηε ζρεδίαζε θαη αλάπηπμε ηεο εθαξκνγήο, όπσο θαη κηα κηθξή εηζαγσγή θαη επεμήγεζε ησλ ηερλνινγηώλ πνπ ρξεζηκνπνηήζεθαλ.

Δπίζεο ζα γίλεη κηα κηθξή αλαθνξά ζηνλ νξηζκό «Γηαδηθηπαθέο ππεξεζίεο» νη νπνίεο ζηηο κέξεο καο ρξεζηκνπνηνύληαη όιν θαη πεξηζζόηεξν από όινπο.

3.1.1 Προγράμμαηα ποσ τρηζιμοποιήθηκαν

 Wamp

 PhpStorm

 SQLyog

PhpStorm είλαη έλα νινθιεξσκέλν cross-platform IDE γηα ηελ PHP, ρηηζκέλν πάλσ ζην JetBrains IntelliJ IDEA platform. Παξέρεη έλα πξόγξακκα επεμεξγαζίαο γηα ηελ PHP,ηελ HTML θαη JavaScript κε on-the-fly αλάιπζε θώδηθα, ηελ πξόιεςε ζθαικάησλ θαη απηνκαηνπνηεκέλα refactorings γηα ηνλ θώδηθα. Τπνζηεξίδεη PHP 5.3, 5.4, 5.5 kai 5.6. Πεξηιακβάλεη έλα νινθιεξσκέλν SQL editor. Σν PhpStorm είλαη ρηηζκέλν όπσο είπακε πάλσ ζην JetBrains IntelliJ IDEA platform πνπ είλαη γξακκέλν ζε Java. Όια ηα ραξαθηεξηζηηθά πνπ είλαη δηαζέζηκα ζην WebStorm πεξηιακβάλνληαη ζην PhpStorm.

WAMP είλαη ην αξθηηθόιεμν γηα ην Windows Apache MySQL PHP/Python/Perl.

Απηό ην αξθηηθόιεμν αλαθέξεηαη ζε έλα set open source εθαξκνγώλ, ζε ζπλδπαζκό κε ηα Microsoft Windows, ηα νπνία ρξεζηκνπνηνύληαη ζε πεξηβάιινληα Web server. Σν WAMP παξέρεη ζηνπο πξνγξακκαηηζηέο ηα ηέζζεξα βαζηθά ζηνηρεία ελόο δηαθνκηζηή web. Έλα ιεηηνπξγηθό ζύζηεκα, βάζε δεδνκέλσλ,

(12)

12 από 40

δηαθνκηζηή web θαη web-scripting ινγηζκηθνύ. Απηά ηα ζηνηρεία είλαη Microsoft Windows ην ιεηηνπξγηθό, ε MySQL ρεηξίδεηαη ηε βάζε δεδνκέλσλ, Apache ν δηαθνκηζηήο θαη PHP, Python ή Perl νη δπλακηθέο γιώζζεο scripting.

SQLyog είλαη έλα GUI (graphical user interface) εξγαιείν γηα ηελ RDBMS SQL.

Δίλαη δηαζέζηκν θαη δσξεάλ θαη επί πιεξσκήο. Δίλαη γξακκέλν ζε γιώζζα C++

ρξεζηκνπνηώληαο ην Win32 API. Γνπιεύεη πάλσ ζηελ πιαηθόξκα ησλ windows (windowsXP to windows 8).

3.1.2 Περιγραθή ηετνολογιών

Οη ηερλνινγίεο πνπ ρξεζηκνπνηήζεθαλ θαη ζα πεξηγξαθνύλ ελ ζπληνκία ζηε παξνύζα πηπρηαθή είλαη:

- HTML - CSS - JavaScript - DOM - AJAX - JSON - PHP - MySQL - Apache

HTML Δίλαη ε γιώζζα ζηελ νπνία είλαη γξακκέλεο νη ζειίδεο. Δπηηξέπεη ζηηο εηθόλεο λα ζπλδπάδνληαη κε ην θείκελν θαη πξνζθέξεη έλα επξύ θάζκα δπλαηνηήησλ κνξθνπνίεζεο. Έλα από ηα πην ζεκαληηθά ραξαθηεξηζηηθά ηεο HTML είλαη ν ππέξ-ζύλδεζκνο (hypertext), πνπ είλαη έλα κέξνο ηεο ηζηνζειίδαο πνπ ζπλδέεηαη κε κηα άιιε ηζηνζειίδα. Κάλνληαο θιηθ ζε κηα ππεξ-ζύλδεζε αλαθαηεπζύλεη ηνλ πεξηεγεηή ζε άιιε ζειίδα. Η HTML βαζίδεηαη ζηηο εηηθέηεο ζήκαλζεο (markup tags), νη νπνίεο ζπρλά απνθαινύληαη HTML εηηθέηεο (HTML tags). Οη εηηθέηεο απηέο είλαη ιέμεηο-θιεηδηά πνπ πεξηβάιινληαη από γσληαθέο αγθύιεο όπσο πρ. <html>. Οη εηηθέηεο έξρνληαη ζε δεύγε αξρήο . <p> θαη ηέινπο

</p> όπσο επίζεο νλνκάδνληαη εηηθέηεο αλνίγκαηνο θαη θιεηζίκαηνο. Δίλαη έλα αξρείν πνπ πεξηέρεη δηάθνξεο HTML εηηθέηεο θαη ζθέην θείκελν θαη ην νπνίν έρεη θαηάιεμε .html, ηζηνζειίδα (web page).

CSS Σν πξόηππν CSS είλαη κηα γιώζζα ππνινγηζηή πνπ αλήθεη ζηελ θαηεγνξία ησλ γισζζώλ θύιισλ ζηπι. Δίλαη έλα ζύλνιν από εληνιέο ηηο νπνίεο ν θπιινκεηξεηήο (browser) αθνινπζεί ώζηε λα αιιάμεη ηελ πξνεπηιεγκέλε παξνπζίαζε ησλ HTML ζηνηρείσλ αλάινγα κε ηηο ηηκέο πνπ έρνπλ νξηζηεί. Μέζσ

(13)

13 από 40

ηνπ πξνηύπνπ CSS επηηπγράλεηαη ε εύθνιε θαη καδηθή κνξθνπνίεζε, δίλνληαο ηε δπλαηόηεηα ζην ζρεδηαζηή λα μερσξίδεη ην πεξηερόκελν ησλ ζειίδσλ από ην ζρεδηαζκό, έρνληαο σο απνηέιεζκα νη αιιαγέο θαζώο θαη νη επαλαζρεδηαζκνί λα γίλνληαη πνιύ πην εύθνια ζε κηα ηζηνζειίδα.

Η εηζαγσγή ελόο CSS πξνηύπνπ ζε κηα HTML ζειίδα κπνξεί λα γίλεη κε δύν ηξόπνπο:

Δλζσκαηώλνληαο ηνλ CSS δειώζεηο κέζα ζηα <head> </head> tags ν νπνίνο θώδηθαο ζα πξέπεη λα βξίζθεηαη αλάκεζα ζηα <Style type=”TEXT/CSS”> </Style>

tags. Γεκηνπξγώληαο έλα αξρείν ζην νπνίν ζα ππάξρνπλ όιεο νη δειώζεηο ην αξρείν ζα εηζαρζεί ζηελ HTML ζειίδα καο κέζα ζηα <head></head> tags κε απηή ηε δήισζε <link rel="stylesheet" type="text/css" href="something.css" />. Σν αξρείν απηό όπσο θαίλεηαη, πξέπεη λα έρεη ηελ θαηάιεμε «.css».

JavaScript Η Javascript είλαη κηα δηεξκελεπηηθή (interpreted) γιώζζα πξνγξακκαηηζκνύ πνπ ηξέρεη ζηελ πιεπξά ηνπ θπιινκεηξεηή (client side), ην νπνίν ηελ θάλεη πην γξήγνξε από θάπνηα άιιε γιώζζα πνπ ηξέρεη ζηνλ δηαθνκηζηή (client side). Φπζηθά απηό έρεη έλα κεηνλέθηεκα όηη ν πεγαίνο θώδηθαο είλαη πξνζβάζηκνο από όινπο ηνπο ρξήζηεο ηεο ηζηνζειίδαο.

΢ρεδηάζηεθε γηα λα δώζεη ζηνπο πξνγξακκαηηζηέο έλα εξγαιείν κε απιή ζύληαμε.

Η Javascript, όπσο θαη όιεο νη γιώζζεο πξνγξακκαηηζκνύ, έρεη κεηαβιεηέο, αιθαξηζκεηηθά, πίλαθεο, αληηθείκελα ζπλαξηήζεηο θαη όιεο ηηο ζπλεζηζκέλεο δνκέο ειέγρνπ. Γηαζέηεη ιεηηνπξγίεο εηδηθά γηα ηζηνζειίδεο, όπσο δπλαηόηεηα δηαρείξηζεο παξαζύξσλ θαη πιαηζίσλ, απνζηνιή-ιήςε θαη δεκηνπξγία-θαηάξγεζε cookies, ρεηξηζκόο θνξκώλ θαη άιισλ ζηνηρείσλ πνπ βξίζθνληαη ζηε ζειίδα.

Έρεη επίζεο πνιιέο ηδηόηεηεο αληηθεηκελνζηξαθνύο γιώζζαο θαη πνιιέο νκνηόηεηεο κε ηηο άιιεο γιώζζεο αθνύ θηίζηεθε πάλσ ζην πξόηππν ησλ γισζζώλ C, C++ θαη Java. Έρεη όκσο κία πνιύ ζεκαληηθή δηαθνξά, δηαρεηξίδεηαη ηνπο ηύπνπο δεδνκέλσλ πνιύ πην ραιαξά, γηα παξάδεηγκα κηα κεηαβιεηή ζηελ αξρή κπνξεί λα είλαη ηύπνπ int θαη ζηε ζπλέρεηα λα γίλεη ηύπνπ string. Αμίδεη λα ζεκεησζεί ζην παξόλ ζηάδην πσο ε Java θαη ε Javascript είλαη δπν εληειώο δηαθνξεηηθέο γιώζζεο πξνγξακκαηηζκνύ.

Με ηελ JavaScript κπνξεί λα επηηεπρζεί ε κεησκέλε απνζηνιή δεδνκέλσλ ζηνλ δηαθνκηζηή (server) όπσο θαη ην θηιηξάξηζκα ησλ δεδνκέλσλ πνπ ζα απνζηαινύλ, ιόγσ ηνπ όηη δίλεηαη ε δπλαηόηεηα λα ειεγρζνύλ ηα δεδνκέλα ή αθόκε θαη λα αιιάμνπλ κέζα από ηελ θόξκα πξηλ ηελ απνζηνιή ηνπο ζηνλ δηαθνκηζηή. Δπίζεο ππάξρεη ε δπλαηόηεηα λα αιιάμνπλ νη ηηκέο θαη ηδηόηεηεο ζηνηρείσλ ηεο ζειίδα δπλακηθά πνιύ εύθνια.

Σέινο, ε JavaScript ππνζηεξίδεηαη από όινπο ηνπο browsers θαη πξνζθέξεη έλα θαιύηεξν θαη ειαθξόηεξν γξαθηθό πεξηβάιινλ αθνύ ηα ζελάξηα (scripts) είλαη κηθξά ζε κέγεζνο θαη απνζεθεύνληαη ζηε κλήκε ηνπ browser κόιηο απηά θαηέβνπλ.

(14)

14 από 40

DOM Σν Μνληέιν Αληηθεηκεληθνύ Δγγξάθνπ ρξεζηκνπνηείηαη γηα ηελ δπλακηθή έθζεζε ησλ δεδνκέλσλ θαζώο θαη γηα ηελ αιιειεπίδξαζε κε απηά. ΢πγθεθξηκέλα ην DOM είλαη κηα ζύκβαζε γηα ηνλ ζπκβνιηζκό θαη ηελ αιιειεπίδξαζε ησλ αληηθεηκέλσλ κέζα ζε έλα έγγξαθν HTML, XHTML θαη XML. Δίλαη αλεμάξηεην ηνπ ιεηηνπξγηθνύ ζπζηήκαηνο θαη ηεο γιώζζαο πξνγξακκαηηζκνύ πνπ ρξεζηκνπνηείηαη. Έλαο θπιινκεηξεηήο δελ είλαη ππνρξεσκέλνο λα ρξεζηκνπνηεί ην κνληέιν απηό γηα λα απεηθνλίζεη έλα έγγξαθν HTML. Χζηόζν απαηηείηαη από ηε γιώζζα Javascript όηαλ πξόθεηηαη λα επηζεσξήζεη (inspect) ή επεμεξγαζηεί πεξαηηέξσ ην έγγξαθν, ηα απνηειέζκαηα απηά λα ελζσκαηώλνληαη ζηνλ ηζηόηνπν πνπ παξνπζηάδεηαη ζην θπιινκεηξεηή.

Σν DOM απνδνκεί θαη παξνπζηάδεη έλα HTML έγγξαθν ζε δελδξηθή κνξθή. Καηά ηε δηάξθεηα απηήο ηεο δηαδηθαζίαο απνκλεκνλεύεη αξρηθά όιν ην έγγξαθν, γηα ην ιόγν απηό ηα πξνγξάκκαηα πνπ ρξεζηκνπνηνύλ DOM επηβάιιεηαη λα έρνπλ κεγάιε κλήκε.

AJAX Γηα ρξόληα, νη ζρεδηαζηέο ηζηνζειίδσλ παξαπνλνύληαλ γηα ηελ αδπλακία λα δεκηνπξγήζνπλ εμειηγκέλεο δηεπαθέο πνπ λα αληαπνθξίλνληαη, θάηη ζαλ απηέο πνπ βξίζθνπκε ζηηο desktop εθαξκνγέο. Όια άξρηζαλ λα αιιάδνπλ ην 2005, όηαλ ν Jesse James Garrett, επηλόεζε ηνλ όξν Ajax ζε έλα άξζξν "Ajax: Μια νέα πποζέγγιζη για εθαπμογέρ ζηον Παγκόζμιο Ιζηό", νη νπνίεο βαζίδνληαη ζε ηερληθέο πνπ ρξεζηκνπνηνύληαη ζηηο ηζηνζειίδεο ηεο Google.

Ajax έλα αθξσλύκην γηα Asynchronous JavaScript θαη XML, είλαη έλα ζύλνιν αιιειέλδεησλ ηερληθώλ αλάπηπμεο ηζηνζειίδσλ πνπ ρξεζηκνπνηείηαη ζηελ πιεπξά ηνπ πειάηε θαη δεκηνπξγεί web εθαξκνγέο πνπ δνπιεύνπλ αζύγρξνλα.

΢ηνλ παξαδνζηαθό πξνγξακκαηηζκό κε JavaScript, αλ ζέιεη θάπνηνο λα πάξεη πιεξνθνξίεο από κηα βάζε δεδνκέλσλ ή έλα αξρείν από ηνλ server, ή λα ζηείιεη πιεξνθνξίεο γηα ην ρξήζηε ζε έλα server, ζα πξέπεη λα θάλεη κηα HTML θόξκα θαη κε ρξήζε GET ή POST λα ζηείιεη ηα δεδνκέλα ζην δηαθνκηζηή (server). Ο ρξήζηεο ζα ρξεηαζηεί λα θάλεηε θιηθ ζην θνπκπί "Τπνβνιή" γηα λα ζηείιεη / ιάβεη ηηο πιεξνθνξίεο, λα πεξηκέλεη ην δηαθνκηζηή λα απαληήζεη, θαη ζηε ζπλέρεηα κηα λέα ζειίδα ζα θνξησζεί κε ηα απνηειέζκαηα.

Δπεηδή ν δηαθνκηζηήο επηζηξέθεη κηα λέα ζειίδα θάζε θνξά πνπ ν ρξήζηεο ππνβάιιεη αίηεκα, νη παξαδνζηαθέο web εθαξκνγέο ηξέρνπλ αξγά θαη ηείλνπλ λα είλαη ιηγόηεξν θηιηθέο πξνο ην ρξήζηε. Με ηελ AJAX, ε JavaScript επηθνηλσλεί απεπζείαο κε ην δηαθνκηζηή, κέζσ ηνπ αληηθεηκέλνπ XMLHttpRequest ηεο JavaScript.

Με αίηεζε HTTP, κηα ηζηνζειίδα κπνξεί λα ππνβάιεη κία αίηεζε θαη λα πάξεη κία απάληεζε από έλαλ web server, ρσξίο ηελ επαλαθόξησζε ηεο ζειίδαο. Ο ρξήζηεο ζα παξακείλεη ζηελ ίδηα ζειίδα, θαη δελ ζα παξαηεξήζεη πσο ζελάξηα (scripts) πνπ ηξέρνπλ ζην παξαζθήλην αηηνύληαη ζειίδεο, ή ζηέιλνπλ δεδνκέλα ζε έλα δηαθνκηζηή.

(15)

15 από 40

Παξά ην όλνκα ηεο, ε ρξήζε ηεο XML δελ είλαη απαξαίηεηε, αληί απηνύ, ζπρλά ρξεζηκνπνηείηαη θσδηθνπνίεζε JSON, ε νπνία έρεη ρξεζηκνπνηεζεί ζηελ παξνύζα πηπρηαθή εξγαζία.

Το ανηικείμενο XMLHttpRequest

Σν XMLHttpRequest είλαη κία δηεπαθή αλάπηπμεο εθαξκνγώλ (ΑΡΙ) ηνπ κνληέινπ DOM. Μπνξεί λα ρξεζηκνπνηεζεί ζε κία γιώζζα πξνγξακκαηηζκνύ client-side όπσο ε JavaScript γηα λα ζηείιεη έλα αίηεκα HTTP ή HTTPS ζε έλα Γηαθνκηζηή δηαδηθηύνπ θαη λα θνξηώζεη ηα δεδνκέλα απάληεζεο ηνπ δηαθνκηζηή πίζσ ζηε γιώζζα. Από ηε ζηηγκή πνπ ηα δεδνκέλα βξεζνύλ κέζα ζηε γιώζζα, είλαη δηαζέζηκα σο έλα XML έγγξαθν, εθόζνλ ε απάληεζε είρε έγθπξε ζήκαλζε θαη σο

«απιό θείκελν». Σα δεδνκέλα απάληεζεο κπνξνύλ λα ρξεζηκνπνηεζνύλ γηα λα ελεκεξσζεί ην πεξηερόκελν ηεο ζειίδαο ρσξίο λα ρξεηάδεηαη επαλαθόξησζε ηνπ browser.

Σν απιό θείκελν σο απάληεζε, όπσο ρξεζηκνπνηήζεθε θαη ζηελ παξνύζα πηπρηαθή εξγαζία, κπνξεί από ηνλ browser λα δηακνξθσζεί σο JSON (JavaScript Object Notation) θαη λα αμηνινγεζεί από ηελ JavaScript γηα λα δεκηνπξγεζεί έλα αληηθείκελν δεδνκέλσλ. Σν αληηθείκελν XMLHttpRequest παίδεη ίζσο ηνλ πην ζεκαληηθό ξόιν ζηελ δηαδηθηπαθή ηερληθή αλάπηπμεο AJAX.

Δικόνα 3.1 Το ανηικείμενο XMLHttpRequest

JSON Σν JSON είλαη αθξώλπκν ηνπ JavaScript Object Notation θαη είλαη έλα format κνξθνπνηήζεηο δεδνκέλσλ ζε javascript όπσο έρεη πεξηγξαθεί κεξηθώο ιίγν πην πξηλ. Σν format ηνπ είλαη πνιύ απιό θαη ηππνπνηεκέλν. Έρεη απιή ηεξαξρηθή κνξθή, αλεμάξηεηε από ηελ γιώζζα ή ηελ πιαηθόξκα ζηελ νπνία ρξεζηκνπνηείηαη.

Δίλαη έλα πξόηππν θεηκέλνπ ην νπνίν είλαη ηειείσο αλεμάξηεην από γιώζζεο πξνγξακκαηηζκνύ, αιιά ρξεζηκνπνηεί πξαθηηθέο (conventions) νη νπνίεο είλαη γλσζηέο ζηνπο πξνγξακκαηηζηέο ηεο νηθνγέλεηαο πξνγξακκαηηζκνύ C, ζπκπεξηιακβαλνκέλσλ ησλ C, C++, C#, Java, JavaScript, Perl, Python, θαη

(16)

16 από 40

πνιιώλ άιισλ. Απηέο νη ηδηόηεηεο θάλνπλ ην JSON κηα ηδαληθή γιώζζα πξνγξακκαηηζκνύ αληαιιαγήο δεδνκέλσλ.

Σν JSON πξνζθέξεηαη σο ελαιιαθηηθή ιύζε ζηελ XML. Φπζηθά δελ κπνξεί λα αληηθαηαζηήζεη ηελ XML 100% δηόηη δελ ππνζηεξίδεη schema validation, δελ κπνξεί από κόλε ηεο λα ελεκεξώζεη ζρεηηθά κε ηελ θσδηθνπνίεζή ηεο θαη δελ έρεη ηελ έλλνηα ησλ attributes, αιιά όπνπ απηά ηα ειαηηώκαηα κπνξνύλ λα αγλνεζνύλ, ε αληηθαηάζηαζε ζα είλαη πνιύ εύθνιε. Όπσο θαη ε XML έηζη θαη ην JSON έρεη self-documentated format πνπ πεξηγξάθεη ηελ δνκή ησλ δεδνκέλσλ θαη δελ αζρνιείηαη κε ηελ παξνπζίαζή ηνπο. Δπίζεο, παξαιείπνληαη πνιιέο επαλαιήςεηο θάπνησλ πιεξνθνξηώλ πνπ ππάξρνπλ ζηελ XML.

PHP PHP (αθξσλύκην ηνπ PHP: Hypertext Preprocessor) είλαη κηα επξέσο ρξεζηκνπνηνύκελε, αλνηρηνύ θώδηθα, γεληθνύ ζθνπνύ scripting γιώζζα πξνγξακκαηηζκνύ, ε νπνία είλαη εηδηθά θαηάιιειε γηα αλάπηπμε ηζηνζειίδσλ θαη κπνξεί λα ελζσκαησζεί ζηελ HTML.

Μεγάιν κέξνο ηεο ζύληαμεο ηνπ είλαη δαλεηζκέλν από ηελ C, Java θαη ηελ Perl κε κηα ζεηξά από κνλαδηθά PHP-εηδηθά ραξαθηεξηζηηθά.

Ο ζηόρνο ηεο PHP είλαη λα επηηξέπεη ζηνπο web developers λα δεκηνπξγνύλ γξήγνξα δπλακηθά παξαγόκελεο ζειίδεο.

Απηό πνπ δηαρσξίδεη ηελ PHP από θάηη ζαλ client-side Javascript είλαη όηη, όηαλ θάπνηνο επηζθέπηεηαη ηελ ηζηνζειίδα, ν web server επεμεξγάδεηαη ηνλ PHP θώδηθα. Βιέπεη πνηα κέξε ζα πξέπεη λα δείμεη ζηνπο επηζθέπηεο (ην πεξηερόκελν θαη ηηο εηθόλεο) θαη θξύβεη όια ηα ππόινηπα (ηε ιεηηνπξγία ησλ αξρείσλ, ηνπο καζεκαηηθνύο ππνινγηζκνύο, θιπ.). Σόηε κεηαθξάδεηαη ν PHP θώδηθαο ζε κνξθή HTML. Μεηά ηελ κεηάθξαζε ζε HTML, ζηέιλεη ηελ ηζηνζειίδα ζηνλ browser ηνπ επηζθέπηε.

Η PHP δηαζέηεη ελζσκαησκέλεο εληνιέο ππνζηήξημεο γηα έλα κεγάιν αξηζκό βάζεσλ δεδνκέλσλ (MySQL Microsoft SQL Server, PostgreSQL θαη Oracle).

Μπνξεί λα κεηαθξαζηεί θαη λα ηξέμεη ζε νπνηνδήπνηε ιεηηνπξγηθό ζύζηεκα (Microsoft Windows, Linux, SD, Solaris, Macintosh OS X, θαη UNIX servers).

΢πλεξγάδεηαη ρσξίο πξνβιήκαηα κε πνιινύο web servers ( Apache, IIS) θαη κπνξεί λα επηθνηλσλήζεη κε αξθεηά πξσηόθνιια (HTTP , POP3, SNMP θαη LDAP) ώζηε λα παξέρεη ηε δπλαηόηεηα αλάγλσζεο θαη εγγξαθήο ζε αξρεία θαη απνζηνιήο email.

Δπίζεο, παξόιν πνπ ε PHP δελ άξρηζε σο αληηθεηκελνζηξεθήο (object-oriented) γιώζζα πξνγξακκαηηζκνύ, κεηά από ρξόληα πξνζπάζεηαο, πξνζηέζεθαλ πνιιά αληηθεηκελνζηξεθή ραξαθηεξηζηηθά πνπ παξνπζηάδνληαλ ζηηο άιιεο γιώζζεο πξνγξακκαηηζκνύ, όπσο:

- Δλζπιάθσζε

(17)

17 από 40

- Κιεξνλνκηθόηεηα – πνιιαπιή θιεξνλνκηθόηεηα - Πνιπκνξθηζκόο

- Κιάζεηο (Classes) - Γηεπαθέο

- Namespaces

- Τπεξθόξησζε κεζόδσλ.

Η PHP επίζεο ππνζηεξίδεη όπσο θαη νη άιιεο γιώζζεο πξνγξακκαηηζκνύ ιεηηνπξγίεο όπσο

- Γηαρείξηζε ιαζώλ.

- Δξγαζία κε αξρεία θαη ην ιεηηνπξγηθό ζύζηεκα.

- Καλνληθέο εθθξάζεηο.

- Γηαρείξηζε ζπλεδξηάζεσλ (session handling).

- Γηαδηθηπαθέο ππεξεζίεο … θαη άιια.

PHP θώδηθαο είλαη θιεηζκέλνο ζε εηδηθά tags αξρήο <?php θαη ηέινπο ?> πνπ επηηξέπνπλ ηε κεηάθξαζε εληόο θαη εθηόο PHP ιεηηνπξγίαο. Αληί γηα πνιιέο εληνιέο γηα ηελ εμαγσγή HTML θώδηθα (όπσο ζηελ C ή Perl), νη PHP ζειίδεο πεξηέρνπλ HTML κε ελζσκαησκέλν θώδηθα πνπ θάλεη «θάηη».

MySQL Η MySQL είλαη έλα ζύζηεκα δηαρείξηζεο ζρεζηαθήο βάζεο αλνηθηνύ

θώδηθα (relational database management system - RDBMS) πνπ ρξεζηκνπνηεί ηελ Structured Query Language (SQL), ηελ πην γλσζηή γιώζζα γηα ηελ πξνζζήθε, ηελ πξόζβαζε θαη ηελ επεμεξγαζία δεδνκέλσλ ζε κία Βάζε Γεδνκέλσλ.

Λόγσ ηνπ όηη είλαη αλνηθηνύ θώδηθα (open source), νπνηνζδήπνηε κπνξεί λα θαηεβάζεη ηελ MySQL θαη λα ηελ δηακνξθώζεη βάζεη ησλ αλαγθώλ ηνπ, ζύκθσλα πάληα κε ηελ γεληθή άδεηα πνπ ππάξρεη. Η MySQL είλαη γλσζηή θπξίσο γηα ηελ ηαρύηεηα, ηελ αμηνπηζηία, θαη ηελ επειημία πνπ παξέρεη.

Η MySQL απηή ηε ζηηγκή κπνξεί λα ιεηηνπξγήζεη ζε πεξηβάιινλ Linux, Unix, θαη Windows θαη ρξεζηκνπνηείηαη από ηα πην κεγάια CMS (Joomla, Wordpress, Drupal θιπ) θαη όπσο θαη από ηεξάζηηα ζπζηήκαηα πνπ ρξεζηκνπνηνύληαη θαζεκεξηλά (Google, Wikipedia, Facebook, Twitter).

3.2 Περιγραθή ηης βάζης δεδομένων

Γηα λα θαιύςεη ηελ ιεηηνπξγηθόηεηά ηεο ε δηαδηθηπαθή εθαξκνγή ησλ πηπρηαθώλ εξγαζηώλ θαη λα παξνπζηάζεη ηελ θαηάιιειε πιεξνθνξία δηαρεηξίδεηαη δπλακηθά δεδνκέλα. Σα δεδνκέλα απηά απνζεθεύνληαη ζε κηα βάζε δεδνκέλσλ κε ηελ νπνία ε εθαξκνγή επηθνηλσλεί. Γηα ην ζθνπό απηό, ρξεζηκνπνηήζεθε ην ζύζηεκα

(18)

18 από 40

δηαρείξηζεο βάζεσλ δεδνκέλσλ (DBMS) ηεο MySql θαη αλαπηύρηεθε ε βάζε. Αο δνύκε αλαιπηηθά ηνπο πίλαθεο ηεο βάζεο καο παξαθάησ. ΢ηελ ελόηεηα απηή γίλεηαη κηα αλαιπηηθή πεξηγξαθή ησλ πηλάθσλ ηεο βάζεο δεδνκέλσλ θαη ησλ πεδίσλ πνπ πεξηιακβάλεη ν θαζέλαο ηνπο. ΢ηε ζπλέρεηα παξαηίζεηαη κηα πεξηγξαθή ηνπ ζρεδηαζκνύ θαη ηεο ιεηηνπξγίαο θάζε κηαο από ηηο θύξηεο νζόλεο ηνπ ζπζηήκαηνο.

3.3 Βάζη δεδομένων και πίνακες

Σα δεδνκέλα ηα νπνία θαηαρσξνύλ νη ρξήζηεο απνζεθεύνληαη ζε θάπνηνπο πίλαθεο, νη νπνίνη είλαη απνζεθεπκέλνη κε ηε ζεηξά ηνπο ζηε βάζε δεδνκέλσλ πνπ ρξεζηκνπνηνύκε. Απηνί νη πίλαθεο είλαη νη εμήο:

a) Πίλαθαο usrTypes

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα, θαηαρσξνύληαη ηα id ησλ ξόισλ ησλ ρξεζηώλ θαη ν ξόινο ηνπ θάζε id.

Γνκή:

Όλνκα Πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

type VARCHAR(20)

Πίνακαρ 3.1 usrTypes

 Σν id (Primary Key) είλαη ν κνλαδηθόο αξηζκόο θάζε ξόινπ. Γηα θάζε ξόιν ζα απμάλεηαη απηόκαηα.

 Σν type είλαη ην όλνκα ηνπ θάζε ξόινπ.

b) Πίλαθαο users

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα θαηαρσξνύληαη όια ηα ζηνηρεία ησλ ρξεζηώλ.

Γνκή:

Όλνκα Πεδίνπ

Σύπνο Πξόζζεηα

(19)

19 από 40

id INT Απμαλόκελνο

Αξηζκόο username VARCHAR(30) UNIQUE password VARCHAR(64)

salt VARCHAR(3)

type INT

email VARCHAR(64) name VARCHAR(30) surname VARCHAR(30) avatarName CHAR(9)

activated BOOLEAN

Πίνακαρ 3.2 users

 Σν id (Primary Key) είλαη ν θσδηθόο αξηζκόο ηνπ θάζε ρξήζηε. Ο αξηζκόο απηόο απμάλεηαη απηόκαηα θάζε θνξά πνπ δεκηνπξγείηαη έλαο λένο ρξήζηεο.

 Σν username είλαη ην όλνκα πνπ επέιεμε ν ρξήζηεο. Πξέπεη λα είλαη κνλαδηθό ζηε βάζε.

 Σν password είλαη ν θσδηθόο ηνπ ρξήζηε κε encryption. Ο ρξήζηεο γξάθεη ην password ην νπνίν θξππηνγξαθείηαη κε sha256. Μεηά δεκηνπξγείηαη έλα ηπραίν salt κε ην νπνίν θξππηνγξαθνύκε ην ήδε θξππηνγξαθεκέλν password. Απηό απνζεθεύεηαη ηειηθά ζην πεδίν.

 Σν salt είλαη ε ηπραία αθνινπζία πνπ δεκηνπξγείηαη γηα ηελ θξππηνγξάθεζε ηνπ password.

 Σν type (Foreign Key) είλαη μέλν θιεηδί ηνπ πίλαθα usrTypes(id).

 Σν email είλαη ην email ηνπ ρξήζηε.

 Σν name είλαη ην όλνκα ηνπ ρξήζηε.

 Σν surname είλαη ην επίζεην ηνπ ρξήζηε.

 Σν avatarName είλαη ην όλνκα ηνπ avatar πνπ ρξεζηκνπνηεί ε εθαξκνγή.

(20)

20 από 40

 Σν activated δείρλεη αλ είλαη ελεξγνπνηεκέλνο ν ρξήζηεο.

c) Πίλαθαο courses

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα θαηαρσξνύληαη ηα καζήκαηα πνπ είλαη πξναπαηηνύκελα γηα ηηο δηάθνξεο πηπρηαθέο.

Γνκή:

Όλνκα Πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

courseCode CHAR(4)

name VARCHAR(70)

Πίνακαρ 3.3 courses

 Σν id (Primary Key) είλαη ν κνλαδηθόο αξηζκόο ηνπ θάζε καζήκαηνο.

 Σν courseCode είλαη ν θσδηθόο πνπ έρεη ην κάζεκα ζύκθσλα κε ηα ζηνηρεία ηεο ζρνιήο.

 Σν name είλαη ν ηίηινο ηνπ καζήκαηνο.

d) Πίλαθαο theses

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα θαηαρσξνύληαη ηα ζηνηρεία ηεο θάζε πηπρηαθήο εξγαζίαο.

Γνκή:

Όλνκα πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

profId INT

title VARCHAR(100) description TEXT

(21)

21 από 40 isTeamed BOOLEAN

totalStudents INT DEFAULT‟1‟

descriptionFile VARCHAR(60) creationDate DATE

disabled BOOLEAN

Πίνακαρ 3.4 theses

 Σν id (Primary Key) είλα ν κνλαδηθόο αξηζκόο ηεο θάζε πηπρηαθήο πνπ δεκηνπξγείηαη. Κάζε θνξά πνπ δεκηνπξγείηαη κηα πηπρηαθή ν αξηζκόο απμάλεηαη θαηα έλα.

 Σν profId είλαη ην id ηνπ θαζεγεηή πνπ δεκηνπξγεί ηελ πηπρηαθή θαη είλαη μέλν θιεηδί ηνπ πίλαθα users(id).

 Σν title είλαη ν ηίηινο ηεο πηπρηαθήο εξγαζίαο.

 Σν description είλαη κηα ζύληνκε πεξηγξαθή ηεο πηπρηαθήο εξγαζίαο.

 Σν isTeamed είλαη ην πεδίν πνπ θαλεξώλεη αλ ε πηπρηαθή είλαη νκαδηθή ή όρη.

 Σν totalStudents είλαη ν αξηζκόο ησλ αηόκσλ πνπ κπνξνύλ λα αλαιάβνπλ ηελ πηπρηαθή σο νκάδα. Απηό ην πεδίν έρεη default ηηκή

„1‟.

 Σν descriptionFile είλαη ε νλνκαζία ηνπ αξρείνπ πνπ πεξηέρεη όιεο ηηο πιεξνθνξίεο ζρεηηθά κε ηελ πηπρηαθή.

 Σν creationDate είλαη ε εκεξνκελία πνπ δεκηνπξγήζεθε ε πηπρηαθή εξγαζία.

 Σν disabled είλαη ην πεδίν πνπ θαλεξώλεη αλ ε πηπρηαθή είλαη ελεξγή.

e) Πίλαθαο prerequisites

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα είλαη θαηαρσξνύληαη ηα πξναπαηηνύκελα καζήκαηα ηεο θάζε πηπρηαθήο.

(22)

22 από 40 Γνκή:

Όλνκα Πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

thesisId INT courseId INT

Πίνακαρ 3.5 prerequisites

 Σν id (Primary Key) είλαη ν κνλαδηθόο αξηζκόο ηεο θάζε εγγξαθήο πνπ γίλεηαη γηα πξναπαηηνύκελα καζήκαηα.

 Σν thesisId (Foreign Key) είλαη ην id ηεο πηπρηαθήο εξγαζίαο πνπ θαηαρσξείηαη ην πξναπαηηνύκελν κάζεκα. Δίλαη μέλν θιεηδί ηνπ πίλαθα theses(id).

 Σν courseId (Foreign Key) είλαη ην id ηνπ καζήκαηνο πνπ είλαη πξναπαηηνύκελν γηα ηελ πηπρηαθή. Δίλαη μέλν θιεηδί ηνπ πίλαθα courses(id).

f) Πίλαθαο assignments

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα θαηαρσξείηαη ε αλάζεζε ηεο θάζε πηπρηαθήο. Πόηε έγηλε, πνηα είλαη θαη ζε πνηνλ αλαηέζεθε.

Γνκή:

Όλνκα πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

userId INT thesisId INT

date DATE

Πίνακαρ 3.6 assignments

(23)

23 από 40

 Σν id (Primary Key) είλαη κνλαδηθόο αξηζκόο γηα θάζε κηα αλάζεζε πηπρηαθήο εξγαζίαο πνπ γίλεηαη θαη απμάλεηαη απηόκαηα.

 Σν userId (Foreign Key) είλαη ην id ηνπ ρξήζηε πνπ ηνπ αλαηίζεηαη ε πηπρηαθή εξγαζία. Δίλαη μέλν θιεηδί ηνπ πίλαθα users(id).

 Σν thesisId (Foreign Key) είλαη ην id ηεο πηπρηαθήο πνπ αλαηίζεηαη πξνο πινπνίεζε. Δίλαη μέλν θιεηδί ηνπ πίλαθα theses(id).

 Σν date είλαη ε εκεξνκελία πνπ γίλεηαη ε αλάζεζε ε πηπρηαθή εξγαζία.

g) Πίλαθαο choices

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα θαηαρσξνύληαη νη 5 επηινγέο ηνπ θνηηεηή γηα ηεο ππνςήθηεο πηπρηαθέο εξγαζίεο.

Γνκή:

Όλνκα πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

userId INT

first INT

second INT

third INT

forth INT

fifth INT

date DATE

Πίνακαρ 3.7 choices

 Σν id (Primary Key) είλαη κνλαδηθόο αξηζκόο γηα θάζε κηα αίηεζε ηνπ θνηηεηή θαη απμάλεηαη απηόκαηα κε θάζε λέα αίηεζε.

 Σν userId (Foreign Key) είλαη ην id ηνπ θνηηεηή πνπ θάλεη ηελ αίηεζε.

Δίλαη μέλν θιεηδί ηνπ πίλαθα users(id).

(24)

24 από 40

 Σν first (Foreign Key) είλαη ην id ηεο πηπρηαθήο πνπ έρεη σο πξώηε επηινγή ν θνηηεηήο. Δίλαη μέλν θιεηδί ηνπ πίλαθα theses(id).

 Σν second (Foreign Key) είλαη ην id ηεο πηπρηαθήο πνπ έρεη σο δεύηεξε επηινγή ν θνηηεηήο. Δίλαη μέλν θιεηδί ηνπ πίλαθα theses(id).

 Σν third (Foreign Key) είλαη ην id ηεο πηπρηαθήο πνπ έρεη σο ηξίηε επηινγή ν θνηηεηήο. Δίλαη μέλν θιεηδί ηνπ πίλαθα theses(id).

 Σν fourth (Foreign Key) είλαη ην id ηεο πηπρηαθήο πνπ έρεη σο ηέηαξηε επηινγή ν θνηηεηήο. Δίλαη μέλν θιεηδί ηνπ πίλαθα theses(id).

 Σν fifth (Foreign Key) είλαη ην id ηεο πηπρηαθήο πνπ έρεη σο πέκπηε επηινγή ν θνηηεηήο. Δίλαη μέλν θιεηδί ηνπ πίλαθα theses(id).

 Σν date είλαη ε εκεξνκελία πνπ έθαλε αίηεζε ν θνηηεηήο γηα αλάιεςε πηπρηαθήο εξγαζίαο.

h) Πίλαθαο presentations

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα θαηαρσξνύληαη νη πιεξνθνξίεο ζρεηηθά κε ηηο παξνπζηάζεηο πηπρηαθώλ εξγαζηώλ. Οη εμεηαζηέο, εκεξνκελία, ώξα εμέηαζεο, βαζκνί, αξρείν παξνπζίαζεο θηι.

Γνκή:

Όλνκα Πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

thesisId INT examiner1 INT examiner2 INT

date DATE

time TIME

accepted BOOLEAN

grade1 INT

grade2 INT

(25)

25 από 40

grade3 INT

presentationFile VARCHAR(40) textFile VARCHAR(40) sourceCodeFile VARCHAR(40)

Πίνακαρ 3.8 presentations

 Σν id (Primary Key) είλαη κνλαδηθόο αξηζκόο, πνπ αθόξα ηε θάζε παξνπζίαζε πνπ δεκηνπξγείηαη. Απμάλεηαη απηόκαηα κε θάζε λέα παξνπζίαζε πνπ δεκηνπξγείηαη.

 Σν thesisId (Foreign Key) είλαη ην id ηεο πηπρηαθήο πνπ ζα παξνπζηαζηεί. Δίλαη μέλν θιεηδί ηνπ πίλαθα theses(id).

 Σν examiner1 (Foreign Key) είλαη ην id ηνπ πξώηνπ εμεηαζηή. Δίλαη μέλν θιεηδί ηνπ πίλαθα users(id).

 Σν examiner2 (Foreign Key) είλαη ην id ηνπ δεύηεξνπ εμεηαζηή. Δίλαη μέλν θιεηδί ηνπ πίλαθα users(id).

 Σν date είλαη ε εκεξνκελία παξνπζίαζεο πνπ νξίζηεθε.

 Σν time είλαη ε ώξα παξνπζίαζεο πνπ νξίζηεθε.

 Σν accepted δείρλεη αλ έρεη γίλεη ε παξνπζίαζε.

 Σν grade1 είλαη ν πξώηνο βαζκόο πνπ θαηαρσξήζεθε ζηε πηπρηαθή εξγαζία.

 Σν grade2 είλαη ν δεύηεξνο βαζκόο πνπ θαηαρσξήζεθε ζηε πηπρηαθή εξγαζία.

 Σν grade3 είλαη ν ηξίηνο βαζκόο πνπ θαηαρσξήζεθε ζηε πηπρηαθή εξγαζία.

 Σν presentationFile είλαη ην όλνκα ηνπ αξρείνπ παξνπζίαζεο (powerPoint).

 Σν textFile είλαη ην όλνκα ηνπ αξρείνπ ηνπ θεηκέλνπ ηεο πηπρηαθήο εξγαζίαο (document).

 Σν sourceCodeFile είλαη ην όλνκα ηνπ αξρείνπ πνπ πεξηέρεη ηνλ θώδηθα ηεο πηπρηαθήο.

(26)

26 από 40 Πίλαθαο necessaryDocs

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα θαηαρσξνύληαη όια ηα απαξαίηεηα ζρεηηθά κε ηελ πηπρηαθή εξγαζία έγγξαθα.

Γνκή:

Όλνκα Πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

description VARCHAR(50) documentName VARCHAR(40)

Πίνακαρ 3.9 necessaryDocs

 Σν id (Primary Key) είλαη κνλαδηθόο αξηζκόο, πνπ αθνξά θάζε έλα έγγξαθν πνπ ππάξρεη. Απμάλεηαη απηόκαηα κε θάζε λέν έγγξαθν πνπ πξνζηίζεηαη.

 Σν description είλαη ε πεξηγξαθή ηνπ πεξηερνκέλνπ ηνπ θάζε εγγξάθνπ.

 Σν documentName είλαη ην όλνκα ηνπ αξρείνπ ηνπ θάζε εγγξάθνπ.

i) Πίλαθαο semesters

Περιγραθή: ΢ε απηόλ ηνλ πίλαθα θαηαρσξνύληαη νη εκεξνκελίεο ηνλ ελεξγώλ εμακήλσλ, θαζώο θαη ε πεξίνδνο πνπ γίλεηαη ε αλάζεζε ησλ πηπρηαθώλ εξγαζηώλ.

Γνκή:

Όλνκα Πεδίνπ Σύπνο Πξόζζεηα

id INT Απμαλόκελνο Αξηζκόο

(27)

27 από 40 description VARCHAR(50) activeFrom DATE

activeTo DATE

thesisChoicesFrom DATE thesisChoicesTo DATE

Πίνακαρ 3.10 semesters

 To id (Primary Key) είλαη κνλαδηθόο αξηζκόο, πνπ αθνξά ην θάζε εμάκελν. Απμάλεηαη απηόκαηα κε θάζε λέν εμάκελν πνπ δεκηνπξγείηαη.

 Σν description είλαη ην όλνκα ηνπ εμακήλνπ πνπ δεκηνπξγείηαη. Π.ρ.

Δαξηλό 2014-2015.

 Σν activeFrom είλαη ε εκεξνκελία πνπ μεθηλάεη ην εμάκελν.

 Σν activeTo είλαη ε εκεξνκελία πνπ νινθιεξώλεηαη ην εμάκελν.

 Σν thesisChoicesFrom είλαη ε εκεξνκελία πνπ μεθηλάλε νη επηινγέο ησλ πηπρηαθώλ εξγαζηώλ.

 Σν thesisChoicesTo είλαη ε εκεξνκελία πνπ νινθιεξώλεηαη ε δηαδηθαζία ηεο επηινγήο ησλ πηπρηαθώλ εξγαζηώλ.

(28)

28 από 40 Γιάγπαμμα Βάζηρ Γεδομένων

(29)

29 από 40 3.4 Η μορθή ηης εθαρμογής

Γηα λα θαιεθζεί ε ιεηηνπξγηθόηεηα ηεο εθαξκνγήο, όπσο απηή πεξηγξάθεθε παξαπάλσ ζρεδηάζηεθαλ θαηάιιειεο ζειίδεο θαη ηκήκαηα ζειίδσλ, κεηαμύ ησλ νπνίσλ πινεγείηαη ν ρξήζηεο αιιειεπηδξώληαο κε ηελ εθαξκνγή σζηέ λα επηηύρεη ην επηζπκεηό απνηέιεζκα. Η γεληθή ηδέα γηα ηελ δηεπηθάλεηα ηεο εθαξκνγήο καο ζπλίζηαηαη ζηελ ρξήζε ζπζηαηηθώλ πνπ ηνπνζεηνύληαη ζηηο ζειίδεο ηεο θαη ηεο πξνζδίδνπλ ηελ απαηηνύκελε ιεηηνπξγηθόηεηα. ΢πζηαηηθά όπσο θόξκεο, θνπκπίά, κελνύ επηινγήο, πίλαθεο, γλώξηκα ζηνπο ρξήζηεο ηνπ δηαδπθηίνπ, ηα νπνία δνκνύληαη αθνινπζώληαο έλα λνεηό πεξίγξακκα (template), ώζηε λα ζπλζέζνπλ κηα δηεπαθή θηιηθή ζηνλ ρξήζηε. Οη θόξκεο πνπ ρξεζηκνπνηνύληαη όπνπ πξνβιέπεηαη, αλακέλεηαη είζνδνο από ηνλ ρξήζηε, ηα θνπκπηά γηα ηελ αιιειεπίδξαζε ηνπ κε ηελ εθαξκνγή κηαο θαη επηηξέπνπλ ηελ ππξνδόηεζε γεγνλόησλ, νη πίλαθεο γηα παξνπζίαζε δεδνκέλσλ, ελώ ηα κελνύ επηινγήο ζε ζεκεία όπνπ ε είζνδνο πνπ αλακέλεηαη από ηνλ ρξήζηε είλαη ηππνπνηεκέλε, νπόηε ηνπ δίλεηαη ε δπλαηόηεηα λα επηιέμεη παξά λα πιεθηξνινγήζεη.

3.5 Η ροή ηων εργαζιών

΢ε απηό ην θεθάιαην ζα κηιήζνπκε γηα ηε ξνή ησλ εξγαζηώλ ηεο εθαξκνγήο γηα έλα νινθιεξσκέλν ζελάξην.

Αξρηθά ζα αλαθεξζνύκε ζηα βήκαηα πνπ αθνινπζεί ε εθαξκνγή. Σα βήκαηα απηά θαίλνληαη ζηελ παξαθάησ εηθόλα:

Δικόνα 3.2 Τα βήμαηα ηηρ εθαπμογήρ

(30)

30 από 40

Όπσο βιέπνπκε αξρηθά ν ρξήζηεο θάλεη αίηεζε γηα λα εγγξαθεί ζην ζύζηεκα. Η αίηεζε επεμεξγάδεηαη από ηνλ ξόιν ηνπ “Admin” θαη γίλεηαη απνδεθηή ή όρη. Ο

“Καζεγεηήο” πξέπεη λα δεκηνπξγήζεη πηπρηαθέο ώζηε λα ππάξρνπλ ζην ζύζηεκα γηα λα επηιερζνύλ από ηνπο θνηηεηέο. Μεηά ν “Φνηηεηήο” είλαη ππεύζπλνο λα θαηαρσξήζεη ηηο επηινγέο ηνπ. Απηέο νη επηινγέο θηάλνπλ ζηνλ “Admin” πνπ είλαη ν ππεύζπλνο γηα ηελ αλάζεζή ηνπο. Όηαλ ηειεηώζεη ν θνηηεηήο κε ηελ πηπρηαθή ν

“Καζεγεηήο” είλαη ππεύζπλνο γηα ηνλ νξηζκό εκεξνκεληώλ παξνπζίαζεο θαη ζπλεμεηαζηώλ. Με ην πέξαο ηεο παξνπζίαζεο από ηνλ θνηηεηή ν “Καζεγεηήο”

είλαη πάιη ππεύζπλνο γηα ηελ θαηαρώξεζε ησλ βαζκνινγηώλ. Απηέο νη βαζκνινγίεο ζηέιλνληαη ζηε γξακκαηεία πνπ ηηο εθηππώλεη.

Αλαιπηηθόηεξα απηόο ν ζπζρεηηζκόο ησλ ξόισλ θαίλεηαη από ην παξαθάησ δηάγξακκα:

Δικόνα 3.3 Η ποή ηων επγαζιών

΢ε απηό ην δηάγξακκα θαίλνληαη θαη νη ξόινη “Φνηηεηήο”, “Καζεγεηήο” θαη

“Γξακκαηεία” θαη πσο ζπλδένληαη κεηαμύ ηνπο, από ηε δεκηνπξγία ηεο πηπρηαθήο κέρξη ηελ εθηύπσζε ηεο βαζκνινγίαο ηεο από ηελ γξακκαηεία.

Referências

Documentos relacionados