ΠΤΥΧΙΑΚΗ/ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΠΤΥΧΙΑΚΗ/ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ/ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ «ΣΥΛΛΟΓΗ ΠΛΗΡΟΦΟΡΙΩΝ ΓΙΑ ΕΡΓΑ ΑΝΟΙΧΤΟΥ ΛΟΓΙΣΜΙΚΟΥ ΤΟΥ SOURCEFORGE» (collecting data from opensource projects which are uploaded on sourceforge.net ) «ΧΑΤΖΗΑΣΙΜΙ ΗΣ ΦΡΑΓΚΙΣΚΟΣ» ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: Σταµέλος Ιωάννης, αναπληρωτής καθηγητής ΘΕΣΣΑΛΟΝΙΚΗ 2011

2

3

4

5

6

7 ΠΕΡΙΛΗΨΗ ΠΕΡΙΛΗΨΗ Αντικείµενο της παρούσας εργασίας είναι η συλλογή πληροφοριών από την σελίδα του sourceforge.net για έργα ανοιχτού λογισµικού που είναι αναρτηµένα εκεί. ΤΙΤΛΟΣ VII

8

9 ABSTRACT A B S T R A C T The subject of this project is the collection of data of opensource projects which are uploaded on the page of sourceforge.net. ΤΙΤΛΟΣ IX

10

11 ΕΥΧΑΡΙΣΤΙΕΣ ΕΥΧΑΡΙΣΤΙΕΣ Θα ήθελα προτού ξεκινήσω την περιγραφή του συστήµατος που δηµιούργησα στα πλαίσια της πτυχιακής εργασίας µου να πω ένα ευχαριστώ σε ανθρώπους που µε βοήθησαν και µε στήριξαν σε όλη την προσπάθεια µου από την αρχή µέχρι και το πέρας της. Αρχικά θέλω να ευχαριστήσω τον κύριο Ιωάννη Σταµέλο, αναπληρωτή καθηγητή του τµήµατος Πληροφορικής του Α.Π.Θ., ο οποίος µου έδωσε την ευκαιρία να δουλέψω σε ένα πραγµατικό και πρακτικό έργο λογισµικού. Με την εµπιστοσύνη που µου έδειξε µου έδωσε την ευκαιρία να µάθω πολλά πράγµατα στο τοµέα του προγραµµατισµού και γενικά στο τοµέα της ανάπτυξης λογισµικού. Επίσης θέλω να ευχαριστήσω το Απόστολο Κρητικό, Επιστηµονικό Συνεργάτη του Τµήµατος Πληροφορικής του Αριστοτελείου Πανεπιστηµίου, Θεσσαλονίκης τόσο για την οργάνωση και την δηµιουργία των χρονοδιαγραµµάτων του έργου όσο και για την προσωπική βοήθεια και υποστήριξη του κατά την υλοποίηση. Τέλος θέλω να πω ένα µεγάλο ευχαριστώ στην οικογένεια µου που µε πραγµατικές θυσίες µε στήριζε και µε στηρίζει,τόσο ψυχολογικά όσο και υλικά, σε κάθε επιλογή µου. Χατζηασιµίδης Φραγκίσκος ΤΙΤΛΟΣ XI

12

13 ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΛΗΨΗ... VII ABSTRACT... IX ΕΥΧΑΡΙΣΤΙΕΣ... XI ΠΕΡΙΕΧΟΜΕΝΑ... XIII ΛΙΣΤΑ ΣΧΗΜΑΤΩΝ... XV ΛΙΣΤΑ ΠΙΝΑΚΩΝ...XVII ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ...19 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ...35 ΚΕΦΑΛΑΙΟ 3: ΥΛΟΠΟΙΗΣΗ...51 ΚΕΦΑΛΑΙΟ 4: ΠΑΡΑ ΟΧΕΣ ΚΑΙ ΜΕΛΛΟΝΤΙΚΗ ΟΥΛΕΙΑ...90 ΠΑΡΑΡΤΗΜΑ I: ΑΝΑΦΟΡΕΣ...93 ΠΑΡΑΡΤΗΜΑ II: ΚΩ ΙΚΑΣ ΤΙΤΛΟΣ XIII

14 ΣΥΓΓΡΑΦΕΑΣ XIV ΤΙΤΛΟΣ

15 ΛΙΣΤΑ ΣΧΗΜΑΤΩΝ ΛΙΣΤΑ ΣΧΗΜΑΤΩΝ ΕΙΚΟΝΑ 1: ΕΙΚΟΝΑ 2: ΠΑΡΑ ΕΙΓΜΑ ΕΙΚΟΝΑΣ...47 ΕΙΚΟΝΑ 2: ΕΠ ΠΡΟΣΑΝΑΤΟΛΙΣΜΕΝΑ ΣΤΗΝ ΜΑΘΗΣΗ...48 ΤΙΤΛΟΣ XV

16

17 ΛΙΣΤΑ ΠΙΝΑΚΩΝ ΛΙΣΤΑ ΠΙΝΑΚΩΝ ΠΙΝΑΚΑΣ 1: ΠΑΡΑ ΕΙΓΜΑ ΠΙΝΑΚΑ...48 ΤΙΤΛΟΣ XVII

18

19 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ

20

21 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ ΕΙΣΑΓΩΓΗ Στο έγγραφο αυτό θα γίνει η περιγραφή και η ανάλυση του συστήµατος SFparser το οποίο υλοποιήθηκε στα πλαίσια της πτυχιακή εργασίας µου. Το σύστηµα αυτό δηµιουργήθηκε µε σκοπό να συλλέξει πληροφορίες για έργα ανοιχτού λογισµικού από τη σελίδα του Sourceforge.net. Η ανάγκη δηµιουργίας αυτού του συστήµατος προέκυψε από τα µεγάλα ποσά πληροφορίας που υπάρχουν στη σελίδα του sourceforge τα οποία πρέπει µε κάποιο τρόπο να φιλτραριστούν και να αποθηκεύονται µε ένα πιο δοµηµένο τρόπο. Το καθήκον αυτό το έχει αναλάβει ο SFparser ο οποίος συλλέγει τις πληροφορίες που του έχει ορίσει ο χρήστης του και αµέσως τις αποθηκεύει τοπικά σε µία βάση δεδοµένων.επίσης o sfparser έχει ένα περιβάλλον διεπαφής φιλικό προς το χρήστη στο οποίο εµφανίζει τις πληροφορίες αυτές. Η ανάγκη ανάπτυξης συστηµάτων για συλλογή πληροφοριών από σελίδες διαδικτύου προέκυψε από την ραγδαία ανάπτυξη του ίδιου του διαδικτύου το οποίο πλέον έχει αναπτυχθεί πάρα πολύ. Η ανάπτυξη αυτή του διαδικτύου έχει δώσει πλέον στους χρήστες πρόσβαση σε χαοτικά µεγάλη έκταση πληροφορίας στην οποία αν δεν υπάρχει κάποια δοµή και οργάνωση χάνει την αξία της εφόσον οι χρήστες δεν θα µπορούν να έχουν πρόσβαση σε αυτή Στα κεφάλαια που ακολουθούν θα γίνει µία αρχική µελέτη εννοιών χρήσιµων για την κατανόηση των επόµενων κεφαλαίων, µία γενική επισκόπηση του έργου, µία λεπτοµερής και τεχνική περιγραφή όλων των συστατικών του έργου, µία επεξήγηση όλων των έτοιµων κοµµατιών κώδικα που χρησιµοποιήθηκαν για τη δηµιουργία του sfparser και τέλος θα γίνει αναφορά σε σχέση µε χαρακτηριστικά που θα µπορούσαν να υλοποιηθούν σε επόµενες γενιές του sfparser αλλά και µε παραδοχές που χρειάστηκε να γίνουν κατά την υλοποίηση της σηµερινής έκδοσης και πως αυτές θα µπορούσαν πιθανόν να αρθούν σε επόµενες εκδόσεις του έργου.τέλος στο τέλος του κειµένου σε ειδικό παράρτηµα υπάρχει όλος ο κώδικας του έργου. 1.1 ΑΝΟΙΧΤΟ ΛΟΓΙΣΜΙΚΟ ΤΙΤΛΟΣ 21

22 ΣΥΓΓΡΑΦΕΑΣ Η ιδέα του ανοιχτού λογισµικού ξεκίνησε περίπου το 1970 ως µία ιδέα η οποία δεν είχε ακόµη κάποια συγκεκριµένη δοµή και εξελίχθηκε σε µία κίνηση από την οποία δηµιουργήθηκαν κάποια από τα πιο σταθερά έργα λογισµικού(bretthauer, David, "Open Source Software: A History" (2001). UConn Libraries Published Works. Paper 7.). Την περίοδο που άρχισε η ραγδαία ανάπτυξη των προσωπικών ηλεκτρονικών υπολογιστών οι µεγάλες εταιρείες ενθάρρυναν και επικροτούσαν την προσπάθεια των χρηστών για δηµιουργία προγραµµάτων που ουσιαστικά βελτίωναν την ποιότητα και τη λειτουργικότητα των προϊόντων τους. Αυτό άρχισε σταδιακά να αλλάζει και άρχισαν να δηµιουργούνται λειτουργικά συστήµατα τα οποία κρατούσαν κρυφό το κώδικα τους. Αυτός ήταν και ο λόγος που η κυβέρνηση των ΗΠΑ κατηγόρησε την ΙΒΜ για την πολιτική της να δίνει τα προϊόντα της χωρίς πρόσβαση στον κώδικα τους κατηγορώντας την για αθέµιτο ανταγωνισµό. Τότε λοιπόν άρχισε να δηµιουργείται η ανάγκη για θέσπιση και καταξίωση του ανοικτού λογισµικού. Σε γενικές γραµµές µε τον όρο αυτό ουσιαστικά,µιλάµε για λογισµικό που διατίθενται στους χρήστες και τους δίνεται η δυνατότητα τόσο να χρησιµοποιήσουν αλλά ακόµη και να εξελίξουν η απλά να αλλάξουν το κώδικα µε τρόπο τέτοιο που να ταιριάζει και να εξυπηρετεί καλύτερα τις ανάγκες τους. Σε αυτό το σηµείο είναι χρήσιµο να διευκρινίσουµε ότι σε καµία περίπτωση ο όρος του ανοικτού λογισµικού δεν αναφέρεται σε κάποιο πρόγραµµα που απλά µοιράζεται στους χρήστες χωρίς αντίτιµο. Η ουσία του ανοιχτού λογισµικού δεν έχει να κάνει µε το αν το προµηθευόµαστε χωρίς αντίτιµο αλλά µε το αν έχουµε πρόσβαση στο κώδικα του. Σε αυτό εδώ το σηµείο είναι χρήσιµο να αναλύσουµε τη διαφορά ανάµεσα στις έννοιες του ελεύθερου και του ανοιχτού λογισµικού που παρόλο που φαίνονται ταυτόσηµες έχουν κάποιες εννοιολογικές διαφορές. Το ελεύθερο λογισµικό σαν έννοια εισήχθηκε από τον Richard Stallman το 1983 και αναφέρεται στο δικαίωµα της ελευθερίας των χρηστών ηλεκτρονικών υπολογιστών πάνω στο λογισµικό που χρησιµοποιούνε. Αυτό σήµαινε πως οι χρήστες θα πρέπει να έχουν το δικαίωµα να βλέπουν να τροποποιούνε το κώδικα των εφαρµογών που χρησιµοποιούνε αλλά και να αλλάζουν ακόµη τις εφαρµογές αυτές. Ο όρος ελεύθερο δεν πρέπει να παραπέµπει στο κόστος απόκτησης του λογισµικού, 22 ΤΙΤΛΟΣ

23 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ το οποίο µπορεί να υπάρχει η και να µην υπάρχει αλλά στη δυνατότητα των χρηστών να έχουν πρόσβαση στο πηγαίο κώδικα των εφαρµογών. Άλλη µία παρεξήγηση που πρέπει να λυθεί έχει να κάνει µε το αν το ελεύθερο λογισµικό µπορεί να είναι εµπορικό. Η απάντηση είναι ναι, µε την έννοια του ελεύθερου λογισµικού δεν εννοείται µόνο η ανταλλαγή µικρών προγραµµάτων µεταξύ προγραµµατιστών αλλά και η παροχή υψηλής ποιότητας και πολυπλοκότητας λογισµικού από µεγάλες εταιρείες και οργανισµούς. Η µόνη προϋπόθεση είναι ότι το λογισµικό αυτό θα παρέχεται µαζί µε τον πηγαίο του κώδικα και θα δίνει τη δυνατότητα στους χρήστες του να το µεταβάλλουν. Το ανοιχτό λογισµικό εισήγαγε µία ακόµη καινοτοµία και επέκτεινε την έννοια του ελεύθερου λογισµικού, η καινοτοµία αυτή κρύβεται πίσω από την έννοια της κοινότητας. Πλέον µε τον όρο του ανοιχτού λογισµικού δεν µιλάµε απλώς για λογισµικό που διατίθεται ελεύθερα και µπορεί να µεταβληθεί από τους χρήστες του αλλά µιλάµε για λογισµικό που ουσιαστικά δηµιουργείται και διαµορφώνεται µέσα από όλη τη παγκόσµια κοινότητα ανοιχτού λογισµικού και ανήκει σε αυτή. Στη διάδοση της ιδέας αυτής σοβαρός αρωγός υπήρξε και η διάδοση του διαδικτύου. Ο λόγος είναι ότι έγινε πολύ ευκολότερη η επικοινωνία των ατόµων της κοινότητας ανοιχτού λογισµικού άρα έγινε ευκολότερη η συνεργασία του και τελικά η παραγωγή περισσότερων εφαρµογών. Το ανοιχτό λογισµικό αποτελεί στην πραγµατικότητα µια κίνηση της παγκόσµιας κοινότητας των προγραµµατιστών που, υποβοηθούµενη από το ιαδίκτυο, θέτει σε αµφισβήτηση τις βάσεις του νοµικού συστήµατος της προστασίας της πνευµατικής ιδιοκτησίας για το λογισµικό. Το σύνηθες σχήµα της αποζηµίωσης του δηµιουργού για κάθε χρήση του έργου του, και της προστασίας του έργου του από κάθε επέµβαση τρίτου αναθεωρείται εκ βάθρων. Η κυρίαρχη ιδέα του ελεύθερου λογισµικού είναι ότι καθένας έχει πρόσβαση στο έργο, και κανένας δεν έχει, εντέλει, δικαίωµα σε αυτό. Προέρχεται από την κοινότητα και απευθύνεται στην κοινότητα. Με αυτές βέβαια τις παραδοχές το ανοιχτό λογισµικό κινείται κατ ανάγκην εκτός των γνωστών νοµικών συστηµάτων. Η ύπαρξή του προϋποθέτει µια παραίτηση από σειρά δικαιωµάτων που απονέµει στον δηµιουργό το ισχύον σύστηµα ΤΙΤΛΟΣ 23

24 ΣΥΓΓΡΑΦΕΑΣ προστασίας της πνευµατικής ιδιοκτησίας. Η παραίτηση αυτή παρόλα αυτά υπόκειται σε κάποιους κανόνες που ρυθµίζονται από κάποιες ειδικές άδειες που δηµιουργήθηκαν από το ίδρυµα ανοιχτού λογισµικού για το σκοπό αυτό. Μία από αυτές τις άδειες είναι η GNU ή GPL(General Pyblic Licence). Το λογισµικό που φέρει αυτή την άδεια δίνει τη δυνατότητα στους χρήστες του να µπορούν να το χρησιµοποιήσουν,να το αλλάξουν, να χρησιµοποιήσουν κοµµάτια του για την κατασκευή άλλων ανοιχτών λογισµικών αλλά τους υποχρεώνει και να διατηρούν τον ανοιχτό χαρακτήρα του έργου που θα προκύψει από όλες αυτές τις αλλαγές.υπάρχουν πάρα πολλές τέτοιες άδειες που ορίζουν κανόνες διασφάλισης έργων ανοιχτού λογισµικού. Αυτό δεν σηµαίνει ότι προβλήµατα δεν µπορεί να ανακύψουν. Ο εθελοντισµός και η καλή διάθεση της κοινότητας προγραµµατιστών µπορεί να εξαλειφθούν, όταν το οικονοµικό κέρδος εµφανιστεί. Τέτοια περίπτωση έχει ήδη συντρέξει. Γι αυτές τις περιπτώσεις κρίσιµη είναι η άδεια χρήσης του λογισµικού και η εξέταση των γενικών όρων της παραίτησης του δηµιουργού από τα περιουσιακά δικαιώµατα επί του έργου του. Το ελεύθερο λογισµικό παρουσιάζει ιδιαίτερο ενδιαφέρον τόσο ως κίνηση και ιδέα, όσο και ως µέθοδος, για µικρότερες αγορές λογισµικού, όπως η δική µας. Σκόπιµη κρίνεται εποµένως η παρακολούθηση των σχετικών εξελίξεων, και η ανάληψη δράσεων για την τόνωση του φαινοµένου. Η εκπόνηση νοµικού πλαισίου όµως θα πρέπει µάλλον να αναµείνει την οριστικοποίηση των µορφών του και την εγκαθίδρυσή του στην πράξη. 1.2 SOURCEFORGE Το sourceforge ανήκει σε µία κατηγορία συστηµάτων που είναι γνωστά ως Αποθετήρια Ανοικτού Κώδικα. Σε αυτή τη κατηγορία ανήκουν και το Google code, το Bitbucket, το Github και πολλά άλλα. 24 ΤΙΤΛΟΣ

25 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ github Google code 1 ΤΙΤΛΟΣ 25

26 ΣΥΓΓΡΑΦΕΑΣ bitbucket 1 Το Sourceforge.net ιδρύθηκε το Φεβρουάριο του 2009,από την εταιρεία Geeknet, και από τότε έχει φιλοξενήσει πάνω από έργων ανοικτού λογισµικού. ίνει τη δυνατότητα στους χρήστες του να ανεβάζουν δικά τους έργα ανοιχτού λογισµικού και να συµµετέχουν σε έργα άλλων. Επίσης δίνει τη δυνατότητα σε όλους τους χρήστες αλλά και στους απλούς επισκέπτες να κατεβάζουν έργα αλλά και να έχουν πρόσβαση στο κώδικα τους. Στο sourceforge.net φιλοξενούνται µερικά από τα πιο δηµοφιλή έργα ανοικτού λογισµικού στο κόσµο όπως το Mozilla firefox, το Wamp server και το 7-zip. Στο site παρέχεται µία µηχανή αναζήτησης που δίνει τη δυνατότητα στο χρήστη να ψάξει για οποιαδήποτε κατηγορία λογισµικού τον ενδιαφέρει. 26 ΤΙΤΛΟΣ

27 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ sourceforge Επίσης ο χρήστης µπορεί να διαβάσει γενικές πληροφορίες σχετικές µε το πρόγραµµα που τον ενδιαφέρει όπως η λειτουργικότητα του έργου, τα γενικά χαρακτηριστικά του, το κοινό στο οποίο απευθύνεται, την ηµεροµηνία της πρώτης έκδοσης του έργου και ακόµη περισσότερες πληροφορίες που µπορεί να τον ενδιαφέρουν. Μία ακόµη δυνατότητα που έχει ο χρήστης είναι να παρακολουθεί την πορεία ενός έργου και να βλέπει κατά πόσο ένα έργο είναι ενεργό και πόση δουλειά έχει γίνει για τη βελτίωση του. Μία άλλη σηµαντική λειτουργία που πρέπει να αναφέρουµε ενδεικτικά είναι ότι ο χρήστης έχει τη δυνατότητα να αναφέρει και ο ίδιος σφάλµατα. Φυσικά είναι ευκολονόητο ότι δεν γίνεται να αναφερθούν αναλυτικά όλες οι δυνατότητες που προσφέρει το site στο χρήστη γιατί αυτό θα ξέφευγε αρκετά από την ανάλυση του sfparser και το έγγραφο θα έτεινε να γίνει παρουσίαση του sourceforge.net. Παρ ΤΙΤΛΟΣ 27

28 ΣΥΓΓΡΑΦΕΑΣ όλα αυτά οι συγκεκριµένες λειτουργίες που αναφέρθηκαν είναι χρησιµες για την παρουσίαση του sfparser και αυτό θα φανεί πιο ξεκάθαρα στη συνέχεια του εγγράφου.παρακάτω παρατίθενται screenshots των συγκεκριµένων λειτουργιών του sfparser summary 28 ΤΙΤΛΟΣ

29 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ bugs 1.3 ΒΑΣΙΚΗ Ι ΕΑ PARSING ΚΑΙ Ο ΡΟΛΟΣ ΤΟΥ SFPARSER ΠΑΝΩ ΣΕ ΑΥΤΗΝ Στη σηµερινή εποχή, την εποχή του διαδικτύου και της πληροφορίας, το µόνο σίγουρο είναι ότι µπορούµε να έχουµε πληροφορίες για οτιδήποτε και αν µας ενδιαφέρει και αυτό µπορεί ο καθένας να το δοκιµάσει γράφοντας απλά µία λέξη που τον ενδιαφέρει στη φόρµα οποιασδήποτε µηχανής αναζήτησης. Ένα από τα ζητούµενα που προκύπτουν από όλο αυτό τον όγκο πληροφορίας είναι ο τρόπος µε τον οποίο µπορούµε να συλλέξουµε και να χρησιµοποιήσουµε όλη αυτή την πληροφορία µε συστηµατικό τρόπο έτσι ώστε να µπορούµε να φιλτράρουµε τις πληροφορίες που µας ενδιαφέρουν από τον υπόλοιπο όγκο που µας είναι αδιάφορος.μία τέτοια ανάγκη προκύπτει πιο εξειδικευµένα στην αναζήτηση πληροφορίας σε έργα ανοιχτού λοιγισµικού. Πάνω σε αυτό το ζητούµενο σχεδιάστηκε και υλοποιήθηκε η πρώτη έκδοση του sfparser. Το πρόγραµµα αυτό σχεδιάστηκε και ΤΙΤΛΟΣ 29

30 ΣΥΓΓΡΑΦΕΑΣ υλοποιήθηκε για να αντλεί πληροφορίες για έργα ανοικτού λογισµικού τα οποία είναι δηµοσιευµένα στην σελίδα του sourceforge.net. Στο διαδικτυακό τόπο του sourceforge.net υπάρχουν χιλιάδες έργα ανοικτού λογισµικού και για κάθε ένα από αυτά υπαρχει ένας αρκετά µεγάλος όγκος πληροφοριών που έχει να κάνει µε τις διάφορες εκδόσεις αυτών, πληροφορίες σχετικές µε την εξέλιξη του κάθε έργου αλλά και άλλες λεπτοµέρειες και γενικά χαρακτηριστικά για κάθε έργο στα οποία υπάρχει εκτενής αναφορά στη συνέχεια του εγγράφου. Από όλα αυτά τα έργα αλλά και από όλο αυτό τον όγκο πληροφορίας ο sfparser έχει τη δυνατότητα να αποµονώνει τη πληροφορία που ενδιαφέρει πραγµατικά τον χρήστη του και να αποκόπτει όλα τα άλλα περιττά στοιχεία. Με αυτό τον τρόπο ο χρήστης δεν χάνεται µέσα στην αρκετά χαοτική πληροφορία που παρέχει το sourceforge.net αλλά ασχολείται µόνο µε τα έργα και τις πληροφορίες που τον ενδιαφέρουν πραγµατικά. Στο σηµείο αυτό πρέπει να διευκρινιστεί ότι σε καµία περίπτωση ο sfparser δεν προορίζεται να αντικαταστήσει το ίδιο το sourceforge.net, το οποίο είναι ένα πάρα πολύ καλά δοµηµένο και πλήρες αποθετήριο ανοικτού κώδικα, ο µοναδικός ρόλος του sfparser είναι απλώς να διευκολύνει το χρήστη του να βρίσκει ευκολότερα τις πληροφορίες που τον απασχολούν. Επίσης άλλος ένας ρόλος που καλείται να παίξει sfparser είναι να κωδικοποιήσει την πληροφορία αυτή και να την αποθηκεύσει µε συστηµατικό τρόπο. 1.4 ΑΠΑΙΤΗΣΕΙΣ Λειτουργικές Οι λειτουργικές απαιτήσεις του συστήµατος είναι οι εξής: 1)Συλλογή των βασικών πληροφοριών του έργου 30 ΤΙΤΛΟΣ

31 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ Το σύστηµα θα πρέπει να συγκεντρώνει τις πληροφορίες ενός έργου και να τις αποθηκεύει τοπικά σε µία βάση δεδοµένων στο server στον οποίο θα τρέχει. 2)Συλλογή των σφαλµάτων του συστήµατος ανά έκδοση Το σύστηµα θα πρέπει να συγκεντρώνει το πλήθος όλων των σφαλµάτων του έργου τόσο των ανοιχτών όσο και των κλειστών και να προβάλει αυτή τη πληροφορία στο χρήστη µε γραφικό τρόπο. 3)Συλλογή των πληροφοριών σχετικών µε τους προγραµµατιστές Το σύστηµα θα πρέπει να µπορεί να συλλέξει πληροφορίες σχετικές µε βασικά χαρακτηριστικά του έργου 4)Απλή επικοινωνία µε το χρήστη Το σύστηµα θα πρέπει να ζητάει απλά το όνοµα του έργου που τον ενδιαφέρει και το φάκελο στον οποίο υπάρχουν οι εκδόσεις του έργου και µόνο µε αυτές τις πληροφορίες να ολοκληρώνει όλη τη λειτουργικότητα του. 6)Προσαρµογή σε αλλαγές της διεπαφής του sourceforge Το σύστηµα θα πρέπει να δίνει τη δυνατότητα στο χρήστη να ορίζει µε γραφικό τρόπο τα δεδοµένα που θα πρέπει να συλλέγονται από τη σελίδα του sourceforge έτσι ώστε να µην δηµιουργείται πρόβληµα κάθε φορά που αλλάζει µορφή η σελίδα του sourceforge. ΤΙΤΛΟΣ 31

32 ΣΥΓΓΡΑΦΕΑΣ 7)Ταυτοποίηση από το sourceforge Το σύστηµα θα πρέπει να εκτελεί όλες τις διεργασίες που έχουν να κάνουν µε το sourceforge χωρίς να χρειάζεται να εισέλθει στη σελίδα ως ταυτοποιηµένος χρήστης Μη λειτουργικές απαιτήσεις 1)Γλώσσα προγραµµατισµού Το σύστηµα θα πρέπει να υλοποιηθεί σε php 5 2)Βάση δεδοµένων Το σύστηµα θα πρέπει να έχει βάση δεδοµένων τύπου Mysql(έκδοση 5>) που να υποστηρίζει την ανάπτυξη stored procedure 3)Λειτουργικό Το σύστηµα θα πρέπει να µπορεί να τρέξει σε Apache server οποιασδήποτε έκδοσης. 4)Γραφικά εφέ Το σύστηµα θα πρέπει να µπορεί να τρέξει σε περιηγητή που να υποστηρίζει javascript. 32 ΤΙΤΛΟΣ

33 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ ΤΙΤΛΟΣ 33

34

35 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ

36

37 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ Στο κεφάλαιο αυτό αναλύεται η αρχιτεκτονική και η σχεδίαση του όλου συστήµατος καθώς και του κάθε υποσυστήµατος που παίρνει µέρος στη διαδικασία της συλλογής πληροφοριών από το sourceforge.net. 2.1 ΣΥΝΟΛΙΚΗ ΕΠΙΣΚΟΠΗΣΗ ΕΡΓΟΥ Ο sfparser αποτελείται βασικά από τρία υποσυστήµατα,την εφαρµογή που φροντίζει να παίρνει την πληροφορία από το sourceforge(parser), από τη βάση δεδοµένων στην οποία αποθηκεύονται οι πληροφορίες και από το σύστηµα που φροντίζει τόσο για την οµαλή επικοινωνία του συστήµατος µε τη βάση δεδοµένων όσο και για τη σωστή επικοινωνία του χρήστη µε την συνολική εφαρµογή(web service). Η συνεργασία όλων των τµηµάτων του έργου µε σκοπό την εκτέλεση της βασικής λειτουργίας του θα γίνει καλύτερα κατανοητή αν εξετάσουµε τον τρόπο µε τον οποίο θα έτρεχε την εφαρµογή ο χρήστης. Αρχικά λοιπόν ο χρήστης ανοίγει κάποιον περιηγητή και στη γραµµή διευθύνσεων πληκτρολογεί το url του sfparser και µεταβαίνει στη σελίδα του έργου. Εκεί ο χρήστης βλέπει µία φόρµα στην οποία του ζητείτε να πληκτρολογήσει το όνοµα του project και του φακέλου µε τις εκδόσεις του. Αυτή την εµφάνιση της φόρµας και του συνολικού interface γενικότερα υπεύθυνη είναι η εφαρµογή του συστήµατος του web service. Αρχικά λοιπόν ο χρήστης δίνει τα στοιχεία αυτά και αποστέλλει τα στοιχεία της φόρµας. Με αυτό τον τρόπο ο χρήστης πυροδοτεί αρχικά τον έλεγχο για την ύπαρξη ή όχι του έργου στη βάση. Αν η πληροφορία λοιπόν υπάρχει στη βάση τότε το web service φέρνει την πληροφορία από τη βάση και την προβάλει στο χρήστη. Σε περίπτωση που η πληροφορία για το συγκεκριµένο έργο δεν υπάρχει στη βάση τότε ο parser καλείται να φέρει την πληροφορία από το sourceforge.net και να την αποθηκεύσει στη βάση. Αµέσως µόλις γίνει αυτό το web service καλείται να εµφανίσει στο χρήστη όλη την πληροφορία. Παρακάτω φαίνεται ένα σχήµα που συνοψίζει την όλη διαδικασία καθώς και στιγµιότυπα της λειτουργίας του έργου. ΤΙΤΛΟΣ 37

38 ΣΥΓΓΡΑΦΕΑΣ system 38

39 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ official interface results 39

40 ΣΥΓΓΡΑΦΕΑΣ Στη συνέχεια του εγγράφου αναλύεται αναλυτικότερα η δοµή του κάθε υποσυστήµατος καθώς και ο τρόπος που συµβάλει το καθένα από αυτά στην γενική λειτουργικότητα του sfparser. 2.2 PARSER To υποσύστηµα Parser όπως αναφέρθηκε και προηγούµενος είναι επιφορτισµένο µε την αλίευση των πληροφοριών κάθε έργου σε αυτή τη παράγραφο θα µελετηθεί µε µια πιο προσεκτική µατιά η φύση των πληροφοριών αυτών καθώς και ο ακριβής τρόπος µε τον οποίο οι πληροφορίες αυτές αλιεύονται. Ο Parser για την υλοποίηση χρησιµοποιεί µια βιβλιοθήκη ανοιχτού λογισµικού υλοποιηµένη χρησιµοποιεί µία php βιβλιοθήκη ανοιχτού λογισµικού η οποία βρίσκεται στη σελίδα του sourceforge.net.η βιβλιοθήκη αυτή λέγεται simplehtmldom και παρέχει πάρα πολλές δυνατότητες στο προγραµµατιστή που τη χρησιµοποιεί σχετικά µε τη φόρτωση και επεξεργασία µίας html σελίδας. Με τη βοήθεια λοιπόν αυτής της βιβλιοθήκης ο Parser φορτώνει τη σελίδα του sourceforge που φιλοξενεί το συγκεκριµένο project που ενδιαφέρει το χρήστη. Από τη σελίδα αυτή παίρνει όλες τις πληροφορίες που ενδιαφέρουν το χρήστη. Οι πληροφορίες αυτές είναι µία γενική περιγραφή του έργου, το όνοµα του, το url,η ηµεροµηνία ένταξης του έργου στη σελίδα του sourceforge, όλα τα χαρακτηριστικά του έργου, η άδεια του, τα θέµατα στα οποία αναφέρεται το έργο, τα λειτουργικά συστήµατα στα οποία τρέχει καθώς και στο κοινό στο οποίο αναφέρεται το έργο. Τέλος ο Parser παίρνει όλα τα στοιχεία για κάθε προγραµατιστή του έργου. Τα στοιχεία αυτά είναι το όνοµα, το url, το username καθώς και την ηµεροµηνία της ένταξης του κάθε προγραµµατιστή στη κοινότητα του sourceforge. Στις επόµενες εικόνες παρουσιάζονται οι σελίδες του sourceforge όπου υπάρχουν αυτές οι πληροφορίες. 40

41 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ kinds of info elements 41

42 ΣΥΓΓΡΑΦΕΑΣ pivot-info 42

43 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ programmer info Ο parser όµως εκτός από αυτές τις βασικές πληροφορίες είναι επιφορτισµένος και µε την συλλογή πληροφοριών που έχουν να κάνουν µε τα σφάλµατα του έργου. Πιο συγκεκριµένα ο Parser συλλέγει για κάθε έργο των αριθµό των σφαλµάτων που αναφέρθηκαν από την κοινότητα αλλά και τον αριθµό των σφαλµάτων που διορθώθηκαν για κάθε έκδοση του έργου. Αυτό γίνεται και πάλι µε την βοήθεια της βιβλιοθήκης SimpleHtmlDom. Ο parser φορτώνει τη σελίδα στην οποία αναφέρονται τα σφάλµατα του έργου για συγκεκριµένη χρονική περίοδο και παίρνει τους αριθµούς που αντιπροσωπεύουν τα ανοιχτά και τα κλειστά σφάλµατα που έχουν αναφερθεί. Πριν γίνει όµως αυτή η διαδικασία ο Parser ανιχνεύει όλες τις εκδόσεις του έργου και τη χρονική διάρκεια τους. Η διαδικασία αυτή γίνεται γιατί στο sourceforge τα σφάλµατα δεν αναφέρονται στις εκδόσεις των έργων αλλά σε χρονικές περιόδους της ζωής τους. 43

44 ΣΥΓΓΡΑΦΕΑΣ realeases 44

45 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ bugs per month Σε αυτή την ενότητα δόθηκε µία γενική ιδέα για τη λειτουργία του Parser περισσότερες λεπτοµέρειες θα παρατεθούν στη συνέχεια του εγγράφου στο κεφάλαιο που πραγµατεύεται την υλοποίηση του έργου. 2.3 WEB SERVICE Ο ρόλος αυτού του υποσυστήµατος είναι σε γενικές γραµµές να υποστηρίζει την επικοινωνία της συνολικής εφαρµογής µε τον χρήστη αλλά και µε την βάση δεδοµένων. Θα µπορούσαµε να πούµε ότι είναι η καρδιά της εφαρµογής και ρυθµίζει κατά κάποιο τρόπο τη λειτουργία του Sfparser γενικότερα. Όσον αφορά στην επικοινωνία του χρήστη µε την εφαρµογή, το web service Ανταλλάσει µηνύµατα µε το χρήστη στις εξής περιπτώσεις: Αρχικά εµφανίζει στο χρήστη τη φόρµα µε την οποία του ζητάει το όνοµα του έργου που τον ενδιαφέρει και το φάκελο στον οποίο υπάρχουν οι εκδόσεις του έργου αυτού. 45

46 ΣΥΓΓΡΑΦΕΑΣ Στη συνέχεια δέχεται την απάντηση του χρήστη και αποφασίζει αν θα ενεργοποιήσει τον Parser η αν θα χρειαστεί απλά να επικοινωνήσει µε τη βάση δεδοµένων. Αµέσως µετά, είτε µε την µία είτε µε την άλλη ροή, θα εµφανίσει τα αποτελέσµατα στο χρήστη. Τα βασικά χαρακτηριστικά του έργου εµφανίζονται στο χρήστη µε απλή παράθεση ενώ για τα ανοικτά και τα κλειστά σφάλµατα του κάθε έργου δηµιουργείται ένα διάγραµµα που δείχνει την εξέλιξη τους ανά τις εκδόσεις. Ο τρόπος που επικοινωνεί το web service µε την βάση δεδοµένων είναι µε αµφίδροµη επικοινωνία. ηλαδή η ροή δεδοµένων είναι και από το web service προς την βάση και αντίστροφα. Όταν το web service καλέσει το Parser να φέρει τις πληροφορίες από το sourceforge πρέπει να φροντίσει οι πληροφορίες αυτές να αποθηκευτούν στη βάση δεδοµένων. Επίσης όταν ένα έργο υπάρχει ήδη στη βάση τότε το web service ζητάει τις πληροφορίες αυτές από τη βάση. Τέλος το web service παίζει όπως αναφέρθηκε και το ρόλο του συντονιστή της όλης διεργασίας άρα είναι το υποσύστηµα εκείνο που αποφασίζει πότε θα γίνει τι ακριβώς. 2.4 ΒΑΣΗ Ε ΟΜΕΝΩΝ Η βάση δεδοµένων είναι όπως όλες οι βάσεις σε οποιοδήποτε σύστηµα η αποθήκη των δεδοµένων. Η συγκεκριµένη βάση όµως είναι µία έξυπνη αποθήκη η οποία έχει τους δικούς της µηχανισµούς για αποθήκευση και εξόρυξη των δεδοµένων της. Οι µηχανισµοί αυτοί είναι οι γνωστές stored procrdures. Η σχετικά νέα αυτή τεχνολογία δίνει τη δυνατότητα στον προγραµµατιστή να δηµιουργεί ολόκληρες διαδικασίες που να υλοποιούν οποιοδήποτε σειρά από ερωτήµατα στη βάση και ουσιαστικά να της δίνουν ενσωµατωµένη λειτουργικότητα για την ανάκτηση ή την αποθήκευση δεδοµένων στους πίνακες της. Με αυτό τον τρόπο η βάση ανεξαρτητοποιείται αρκετά από την εφαρµογή και λειτουργεί πολύ γρήγορα κατά την ανταλλαγή δεδοµένων µε αυτή. Η επικοινωνία του web service µε την βάση γίνεται µέσω κλήσεων των stored procedures. Τόσο για τη δοµή της βάσης όσο και για τις stored procedures θα γίνει εκτενής αναφορά στο κεφάλαιο όπου θα αναλυθεί η υλοποίηση της εφαρµογής. 46

47 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ Εκπαιδευτικό Περιβάλλον και Κοινότητα Χρηστών Περιεχόµενο Παγκόσµιος Ιστός Πληροφοριών Τρισδιάστατα Εικονικά Περιβάλλοντα Κανάλια Επικοινωνίας ιαχείριση Εγγράφων Βίντεο/Πολυµέσα Επικοινωνία µε Κείµενο (Text Chat) ιαµοίραση Εφαρµογών (Application Sharing) Προτυποποιηµένο Εκπαιδευτικό Υλικό Επικοινωνία µε Ήχο (Voice Chat) Ιδιωτικά Μηνύµατα (Private Messages) Εικόνα 1: Εικόνα 2: Παράδειγµα εικόνας Παράγραφος επιπέδου 2 Mην ξεχνάτε να κάνετε spell-checking Παράγραφος επιπέδου 3 <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> Παράγραφος επιπέδου 4 <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> Παράγραφος επιπέδου 5 <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> Α/Α Στήλη 1 Περιγραφή 1 Το µέγεθος της οµάδας συνεργατικής µάθησης Μπορεί να κυµαίνεται από 2 έως 16 µέλη. Μεγαλύτερες οµάδες παρουσιάζουν δυσλειτουργίες στη διαδικασία. Πρέπει να σηµειωθεί ότι η παραπάνω οµάδα µπορεί να χωριστεί περαιτέρω σε υπο-οµάδες

48 ΣΥΓΓΡΑΦΕΑΣ Α/Α Στήλη 1 Περιγραφή 2 Η διάρκεια της διαδικασίας συνεργατικής µάθησης 3 Η ένταση της διαδικασίας συνεργατικής µάθησης µελών. Η κλίµακα είναι ηµέρες, εβδοµάδες, µήνες ή και χρόνια. Η διάρκεια είναι προκαθορισµένη από τον καθηγητή. Ο αριθµός των συναντήσεων ποικίλει από µία φορά την εβδοµάδα για διάρκεια 2-3 ωρών µέχρι καθηµερινές συναντήσεις διάρκειας 8 ωρών. Οι παράµετροι αυτές καθορίζονται από τον καθηγητή σε συνεργασία µε τους µαθητές. Πίνακας 1: Παράδειγµα πίνακα <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Απλό κείµενο> <Λίστα κουκκίδες 1> <Λίστα κουκκίδες 2> <Λίστα κουκκίδες 2> <Λίστα κουκκίδες 1> <Λίστα κουκκίδες 1> Εκπαιδευτικό Περιβάλλον και Κοινότητα Χρηστών Περιεχόµενο Παγκόσµιος Ιστός Πληροφοριών Τρισδιάστατα Εικονικά Περιβάλλοντα Κανάλια Επικοινωνίας ιαχείριση Εγγράφων Βίντεο/Πολυµέσα Επικοινωνία µε Κείµενο (Text Chat) ιαµοίραση Εφαρµογών (Application Sharing) Προτυποποιηµένο Εκπαιδευτικό Υλικό Επικοινωνία µε Ήχο (Voice Chat) Ιδιωτικά Μηνύµατα (Private Messages) Εικόνα 3: ΕΠ προσανατολισµένα στην µάθηση 1. <αριθµηµένη λίστα 1> 1. < αριθµηµένη λίστα 2> 2. < αριθµηµένη λίστα 2> 2. < αριθµηµένη λίστα 1> 3. < αριθµηµένη λίστα 1> 48

49 ΚΕΦΑΛΑΙΟ 2: ΣΧΕ ΙΑΣΗ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ 49

50

51 ΚΕΦΑΛΑΙΟ 3: ΥΛΟΠΟΙΗΣΗ

52

53 ΥΛΟΠΟΙΗΣΗ Στο κεφάλαιο αυτό θα γίνει µία λεπτοµερής και αναλυτική περιγραφή της υλοποίησης του Sfparser. 3.1 ΚΛΑΣΕΙΣ Αρχικά καλό θα ήταν να περιγραφούν οι κλάσεις της εφαρµογής και στη συνέχεια οι συναρτήσεις που επιτελούν τη λειτουργικότητα του έργου. Οι δύο βασικές κλάσεις της εφαρµογής είναι η κλάση Project και η κλάση Programmer. Η κλάση project περιέχει τα πεδία name, description, url, registered, features,topic, os, licence, Intended_Audience, user_interface, programming Language. Τα πεδία αυτά αντιπροσωπεύουν όλα τα χαρακτηριστικά του κάθε έργου που πρέπει να αποθηκεύει η εφαρµογή. Επίσης στην κλάση αυτή είναι φυσικά υλοποιηµένες και όλες οι µέθοδοι που ανταλλάσουν τις τιµές αυτές µε το εξωτερικό της κλάσης(geters,seters). Η κλάση programmer περιέχει τα πεδία name, username, url, join. ηλαδή περιέχει όλα τα χαρακτηριστικά που του κάθε προγραµµατιστή που µας ενδιαφέρει να κρατάει η εφαρµογή µας. Επίσης και σε αυτή τη κλάση περιέχονται µέθοδοι οι οποίες βοηθούν στην αλληλεπίδραση της βάσης µε το εξωτερικό πρόγραµµα(geters,seters). Πέρα από αυτές τις δύο κλάσεις στο σύστηµα υπάρχουν περίπου άλλα 20 αρχεία php που περιέχουν συναρτήσεις για την υλοποίηση της λειτουργικότητας της εφαρµογής. Για να εξετάσουµε την υπόλοιπη λειτουργικότητα του συστήµατος θα κρατήσουµε τον αρχικό διαχωρισµό του σε τρία υποσυστήµατα, τον Parser, το web service,και τη βάση δεδοµένων. 53

54 3.2 PARSER Summary parsing Όπως περιγράψαµε πριν το συγκεκριµένο υποσύστηµα είναι επιφορτισµένο µε την συλλογή της απαραίτητης πληροφορίας από το sourceforge. Αρχικά είναι χρήσιµο σε αυτό εδώ το σηµείο να περιγραφεί ο τρόπος µε τον οποίο γίνεται η αλίευση της πληροφορίας. Αν δεν υπήρχε η απαίτηση το σύστηµα να µπορεί να δίνει τη δυνατότητα στο χρήστη να αλλάζει τα στοιχεία που θέλει να παίρνει για κάθε έργο τότε η διαδικασία του parsing θα ήταν πολύ εύκολη και γρήγορη. Η απαίτηση όµως αυτή προστάζει µία έξυπνη υλοποίηση που να επιτρέπει τις όποιες αλλαγές στη σελίδα του sourceforge. Η κεντρική ιδέα είναι ότι για κάθε στοιχείο ενός έργο υπάρχει ένα σταθερό σηµείο που το προσδιορίζει µέσα στον html κώδικα της σελίδας του έργου. Για παραδειγµα το url του κάθε έργου προσδιορίζεται πάντα από το project home. Στο εξής το σταθερό αυτό σηµείο θα το ονοµάζουµε pivot. Στις επόµενες εικόνες φαίνονται για τα έργα emule και jedit τα urls τους καθώς και το pivot που προσδιορίζει τα urls τους code per notation emule

55 3.2.2 code per notation jedit Θεωρώντας ότι σηµασιολογικά πάντα θα υπάρχει ένας τίτλος για κάθε στοιχείο που µας ενδιαφέρει προσδιορίζουµε αρχικά µε γραφικό τρόπο µέσα από την εφαρµογή ποια στοιχεία µας ενδιαφέρουν και µε ποιο σταθερό σηµείο του Html εγγράφου συνδέονται. Επίσης πριν αρχίσουµε να αντιστοιχούµε τα δεδοµένα που µας ενδιαφέρουν φυσικά ελέγχουµε αν το δεδοµένο που µας ενδιαφέρει έχει κάποιο συγκεκριµένο id µέσα στο κώδικα της σελίδας και µπορεί να ευρεθεί στο εσωτερικό της σελίδας άµεσα. Περισσότερες λεπτοµέρειες σχετικά µε αυτή τη διαδικασία θα αναφερθούν σε επόµενη ενότητα όπου θα αναλυθεί µε λεπτοµέρειες ο καθορισµός των στοιχείων που πρέπει να παίρνει η εφαρµογή για κάθε έργο, από τον ίδιο το χρήστη. Εδώ χρειάστηκε να αναφερθούν αυτά ώστε να γίνει ευκολότερα κατανοητή η λειτουργία του υπόλοιπου συστήµατος. Ας εξετάσουµε λοιπόν πως ακριβώς γίνεται η όλη διαδικασία αλλά και ποιες συναρτήσεις παίρνουν µέρος σε αυτή. 55

56 Όλα ξεκινούν από το αρχείο Index.php εκεί λοιπόν καλείται η συνάρτηση createprojectfromhtml($project_url,$p,$projectname) H συνάρτηση αυτή δέχεται σαν ορίσµατα το url του έργου για το οποίο καλείται, ένα αντικείµενο της κλάσης project και το όνοµα του έργου. Η συνάρτηση αυτή µε την σειρά της καλεί µία από τις συναρτήσεις return_multi_data($pivot,$html), return_data($pivot,$html), return_id_data($pivot,$html). Οι συναρτήσεις αυτές παίρνουν σαν ορίσµατα το pivot του στοιχείου που τους ενδιαφέρει αλλά και τον κώδικα της σελίδας του έργου. Και οι τρεις συναρτήσεις προσπαθούν να βρουν µέσα στο κώδικα της σελίδας το στοιχείο που µας ενδιαφέρει και να το επιστρέψουν. Ο λόγος που είναι τρείς διαφορετικές είναι γιατί η πρώτη αναζητά ένα pivot που αντιστοιχεί σε πολλά δεδοµένα όπως για παράδειγµα τα χαρακτηριστικά του έργου που έχουν ως pivot το features, η δεύτερη ψάχνει ένα µονό δεδοµένο που αντιστοιχεί σε ένα pivot ενώ η τρίτη ψάχνει απλά ένα δεδοµένο που έχει id. Στο παρακάτω σχήµα φαίνονται µε κίτρινο δεδοµένα που έχουν id, µε κόκκινο τα µονά δεδοµένα που αντιστοιχούν σε κάποιο pivot και µε γαλάζιο οι οµάδες δεδοµένων που αντιστοιχούν σε ένα pivot.

57 3.2.3 data per pivot Αφού λοιπόν αυτές οι συναρτήσεις επιστρέψουν στην createprojectfromhtml αυτή µε τη σειρά της δίνει τις τιµές που έχει στο αντικείµενο της κλάσης project και µετά τερµατίζει. Με αυτό τον τρόπο λοιπόν ολοκληρώνεται η διαδικασία της συλλογής βασικών πληροφοριών για τα έργα που µας ενδιαφέρουν Programmer parsing Για την συλλογή των πληροφοριών σχετικά µε τους προγραµµατιστές του έργου έχει δηµιουργηθεί η συνάρτηση createprogrammerfromhtml($url) η οποία παίρνει σαν όρισµα το url του έργου. Αφού πάρει το url του έργου φορτώνει τη σελίδα του και από αυτή παίρνει τα url όλων των προγραµµατιστών του έργου και φορτώνει ξεχωριστά τη σελίδα του καθενός. Από τη σελίδα τους παίρνει τις πληροφορίες που χρειάζεται και τις καταχωρεί σε αντικείµενα της κλάσης programmer. Αφού δηµιουργήσει όλα αυτά τα αντικείµενα τα εκχωρεί σε ένα πίνακα και τα επιστρέφει στο κυρίως πρόγραµµα(index.php). 57

58 3.2.3 Bugs Parsing Για τη συλλογή πληροφοριών σχετικά µε τα bugs του έργου έχει δηµιουργηθεί η συνάρτηση get_bugs($project_name,$file_name,$p_id) η οποία παίρνει σαν ορίσµατα το όνοµα του έργου, το όνοµα του φακέλου αλλά και το id που έχει το συγκεκριµένο έργο στη βάση της εφαρµογής. Αρχικά η συνάρτηση αυτή φορτώνει τη σελίδα στην οποία υπάρχουν όλες οι εκδόσεις του έργου και από εκεί δηµιουργεί ένα πίνακα που περιέχει όλες τις εκδόσεις του έργου αλλά και ένα πίνακα στον οποίο περιέχονται όλες οι ηµεροµηνίες έναρξης και λήξης της κάθε έκδοσης. Αφού δηµιουργηθούν αυτοί οι δύο πίνακες τότε καλείται η συνάρτηση find_tracker_id($project_name) η οποία επιστρέφει το id που αντιστοιχεί στα bugs. Μετά καλείται για κάθε έκδοση του έργου συνάρτηση create_bugs_table($p_id,$project_name,$year,$tracker_id) η οποία παίρνει σαν ορίσµατα το id του έργου όπως αυτό είναι αποθηκευµένο στη βάση του συστήµατος, το όνοµα του έργου, τη χρονιά για την οποία µας ενδιαφέρει να δούµε τα σφάλµατα του έργου και το id του έργου στο σύστηµα του sourceforge.net.η συνάρτηση αυτή φορτώνει τη σελίδα t_name."&type=tracker&mode=year&year=".$year."&tracker_id=".$tracker_id στην οποία στέλνει µε τη µέθοδο get το id του έργου, το όνοµα του, τη χρονιά για την οποία ενδιαφερόµαστε και το id που δείχνει για ποιο tracker ενδιαφερόµαστε(bugs). Αυτό που επιστρέφει η συνάρτηση είναι ένας δισδιάστατος πίνακας στον οποίο περιέχονται όλα τα σφάλµατα του έργου για κάθε µήνα. Τέλος η συνάρτηση αφού τελικά τελειώσει µε όλες τις διεργασίες στη συνέχεια αποθηκεύει στη βάση για κάθε έκδοση του έργου πόσα ανοιχτά και πόσα κλειστά σφάλµατα είχε και τερµατίζει τη λειτουργία της.

59 3.3 ΣΥΣΤΗΜΑ ΠΡΟΣ ΙΟΡΙΣΜΟΥ ΤΩΝ Ε ΟΜΕΝΩΝ ΠΟΥ ΧΡΕΙΑΖΟΝΤΑΙ ΓΙΑ ΚΑΘΕ ΕΡΓΟ ΜΕ ΓΡΑΦΙΚΟ ΤΡΟΠΟ Όπως αναφέρθηκε και στη προηγούµενη ενότητα όλος ο σχεδιασµός του Sfparser έγινε µε την απαίτηση να µπορεί ο χρήστης αλλάζει µε γραφικό τρόπο την πληροφορία που θέλει από το sourceforge, για αυτό το λόγο και εισήχθηκε και η ιδέα του σταθερού σηµασιολογικού στοιχείου που προσδιορίζει την κάθε πληροφορία για κάθε έργο(pivot). Για την υλοποίηση αυτής της ιδέας χρησιµοποιήθηκε ένα αντίγραφο της σελίδας κάποιου τυχαίου έργου και σε αυτήν υλοποιήθηκαν javascript συναρτήσεις των οποίων τη λειτουργικότητα θα αναλύσουµε στη συνέχεια του κεφαλαίου. Αρχικά µε την βοήθεια του jquery στην σελίδα του τυχαίου έργου δηµιουργείται ένα highlighting σε κάθε στοιχείο της σελίδας το οποίο δείχνει στο χρήστη για κάθε πληροφορία που τον ενδιαφέρει µε ποιο σταθερό σηµείο συνδέεται. Για την καλύτερη ανάλυση αυτής της λειτουργίας θα ήταν καλό να εξετάσουµε ένα παράδειγµα. Στην παρακάτω εικόνα φαίνεται η αντίδραση της εφαρµογής όταν ο χρήστης τοποθετήσει το κέρσορα πάνω σε κάποιο στοιχείο που τον ενδιαφέρει. 59

60 3.3.1 set notation interface Όπως φαίνεται όταν ο χρήστης έχει το κέρσορα πάνω στο url του έργου τότε η εφαρµογή του δείχνει ότι το url σχετίζεται µε το σταθερό σηµείο Project Home ακριβώς µε τον ίδιο τρόπο οµαδοποιούνται και τα πολλαπλά δεδοµένα όπως φαίνεται και στην επόµενη εικόνα.

61 3.3.2 data clustering Με αυτό τον τρόπο η εφαρµογή δείχνει στο χρήστη ότι όλα τα χαρακτηριστικά του έργου σχετίζονται άµεσα µε το pivot Features. Όταν ο χρήστης κάνει κλικ πάνω σε όποιο στοιχείο της σελίδας των ενδιαφέρει τότε εµφανίζεται ένα παράθυρο το οποίο ζητάει από το χρήστη να πατήσει πάνω στο στοιχείο που θέλει να προσδιορίσει ως σταθερό για την συγκεκριµένη πληροφορία. 61

62 3.3.3 select pivot Όταν ο χρήστης πατήσει πάνω στο στοιχείο που τον ενδιαφέρει τότε το σύστηµα τον πηγαίνει σε µία φόρµα που του ζητάει να δώσει ένα όνοµα που θα αντιστοιχεί στην πληροφορία µε την οποία θα σχετίζεται το pivot και επίσης ζητάει από το χρήστη να δηλώσει αν το συγκεκριµένο δεδοµένο είναι µονότιµο η αν πρόκειται για µία οµάδα δεδοµένων (πχ Features).

63 3.3.4 naming of single notation Αφού λοιπόν ο χρήστης δώσει τις απαραίτητες πληροφορίες τις καταχωρεί στη βάση δεδοµένων και ξεκινάει τη διαδικασία από την αρχή για κάποιο άλλο δεδοµένο που τον ενδιαφέρει. Όλα αυτά συµβαίνουν αν πρόκειται για κάποιο δεδοµένο που δεν χαρακτηρίζεται από κάποιο id οπότε και χρειάζεται να προσδιορίσουµε κάποιο pivot. Σε διαφορετική περίπτωση, όπως για παράδειγµα για την γενική περιγραφή του έργου που προσδιορίζεται από κάποιο id ακολουθείται µία διαφορετική ροή. Για την ακρίβεια αµέσως µόλις ο χρήστης πατήσει σε κάποιο στοιχείο που έχει id ανοίγει απλά ένα παράθυρο το οποίο ζητάει από το χρήστη το όνοµα για το συγκεκριµένο στοιχείο. 63

64 3.3.5 naming of an id recognized notation notation stored Ο λόγος που προσδιορίζεται κάθε στοιχείο από ένα pivot είναι ότι κατά την αλίευση των πληροφοριών η συνάρτηση createprojectfromhtml βλέπει από τη

65 βάση το pivot του κάθε στοιχείου και προσπαθεί να το βρει µέσα στη σελίδα του έργου, όταν το βρεί αποσπά την πληροφορία που έχει να κάνει µε αυτό. 3.4 ΒΑΣΗ Ε ΟΜΕΝΩΝ Πίνακες Η βάση δεδοµένων του συστήµατος αποτελείται από δέκα πίνακες στους οποίους αποθηκεύεται όλη η απαραίτητη πληροφορία. Ο πρώτος και βασικότερος πίνακας είναι ο πίνακας project o οποίος περιέχει όλα τα µονότιµα χαρακτηριστικά του έργου και έχει την εξής µορφή Id Name description url Registered_day licence current To id φυσικά είναι το αναγνωριστικό κάθε έργου, το name είναι το όνοµα του έργου, το url είναι ο σύνδεσµος προς τη σελίδα του έργου, το registered_day είναι η ηµεροµηνία ένταξης του έργου στο sourceforge, το πεδίο licence είναι η άδεια του έργου και τέλος το current είναι η ηµεροµηνία ένταξης του έργου στη βάση δεδοµένων. Ο δεύτερος πίνακας είναι αυτός που περιέχει όλα τα χαρακτηριστικά ενός έργου, ονοµάζεται features και απεικονίζεται ως εξής. Id P_id features 65

66 Το id και πάλι είναι ένα αναγνωριστικό της κάθε εγγραφής, το p_id είναι το εξωτερικό κλειδί που συνδέει το κάθε χαρακτηριστικό µε το αντίστοιχο έργο και φυσικά το πεδίο features είναι κάποιο από τα χαρακτηριστικά του έργου. Ο επόµενος πίνακας είναι αυτός στον οποίο αποθηκεύονται τα θέµατα µε τα οποία σχετίζεται το συγκεκριµένο έργο και έχει παρόµοια αρχιτεκτονική µε τον πίνακα features και ονοµάζεται topics. Id P_id topic Και σε αυτόν το πίνακα υπάρχει κάποιο id που προσδιορίζει κάθε εγγραφή του,υπάρχει το p_id το οποίο είναι το id του έργου στο οποίο ανήκει το συγκεκριµένο θέµα και φυσικά υπάρχει και το ίδιο το θέµα. Ο επόµενος πίνακας είναι ο πίνακας os στον οποίο αποθηκεύεται η πληροφορία σχετικά µε τα λειτουργικά συστήµατα στα οποία τρέχει το εκάστοτε έργο. Είναι καλό να αναφερθεί σε αυτό εδώ το σηµείο ότι όλοι αυτοί οι πίνακες που περιέχουν τα πολύτιµα χαρακτηριστικά κάθε έργου έχουν σχέση ένα προς πολλά µε το πίνακα project αυτό θα φανεί καλύτερα και στη συνέχεια στο σχήµα της βάσης. Id P_id os Και σε αυτόν το πίνακα υπάρχει κάποιο id που προσδιορίζει κάθε εγγραφή του,υπάρχει το p_id το οποίο είναι το id του έργου το οποίο τρέχει στο συγκεκριµένο λειτουργικό σύστηµα και φυσικά υπάρχει το ίδιο το λειτουργικό σύστηµα.

67 Επόµενος πίνακας είναι ο πίνακας Intended Audience ο οποίος έχει ακριβώς παρόµοια µορφή µε όλους τους προηγούµενους και περιέχει για κάθε έργο το κοινό στο οποίο απευθύνεται. Id P_id intended_audience Και σε αυτόν το πίνακα υπάρχει κάποιο id που προσδιορίζει κάθε εγγραφή του,υπάρχει το p_id το οποίο είναι το id του έργου το οποίο απευθύνεται στο συγκεκριµένο κοινό και φυσικά υπάρχει το ίδιο το κοινό. Ο επόµενος πίνακας έχει κάπως διαφορετική µορφή από τους µέχρι τώρα πίνακες και αποθηκεύει την πληροφορία για κάθε προγραµµατιστή του έργου. Ο πίνακας αυτός λέγεται programmers και έχει την παρακάτω µορφή. Id Name Username url Joined Το id φυσικά είναι το id κάθε προγραµµατιστή, το name είναι το όνοµα του κάθε προγραµµατιστή, το username είναι το ψευδώνυµο του χρήστη µέσα στη σελίδα του sourceforge,το url είναι ο σύνδεσµος της σελίδας του κάθε προγραµµατιστή και το joined είναι η ηµεροµηνία που εισήχθηκε στο sourceforge. Το κάθε έργο µπορεί να έχει αρκετούς προγραµµατιστές και κάθε προγραµµατιστής µπορει να έχει πάρει µέρος σε πολλά έργα, δηλαδή η σχέση του πίνακα project και του πίνακα programmers είναι πολλα προς πολλα υπήρξε η ανάγκη δηµιουργίας ενός τρίτου πίνακα που να µπορεί να συνδέσει τους δύο 67

68 πίνακες. Το ρόλο αυτό καλείται να παίξει ο πίνακας implementations ο οποίος περιέχει σαν πληροφορία ποια έργα σχετίζονται µε ποιους προγραµµατιστές. Ο πίνακας αυτός έχει την εξής µορφή. Id P_id Programmer_d Κάθε εγγραφή του πίνακα έχει ένα id και ένα ζευγάρι από ένα id που αντιστοιχεί σε κάποιο έργο και ένα id που αντιστοιχεί σε κάποιο προγραµµατιστή. Τέλος υπάρχουν οι πίνακες notations και notations_demo και οι δύο αυτοί πίνακες εξυπηρετούν την αλλαγή των στοιχείων που αντλούνται από το sourceforge. Αν θυµηθούµε λίγο το περιεχόµενο της παρουσίασης αυτής της λειτουργίας θα δούµε ότι κάθε στοιχείο που θέλουµε να παίρνουµε για κάθε έργο το αντιστοιχίζουµε σε ένα σταθερό στοιχείο. Η αντιστοίχιση αυτή αποτυπώνεται σε αυτό το πίνακα που έχει την εξής µορφή. Id notation url code pivot element_id multi Κάθε εγγραφή αυτού του πίνακα περιέχει φυσικά ένα µοναδικό id περιέχει το όνοµα του συγκεκριµένου στοιχείου για το οποίο µας ενδιαφέρει να πάρουµε πληροφορίες (πχ url), το url της σελίδας στην οποία βρίσκεται η ζητούµενη πληροφορία, περιέχει ακόµη τον html κώδικα του στοιχείου που µας ενδιαφέρει καθώς και το κώδικα του στοιχείου pivot, τέλος περιέχει το id του συγκεκριµένου στοιχείου µέσα στο κώδικα της σελίδας σε περίπτωση που αυτό υπάρχει και τέλος ο πίνακας περιέχει τη πληροφορία για το αν το στοιχείο αυτό είναι µονότιµο η πολύτιµο.

69 Ο πίνακας notations_demo είναι και αυτός ακριβώς ίδιος µε τον notations απλά επειδή χρησιµοποιήθηκε σε ένα demo επίδειξης και χρειαζόταν να χάνει κάθε φορά τις τιµές του για χάρη της λειτουργικότητας του demo. Τέλος υπάρχει ο πίνακας data ο οποίος περιέχει πληροφορίες σχετικά µε τα σφάλµατα του έργου. Id P_id Project Release Bugs_opened Bugs_closed Start_date End_date Ειδικότερα σε αυτό το πίνακα υπάρχουν για κάθε έκδοση του έργου ένα id, το id του έργου στο οποίο ανήκουν οι εκδόσεις, το όνοµα της έκδοσης,τον αριθµό των ανοιχτών σφαλµάτων της έκδοσης, το αριθµό των κλειστών σφαλµάτων,την ηµεροµηνία έναρξης της έκδοσης και τέλος την ηµεροµηνία λήξης της. 69

70 mysql schema Stored procedures Όπως αναφέραµε και πριν η συγκεκριµένη βάση έχει την ιδιαιτερότητα να έχει ενσωµατωµένη δική της λειτουργικότητα ανεξάρτητη από την υπόλοιπη εφαρµογή. Η λειτουργικότητα αυτή σχετίζεται µε τις διαδικασίες που δηµιουργήθηκαν και ενσωµατώθηκαν στη βάση.στη συνέχεια θα εξετάσουµε αναλυτικά όλη αυτή τη λειτουργικότητα, αφού πρώτα αναφερθούν ορισµένα πράγµατα για τις stored procedures. Μία από τις τεχνολογίες που χρησιµοποιήθηκε λοιπόν ήταν οι stored procedures οι οποίες προσφέρονται από την Mysql,µία από τις πιο δηµοφιλείς βάσεις

71 δεδοµένων ανοιχτού λογισµικού. Η mysql λοιπόν δίνει τη δυνατότητα στους χρήστες της να δηµιουργούν ερωτήµατα προς τη βάση που τους ενδιαφέρει και να τα αποθηκεύουν στην ίδια τη βάση. Αυτή η δυνατότητα που προσφέρει η mysql είναι εξαιρετικά σηµαντική για αρκετούς λόγους. Ο πρώτος σηµαντικός λόγος είναι ότι ανεξαρτητοποιεί ακόµη περισσότερο τη βάση από την εφαρµογή που χρησιµοποιεί τη βάση. ηλαδή αν για παράδειγµα έχουµε µία εφαρµογή που είναι σχεδιασµένη σε php και η βάση είναι υλοποιηµένη µε stored procedures για οποιαδήποτε συναλλαγή πληροφοριών µεταξύ της εφαρµογής και της βάσης αρκεί απλά να γίνεται η κλήση της αντίστοιχης stored procedure από την εφαρµογή. Αν για κάποιο λόγο θέλαµε να αξιοποιήσουµε τη βάση από µία εφαρµογή γραµµένη σε java το µόνο που θα χρειαζόταν θα ήταν να κάνουµε τις ίδιες κλήσεις στη βάση χωρίς να ασχοληθούµε µε την ίδια την εφαρµογή. Άλλο ένα σηµαντικό πλεονέκτηµα είναι ότι µέσω των stored procedures µπορούµε να βελτιώσουµε αρκετά τη ταχύτητα εκτέλεσης της εφαρµογή µας. Και αυτό δεν θα µπορούσε να φανεί καλύτερα από την παράθεση ενός παραδείγµατος. Έστω ότι έχουµε τους πίνακες που φαίνονται παρακάτω. users Id Name username Last_name adress 1 Nick Nick Papadopoylos Nikaia 2 Babis Babis Xaralampoy Panorama cars User_id Model 1 Brera 1 Gt 2 M3 Αν για κάποιο λόγο θέλαµε να εµφανίσουµε τα αυτοκίνητα του χρήστη Nick θα έπρεπε να κάνουµε πρώτα ένα ερώτηµα για βρούµε το id του από το πίνακα users και ένα ερώτηµα για να βρούµε όλα τα αυτοκίνητα που αντιστοιχούν στο 71

72 συγκεκριµένο id. Με τις stored procedures θα µπορούσαµε απλά να καλέσουµε τη διαδικασία find user car(user name) και έτσι θα είχαµε ο ίδιο αποτέλεσµα µε ένα µόνο ερώτηµα και όχι δύο. Για να γίνει περισσότερο κατανοητή η λειτουργία των stored procedures είναι χρήσιµο να παρατεθούν οι stored procedures που χρησιµοποιήθηκαν στο sfparser και µέσα από την µελέτη αυτών να γίνει και µία γενικότερη µελέτη για τον τρόπο που συντάσσονται και λειτουργούν οι stored procedures.προτού παραθέσω τις procedures πρέπει να αναφερθεί ότι για να δηµιουργήσουµε µία procedure πάµε στο περιβάλλον του phpmyadmin, επιλέγουµε τη βάση µας και µετά πατάµε στο tab sql εκεί στο textbox που εµφανίζεται συντάσσουµε το κώδικα της διαδικασίας. Οι διαδικασίες του sfparser είναι οι εξης: Get_latest_project() CREATE PROCEDURE `get_latest_projects`() begin select name from superdooperpro.project order by current desc limit 10; end Αυτή η διαδικασία είναι επιφορτισµένη µε τον εύκολο σχετικά ρόλο να επιστρέφει τα δέκα πιο πρόσφατα έργα που µπήκαν στη βάση. Όπως φαίνεται δεν παίρνει κάποιο όρισµα, και το µόνο που κάνει είναι να στέλνει ένα ερώτηµα στη βάση µε το οποίο επιλέγει τα ονόµατα των δέκα πρώτων έργων ταξινοµηµένα µε βάση το πεδίο current που είναι η ηµεροµηνία εισαγωγής του έργου στη βάση. Ένα βασικό πράγµα που πρέπει να προσέξει ο προγραµµατιστής κατά τη

73 συγγραφή µιας διαδικασίας είναι ότι πρέπει να ορίσει σαν delimiter ένα στοιχείο διαφορετικό από το ; έτσι ώστε να µπορεί η mysql να ξεχωρίσει πότε τελειώνει κάθε εντολή της διαδικασίας και πότε τελειώνει όλη η διαδικασία. Συνήθως ο delimiter είναι είτε το αναγνωριστικό // είτε το αναγνωριστικό $. Project_exist(name) CREATE DEFINER=`root`@`localhost` PROCEDURE `project_exist`(name varchar(40)) begin select id from superdooperpro.project where project.name=name; end Η διαδικασία project_exist(name) είναι εξίσου απλή µε την προηγούµενη µε τη µόνη διαφορά ότι σε αυτήν εδώ τη διεργασία έχουµε και µία παράµετρο. Όπως είναι φανερό για να δηλώσουµε µία παράµετρο χρειάζεται να πούµε το όνοµα της και το τύπο της. Οι τύποι που µπορούµε να δηλώσουµε είναι οι τύποι δεδοµένων που µπορούµε να αποθηκεύσουµε στη mysql. Η συγκεκριµένη διαδικασία παίρνει το όνοµα κάποιου έργου και αν αυτό υπάρχει επιστρέφει το id διαφορετικά επιστρέφει null. Sent_features(p_id) CREATE DEFINER=`root`@`localhost` PROCEDURE `send_features`(p_id int) begin select * from superdooperpro.features where features.p_id=p_id; 73

74 end H διαδικασία sent_features(pid) είναι όµοια µε την project_exist(name), παίρνει σαν παράµετρο το id κάποιου project και επιστρέφει όλα τα χαρακτηριστικά του πίνακα features που έχουν στο πεδίο p_id το συγκεκριµένο αριθµό που παίρνουν σαν παράµετρο. Sent_int_aud(p_id) CREATE DEFINER=`root`@`localhost` PROCEDURE `send_int_aud`(p_id int) begin select * from superdooperpro.intended_audience where intended_audience.p_id=p_id; end H διαδικασία sent_int_aud(pid) παίρνει σαν παράµετρο το id κάποιου project και επιστρέφει όλα τα στοιχεία του πίνακα intended_audience(το κοινό στο οποίο απευθύνεται το συγκεκριµένο έργο) που έχουν στο πεδίο p_id το συγκεκριµένο αριθµό που παίρνουν σαν παράµετρο. Send_os(p_id) CREATE DEFINER=`root`@`localhost` PROCEDURE `send_os`(p_id int) begin

75 select * from superdooperpro.os where os.p_id=p_id; end H διαδικασία sent_os(pid) παίρνει σαν παράµετρο το id κάποιου project και επιστρέφει όλα τα στοιχεία του πίνακα os(τα λειτουργικά στα οποία τρέχει το συγκεκριµένο έργο) που έχουν στο πεδίο p_id το συγκεκριµένο αριθµό που παίρνουν σαν παράµετρο. Sent_pro_det(p_id) CREATE DEFINER=`root`@`localhost` PROCEDURE `send_pro_det`(p_id int) begin select * from superdooperpro.project where project.id=p_id; end H διαδικασία sent_pro_det(pid) παίρνει σαν παράµετρο το id κάποιου project και επιστρέφει όλα τα στοιχεία του πίνακα project(περιέχει βασικά χαρακτηριστικά του κάθε έργου όπως όνοµα,url και άλλα) που έχουν στο πεδίο p_id το συγκεκριµένο αριθµό που παίρνουν σαν παράµετρο. 75

76 send_topics(p_id) CREATE PROCEDURE `send_topics`(p_id int) begin select * from superdooperpro.topics where topics.p_id=p_id; end H διαδικασία sent_topics(pid) παίρνει σαν παράµετρο το id κάποιου project και επιστρέφει όλα τα στοιχεία του πίνακα topics (περιέχει τα θέµατα µε τα οποία ασχολείται το έργο) που έχουν στο πεδίο p_id το συγκεκριµένο αριθµό που παίρνουν σαν παράµετρο. insert_into_features(p_id,counter,element) CREATE DEFINER=`root`@`localhost` PROCEDURE `insert_into_features`(p_id int,counter int,element text) begin declare x int; declare f text;

77 select count(*) into x from superdooperpro.features where features.p_id=p_id; set x=x+1; select features.features into f from superdooperpro.features where (features.p_id=p_id and features.id=counter); if(element!=f and f is not null) then update superdooperpro.features set features=element where (features.p_id=p_id and features.id=counter); elseif(f is null) then insert into superdooperpro.features values(p_id,x,element); end if; end Σε αυτήν εδώ τη διαδικασία θα µας δοθεί η ευκαιρία να αναλύσουµε λεπτοµερώς αρκετές λεπτοµέρειες σε σχέση µε τις stored procedures. Ας εξετάσουµε λοιπόν τη διαδικασία αυτή γραµµή προς γραµµή. Αρχικά ο ρόλος αυτής της διαδικασίας είναι να αποθηκεύει σωστά τα χαρακτηριστικά(features) του έργου. Σαν παραµέτρους παίρνει το id του project, ένα counter και το χαρακτηριστικό που 77

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Triggers, Stored procedures Γιώργος Μαρκοµανώλης Περιεχόµενα Triggers-Ενηµέρωση δεδοµένων άλλων πινάκων... 1 Ασφάλεια...

Διαβάστε περισσότερα

9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers. Αποθηκευμένες Διαδικασίες (Stored Procedures):

9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers. Αποθηκευμένες Διαδικασίες (Stored Procedures): 9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers Σκοπός της παρούσας εργαστηριακής άσκησης, είναι η εξοικείωση του σπουδαστή με τη δημιουργία αποθηκευμένων διαδικασιών (Stored Procedures) και σκανδάλης

Διαβάστε περισσότερα

Κεφάλαιο 10 ο Υποπρογράµµατα

Κεφάλαιο 10 ο Υποπρογράµµατα Κεφάλαιο 10 ο Υποπρογράµµατα Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Η αντιµετώπιση των σύνθετων προβληµάτων και η ανάπτυξη των αντίστοιχων προγραµµάτων µπορεί να γίνει µε την ιεραρχική σχεδίαση,

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΤΕΤΑΡΤΟ Insert, Update, Delete, Ένωση πινάκων Γιώργος Μαρκοµανώλης Περιεχόµενα Group By... 1 Having...1 Οrder By... 2 Εντολή Insert...

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ:

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ: ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ: ΘΕΟΔΟΣΙΟΥ ΝΙΚΗ Α.Μ. 103/04 ΠΑΠΑΠΕΤΡΟΥ ΦΩΤΕΙΝΗ Α.Μ. 134/04 Εξεταστική Επιτροπή Επιβλέπουσα Καθηγήτρια : Σατρατζέμη Μαρία, Καθηγήτρια Μέλη : Ευαγγελίδης

Διαβάστε περισσότερα

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή 1 Πίνακας Περιεχομένων 1. Εισαγωγή... 4 1.1 Περιβάλλον Moodle...4 1.2 Χρήση ονόματος χρήστη και κωδικού...4 1.3 Δημιουργία νέου μαθήματος...4 1.3.1

Διαβάστε περισσότερα

XAMPP Apache MySQL PHP javascript xampp

XAMPP Apache MySQL PHP javascript xampp XAMPP Το xampp είναι ένα δωρεάν πρόγραμμα με το οποίο μπορούμε να κάνουμε εγκατάσταση τον Apache, τη MySQL και την PHP. Apache. Ο Apache είναι ένας Web Server. Είναι δηλαδή πρόγραμμα το οποίο τρέχει μόνιμα

Διαβάστε περισσότερα

ΥΠΗΡΕΣΙΑ. Ηλεκτρονική ιαχείριση Τάξης. Οδηγίες χρήσης για τον µαθητή.

ΥΠΗΡΕΣΙΑ. Ηλεκτρονική ιαχείριση Τάξης. Οδηγίες χρήσης για τον µαθητή. ΥΠΗΡΕΣΙΑ Ηλεκτρονική ιαχείριση Τάξης Οδηγίες χρήσης για τον µαθητή http://eclass.sch.gr Η υπηρεσία ηλεκτρονικής διαχείρισης τάξης αναπτύχθηκε από το Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών για λογαριασµό

Διαβάστε περισσότερα

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

Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΔΙΑΤΜΗΜΑΤΙΚΟ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Διπλωματική Εργασία με θέμα: Διαδικτυακό Περιβάλλον Διαχείρισης Ασκήσεων Προγραμματισμού Καραγιάννης Ιωάννης Α.Μ.

Διαβάστε περισσότερα

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη Όνοµα: Νικολαΐδης Αντώνιος Επιβλέπων: Τ. Σελλής Περίληψη ιπλωµατικής Εργασίας Συνεπιβλέποντες: Θ. αλαµάγκας, Γ. Γιαννόπουλος

Διαβάστε περισσότερα

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης Σελίδα 1από ΤΕΙ ΚΑΒΑΛΑΣ Πτυχιακή εργασία Δικτυακή Εφαρμογή διαχείρισης ηλεκτρονικών εγγράφων υπηρεσίας. ΕΙΣΑΓΩΓΗ Μιλτιάδης Κακλαμάνης Σελίδα 2από Κατάλογος περιεχομένων ΕΙΣΑΓΩΓΗ...1 Σχετιζόμενα πρόσωπα...3

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Views, Triggers Γιώργος Μαρκοµανώλης Περιεχόµενα Όψη... 1 ηµιουργία όψης... 2 Επιλογή CHECK... 3 Όψεις µόνο για εµφάνιση

Διαβάστε περισσότερα

Οδηγίες Χρήσης της MySQL

Οδηγίες Χρήσης της MySQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΣΕ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Οδηγίες Χρήσης της MySQL Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Νοέμβριος 2007 1 Περιεχόμενα Εισαγωγή...2

Διαβάστε περισσότερα

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

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αυγερινός Αραμπατζής avi@ee.duth.gr www.aviarampatzis.com Βάσεις Δεδομένων Stored Procedures 1 Stored Routines (1/2) Τμήματα κώδικα τα

Διαβάστε περισσότερα

Εγχειρίδιο Χρήστη - Μαθητή

Εγχειρίδιο Χρήστη - Μαθητή Εγχειρίδιο Χρήστη - Μαθητή 1. Εισαγωγή Η ηλεκτρονική πλατφόρµα «e-class», αποτελεί ένα ολοκληρωµένο σύστηµα Ασύγχρονης Τηλεκπαίδευσης. Στόχος της είναι παροχή υποδοµών εκπαίδευσης και κατάρτισης ανεξάρτητα

Διαβάστε περισσότερα

Ημερομηνία Παράδοσης: 4/4/2013

Ημερομηνία Παράδοσης: 4/4/2013 Δράση 9.14 / Υπηρεσία εντοπισμού λογοκλοπής Κυρίως Παραδοτέο / Σχεδιασμός και ανάπτυξη λογισμικού (λογοκλοπής) και βάσης δεδομένων (αποθετηρίου) Επιμέρους Παραδοτέο 9.14.1.4 / Πληροφοριακό σύστημα υπηρεσίας

Διαβάστε περισσότερα

ΕΡΓΑΣΙΑ. (στο µάθηµα: Τεχνολογίες Εφαρµογών ιαδικτύου του Η εξαµήνου σπουδών του Τµήµατος Πληροφορικής & Τηλ/νιών)

ΕΡΓΑΣΙΑ. (στο µάθηµα: Τεχνολογίες Εφαρµογών ιαδικτύου του Η εξαµήνου σπουδών του Τµήµατος Πληροφορικής & Τηλ/νιών) ΕΡΓΑΣΙΑ (στο µάθηµα: Τεχνολογίες Εφαρµογών ιαδικτύου του Η εξαµήνου σπουδών του Τµήµατος Πληροφορικής & Τηλ/νιών) Τίτλος: Εφαρµογή ιαδικτύου ιαχείρισης Αποθήκων (Warehouse Management Web Application) Ζητούµενο:

Διαβάστε περισσότερα

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10 Περιεχόμενα Εισαγωγή στην εφαρμογή... 2 Βασική Σελίδα (Activity)... 3 Ρυθμίσεις... 3 Πελάτες... 6 Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10 Αποθήκη... 11 Αναζήτηση προϊόντος...

Διαβάστε περισσότερα

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή Εγχειρίδιο Φοιτητών 1. Εισαγωγή Η ηλεκτρονική πλατφόρµα «e-class», αποτελεί ένα ολοκληρωµένο σύστηµα Ασύγχρονης Τηλεκπαίδευσης. Στόχος της είναι παροχή υποδοµών εκπαίδευσης και κατάρτισης ανεξάρτητα από

Διαβάστε περισσότερα

FROM TESTOTA.REGISTRY

FROM TESTOTA.REGISTRY ΟΤΑ Επιχειρησιακή Νοηµοσύνη Ενότητα: Βc1.1.3 Επιχειρησιακή Νοηµοσύνη και Τεχνολογίες της Πληροφορικής και των Επικοινωνιών (BI & IT) Πρακτική Άσκηση (επίπεδο 1): Στόχος της άσκησης είναι η εµβάθυνση στην

Διαβάστε περισσότερα

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ.

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής Περιεχόµενα Κατηγορίες Π.Σ. ιαχείρισης Πράξεων ιοίκησης Υποστήριξης Αποφάσεων Έµπειρα Συστήµατα Ατόµων και Οµάδων Ο κύκλος ζωής Π.Σ. Ορισµός Φάσεις Χρήστες

Διαβάστε περισσότερα

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer Protocol)

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία FTP (File Transfer Protocol) Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας-Βιβλιοθηκονοµίας Κέρκυρα ίκτυα - Internet 2 Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) ΜηχανέςΑναζήτησηςστοWeb Ηλεκτρονική Αλληλογραφία (E-mail) Υπηρεσία

Διαβάστε περισσότερα

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε.

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/

Διαβάστε περισσότερα

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή

Εγχειρίδιο Φοιτητών. 1. Εισαγωγή Εγχειρίδιο Φοιτητών 1. Εισαγωγή Η ηλεκτρονική πλατφόρµα «e-class», αποτελεί ένα ολοκληρωµένο σύστηµα Ασύγχρονης Τηλεκπαίδευσης. Στόχος της είναι παροχή υποδοµών εκπαίδευσης και κατάρτισης ανεξάρτητα από

Διαβάστε περισσότερα

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ . 1 ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ ΠΛΟΗΓΗΣΗ ΣΕ ΕΠΙΛΕΓΜΕΝΕΣ ΙΣΤΟΣΕΛΙ ΕΣ ΣΤΟ ΙΑ ΙΚΤΥΟ ΚΑΙ ΜΗΧΑΝΕΣ ΑΝΑΖΗΤΗΣΗΣ Πλοήγηση στην ιστοσελίδα του Υπουργείου Παιδείας...4 Πλοήγηση σε µια ιστοσελίδα...5 Άνοιγµα µιας σελίδας

Διαβάστε περισσότερα

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy

Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Σ ε λ ί δ α 1 Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Περιεχόμενα 1. Download Arebas Easy... 2 2. Εγκατάσταση Arebas Easy... 3 3. Εγγραφή στον Arebas Server... 7 4. Παραμετροποίηση Arebas Easy...

Διαβάστε περισσότερα

Εγκατάσταση. Εγκατάσταση του Wamp

Εγκατάσταση. Εγκατάσταση του Wamp Εγκατάσταση Εγκατάσταση του Wamp Η εγκατάσταση χωρίζεται σε δύο µέρη. Πρώτα θα εγκαταστήσουµε το Wamp, ώστε να µετατρέψουµε τον υπολογιστή µας σε Web Server και µετά θα εγκαταστήσουµε το Joomla. Η εγκατάσταση

Διαβάστε περισσότερα

Κατακερματισμός (Hashing)

Κατακερματισμός (Hashing) Κατακερματισμός (Hashing) O κατακερματισμός είναι μια τεχνική οργάνωσης ενός αρχείου. Είναι αρκετά δημοφιλής μέθοδος για την οργάνωση αρχείων Βάσεων Δεδομένων, καθώς βοηθάει σημαντικά στην γρήγορη αναζήτηση

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ.

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ. ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ Ηλεκτρονική Υποβολή Α.Π.Δ. ΠΕΡΙΕΧΟΜΕΝΑ 1) Είσοδος στην εφαρμογή 2) Δημιουργία Περιόδου Υποβολής 2.α) Ακύρωση Περιόδου Υποβολής 3) Μέθοδος Υποβολής: Συμπλήρωση Φόρμας 3.α) Συμπλήρωση

Διαβάστε περισσότερα

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ 1 ΠΕΡΙΕΧΟΜΕΝΑ 1. ΑΝΑΛΥΣΗ ΜΕΝΟΥ ΕΦΑΡΜΟΓΗΣ... 4 2. ΕΠΕΞΗΓΗΣΗ ΚΕΝΤΡΙΚΟΥ ΜΕΝΟΥ ΚΑΡΤΕΛΑΣ... 5 3. ΔΗΜΙΟΥΡΓΙΑ ΠΕΛΑΤΗ... 6 4. ΑΝΑΖΗΤΗΣΗ ΠΕΛΑΤΗ... 6 5. ΕΠΕΞΕΡΓΑΣΙΑ/ΔΙΑΓΡΑΦΗ

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

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

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ 1 Βάση Δεδομένων: Με το όρο Βάση Δεδομένων εννοούμε ένα σύνολο δεδομένων που είναι οργανωμένο

Διαβάστε περισσότερα

GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ

GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ: GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΣΠΟΥ ΑΣΤΗΣ: Γιαννόπουλος Γεώργιος ΕΠΙΒΛΕΠΩΝ: Καθ. Ι. Βασιλείου ΒΟΗΘΟΙ: Α. ηµητρίου, Θ. αλαµάγκας Γενικά Οι µηχανές αναζήτησης

Διαβάστε περισσότερα

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο)

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Επιστημονικός συνεργάτης Εργαστηρίου: Στέλλα Λάμπουρα Εαρινό εξάμηνο Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί

Διαβάστε περισσότερα

4.1 Άνοιγμα υπάρχοντος βιβλίου εργασίας

4.1 Άνοιγμα υπάρχοντος βιβλίου εργασίας 4.1 Άνοιγμα υπάρχοντος βιβλίου εργασίας 4.1.1 Άνοιγμα υπάρχοντος βιβλίου εργασίας από βάση δεδομένων Όταν εκκινήσουμε τον Discoverer εμφανίζεται στην οθόνη μας το παράθυρο διαλόγου του βοηθητικού προγράμματος

Διαβάστε περισσότερα

ΑΣΚΗΣΗ. Συγκομιδή και δεικτοδότηση ιστοσελίδων

ΑΣΚΗΣΗ. Συγκομιδή και δεικτοδότηση ιστοσελίδων Γλωσσική Τεχνολογία Ακαδημαϊκό Έτος 2010-2011 ΑΣΚΗΣΗ Συγκομιδή και δεικτοδότηση ιστοσελίδων Σκοπός της άσκησης είναι η υλοποίηση ενός ολοκληρωμένου συστήματος συγκομιδής και δεικτοδότησης ιστοσελίδων.

Διαβάστε περισσότερα

Hellenic European Law Concordance

Hellenic European Law Concordance Hellenic European Law Concordance Περιγραφή της ιστοσελίδας της HELC Αγγελής Σπύρος ( A.E.M. 398) Εισαγωγή Οι νοµικές βάσεις δεδοµένων είναι συστήµατα τα οποία προσφέρουν ανάκτηση πλήρους κειµένου νοµικών

Διαβάστε περισσότερα

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή Οι σηµερινές δραστηριότητες των επιχειρήσεων δηµιουργούν την ανάγκη για όσο το δυνατό µεγαλύτερη υποστήριξη από τα πληροφοριακά τους

Διαβάστε περισσότερα

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress ΚΟΤΣΟΓΙΑΝΝΙΔΗΣ ΛΑΖΑΡΟΣ Επιβλέπων καθηγητής Σφέτσος Παναγιώτης ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ Ως Ηλεκτρονικό Εμπόριο ή

Διαβάστε περισσότερα

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο FrontPage 2003 Πρακτικός Οδηγός Χρήσης Το FrontPage είναι ένα πρόγραμμα δημιουργίας ιστοσελίδων και δικτυακών τόπων που επιτρέπει το σχεδιασμό ιστοσελίδων μέσα από γραφικό περιβάλλον αλλά και την ταυτόχρονη

Διαβάστε περισσότερα

Λογισµικό (Software SW) Γλώσσες

Λογισµικό (Software SW) Γλώσσες Λογισµικό (Software SW) Γλώσσες Προγραµµατισµού Οι γενιές των γλωσσών προγραµµατισµού Προβλήµατα που επιλύονται σε ένα περιβάλλον στο οποίο ο άνθρωπος πρέπει να προσαρµόζεται στα χαρακτηριστικά της µηχανής

Διαβάστε περισσότερα

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP Εισαγωγή... 1 Σε Ποιους Απευθύνεται το Βιβλίο... 1 Η Οργάνωση του Βιβλίου... 2 Ο Πηγαίος Κώδικας του Βιβλίου... 3 Συμβάσεις που Χρησιμοποιούνται σε Αυτό το Βιβλίο... 3 Μέρος Ι: Εγκατάσταση και ιαμόρφωση

Διαβάστε περισσότερα

Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή

Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή Κεφάλαιο 14: Συμβουλές προς έναν νέο προγραμματιστή Φτάσαμε σιγά σιγά στο τέλος του βιβλίου. Αντί για κάποιον επίλογο σκέφτηκα να συλλέξω κάποια πράγματα που θα ήθελα να πω σε κάποιον ο οποίος αρχίζει

Διαβάστε περισσότερα

hel-col@otenet.gr Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής (ΠΕ19 MSc) Ελληνικό Κολλέγιο Θεσσαλονίκης kparask@hellenic-college.

hel-col@otenet.gr Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής (ΠΕ19 MSc) Ελληνικό Κολλέγιο Θεσσαλονίκης kparask@hellenic-college. Χρήση της Διεπαφής Προγραμματισμού Εφαρμογής Google Maps για τη δημιουργία διαδραστικού χάρτη με τα Μνημεία Παγκόσμιας Πολιτιστικής Κληρονομιάς της ΟΥΝΕΣΚΟ στη Θεσσαλονίκη Εμμανουήλ Τσάμης 1, Κωνσταντίνος

Διαβάστε περισσότερα

ΔΡΑΣΗ 3: «Ανάπτυξη και Λειτουργία Δικτύου Πρόληψης και Αντιµετώπισης φαινοµένων της Σχολικής Βίας και Eκφοβισµού»

ΔΡΑΣΗ 3: «Ανάπτυξη και Λειτουργία Δικτύου Πρόληψης και Αντιµετώπισης φαινοµένων της Σχολικής Βίας και Eκφοβισµού» «Ανάπτυξη και Λειτουργία Δικτύου Πρόληψης και Αντιµετώπισης φαινοµένων της Σχολικής Βίας και Eκφοβισµού» ΔΡΑΣΗ 3: Ενηµέρωση- επιµόρφωση εκπαιδευτικών στη διάγνωση, πρόληψη και αντιµετώπιση των φαινοµένων

Διαβάστε περισσότερα

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

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις εδοµένων 2011-2012 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούµενα µαθήµατα: Εννοιολογικός Σχεδιασµός Βάσεων Δεδοµένων (µε

Διαβάστε περισσότερα

Οδηγίες Χρήσης της MySQL

Οδηγίες Χρήσης της MySQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΣΕ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Οδηγίες Χρήσης της MySQL Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Απρίλιος 2007 1 Περιεχόμενα Εισαγωγή...2

Διαβάστε περισσότερα

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/

Διαβάστε περισσότερα

Ξεκινώντας την εκτέλεση της εφαρµογής εκτελείται ο παρακάτω κώδικας

Ξεκινώντας την εκτέλεση της εφαρµογής εκτελείται ο παρακάτω κώδικας Ξεκινώντας την εκτέλεση της εφαρµογής εκτελείται ο παρακάτω κώδικας 10 Επεξήγηση κώδικα Επειδή η εφαρµογή χρειάζεται οι πληροφορίες και οι επιλογές του χρήστη να διαδίδονται ανάµεσα στις ιστοσελίδες µέχρι

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ AM: Δοµές Δεδοµένων Πτυχιακή Εξεταστική Ιούλιος 2014 Διδάσκων : Ευάγγελος Μαρκάκης 09.07.2014 ΥΠΟΓΡΑΦΗ ΕΠΟΠΤΗ: Διάρκεια εξέτασης : 2 ώρες

Διαβάστε περισσότερα

Διαδικτυακές Εφαρμογές Ενότητα 1: JPA

Διαδικτυακές Εφαρμογές Ενότητα 1: JPA Διαδικτυακές Εφαρμογές Ενότητα 1: JPA Μιχάλας Άγγελος Βούρκας Δημήτριος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

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

Σχεδιασμός Βάσεων Δεδομένων Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Σχεδιασμός Βάσεων Δεδομένων Εργαστήριο 4 Δρ. Βασιλική Κούφη Περιεχόμενα Υλοποίηση Βάσεως Δεδομένων Εκτέλεση ερωτημάτων SQL στην Βάση Δεδομένων BHMA 1. Σχεδιασμός

Διαβάστε περισσότερα

Postgress ΣΤΟΧΟΣ ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ. ΠΕΡΙΒΑΛΛΟΝ ΓΙΑ ΕΞΑΣΚΗΣΗ pgadmin ΥΠΟΒΑΘΡΟ. Συναρτήσεις στην PostgreSQL. 1. Γενικά

Postgress ΣΤΟΧΟΣ ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ. ΠΕΡΙΒΑΛΛΟΝ ΓΙΑ ΕΞΑΣΚΗΣΗ pgadmin ΥΠΟΒΑΘΡΟ. Συναρτήσεις στην PostgreSQL. 1. Γενικά ΣΤΟΧΟΣ Postgress Το 9ο εργαστήριο εισάγει τον/ην φοιτητή/τρια στη χρήση και προγραµµατισµό συναρτήσεων στην PostgreSQL. ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ Η σχετική ύλη του βιβλίου του µαθήµατος (διαφάνειες και

Διαβάστε περισσότερα

Αναζήτηση στον Ιστό. Πληκτρολόγηση του URL: στο πλαίσιο αναζήτησης του Mozilla Firefox. Enter ή κλικ στο Αναζήτηση

Αναζήτηση στον Ιστό. Πληκτρολόγηση του URL:  στο πλαίσιο αναζήτησης του Mozilla Firefox. Enter ή κλικ στο Αναζήτηση Αναζήτηση στον Ιστό Χρήση μιας μηχανής αναζήτησης Επιλογή συγκεκριμένης μηχανής αναζήτησης Είναι συχνό το φαινόμενο να θέλει ο χρήστης να εντοπίσει πληροφορίες στο διαδίκτυο και να μην ξέρει που να κοιτάξει.

Διαβάστε περισσότερα

Πληροφοριακά Συστήµατα

Πληροφοριακά Συστήµατα Nell Dale John Lewis Chapter 12 Πληροφοριακά Συστήµατα Στόχοι Ενότητας Η κατανόηση της έννοιας «Πληροφοριακό Σύστηµα» Επεξήγηση της οργάνωσης λογιστικών φύλλων (spreadsheets) Επεξήγηση της ανάλυσης δεδοµένων

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Διαδικτυακό σύστημα διαχείρισης αιτήσεων για μεταπτυχιακό

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Διαδικτυακό σύστημα διαχείρισης αιτήσεων για μεταπτυχιακό ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ: Διαδικτυακό σύστημα διαχείρισης αιτήσεων για μεταπτυχιακό ΠΑΠΑΔΟΠΟΥΛΟΣ ΔΗΜΗΤΡΙΟΣ, Α.Μ.: 56/05 Υπεύθυνη Καθηγήτρια: Σατρατζέμη Μαρία, Καθηγήτρια Εξεταστική

Διαβάστε περισσότερα

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

1 ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΑΣ ΓΕΩΠΟΝΙΑΣ - ΤΜΗΜΑ ΦΥΤΙΚΗΣ ΠΑΡΑΓΩΓΗΣ 1 2 Περιεχόμενα 1. Εισαγωγή... 5 2. Επεξήγηση των εργαλείων που χρησιμοποιήθηκαν για την δημιουργία της ιστοσελίδας... 6 2.1 Γλώσσα προγραμματισμού ΗΤML για την δημιουργία της Ιστοσελίδας... 6 2.2 Γλώσσα

Διαβάστε περισσότερα

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Γενικά Η αρχιτεκτονική ανάπτυξης τους πληροφοριακού συστήµατος Γραµµατεία 2000 υποσύστηµα διαχείρισης προσωπικού

Διαβάστε περισσότερα

Α. Ερωτήσεις Ανάπτυξης

Α. Ερωτήσεις Ανάπτυξης οµηµένος Προγραµµατισµός-Κεφάλαιο 7 Σελίδα 1 α ό 10 ΕΝΟΤΗΤΑ ΙΙΙ (ΠΡΟΓΡΑΜΜΑΤΑ) ΚΕΦΑΛΑΙΟ 7: Είδη, Τεχνικές και Περιβάλλοντα Προγραµµατισµού Α. Ερωτήσεις Ανάπτυξης 1. Τι ονοµάζουµε γλώσσα προγραµµατισµού;

Διαβάστε περισσότερα

Προγραμματισμός ΙI (Θ)

Προγραμματισμός ΙI (Θ) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2017 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017

Διαβάστε περισσότερα

Εφαρµογή: Σύστηµα ιαχείρισης ιαδικτυακού Περίπτερου / Ιστοσελίδας στον διαδικτυακό τόπο kalliergea.gr

Εφαρµογή: Σύστηµα ιαχείρισης ιαδικτυακού Περίπτερου / Ιστοσελίδας στον διαδικτυακό τόπο kalliergea.gr ..χτίζουµε την ιστοσελίδα σας στο Internet www.kalliergea.gr Λάουρα Π. Καζακράντε «Καλλιεργαία» Πληροφορική - Internet - ιαφήµιση - Μεταφράσεις Τηλ.: 211 0104925, 695 6118589 Email: info@kalliergea.gr

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΡΑΣΤΙΚΗΣ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΕΞΥΠΗΡΕΤΗΣΗ ΑΣΘΕΝΩΝ ΣΥΜΒΕΒΛΗΜΕΝΟΥΣ ΜΕ ΤΟΝ Ε.Ο.Π.Υ.

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΡΑΣΤΙΚΗΣ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΕΞΥΠΗΡΕΤΗΣΗ ΑΣΘΕΝΩΝ ΣΥΜΒΕΒΛΗΜΕΝΟΥΣ ΜΕ ΤΟΝ Ε.Ο.Π.Υ. Τ.Ε.Ι ΚΑΒΑΛΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΔΙΑΔΡΑΣΤΙΚΗΣ ΔΙΑΔΙΚΤΥΑΚΗΣ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΕΞΥΠΗΡΕΤΗΣΗ ΑΣΘΕΝΩΝ» ΟΝΟΜΑΤΕΠΩΝΥΜΑ ΣΠΟΥΔΑΣΤΩΝ : ~ΔΕΛΗΓΙΑΝΝΗ ΚΥΡΙΑΚΗ, 1925~

Διαβάστε περισσότερα

11/4/2014 ΤΕΙ Ιονίων Νήσων Πλατφόρµα Ασύγχρονησ Τηλεκπαίδευσησ eclass s ηµιο ι υρ υ γ ρ ία ί Μ αθήµατο τ σ 1

11/4/2014 ΤΕΙ Ιονίων Νήσων Πλατφόρµα Ασύγχρονησ Τηλεκπαίδευσησ eclass s ηµιο ι υρ υ γ ρ ία ί Μ αθήµατο τ σ 1 ΤΕΙ Ιονίων Νήσων Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης eclass ηµιουργία Μαθήµατος 1 Η ηµιουργία Μαθήµατος είναι η πιο σηµαντική ενέργεια του χρήστη Εκπαιδευτή στην πλατφόρµα. Ειδικότερα, για να δηµιουργήσετε

Διαβάστε περισσότερα

Οικονοµικό Πανεπιστήµιο Αθηνών. Τµήµα Πληροφορικής. Φθινοπωρινό Εξάµηνο 2015. Δοµές Δεδοµένων - Εργασία 2. Διδάσκων: E. Μαρκάκης

Οικονοµικό Πανεπιστήµιο Αθηνών. Τµήµα Πληροφορικής. Φθινοπωρινό Εξάµηνο 2015. Δοµές Δεδοµένων - Εργασία 2. Διδάσκων: E. Μαρκάκης Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο 2015 Δοµές Δεδοµένων - Εργασία 2 Διδάσκων: E. Μαρκάκης Ταξινόµηση και Ουρές Προτεραιότητας Σκοπός της 2 ης εργασίας είναι η εξοικείωση

Διαβάστε περισσότερα

MySQL stored procedures

MySQL stored procedures MySQL stored procedures Δημήτρης Σουραβλιάς Δομή παρουσίασης Εισαγωγή Δημιουργία μιας απλής stored procedure Μεταβλητές Παράμετροι Ροή ελέγχου Cursors 2 Εισαγωγή Μια stored procedure: είναι ένα τμήμα προγράμματος

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ της Πλατφόρμας Τηλεκατάρτισης ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή...2 2. Αρχική σελίδα, Εισαγωγή & Περιβάλλον Συστήματος...3 2.1. Αρχική σελίδα εισαγωγής...3 2.2. Εισαγωγή στην Πλατφόρμα Τηλε-κατάρτισης...4

Διαβάστε περισσότερα

Μια καλή επιλογή θα ήταν www.epipla-onomasas.gr (χωρίζοντας τις λέξεις με παύλα -) ή

Μια καλή επιλογή θα ήταν www.epipla-onomasas.gr (χωρίζοντας τις λέξεις με παύλα -) ή Τι είναι ένα CMS CMS ή Σύστημα Διαχείρισης Περιεχομένου (Content Management System) ονομάζουμε ένα λογισμικό που μας βοηθά να ελέγχουμε και να διαχειριζόμαστε έναν ιστότοπο δημόσιας ή περιορισμένης πρόσβασης.

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΤΡΙΤΟ Foreign key, Index, DML Ερωτήµατα Γιώργος Μαρκοµανώλης Περιεχόµενα Foreign Key... 1 Index... 4 DML Ερωτήµατα... 6 INSERT...

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Στρατηγικό Σχέδιο Για τη Βιώσιµη Ανάπτυξη της Θεσσαλονίκης (ΣΣΒΑΘ) 1 η Ενδιάµεση Έκθεση 3. ηµιουργία και Λειτουργία Web site

Στρατηγικό Σχέδιο Για τη Βιώσιµη Ανάπτυξη της Θεσσαλονίκης (ΣΣΒΑΘ) 1 η Ενδιάµεση Έκθεση 3. ηµιουργία και Λειτουργία Web site Στρατηγικό Σχέδιο Για τη Βιώσιµη Ανάπτυξη της Θεσσαλονίκης (ΣΣΒΑΘ) 1 η Ενδιάµεση Έκθεση 3. ηµιουργία και Λειτουργία Web site Θεσσαλονίκη 6/12/2001 Βασίλης Φούρκας, ΕΜΧΑ Η δηµιουργία και λειτουργία ενός

Διαβάστε περισσότερα

Μπορείτε τα δείτε βιντεάκι με τη διαδικασία εδώ: http://www.greektuts.net/greek-in-joomla/

Μπορείτε τα δείτε βιντεάκι με τη διαδικασία εδώ: http://www.greektuts.net/greek-in-joomla/ 1) Εμφάνιση ιστοσελίδας Ανοίγουμε το πρόγραμμα πλοήγησης (Firefox, Chrome, Internet Explorer κτλ) και στη γραμμή διευθύνσεων πληκτρολογούμε τη διεύθυνση http://localhost ή http://127.0.0.1. Αν δεν βλέπουμε

Διαβάστε περισσότερα

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

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΟΜΕΑΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ, ΠΛΗΡΟΦΟΡΙΚΗΣ & ΙΚΤΥΩΝ Εργ. Τεχνολογίας Λογισμικού & Υπηρεσιών S 2 ELab Π Τ Υ Χ Ι Α

Διαβάστε περισσότερα

Οδηγός σωστής επικοιωνίας για υλοποίηση project site eshop

Οδηγός σωστής επικοιωνίας για υλοποίηση project site eshop Οδηγός σωστής επικοιωνίας για υλοποίηση project site eshop «Δουλεύω Ηλεκτρονικά, Δουλεύω Γρήγορα και με Ασφάλεια - by e-base.gr» Web : www.e-base.gr E-mail : support@e-base.gr Facebook : Like Παρακάτω

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΥΠΟΔΟΜΩΝ ΑΝΟΙΚΤΗΣ ΠΡΟΣΒΑΣΗΣ ΙΔΡΥΜΑΤΙΚΟ ΑΠΟΘΕΤΗΡΙΟ «ΟΛΥΜΠΙΑΣ» Διαλειτουργικότητα Ιδρυματικών Αποθετηρίων

ΑΝΑΠΤΥΞΗ ΥΠΟΔΟΜΩΝ ΑΝΟΙΚΤΗΣ ΠΡΟΣΒΑΣΗΣ ΙΔΡΥΜΑΤΙΚΟ ΑΠΟΘΕΤΗΡΙΟ «ΟΛΥΜΠΙΑΣ» Διαλειτουργικότητα Ιδρυματικών Αποθετηρίων ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΑΠΤΥΞΗ ΥΠΟΔΟΜΩΝ ΑΝΟΙΚΤΗΣ ΠΡΟΣΒΑΣΗΣ ΙΔΡΥΜΑΤΙΚΟ ΑΠΟΘΕΤΗΡΙΟ «ΟΛΥΜΠΙΑΣ» Διαλειτουργικότητα Ιδρυματικών Αποθετηρίων Δημητριάδης Σάββας Πληροφορικός, MSc. Συνεργάτης Έργου Το Ιδρυματικό

Διαβάστε περισσότερα

Αναφορά εργασιών για το τρίμηνο Δεκέμβριος 2012 Φεβρουάριος 2013 Όνομα : Μπελούλη Αγάθη

Αναφορά εργασιών για το τρίμηνο Δεκέμβριος 2012 Φεβρουάριος 2013 Όνομα : Μπελούλη Αγάθη Στο πλαίσιο της πράξης «Αναβάθμιση και Εμπλουτισμός των Ψηφιακών Υπηρεσιών της Βιβλιοθήκης του Παντείου Πανεπιστημίου». Η Πράξη συγχρηματοδοτείται από το Ευρωπαϊκό Ταμείο Περιφερειακής Ανάπτυξης (ΕΤΠΑ).

Διαβάστε περισσότερα

Το γεγονός ότι αποτελεί λογισµικό ανοικτού κώδικα το καθιστά αρκετά ευέλικτο σε συνεχείς αλλαγές και βελτιώσεις. Υπάρχει µια πληθώρα χρηστών που το χρ

Το γεγονός ότι αποτελεί λογισµικό ανοικτού κώδικα το καθιστά αρκετά ευέλικτο σε συνεχείς αλλαγές και βελτιώσεις. Υπάρχει µια πληθώρα χρηστών που το χρ ΤΕΙ Ιονίων Νήσων Άλλες Πλατφόρµες Ασύγχρονης Τηλεκπαίδευσης εκτός του e-class Είναι ένα πακέτο λογισµικού για διεξαγωγή ηλεκτρονικών µαθηµάτων µέσω διαδικτύου, το οποίο προσφέρει ολοκληρωµένες Υπηρεσίες

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙ ΙΟ ΧΡΗΣΗΣ. Πρόσβαση στην Καταγραφή και Εγχειρίδιο Χρήσης Εφαρµογών για ιευθύνσεις και Γραφεία Εκπαίδευσης

ΕΓΧΕΙΡΙ ΙΟ ΧΡΗΣΗΣ. Πρόσβαση στην Καταγραφή και Εγχειρίδιο Χρήσης Εφαρµογών για ιευθύνσεις και Γραφεία Εκπαίδευσης ΕΓΧΕΙΡΙ ΙΟ ΧΡΗΣΗΣ Πρόσβαση στην Καταγραφή και Εγχειρίδιο Χρήσης Εφαρµογών για ιευθύνσεις και Γραφεία Εκπαίδευσης ΠΕΡΙΕΧΌΜΕΝΑ Περιεχόµενα Περιεχόµενα... - 1 - Εισαγωγή... - 2 - Σηµείο πρόσβασης και αναγνώριση

Διαβάστε περισσότερα

Η χρήση του MOODLE από την οπτική γωνία του ιαχειριστή

Η χρήση του MOODLE από την οπτική γωνία του ιαχειριστή Ανοικτή και Εξ Αποστάσεως Εκπαίδευση Χρησιµοποιώντας το Εκπαιδευτικό Περιβάλλον του MOODLE. Open and Distance Learning Using MOODLE Learning Environment Αθανάσιος Ι. Μάργαρης, Ευθύµιος. Κότσιαλος Πανεπιστήµιο

Διαβάστε περισσότερα

ιπλωµατική εργασία: Νικόλαος Ματάνας Επιβλέπων Καθηγήτρια: Μπούσιου έσποινα

ιπλωµατική εργασία: Νικόλαος Ματάνας Επιβλέπων Καθηγήτρια: Μπούσιου έσποινα ιπλωµατική εργασία: Νικόλαος Ματάνας Επιβλέπων Καθηγήτρια: Μπούσιου έσποινα ΤµήµαΕφαρµοσµένης Πληροφορικής Πανεπιστήµιο Μακεδονίας Θεσσαλονίκη Ιούνιος 2006 εισαγωγικού µαθήµατος προγραµµατισµού υπολογιστών.

Διαβάστε περισσότερα

1. ΕΙΣΑΓΩΓΗ 2. ΠΕΡΙΓΡΑΦΗ

1. ΕΙΣΑΓΩΓΗ 2. ΠΕΡΙΓΡΑΦΗ 1. ΕΙΣΑΓΩΓΗ Το πακέτο λογισµικού AuctionDesigner είναι ένα από τα πολλά πακέτα που έχουν σχεδιαστεί και µπορεί να παραγγείλει κανείς µέσω του Internet µε σκοπό να αναπτύξει εφαρµογές ηλεκτρονικού εµπορίου.

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 10 ΟΥ ΚΕΦΑΛΑΙΟΥ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ 1. Πως ορίζεται ο τμηματικός προγραμματισμός; Τμηματικός προγραμματισμός

Διαβάστε περισσότερα

Πλοήγηση και Αναζήτηση

Πλοήγηση και Αναζήτηση Πλοήγηση και Αναζήτηση Περιήγηση Το Eprints παρέχει πολλούς διαφορετικούς τρόπους να επιμεριστεί το καταθετήριο σε διαφορετικές συλλογές και να προσεγγίζεται το περιεχόμενό του από διαφορετικές οπτικές

Διαβάστε περισσότερα

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

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ ΘΕΣΣΑΛΟΝΙΚΗ, 2016 ΕΙΣΑΓΩΓΗ Μια διαδικτυακή υπηρεσία μπορεί να περιγραφεί απλά σαν μια οποιαδήποτε

Διαβάστε περισσότερα

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Τρόπος Διεξαγωγής #1 Ύλη (4 Ενότητες) 1. Ανάλυση Απαιτήσεων - Σχεδιασμός Βάσης Δεδομένων 2. Δημιουργία βάσης a)

Διαβάστε περισσότερα

ΔΗ Μ Ι Ο ΥΡ Γ Ι Α W I K I με τ η χρήση τ η ς υπ ηρεσίας h t t p : /www.wik id ot.com /

ΔΗ Μ Ι Ο ΥΡ Γ Ι Α W I K I με τ η χρήση τ η ς υπ ηρεσίας h t t p : /www.wik id ot.com / ΔΗ Μ Ι Ο ΥΡ Γ Ι Α W I K I με τ η χρήση τ η ς υπ ηρεσίας h t t p : /www.wik id ot.com / 1. Τι είναι το wikidot Το wikidot είναι ένας δικτυακός τόπος στον οποίο κάθε χρήστης έχει το δικαίωμα να δημιουργήσει

Διαβάστε περισσότερα

Βασικά ζητήματα μιας βάσης δεδομένων

Βασικά ζητήματα μιας βάσης δεδομένων Τριαντάφυλλος Πριμηκύρης* Βασικά ζητήματα μιας βάσης δεδομένων Τι είναι μια βάση δεδομένων; Ας ξεκινήσουμε με κάτι πολύ απλό! Όλοι έχετε έναν τηλεφωνικό κατάλογο. Ο κατάλογος αυτός είναι μια χειροκίνητη

Διαβάστε περισσότερα

Οδηγίες Χρήσης Πλατφόρμας Ασύγχρονης Τηλεκπαίδευσης (Moodle) του Τμήματος ΔΕΤ

Οδηγίες Χρήσης Πλατφόρμας Ασύγχρονης Τηλεκπαίδευσης (Moodle) του Τμήματος ΔΕΤ Οδηγίες Χρήσης Πλατφόρμας Ασύγχρονης Τηλεκπαίδευσης (Moodle) του Τμήματος ΔΕΤ -Για τους Φοιτητές- Έκδοση 1.2 Οκτώβριος 2015 Υπεύθυνος Σύνταξης: Χρήστος Λάζαρης (lazaris@aueb.gr) Πίνακας Περιεχομένων Εισαγωγή...

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ AM: Δοµές Δεδοµένων Εξεταστική Ιανουαρίου 2014 Διδάσκων : Ευάγγελος Μαρκάκης 20.01.2014 ΥΠΟΓΡΑΦΗ ΕΠΟΠΤΗ: Διάρκεια εξέτασης : 2 ώρες και

Διαβάστε περισσότερα

Δυναμικές Ιστοσελίδες στο Πανελλήνιο Σχολικό Δίκτυο

Δυναμικές Ιστοσελίδες στο Πανελλήνιο Σχολικό Δίκτυο Δυναμικές Ιστοσελίδες στο Πανελλήνιο Σχολικό Δίκτυο Δρ. Χρήστος Όροβας Τεχνικός Υπεύθυνος 1 Διαδικασία «Φόρτωσης» μιας Ιστοσελίδας Internet Explorer, Mozilla, Chrome, κτλ HTTP Server ΠΣΔ Αίτημα για επικοινωνία

Διαβάστε περισσότερα

ΑΣΚΗΣΗ. Δημιουργία Ευρετηρίων Συλλογής Κειμένων

ΑΣΚΗΣΗ. Δημιουργία Ευρετηρίων Συλλογής Κειμένων Γλωσσική Τεχνολογία Ακαδημαϊκό Έτος 2011-2012 Ημερομηνία Παράδοσης: Στην εξέταση του μαθήματος ΑΣΚΗΣΗ Δημιουργία Ευρετηρίων Συλλογής Κειμένων Σκοπός της άσκησης είναι η υλοποίηση ενός συστήματος επεξεργασίας

Διαβάστε περισσότερα

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Nα κατασκευάσουν πίνακες από δεδομένα. Να κατασκευάσουν συναρτήσεις με πίνακες. Να κάνουν χρήση

Διαβάστε περισσότερα

Διαδικασία Χρήσης Module Αναλυτικής Λογιστικής

Διαδικασία Χρήσης Module Αναλυτικής Λογιστικής Διαδικασία Χρήσης Module Αναλυτικής Λογιστικής 1 Περίληψη Με την Αναλυτική Λογιστική πραγματοποιείται η παρακολούθηση όλου του κυκλώματος και η ενημέρωση της Αναλυτικής Λογιστικής από την εφαρμογή Hyper

Διαβάστε περισσότερα

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που 7.7 Πρωτόκολλο ARP 1 ύο είδη διευθύνσεων: MAC - IP Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που µπορεί

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Stored procedures, Exceptions, ιακιώµατα Γιώργος Μαρκοµανώλης Περιεχόµενα Stored Procedures... 1 Exceptions... 1 Εντολή

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΞΑΜΗΝΟ Η ΟΝΟΜΑΤΕΠΩΝΥΜΟ ΦΟΙΤΗΤΗ : ΜΟΣΧΟΥΛΑ ΟΛΓΑ ΑΡΙΘΜΟΣ ΜΗΤΡΩΟΥ : 30/02 ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ : ΥΛΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΟΣ ΙΑΧΕΙΡΙΣΗΣ ΣΥΝΕ ΡΙΩΝ ΜΕ ΧΡΗΣΗ

Διαβάστε περισσότερα

Διαχείριση Έργων Πληροφορικής Εργαστήριο

Διαχείριση Έργων Πληροφορικής Εργαστήριο Διαχείριση Έργων Πληροφορικής Εργαστήριο «Εισαγωγή στο MS Project- Διάγραμμα Gantt» Μ.Τσικνάκης, Ρ.Χατζάκη Ε. Μανιαδή, Ά. Μαριδάκη 1. Εισαγωγή στο Microsoft Project To λογισμικό διαχείρισης έργων MS Project

Διαβάστε περισσότερα

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Τρόπος Διεξαγωγής #1 Ύλη (4 Ενότητες) 1. Ανάλυση Απαιτήσεων -Σχεδιασμός Βάσης Δεδομένων 2. Δημιουργία βάσης a) Create

Διαβάστε περισσότερα

Περιεχόμενα. Δημιουργία σύνδεσης... 27 5. ΤΙ ΕΙΝΑΙ ΙΣΤΟΣΕΛΙΔΕΣ ΚΑΙ ΤΙ ΤΟΠΟΘΕΣΙΕΣ ΙΣΤΟΥ... 37. Γνωριμία με μια ιστοσελίδα:... 38

Περιεχόμενα. Δημιουργία σύνδεσης... 27 5. ΤΙ ΕΙΝΑΙ ΙΣΤΟΣΕΛΙΔΕΣ ΚΑΙ ΤΙ ΤΟΠΟΘΕΣΙΕΣ ΙΣΤΟΥ... 37. Γνωριμία με μια ιστοσελίδα:... 38 Περιεχόμενα ΠΡΟΛΟΓΟΣ... 11 ΔΙΑΔΙΚΤΥΟ... 13 1. ΙΣΤΟΡΙΑ ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ... 15 2. ΤΙ ΕΙΝΑΙ ΤΟ ΔΙΑΔΙΚΤΥΟ INTERNET;... 16 3. ΤΙ ΠΡΟΣΦΕΡΕΙ ΤΟ ΔΙΑΔΙΚΤΥΟ, ΤΙ ΜΠΟΡΕΙ ΝΑ ΒΡΕΙ ΚΑΝΕΙΣ... 19 4. ΤΙ ΑΠΑΙΤΕΙΤΑΙ ΓΙΑ ΝΑ

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά Για την STUDIO KOSTA BODA ILLUM Χανίων Πέµπτη, 9 Φεβρουαρίου 2012 Για την εταιρεία ACTS : Παπαγεωργίου

Διαβάστε περισσότερα