You are on page 1of 132

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ

ΣΧΟΛΗ ΑΝΘΡΩΠΙΣΤΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ


ΕΠΙΣΤΗΜΩΝ
ΠΑΙΔΑΓΩΓΙΚΟ ΤΜΗΜΑ ΔΗΜΟΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ

Διδασκαλία της ελληνικής ως δεύτερης ή


ξένης γλώσσας μέσω ειδικά σχεδιασμένου
εκπαιδευτικού λογισμικού

ΔΙΟΝΥΣΙΟΣ Π. ΑΡΚΑΔΙΑΝΟΣ (Α.Μ. 237)


Επιβλέπων Καθηγητής: ΑΝΝΑ ΙΟΡΔΑΝΙΔΟΥ

ΠΑΤΡΑ 2013

1
Περίληψη
Η εξέλιξη των υπολογιστών στις τελευταίες δεκαετίες και η εξάπλωση της
χρήσης τους οδήγησε και στην είσοδο τους στο χώρο της εκπαίδευσης. Η παρούσα
εργασία διερευνά τον τρόπο και τα χαρακτηριστικά της εμπλοκής τους στη διδακτική
μιας γλώσσας, ως δεύτερης ή ξένης, και προτείνει ένα αλγοριθμικό μοντέλο που
σκοπό έχει την αξιολόγηση της γραμματικότητας απλών προτάσεων της νέας
ελληνικής και τον εντοπισμό συνήθων λαθών που γίνονται από μη φυσικόυς ομιλητές
κατά το σχηματισμό τους.
Ο τομέας της Διδασκαλίας της Γλώσσας Υποβοηθούμενης από Υπολογιστή
(Computer Assisted Language Learning – CALL) είναι σχετικά καινούριος, γεγονός
εντελώς δικαιολογημένο, καθώς είναι στενά συνδεδεμένο με τους ηλεκτρονικούς
υπολογιστές, η χρήση των οποίων εξαπλώθηκε στις τελευταίες δεκαετίες. Πρόκειται
για την έρευνα, μελέτη και ανάπτυξη εφαρμογών διδασκαλίας μιας γλώσσας, αλλά
και καθορισμό των παιδαγωγικών παραμέτρων που πρέπει να ισχύουν για την
αποδοτική χρησιμοποίησή τους στα πλαίσια της διδακτικής πρακτικής. Οι πρώτες
εφαρμογές CALL τοποθετούνται κατά τη διάρκεια της ψυχροπολεμικής περιόδου,
και είχαν ως σκοπό την εκπαίδευση αμερικανών πρακτόρων στη ρωσική γλώσσα. Η
εξελικτική πορεία που ακολούθησε η CALL μπορεί να διακριθεί σε τρεις περιόδους,
κάθε μια από τις οποίες φέρει τη σφραγίδα της επικρατούσας θεωρίας ψυχολογίας
και, κατά συνέπεια, τα χαρακτηριστικά της: η Συμπεριφοριστική, η Επικοινωνιακή
και η Ενοποιητική CALL. Η τελευταία, που αποτελεί και την παρούσα φάση, τονίζει
ακόμα περισσότερο τον επικοινωνιακό ρόλο του γλωσσικού συστήματος, κυρίως στις
δραστηριότητες που χρησιμοποιεί, αλλά ταυτόχρονα εισάγει και ενισχύει το ρόλο των
αλληλεπιδράσεων μεταξύ των μαθητών κατά τη διάρκεια της διδασκαλίας.
Τα λογισμικά που έχουν αναπτυχθεί πάνω στη διδασκαλία της γλώσσας
στηρίζονται σε θεωρητικά πλαίσια, τα οποία εμφανίζουν τα χαρακτηριστικά
αναλόγων παιδαγωγικών θεωριών που έχουν αναπτυχθεί. Η Διαδραστική Προσέγγιση
περιλαμβάνει δραστηριότητες που εμπλέκουν το μαθητή σε συγκεκριμένα
επικοινωνιακά περιβάλλοντα, στα οποία πρέπει να δράσει μέσω του γλωσσικού
συστήματος και να εκπληρώσει συγκεκριμένους στόχους. Η Κοινωνικο-πολιτισμική
Προσέγγιση δίνει έμφαση στο ρόλο που έχει η συνεργασία και η αλληλεπίδραση
ανάμεσα στους μαθητές (κοινωνική διάσταση της μάθησης) κατά τη διάρκεια
εκτέλεσης διαφόρων δραστηριοτήτων. Η Ενεργητική Προσέγγιση τονίζει τη σημασία
που έχει η καταγραφή όλων των παραγόντων που εμπλέκονται κατά την ενασχόληση
των μαθητών με μια δραστηριότητα, προκειμένου να καθοριστεί ακριβώς τόσο ο
τρόπος αλληλεπίδρασης με αυτή όσο και η δυνατότητα παραμετροποίησής της.
Τέλος, ο Κονστρουκτιβισμός επιδιώκει την ανάπτυξη εφαρμογών οι οποίες θα
ενθαρρύνουν τη «γνωστική ανακάλυψη» από τους ίδιους τους χρήστες, οι οποίοι θα
αλληλεπιδρούν με άλλους μαθητές και, επιπλέον, θα λαμβάνουν την καθοδήγηση και
τον γνωστικό προσανατολισμό είτε από τον εκπαιδευτικό, είτε από το ίδιο το
πρόγραμμα. Ανάλογες θεωρητικές καταβολές έχουν και οι τάσεις που επικρατούν στο
χώρο της διδασκαλίας, όπως αυτή διαμορφώνεται με την είσοδο των υπολογιστών
στην παιδαγωγική διαδικασία. Υπάρχει μια στροφή στη διδασκαλία μέσω
συγκεκριμένων επικοινωνιακών καταστάσεων, όπου ο μαθητής καλείται να
συνεργαστεί με άλλους, να εκπληρώσει κάποιους στόχους και τελικά να οικοδομήσει
τη γλωσσική του ικανότητα.

2
Οι εφαρμογές CALL παρουσιάζουν κάποια χαρακτηριστικά, τα οποία τις
διαφοροποιούν μεταξύ τους και ταυτόχρονα καθορίζουν την αποδοτικότητά τους.
Καταρχήν, αφορά στην ποικιλία των δραστηριοτήτων που χρησιμοποιούν, η οποία
μπορεί να έχει άμεση επίδραση στο ενδιαφέρον που εκδηλώνει ο χρήστης. Ένα άλλο
χαρακτηριστικό είναι η δυνατότητα παραμετροποίησης των δραστηριοτήτων που
δίνεται είτε στον εκπαιδευτικό, είτε στο χρήστη. Σημαντικά στοιχεία ενός
προγράμματος είναι οι δυνατότητες αξιολόγησης των επιδόσεων που έχει, καθώς και
το είδος και η ποιότητα ανατροφοδότησης που παρέχει στο χρήστη, προκειμένου να
τον βοηθήσει να βελτιώσει τη γλωσσική του ικανότητα. Τέλος, τα δευτερεύοντα
χαρακτηριστικά που χρησιμοποιούνται στην παρουσίαση μιας εφαρμογής (γραφικά,
ήχος, δυνατότητες πολυμέσων) μπορούν να έχουν άμεσο αντίκτυπο και στην
ποιότητα των περιεχόμενων δραστηριοτήτων.
Ο ρόλος του δασκάλου μέσα σε μια τάξη CALL είναι ιδιαίτερα σημαντικός
και σε καμία περίπτωση δεν υποβαθμίζεται λόγω της ύπαρξης των εφαρμογών. Αυτός
θα επιλέξει το ενδεδειγμένο για τους διδακτικούς του στόχους λογισμικό και θα το
παραμετροποιήσει, ώστε να ανταποκρίνεται στις μαθησιακές ανάγκες των μαθητών.
Φυσικά, κάτι τέτοιο προϋποθέτει την εκπαίδευση των δασκάλων, τόσο σε ζητήματα
αξιολόγησης και επιλογής του κατάλληλου λογισμικού, όσο και στην πιο ενεργό
συμμετοχή στη δημιουργία ή τροποποίηση τέτοιων προγραμμάτων.
Η αποδοτικότητα και απρόσκοπτη λειτουργία του αλγορίθμου που
αναπτύχθηκε, αξιολογήθηκε με βάση τις επιδόσεις του πάνω σε συγκεκριμένους
αξιολογικούς άξονες που είχαν καθοριστεί. Οι άξονες αυτοί περιγράφονται με τη
μορφή ερευνητικών ερωτημάτων, τα οποία σκιαγραφούν την επιθυμητή συμπεριφορά
του προγράμματος σε διάφορες περιπτώσεις προτάσεων και λαθών. Πιο
συγκεκριμένα, η εφαρμογή θα πρέπει να αναγνωρίζει ορθές γραμματικά και
συντακτικά προτάσεις, να επισημαίνει λάθη ασυμφωνίας (σε γένος, αριθμό, πτώση,
πρόσωπο), καθώς και λάθη στις καταλήξεις των ρημάτων των προτάσεων που
εισάγονται.
Όσον αφορά το πρακτικό κομμάτι του παρόντος πονήματος, προκειμένου να
καταλήξουμε στην ανάπτυξη του τελικού προϊόντος, χρησιμοποιήθηκαν διάφορα
προγραμματιστικά εργαλεία και αλγοριθμικές μέθοδοι. Καταρχήν, η
προγραμματιστική πλατφόρμα πάνω στην οποία δημιουργήθηκε το λογισμικό είναι η
Visual Prolog version 7.3. Πρόκειται για μια γλώσσα προγραμματισμού που
παρουσιάζει πολλά πλεονεκτήματα, όπως το ότι διατίθεται δωρεάν για ερευνητικούς
σκοπούς και ότι ο τρόπος λειτουργίας της είναι ιδανικός για ανάπτυξη αλγορίθμων
επεξεργασίας προτάσεων σε φυσική γλώσσα. Επιπλέον, χρησιμοποιήθηκε η δενδρική
μορφή απεικόνισης δεδομένων για την αναπαράσταση των συντακτικών δομών των
προτάσεων, εκμεταλλευόμενοι τη θεωρία της ανάλυσης των προτάσεων σε φράσεις
και αυτών με τη σειρά τους σε μικρότερα δομικά στοιχεία, μέχρι να φτάσουμε στο
επίπεδο της λέξης. Μια ακόμη επιλογή για τον αλγόριθμο αφορά στην τεχνική
ανάλυσης της πρότασης που υιοθετείται. Πρόκειται για ανάλυση από κάτω προς τα
πάνω (bottom – up parsing), η οποία ξεκινάει από τα βασικά δομικά στοιχεία της
πρότασης (λέξεις) και βαθμιαία επιχειρεί τη σύνθεση περιπλοκότερων συντακτικών
δομών, έως ότου φτάσει σε μια ολοκληρωμένη πρόταση. Τέλος, ο γραμματικά
αποδεκτός συνδυασμός λεξημάτων για το σχηματισμό φράσεων, με την απαραίτητη
συμφωνία σε αριθμό, πτώση, γένος κ.α. εξασφαλίζεται με την ενσωμάτωση
μηχανισμού ενοποίησης χαρακτηριστικών (unification of features) στο πρόγραμμα.

3
Η μορφή του εν λόγω προγράμματος έχει διαμορφωθεί κατά τέτοιο τρόπο,
ούτως ώστε να είναι περισσότερο λειτουργική, τόσο κατά τη διάρκεια της ανάπτυξης,
όσο και σε διάφορες βελτιωτικές παρεμβάσεις. Η αρχιτεκτονική του αλγορίθμου
παρουσιάζεται ως ένα σύστημα συσκευών, κάθε μια από τις οποίες έχουν ξεχωριστή
λειτουργία. Η συσκευή εισόδου δεδομένων αναλαμβάνει την εισαγωγή των
προτάσεων, με συγκεκριμένη μορφή, μέσα στο σύστημα. Η γραμματική αναλαμβάνει
να αναγνωρίσει την ορθότητα των προτάσεων που εισάγονται στο σύστημα και να
αναγνωρίσει ενδεχόμενα λάθη που έχουν γίνει. Το λεξικό περιλαμβάνει τις εγγραφές
όλων των λέξεων που μπορούν να αναγνωριστούν από το πρόγραμμα. Ο
μορφολογικός αναλυτής διακρίνει το θέμα από την κατάληξη του ρήματος και
αποδίδει σε αυτό τα γραμματικά του χαρακτηριστικά (χρόνος, πρόσωπο, αριθμός). Η
συσκευή εξόδου αναλαμβάνει την εμφάνιση μηνυμάτων στο χρήστη, που τον
ενημερώνουν για ενδεχόμενα λάθη στην πρόταση που έγραψε. Όλα τα επιμέρους
τμήματα του αλγόριθμου συντονίζονται στη λειτουργία τους από ένα κεντρικό
στοιχείο κώδικα (main algorithm).
Η αξιολόγηση του προγράμματος έγινε σε δύο φάσεις: κατά τη διάρκεια της
ανάπτυξης (βελτιωτική αξιολόγηση) και μετά την ολοκλήρωσή της (τελική
αξιολόγηση. Ειδικότερα η τελική αξιολόγηση του αλγορίθμου έγινε σε δύο άξονες:
αξιολόγηση από τον ερευνητή και αξιολόγηση από τους χρήστες. Η πρώτη φάση
πραγματοποιήθηκε με εισαγωγή στοχευμένων προτάσεων στο σύστημα, προκειμένου
να διαπιστωθεί ότι συμπεριφέρεται με τον προβλεπόμενο τρόπο και η απόδοσή του
καλύπτει όλα τα κριτήρια που διατυπώθηκαν στα ερευνητικά ερωτήματα. Κατά τη
δεύτερη φάση της αξιολόγησης, συλλέχθηκαν 150 αυθεντικές προτάσεις από 15 μη
φυσικούς ομιλητές της ελληνικής, μέσω ενός έντυπου φύλλου εργασίας, στο οποίο
διατυπώνονταν συγκεκριμένες οδηγίες για τη δημιουργία των προτάσεων αυτών.
Έτσι δημιουργήθηκε μια «τράπεζα» αυθεντικών προτάσεων, οι οποίες εισήχθησαν
ατο πρόγραμμα και καταγράφηκαν τα αποτελέσματα της λειτουργίας του, ούτως
ώστε να αξιολογηθεί σε «πραγματικές» συνθήκες.
Από τα αποτελέσματα της αξιολογικής διαδικασίας προκύπτει ότι ο
αλγόριθμος λειτουργεί επαρκώς, χωρίς όμως να φτάνει σε πολύ υψηλά ποσοστά
αποδοτικότητας (74,5%). Αυτό, βέβαια, δικαιολογείται, καθώς αρκετές από τις
αυθεντικές προτάσεις που δημιουργήθηκαν περιείχαν λέξεις με λανθασμένη
ορθογραφία ή εκτός του λεξικού του προγράμματος. Το συγκεκριμένο γεγονός είχε
σαν άμεσο αποτέλεσμα να διακόπτεται η λειτουργία του αλγορίθμου, ο οποίος
αδυνατούσε να αναγνωρίσει αυτούς τους λεκτικούς τύπους, και να μη συνεχίζεται η
επεξεργασία των προτάσεων. Πάντως, σε περιπτώσεις όπου τηρούνταν οι
συγκεκριμένοι περιορισμοί (απλές προτάσεις, αποτελούμενες από λέξεις που
υπάρχουν εγγεγραμμένες στο λεξικό της εφαρμογής), η λειτουργία του λογισμικού
ήταν αλάνθαστη, τόσο στον καθορισμό της ορθότητας των προτάσεων, όσο και στην
αναγνώριση λαθών και του είδους τους (λάθη ασυμφωνίας ή κατάληξης των
ρημάτων).

4
Πίνακας Περιεχομένων

Περίληψη _____________________________________________________________ 2

Πίνακας Περιεχομένων __________________________________________________ 5

1. Εισαγωγή ___________________________________________________________ 7

1.1. Οι Υπολογιστές Στην Εκπαίδευση ____________________________________ 8


1.2. Σκοπός Της Εργασίας _____________________________________________ 10
1.3. Διάρθρωση Της Εργασίας __________________________________________ 11
2. Θεωρητικό Πλαίσιο __________________________________________________ 13

2.1. Εισαγωγή - Ορισμός ______________________________________________ 14


2.2. Ιστορική Αναδρομή _______________________________________________ 15
2.3. Θεωρητικές Προσεγγίσεις Πάνω Στην CALL ___________________________ 18
2.3.1. Θεωρητικές Προσεγγίσεις Για Το Περιεχόμενο Του Λογισμικού ______________________ 19
2.3.2. Θεωρητικές Προσεγγίσεις Για Τη Μορφή Της Διδασκαλίας __________________________ 23

2.4. Χαρακτηριστικά Ανάπτυξης Ενός Λογισμικού CALL _____________________ 25


2.5. Θεωρητικές Προσεγγίσεις Σχεδιασμού Λογισμικών CALL ________________ 30
2.6. Ο Δάσκαλος Σε Μια Τάξη CALL______________________________________ 33
2.7. Τεχνολογίες CALL ________________________________________________ 35
2.7.1. Συγγραφικά Εργαλεία (authoring tools) _________________________________________ 36
2.7.2. Συνομιλίες ________________________________________________________________ 37
2.7.3. Αναγνώριση Ομιλίας ________________________________________________________ 38
2.7.4. «Φορητή» Μάθηση _________________________________________________________ 40

2.8. Ερευνητικά Ερωτήματα ___________________________________________ 41


2.9. Επεξήγηση Συντομογραφιών Που Χρησιμοποιούνται __________________ 42
3. Μεθοδολογία _______________________________________________________ 43

3.1 Εργαλεία Ανάπτυξης ______________________________________________ 44


3.1.1. Η Γλώσσα Προγραμματισμού Visual Prolog ______________________________________ 44
3.1.2. Δενδρικές Μορφές Δεδομένων ________________________________________________ 46
3.1.3. Τεχνικές Κατάτμησης (Parsing Techniques) _______________________________________ 49
3.1.4. Προσέγγιση Ενοποίησης Χαρακτηριστικών (Unification-based Approach) ______________ 50

3.2 Μεθοδολογία Ανάπτυξης Του Λογισμικού_____________________________ 53


3.2.1 Συνοπτική Περιγραφή Της Αρχιτεκτονικής Του Προγράμματος _______________________ 54
3.2.2 Η Διαδικασία Εισαγωγής Των Δεδομένων ________________________________________ 57
3.2.3 Η Γραμματική ______________________________________________________________ 60
3.2.4 Το Λεξικό __________________________________________________________________ 65

3.3 Μεθοδολογία Αξιολόγησης _________________________________________ 68


3.3.1 Θεωρητική Τοποθέτηση Της Μεθοδολογίας ______________________________________ 69
3.3.2 Αναλυτική Παρουσίαση Της Μεθόδου Αξιολόγησης ________________________________ 73

4. Αξιολόγηση _________________________________________________________ 77
5
4.1. Περιορισμοί Του Λογισμικού _______________________________________ 78
4.2. Αξιολόγηση Από Τους Ερευνητές ____________________________________ 79
4.2.1 Χειρισμός Προτάσεων Με Λέξεις Εκτός Λεξιλογίου _________________________________ 80
4.2.2 Αναγνώριση Σωστών Γραμματικά Προτάσεων _____________________________________ 81
4.2.3 Αναγνώριση Γραμματικών Λαθών ______________________________________________ 82
4.2.4 Προβληματικές Περιπτώσεις __________________________________________________ 85

4.3. Αξιολόγηση Από Τους Χρήστες _____________________________________ 88


4.4. Συζήτηση _______________________________________________________ 93
5. Εν Κατακλείδι _______________________________________________________ 97

5.1. Γενικά Συμπεράσματα ____________________________________________ 98


5.2. Μελλοντικές Βελτιώσεις __________________________________________ 102
Βιβλιογραφία ________________________________________________________ 106

Παράρτημα __________________________________________________________ 109

6
Κεφάλαιο 1
Εισαγωγή

7
1.1 Οι Υπολογιστές Στην Εκπαίδευση
Στα τέλη της δεκαετίας του ‘70 και στις αρχές της δεκαετίας του ’80
σημειώθηκε μια σημαντική επιστημονική εξέλιξη, η οποία ουσιαστικά άλλαξε πολλές
εκφάνσεις της καθημερινότητας μας. Η εμφάνιση των μικροϋπολογιστών έδωσε τη
δυνατότητα στο ευρύτερο κοινό να έλθει σε επαφή με μια συσκευή, η οποία έως τότε
ήταν αποκλειστικό προνόμιο πανεπιστημιακών ιδρυμάτων και μεγάλων εταιριών.
Παράλληλα, η εξάπλωση τους προώθησε την ανάπτυξη εφαρμογών που παρέκκλιναν
από τη στενή επαγγελματική εξειδίκευση των πρώιμων προγραμμάτων και κάλυπταν
ανάγκες όπως η ψυχαγωγία, η ενημέρωση κ.α.

Μέσα σε αυτό το πλαίσιο ήταν θέμα χρόνου η εισαγωγή των υπολογιστών και
στο χώρο της εκπαίδευσης. Η αρχή πραγματοποιήθηκε με την ανάπτυξη κάποιων
εκπαιδευτικών εφαρμογών που κάλυπταν διάφορα επιστημονικά πεδία. Δειλά δειλά
οι υπολογιστές έκαναν την εμφάνιση τους και στη σχολική τάξη. Η χρησιμοποίηση
τους στην εκπαίδευση έδωσε το έναυσμα για τη διατύπωση διαφόρων παιδαγωγικών
θεωριών, που σκοπό είχαν να προτείνουν αποτελεσματικούς τρόπους ένταξης τους
στην παιδαγωγική πρακτική.

Η είσοδος των υπολογιστών στο χώρο της εκπαίδευσης δεν υπήρξε απλά το
αποτέλεσμα μιας τεχνολογικής τάσης, που προήγαγε τη χρησιμοποίησή τους σε
όλους τους τομείς της ανθρώπινης δραστηριότητας. Οι εξαιρετικές τους δυνατότητες,
κυρίως όσον αφορά στον τρόπο παρουσίασης των δεδομένων, με τα γραφικά, τα
συστήματα πολυμέσων και τη μεγάλη αποθηκευτική ικανότητα, τους καθιστούν
πολύτιμο εργαλείο για τον εκπαιδευτικό, ώστε να επιτύχει τους διδακτικούς του
στόχους. Παράλληλα, το περιβάλλον εργασίας που παρέχουν είναι θελκτικό για το
μαθητή, κεντρίζει το ενδιαφέρον του και τον παρακινεί να ασχοληθεί μαζί τους.
Εκτός αυτού, οι υπολογιστές καλλιεργούν στους μαθητές δεξιότητες, οι οποίες θα
φανούν εξαιρετικά χρήσιμες στη μελλοντική επαγγελματική τους απασχόληση.

Ιδιαίτερα στο χώρο της διδασκαλίας της γλώσσας, ο ρόλος του υπολογιστή
είναι εξαιρετικά σημαντικός τόσο για τον εκπαιδευτικό όσο και για το μαθητή.
Παρέχονται καινούργιες δυνατότητες επικοινωνίας, ακόμα και όταν μεσολαβεί
μεγάλη απόσταση ανάμεσα στους συνομιλητές, αναπαράγονται βίντεο και ηχητικά
αρχεία, βοηθώντας το μαθητή να έρθει σε επαφή με μεγάλο όγκο δεδομένων πάνω
στη γλώσσα που μελετάει. Επιπλέον, το διαδίκτυο περιέχει μια μεγάλη ποικιλία

8
αυθεντικών κειμένων σε πολλές διαφορετικές γλώσσες, γεγονός που αναδεικνύει
αρκετές χρηστικές πληροφορίες γύρω από τις διαφορετικές επικοινωνιακές
λειτουργίες του γλωσσικού συστήματος που βρίσκεται υπό εξέταση.

Τα διάφορα λογισμικά που έχουν αναπτυχθεί με σκοπό να χρησιμοποιηθούν


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

Η συνεχής βελτίωση και εξέλιξη των υπολογιστικών συστημάτων έφερε σαν


αποτέλεσμα μια τάση στην ανάπτυξη λογισμικών διδασκαλίας της γλώσσας, η οποία
αξίωνε την ενσωμάτωση ολοένα και περισσότερων χαρακτηριστικών (γραφικά,
πολυμέσα), τα οποία είχαν ως σκοπό περισσότερο τον εντυπωσιασμό των χρηστών
παρά την κάλυψη των αναγκών τους και την αυξημένη χρηστικότητα των
προγραμμάτων. Η συγκεκριμένη κατάσταση ανέδειξε την απουσία θεωρητικού
πλαισίου για την ανάπτυξη προγραμμάτων διδασκαλίας της γλώσσας. Το κενό αυτό
ανέλαβαν να καλύψουν αρκετοί ερευνητές του χώρου, οι οποίοι επιχείρησαν να
καθορίσουν τις προδιαγραφές δημιουργίας σχετικών εφαρμογών, λαμβάνοντας
υπόψη τους τις μαθησιακές ανάγκες των χρηστών στους οποίους απευθύνονται, αλλά
και τα βελτιωμένα τεχνικά μέσα που προέκυψαν ως αποτέλεσμα της τεχνολογικής
εξέλιξης στο χώρο της πληροφορικής.

Σημαντικότατη εξέλιξη στο πεδίο της τεχνολογίας υπολογιστών, η οποία


έμελλε να επηρεάσει και την ανάπτυξη εφαρμογών πάνω σε αυτούς, ήταν η εισαγωγή
αλγορίθμων τεχνητής νοημοσύνης (Artificial Intelligence-A.I.). Αυτό επέτρεψε τη
δημιουργία προγραμμάτων που αντιδρούν αυτόματα στην εισαγωγή δεδομένων από
το χρήστη, χωρίς τη μεσολάβηση κάποιας ανθρώπινης ευφυΐας (εκπαιδευτικός). Το
γεγονός αυτό είχε ως συνέπεια την ανάπτυξη προγραμμάτων στο χώρο της
διδασκαλίας μιας γλώσσας που εμπεριείχαν συστήματα αυτόματης διόρθωσης,
καταγραφή της προόδου των μαθητών, εμφάνιση προτεινόμενων δραστηριοτήτων για
τη βελτίωση των γλωσσικών τους ικανοτήτων κ.α. Πάντως, θα πρέπει να σημειωθεί
ότι, όση αυτονομία και αν κατακτήσουν τα συγκεκριμένα λογισμικά, ο εκπαιδευτικός
σε καμία περίπτωση δεν μπορεί να απαλειφθεί από τη μαθησιακή εξίσωση, καθώς

9
είναι μια δυναμική διαδικασία με συνεχώς μεταβαλλόμενες παραμέτρους, η οποία δεν
μπορεί να προβλεφθεί από τις συνθήκες που έχουν οριστεί στον αλγόριθμο μιας
εφαρμογής.

1.2 Σκοπός Της Εργασίας

Η χρησιμοποίηση των υπολογιστών με την ταυτόχρονη εγκατάσταση


σχετικών εφαρμογών για τη διδασκαλία μιας γλώσσας έχει ήδη αρχίσει να κάνει τα
πρώτα δειλά βήματα και στο ελληνικό εκπαιδευτικό σύστημα. Αν και τα
εξειδικευμένα προγράμματα διδασκαλίας της ελληνικής είναι περιορισμένα σε
αριθμό και δυνατότητες, κυρίως λόγω του μικρού αριθμού χρηστών του
συγκεκριμένου γλωσσικού συστήματος που καθιστά ασύμφορη την ανάπτυξη
εμπορικών εφαρμογών, αρκετοί εκπαιδευτικοί επιθυμούν να ενσωματώσουν τους
υπολογιστές στη διδασκαλία τους. Μάλιστα, εκπαιδευτικά λογισμικά για διάφορα
μαθήματα του αναλυτικού προγράμματος έχουν δημιουργηθεί υπό την αιγίδα του
Παιδαγωγικού Ινστιτούτου.

Εμπνευσμένο από τις ανωτέρω εξελίξεις στο ελληνικό εκπαιδευτικό σύστημα,


το παρόν πόνημα επιχειρεί να παρουσιάσει με τρόπο συστηματικό και ταυτόχρονα
κριτικό, τα δεδομένα της χρησιμοποίησης του υπολογιστή για τη διδασκαλία της
ελληνικής γλώσσας. Ο σκοπός του ουσιαστικά μπορεί να χωριστεί σε δύο σκέλη, ένα
θεωρητικό και ένα πρακτικό. Το θεωρητικό μέρος της εργασίας θα ασχοληθεί με την
καταγραφή των παιδαγωγικών θεωριών που εμπλέκουν τον υπολογιστή στη
μαθησιακή διαδικασία και θα παρουσιάσει ένα συγκεκριμένο πλαίσιο που σκιαγραφεί
τις παιδαγωγικές πρακτικές, όπως αυτές διαμορφώνονται με την εισαγωγή χρήσης
λογισμικών διδασκαλίας της γλώσσας.

Το πρακτικό μέρος της εργασίας επιδιώκει να χρησιμοποιήσει αποσπάσματα


της θεωρίας που έχει ήδη διατυπωθεί, προκειμένου να αναπτυχθεί ένα περιορισμένης
κλίμακας λογισμικό, το οποίο θα μπορούσε να χρησιμοποιηθεί στη διδασκαλία της
νέας ελληνικής. Έτσι, επιχειρείται από το σύνολο της εργασίας η γενικότερη σύνδεση
μεταξύ θεωρίας και πράξης με τελικό προϊόν έναν αλγόριθμο με συγκεκριμένο
εκπαιδευτικό προσανατολισμό.

10
1.3 Διάρθρωση Της Εργασίας

Προκειμένου να επιτευχθεί ο βασικός σκοπός του παρόντος πονήματος, όπως


αυτός έχει διατυπωθεί στην προηγούμενη ενότητα, η δομή της εργασίας θα πρέπει να
είναι τέτοια, ούτως ώστε να τον υπηρετεί και να καταλήγει στο ζητούμενο
αποτέλεσμα. Επομένως, το διπλό περιεχόμενο του εν λόγω σκοπού θα πρέπει να
αντικατοπτρίζεται και στην επιλογή των κεφαλαίων, που συνθέτουν την παρούσα
εργασία.

Μετά από τη συνοπτική εισαγωγή, που αναλαμβάνει να προετοιμάσει τον


αναγνώστη τόσο για το αντικείμενο της εργασίας όσο και για τον τρόπο προσέγγισης
του ερευνητικού ερωτήματος, ακολουθεί το κεφάλαιο που αναφέρεται στο θεωρητικό
πλαίσιο που καθορίζει τη μαθησιακή διαδικασία, όπως αυτή μεταβάλλεται με την
εισαγωγή εκπαιδευτικού λογισμικού για τη διδασκαλία της γλώσσας. Ύστερα από μια
απόπειρα ορισμού του επιστημονικού αντικειμένου και μια ιστορική αναδρομή, το
κεφάλαιο αναλαμβάνει να παρουσιάσει θεωρητικές τάσεις και προτάσεις για τη φύση
της διδακτικής πράξης, όπως αυτή μετασχηματίζεται με τη χρήση των υπολογιστών,
για το ρόλο του δασκάλου, αλλά και για το περιεχόμενο που πρέπει να έχουν τα
λογισμικά που θα χρησιμοποιηθούν. Το κεφάλαιο ολοκληρώνεται με την παράθεση
των ερευνητικών ερωτημάτων που έχουν τεθεί και τα οποία θα διερευνηθούν έως την
περάτωση της εργασίας.

Το τρίτο κεφάλαιο της εργασίας ουσιαστικά αποτελεί τη γέφυρα ανάμεσα στο


θεωρητικό και το πρακτικό μέρος. Πιο συγκεκριμένα, αναλαμβάνει να παρουσιάσει
μια σειρά θεωρητικών αλγοριθμικών εργαλείων και μεθόδων, τα οποία
χρησιμοποιήθηκαν στην ανάπτυξη του προγράμματος που αποτελεί προϊόν του
παρόντος πονήματος. Στο κεφάλαιο παρουσιάζονται τα ισχυρά σημεία και οι
αδυναμίες των εργαλείων αυτών και, επιπλέον, σκιαγραφείται ο τρόπος με τον οποίο
θα χρησιμοποιηθούν στον αλγόριθμο. Στη συνέχεια, αναφέρεται εξ ολοκλήρου στο
πρόγραμμα που αναπτύχθηκε στα πλαίσια της εργασίας. Ξεκινάει με τη συνοπτική
παρουσίαση της αρχιτεκτονικής του και στη συνέχεια ασχολείται με την ενδελεχή
περιγραφή των επιμέρους τμημάτων του. Επιπλέον, παρουσιάζονται κομβικά
αποσπάσματα του κώδικα, επεξηγείται η λειτουργία τους και αποκαλύπτεται ο
τρόπος υλοποίησης των θεωρητικών εργαλείων. Το κεφάλαιο καταλήγει στην
επεξήγηση της μεθοδολογίας που θα ακολουθηθεί για την αξιολόγηση του

11
λογισμικού. Σε αυτό το σημείο θα πρέπει να αναφερθεί ότι η αξιολόγηση είναι μια
δυναμική διαδικασία, η οποία υπεισέρχεται σε όλα τα στάδια ανάπτυξης του
λογισμικού. Θα αναφερθεί η μεθοδολογία τόσο της διαμορφωτικής, όσο και της
τελικής αξιολόγησης.

Το επόμενο κεφάλαιο έχει ως αντικείμενο τα αποτελέσματα της αξιολόγησης


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

Το τελευταίο κεφάλαιο λειτουργεί ως αποτίμηση του όλου εγχειρήματος.


Συνοψίζονται κάποια γενικά συμπεράσματα, τα οποία προέκυψαν από τη διεξαγωγή
του εν λόγω πονήματος, αναφέρονται εμπόδια τα οποία συναντήσαμε και,
παράλληλα, διατυπώνονται κάποιες προτάσεις για μελλοντικές βελτιώσεις, που θα
επιτρέψουν στο πρόγραμμα να αυξήσει τόσο την αποδοτικότητα όσο και τη
λειτουργικότητά του.

12
Κεφάλαιο 2
Θεωρητικό Πλαίσιο

13
2.1 Εισαγωγή – Ορισμός

Η εξέλιξη των μικροϋπολογιστών και η εξάπλωση της χρήσης τους είναι ένα
βασικό χαρακτηριστικό των τελευταίων δεκαετιών. Ο υπολογιστής, ως εργαλείο
δουλειάς, αλλά και ως ψυχαγωγικό μέσο, έχει καταφέρει να εισχωρήσει σε πολλές
πτυχές της καθημερινής μας ζωής. Ήταν λοιπόν αναπόφευκτο να κάνει την εμφάνισή
του και στο χώρο της εκπαίδευσης, κυρίως λόγω των πολλών πλεονεκτημάτων που
παρουσιάζει η λειτουργία του.

Η Διδασκαλία της Γλώσσας Υποβοηθούμενη από Υπολογιστή (Computer


Assisted Language Learning) είναι ένας σχετικά καινούριος επιστημονικός κλάδος, ο
οποίος δημιουργήθηκε λόγω των εξελίξεων στην πληροφορική. Αν και είναι
συγγενής με τον τομέα της Υπολογιστικής Γλωσσολογίας (Computational
Linguistics), ο οποίος έχει ως αντικείμενο μεθόδους και εφαρμογές πληροφορικής
που σχετίζονται με τα γλωσσικά συστήματα, ξεκίνησε ως παρακλάδι του πεδίου της
Εκπαίδευσης Μέσω Υπολογιστών (Computer Assisted Instruction), που εξετάζει τον
τρόπο με τον οποίο οι υπολογιστές μπορούν να εισαχθούν στην εκπαιδευτική
διαδικασία οποιουδήποτε γνωστικού αντικειμένου. Γρήγορα όμως αποσπάστηκε από
αυτό, κυρίως λόγω της διαφορετικής προσέγγισης της διδασκαλίας, η οποία ήταν
περισσότερο μαθητοκεντρική (Fotos - Browne, 2004). Λόγω του ότι έχει επικρατήσει
στη διεθνή βιβλιογραφία, άλλα και χάρη συντόμευσης και ευκολίας, η οποιαδήποτε
αναφορά του κλάδου της Διδασκαλίας της Γλώσσας Υποβοηθούμενης από
Υπολογιστή θα γίνεται στο παρόν πόνημα με το λατινικό ακρωνύμιο CALL.

Ο ορισμός του αντικειμένου και του πεδίου έρευνας της CALL είναι κάτι που έχει
απασχολήσει αρκετούς ερευνητές, προκειμένου να την οριοθετήσουν και να την
καταστήσουν ανεξάρτητη από άλλους παραπλήσιους επιστημονικούς κλάδους. Ο
Levy (1997) όρισε την CALL ως «έρευνα και μελέτη εφαρμογών υπολογιστών πάνω
στη διδασκαλία και μάθηση της γλώσσας». Προσανατολίζει το γνωστικό αντικείμενο
της στα προγράμματα που εκπονούνται με σκοπό την εκμάθηση μιας γλώσσας από
τους μαθητές. Ο Egbert (2005) επιχειρεί ένα άνοιγμα του αντικειμένου της CALL,
συμπεριλαμβάνοντας και διδακτικές – παιδαγωγικές προσεγγίσεις στο δικό του
ορισμό. Πιο συγκεκριμένα, υποστηρίζει ότι η CALL είναι «η μαθησιακή κατάσταση,
κατά την οποία οι μαθητές μαθαίνουν μια γλώσσα σε ένα περιβάλλον που

14
περιστρέφεται γύρω από την τεχνολογία των υπολογιστών». Αυτό που πρέπει να
επισημανθεί στον πιο πάνω ορισμό είναι η «αποδέσμευση» της διδασκαλίας της
γλώσσας από το στενό περιβάλλον της τάξης, καθώς αυτή μπορεί να
πραγματοποιηθεί ακόμα και στο σπίτι του μαθητή, αρκεί να υπάρχει κάποιο σύστημα
υπολογιστή.

Είναι γεγονός ότι η CALL ως μια νέα διδακτική κατεύθυνση στο χώρο της
διδασκαλίας της γλώσσας προωθεί μια σειρά από αλλαγές στη διδακτική διαδικασία.
Οι νέες τεχνολογίες παρέχουν μια σειρά καινοτομιών που μπορούν να
χρησιμοποιηθούν στο χώρο της εκπαίδευσης. Αυτή η υπερπροσφορά καινοτόμων
μέσων παρουσιάζει τον κίνδυνο αποπροσανατολισμού του εκπαιδευτικού,
δημιουργώντας του την τάση να προσπαθεί να ενσωματώσει όλο και περισσότερα
από αυτά τα στοιχεία στη διδασκαλία του. Ο Cameron (1989) εξέφρασε αυτή του την
ανησυχία, τονίζοντας ότι σκοπός της CALL δεν είναι απλά και μόνο να προσφέρει
στους μαθητές καινοτομίες, αλλά να βελτιώσει την ποιότητα της διδασκαλίας και να
καταστήσει τη μαθησιακή διαδικασία ως προς την εκμάθηση ενός γλωσσικού
συστήματος περισσότερο αποδοτική.

Επιχειρώντας μια σύνθεση των παραπάνω αποπειρών για την οριοθέτηση του
περιεχομένου της CALL, μπορούμε να επισημάνουμε την διττή υπόστασή της, καθώς
η έρευνα στο συγκεκριμένο επιστημονικό κλάδο κινείται σε δύο διαφορετικές
διαστάσεις. Η πρώτη έχει να κάνει με το θεωρητικό πλαίσιο το οποίο πρέπει να διέπει
την ανάπτυξη μιας εφαρμογής CALL, τις βασικές της αρχές και τα δομικά της
στοιχεία. Η δεύτερη αφορά στις διδακτικές προσεγγίσεις της CALL, στην περιγραφή
των παραγόντων που υπεισέρχονται στην εξίσωση της μαθησιακής διαδικασίας και
στον καθορισμό του ρόλου του εκπαιδευτικού μέσα σε αυτήν. Η επισκόπηση του
περιεχομένου της CALL θα πραγματοποιηθεί πάνω σε αυτές τις δύο διαστάσεις.

2.2 Ιστορική Αναδρομή

Η απαρχή της CALL μπορεί να αναχθεί στην ψυχροπολεμική περίοδο, κυρίως


στις δεκαετίες του πενήντα και του εξήντα (Levy, 1997). Ήδη από το 1940 έχουμε
την εμφάνιση των πρώτων mainframe υπολογιστών, οι οποίοι δίνουν πολλές
δυνατότητες με τη χρήση τους, η οποία όμως δεν μπορεί να γενικευθεί λόγω του
απαγορευτικού μεγέθους τους. Πάντως, ακόμα και σε αυτή την πρώιμη μορφή, οι
15
υπολογιστές χρησιμοποιούνται σε δραστηριότητες που έχουν σχέση με τη γλώσσα,
κυρίως όσον αφορά στην κωδικοποίηση μηνυμάτων. Ακολούθησαν οι πρώτες
εφαρμογές CALL, οι οποίες αφορούσαν στην εκμάθηση της ρωσικής γλώσσας από
αμερικανούς πράκτορες. Άλλωστε, κατά την ίδια περίοδο είχαμε και τις πρώτες
εφαρμογές Υπολογιστικής Γλωσσολογίας, κυρίως στο χώρο της Αυτόματης
Μετάφρασης, με την ανάπτυξη μεταφραστικών προγραμμάτων από τη ρωσική στην
αγγλική γλώσσα. Από τη δεκαετία του εβδομήντα παρατηρείται η εξάπλωση των
μικροϋπολογιστών, γεγονός που κατέστησε εφικτή την γενίκευση της χρήσης τους
και τη δυναμική τους είσοδο στην καθημερινή ζωή και, κατά συνέπεια, σε τάξεις
γλωσσομάθειας. Παράλληλα, η βελτίωση των υπολογιστικών συστημάτων και των
γλωσσών προγραμματισμού (οι οποίες γίνονται υψηλού επιπέδου – high level),
οδήγησαν στην αύξηση της χρήσης τους από γλωσσολόγους, αλλά και δασκάλους
γλωσσών.

Η εξέλιξη της CALL από αυτό το σημείο και μετά μπορεί να διακριθεί σε
τρεις περιόδους, κάθε μια από τις οποίες εμφανίζει τα δικά της ιδιαίτερα
χαρακτηριστικά, τόσο σε επίπεδο τεχνολογίας όσο και σε επίπεδο θεωρητικής
προσέγγισης της μαθησιακής διαδικασίας: τη Συμπεριφοριστική CALL (Behavioristic
CALL), την Επικοινωνιακή CALL (Communicative CALL) και την Ενοποιητική
CALL (Integrative CALL), η οποία αποτελεί και την παρούσα φάση της (Fotos,
2004).

Η Συμπεριφοριστική CALL στοχεύει στην καλλιέργεια γλωσσικών


«συνηθειών» στους μαθητές, μέσω της επανάληψης γλωσσικών δραστηριοτήτων. Ως
διδακτική προσέγγιση δεν έχει αυτονομηθεί, καθώς τα προγράμματα CALL
χρησιμοποιούνται συμπληρωματικά στη διδασκαλία μιας γλώσσας, σαν επιπρόσθετες
δραστηριότητες. Τα προγράμματα είναι απλά, με δραστηριότητες κλειστές, και με
μικρή ανατροφοδότηση προς το χρήστη (συμπλήρωση κενών και απλές ενδείξεις
σωστής ή λάθος επιλογής).

Στα τέλη της δεκαετίας του εβδομήντα παρατηρείται η γέννηση μιας


καινούριας θεωρητικής τάσης στο χώρο της διδασκαλίας μιας γλώσσας. Οι
συμπεριφοριστικές θεωρίες αμφισβητούνται έντονα και δίνουν τη θέση τους στην
«επικοινωνιακή» προσέγγιση διδασκαλίας. Αυτές οι θεωρητικές εξελίξεις επηρέασαν
και το επιστημονικό πεδίο της CALL, όπου ύστερα από αντίστοιχες ζυμώσεις

16
προέκυψε η επόμενη φάση της, η επικοινωνιακή. Αυτή δίνει έμφαση, μέσω της
ανάπτυξης αντίστοιχων εφαρμογών, στην επικοινωνιακή διάσταση της γλώσσας και
στη χρήση της ως μέσο επικοινωνίας σε διάφορα γλωσσικά συγκείμενα και
απομακρύνεται από το στόχο της εκμάθησης απομονωμένων γλωσσικών
φορμαλισμών. Η μορφή των προγραμμάτων που χρησιμοποιούνται στη διδασκαλία
αλλάζει και περιλαμβάνει γλωσσικά παιχνίδια, πρακτική ανάγνωσης και γραφής,
ανακατασκευή κειμένων με συγκεκριμένο επικοινωνιακό σκοπό, τεστ λειτουργικής
γραμματικής κ.α. (Fox, 1989).

Το πλεονέκτημα που εμφανίζουν τα συγκεκριμένα προγράμματα είναι ότι


γίνονται πιο μαθητοκεντρικά, αναβαθμίζοντας το ρόλο του μαθητή και καθιστώντας
τον πιο ενεργό σε όλη τη μαθησιακή διαδικασία. Παράλληλα, επικεντρώνονται
περισσότερο στις ανάγκες του, όπως τις εκφράζει ο ίδιος και όχι όπως τις
αντιλαμβάνεται ο εκπαιδευτικός. Γενικά, τα προγράμματα ακολουθούν ένα μοντέλο
εκμάθησης της γλώσσας που στοχεύει στην επικέντρωση του ενδιαφέροντος των
μαθητών, κινητοποιώντας την κριτική τους σκέψη, τη δημιουργικότητά τους και τις
αναλυτικές τους ικανότητες. Με αυτόν τον τρόπο η CALL απομακρύνεται από τον
στόχο της επίτευξης μιας σωστής απάντησης από το μαθητή ή της παθητικής και
μόνο κατανόησης κάποιου νοήματος. Από την άλλη μεριά, εξακολουθεί να υφίσταται
το μεγάλο μειονέκτημα της ανατροφοδότησης των μαθητών – χρηστών των
συγκεκριμένων προγραμμάτων. Οι τεχνολογικές εξελίξεις και οι αλγοριθμικές
επέτρεπαν στους μαθητές να έχουν πλήρη και σαφή ανατροφοδότηση στο επίπεδο
των λανθασμένων επιλογών και στη βελτίωση των επιδόσεών τους.

Η παρούσα φάση της CALL (Integrative CALL) προέκυψε ως αποτέλεσμα


διαφόρων τεχνολογικών εξελίξεων στο χώρο της πληροφορικής και όχι ως προϊόν
εξελίξεων σε θεωρητικό επίπεδο, όπως έγινε στην περίπτωση της προηγούμενης
φάσης. Πιο συγκεκριμένα, η CALL επηρεάστηκε από την ανάπτυξη ισχυρών
υπολογιστικών συστημάτων, που έδωσαν τη δυνατότητα μεγαλύτερης
επεξεργαστικής ισχύος και που υποστηρίζουν τη χρήση του διαδικτύου, των τοπικών
δικτύων και των πολυμέσων. Οι συγκεκριμένες τεχνολογίες άλλαξαν τη δομή αλλά
και τη λειτουργία των προγραμμάτων που χρησιμοποιούνται στη διδασκαλία της
γλώσσας, καθώς παρέχουν υψηλή διαδραστικότητα και δυνατότητα εξατομίκευσης
της διδασκαλίας, ζητούμενο που προωθείται από όλες τις σύγχρονες παιδαγωγικές
προσεγγίσεις. Επιπλέον, μέσα στα προγράμματα, εκτός των διαφόρων

17
δραστηριοτήτων, που εμφανίζονται πιο ευέλικτες, ενδιαφέρουσες και γνωστικά
απαιτητικές, λειτουργεί και υποστηρικτικό υλικό (δυνατότητα μετάφρασης, κείμενα
γραμματικής, λεξικό, ηχητική υποστήριξη κειμενικών δομών) και, κυρίως, παρέχεται
στο μαθητή η απαραίτητη ανατροφοδότηση πάνω στις ενέργειές του, σημείο στο
οποίο «χώλαιναν» οι προηγούμενες φάσεις της CALL.

Είναι αναπόφευκτο αυτή η καινούρια φάση να εμπεριέχει και κάποιες νέες


τάσεις και αλλαγές σε θεωρητικό επίπεδο. Το «επικοινωνιακό» μοντέλο της
διδασκαλίας της γλώσσας υποχωρεί και στο προσκήνιο εμφανίζεται το «κοινωνικο-
πολιτισμικό» μοντέλο μάθησης της γλώσσας, όπως διατυπώθηκε από τον Vygotsky,
και το οποίο αποτελεί τη μαθησιακή θεωρία που βρίσκεται πίσω από την Integrative
CALL (Wertsch, 1985). Κεντρικό σημείο της θεωρίας του Vygotsky είναι η διάδραση
του μαθητή μέσα σε πραγματικές γλωσσικές συνθήκες, χαρακτηριστικό απαραίτητο
για την εκμάθηση της γλώσσας. Επομένως, οι εφαρμογές που στηρίζονται σε αυτό το
θεωρητικό πλαίσιο διευκολύνουν ή και προϋποθέτουν την επικοινωνία τόσο
δάσκαλου – μαθητή, όσο και την επικοινωνία μεταξύ των μαθητών, προκειμένου να
φέρουν εις πέρας κάποιες γνωστικά απαιτητικές δραστηριότητες.

2.3 Θεωρητικές Προσεγγίσεις Πάνω Στην CALL

Η ενασχόληση αρκετών ειδικών με το πεδίο της CALL οδήγησε στη διαμόρφωση


μιας σειράς θεωρητικών πλαισίων που επεδίωκαν να την καθορίσουν αλλά και να την
κατευθύνουν, τόσο σε ερευνητικό όσο και σε πρακτικό επίπεδο. Η ύπαρξη
θεωρητικού υποβάθρου πίσω από έναν επιστημονικό κλάδο δεν καθίσταται επουδενί
περιττή ή δεσμευτική για έναν ερευνητή. Απεναντίας, μια θεωρητική προσέγγιση
βοηθάει τόσο στη διαδικασία επιλογής ερευνητικών δεδομένων όσο και στην
ερμηνεία τους (Fernandez κ.α., όπως αναφέρεται από τους Levy & Stockwell, 2006).
Άλλωστε, όσοι ασχολούνται με την εκπόνηση εφαρμογών CALL επιθυμούν η
δουλειά τους να βασίζεται σε κάποιο ευρύτερο θεωρητικό πλαίσιο με σαφώς
διατυπωμένες αρχές. Κάτι τέτοιο τους διευκολύνει, τόσο για τις αποφάσεις που
παίρνουν κατά την ανάπτυξη των εφαρμογών, όσο και για τις γενικότερες
κατευθύνσεις που θα ακολουθήσουν.

18
Η ίδια η επιστημονική πράξη της διαμόρφωσης και έκφρασης θεωρητικού
πλαισίου είναι μια διαδικασία ιδιαίτερα απαιτητική, η οποία με τη σειρά της πρέπει
να βασίζεται σε ορισμένες σταθερές θεωρητικές αρχές. Η βασική προϋπόθεση για τη
θεμιτή δημιουργία μιας θεωρητικής προσέγγισης πρέπει να είναι η θεμελίωσή της
στην υπάρχουσα γνώση περί του υπό εξέταση αντικειμένου και εν συνεχεία η διαρκής
αξιολόγησή της (ακόμα και βελτίωσή της) μέσα από την πρακτική εφαρμογή.

Η συγκεκριμένη υποενότητα θα ασχοληθεί με την παρουσίαση διαφόρων


θεωρητικών προσεγγίσεων που επηρέασαν ή και διαμόρφωσαν το πεδίο της CALL.
Για λόγους επιστημoνικής ορθότητας, αλλά και διευκόλυνσης του αναγνώστη, οι
θεωρίες αυτές έχουν ομαδοποιηθεί σε δύο διαφορετικές κατηγορίες. Η πρώτη
περιλαμβάνει τις προσεγγίσεις που επιδιώκουν να καθορίσουν το περιεχόμενο ενός
λογισμικού CALL, ενώ η δεύτερη αφορά στο πώς πρέπει να διαμορφωθεί η διδακτική
πράξη, όταν χρησιμοποιούνται τέτοιες τεχνολογίες στη διδασκαλία μιας γλώσσας.

2.3.1 Θεωρητικές Προσεγγίσεις Για Το Περιεχόμενο Του Λογισμικού


Οι θεωρίες που ακολουθούν έχουν ως βασικό σκοπό να σκιαγραφήσουν το
είδος και τη μορφή των δραστηριοτήτων που θα πρέπει να περιλαμβάνονται σε ένα
πρόγραμμα που χρησιμοποιείται για τη διδασκαλία μιας γλώσσας. Αυτό το γεγονός
συνεπάγεται άμεσα τη στενή σχέση που έχουν με γενικότερες παιδαγωγικές θεωρίες
που περιγράφουν και καθορίζουν το περιεχόμενο της διδακτικής πράξης ως προς τις
δραστηριότητες στις οποίες εμπλέκονται οι μαθητές. Το ενδιαφέρον σημείο, το οποίο
τονίζεται στις ακόλουθες παραγράφους είναι το πώς οι δυνατότητες που δίνουν οι
υπολογιστές μπορούν να αξιοποιηθούν ώστε να υπηρετήσουν σκοπούς και
μεθοδολογίες οι οποίες, αν και είχαν ήδη διατυπωθεί σε θεωρητικό επίπεδο, οι
τεχνολογικές αδυναμίες δεν επέτρεπαν την ενσωμάτωσή τους σε κάποιο υπό
ανάπτυξη λογισμικό.

α) Η διαδραστική προσέγγιση (Krashen, 1985)

Η διαδραστική προσέγγιση θέτει υπό αμφισβήτηση όλες τις διδακτικές


θεωρίες που υποστηρίζουν την απλή παρουσίαση προτάσεων και γραμματικών
φαινομένων στους μαθητές, με σκοπό την εκμάθησή τους, βασιζόμενες σε ένα
συμπεριφοριστικό μοντέλο διδασκαλίας. Σύμφωνα με τον Krashen, αυτές οι δράσεις
πρέπει απαραιτήτως να συνοδεύονται από δυνατότητα γλωσσικής διάδρασης και
παραγωγής λόγου από την πλευρά του μαθητή. Η συγκεκριμένη θεωρητική

19
προσέγγιση δίνει περισσότερη έμφαση στο ρόλο της διαπροσωπικής διάδρασης στην
εκμάθηση μιας γλώσσας. Περιλαμβάνει δραστηριότητες όπου ο μαθητής καλείται να
συμμετάσχει σε συγκεκριμένα επικοινωνιακά περιβάλλοντα, προκειμένου να
εκπληρώσει κάποιους στόχους. Κεντρικό ρόλο σε αυτή τη διάδραση κατέχει η
"διαπραγμάτευση του νοήματος" ανάμεσα στα άτομα που συμμετέχουν σε αυτή. Πιο
συγκεκριμένα, οι μαθητές, στα πλαίσια της επικοινωνίας τους με άλλους μαθητές ή
με τον εκπαιδευτικό, προβαίνουν σε προσαρμογές των γλωσσικών παραγωγών τους
(προφορικών ή γραπτών), με σκοπό να τις καταστήσουν περισσότερο κατανοητές
και, κατ' αυτόν τον τρόπο, να επιτύχουν το σκοπό της κάθε δραστηριότητας.

Μια εφαρμογή της συγκεκριμένης θεωρητικής προσέγγισης σε πρόγραμμα


CALL μπορούμε να εντοπίσουμε στο έργο των Levy και Kenedy (2004) για την
διδασκαλία της ιταλικής γλώσσας. Πιο συγκεκριμένα, ο σχεδιασμός των
δραστηριοτήτων που περιλαμβάνονταν στο εν λόγω πρόγραμμα ήταν επικεντρωμένος
στην επικοινωνιακή διάσταση της γλώσσας. Οι διάφορες γλωσσικές δομές που ήταν
το αντικείμενο της μαθησιακής διαδικασίας παρουσιάζονταν ή και χρησιμοποιούνταν
από τους μαθητές μέσα στο συγκείμενο αυτής της επικοινωνίας, παρέχοντας κίνητρα
τόσο για τον εκπαιδευτικό όσο και για τον μαθητή. Η διάδραση αυτή, όπως
εντάσσεται μέσα στις δραστηριότητες του προγράμματος μπορεί να αφορά σε
επικοινωνία δύο ατόμων μεταξύ τους, αλλά και ανάμεσα σε άτομο και υπολογιστή.

β) Η κοινωνικο-πολιτισμική προσέγγιση (Vygotsky, 1978)

Έχει προηγηθεί ήδη αναφορά στο συγκεκριμένο θεωρητικό μοντέλο, καθώς


αυτό εμφανίζεται να έχει καθορίσει και το περιεχόμενο των προγραμμάτων της
παρούσας φάσης της CALL (Integrative CALL). Σύμφωνα, λοιπόν, με το
συγκεκριμένο θεωρητικό μοντέλο, η μάθηση είναι περισσότερο προϊόν της
κοινωνικής διάδρασης, παρά των μεμονωμένων προσπαθειών των μαθητών.
Επομένως, μια δραστηριότητα που στοχεύει στην εκμάθηση μιας γλώσσας πρέπει να
παρέχει τη δυνατότητα συνεργασίας ανάμεσα στους μαθητές, ώστε να επιτευχθεί ένας
κοινός στόχος. Επιπλέον, η θεώρηση του γλωσσικού συστήματος ως επικοινωνιακού
μέσου και αποκλειστικού φορέα νοημάτων επεκτείνεται, ούτως ώστε να
συμπεριλάβει περισσότερα χαρακτηριστικά. Η γλώσσα πλέον καθίσταται εργαλείο
προσέγγισης και κατανόησης του κόσμου, γενικότερα, και ειδικότερα του κοινωνικού
περιβάλλοντος του κάθε μαθητή.

20
Χαρακτηριστικό παράδειγμα προγράμματος που βασίζεται στη συγκεκριμένη
θεωρητική προσέγγιση είναι η εργασία του Light (1993). Στο σχεδιασμό των
δραστηριοτήτων που εμπεριέχονται στο πρόγραμμα για την εκμάθηση μιας γλώσσας
προωθείται η συνεργασία μεταξύ των μαθητών, προκειμένου να επιτύχουν την
επίλυση ενός πραγματικού προβλήματος (προσομοίωση καθημερινών
προβληματικών καταστάσεων) ή να διαλογιστούν και να αναλύσουν μια πραγματική
κατάσταση.

γ) Η «ενεργητική» προσέγγιση (Engerstrom, 1987)

H «ενεργητική» θεωρητική προσέγγιση δεν πρεσβεύει κάτι το πρωτότυπο και


ρηξικέλευθο στο χώρο της διδακτικής μιας γλώσσας. Αποτελεί μετεξέλιξη της
θεωρίας του Vygotsky και στηρίζεται στις ίδιες βασικές αρχές. Η συγκεκριμένη
θεωρία επεδίωξε την αναλυτικότερη θεώρηση της μαθησιακής διαδικασίας, με την
ανάδειξη και ενδελεχή καταγραφή όλων των παραγόντων που εμπλέκονται σε αυτή,
τόσο ως προς τα μεμονωμένα χαρακτηριστικά τους, όσο και ως προς τις μεταξύ τους
σχέσεις. Η αναλυτική αυτή επισκόπηση των συνθετικών στοιχείων της μαθησιακής
διαδικασίας γίνεται σε όλα τα επίπεδα, από αυτό του μεμονωμένου χρήστη έως το
ευρύτερο κοινωνικοπολιτισμικό συγκείμενο της διδασκαλίας.

Στο πλαίσιο αυτής της αναλυτικής θεώρησης όλων των επιμέρους στοιχείων
που περιλαμβάνονται σε μια δραστηριότητα εκμάθησης της γλώσσας, ο Blin (2004)
επιχειρεί να διατυπώσει μια ανάλογη θεωρία σε ότι αφορά μια εφαρμογή CALL.
Έτσι, λοιπόν, «μια συγκεκριμένη δραστηριότητα της CALL πρέπει να θεωρηθεί μέσα
σε ένα ευρύτερο πλαίσιο κανόνων και χαρακτηριστικών» (Blin, 2004). Σε αυτή την
αναλυτική θεώρηση μιας δραστηριότητας κεντρικό ρόλο κατέχουν τρία στοιχεία -
παράγοντες της μαθησιακής διαδικασίας: τα υποκείμενα (μαθητές), τα εργαλεία
(χαρακτηριστικά του προγράμματος) και τα αντικείμενα της μάθησης (γλωσσικές
δομές).

Με βάση την πιο πάνω θεώρηση, το μοντέλο της δραστηριότητας που


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

21
σημαντικές μεταβλητές της δραστηριότητας μεταβάλλονται κάτω από διαφορετικές
συνθήκες.

δ) Ο Κονστρουκτιβισμός (Philips, 1995)

Η συγκεκριμένη θεωρητική προσέγγιση αποτελεί ουσιαστικά ένα γενικότερο


θεωρητικό πλαίσιο, μέσα στο οποίο περιλαμβάνονται πολλές διαφορετικές θεωρίες.
Όλες αυτές οι διαφορετικές προσεγγίσεις βρίσκουν κοινό τόπο σε μια κεντρική ιδέα,
η οποία έχει διατυπωθεί από τον Philips ως εξής: «Η ανθρώπινη γνώση, είτε ως
σώματα γενικών γνώσεων που αποτελούν τις διάφορες επιστήμες, είτε ως γνωστικές
δομές του κάθε μαθητή, δομείται σταδιακά.» (Philips, όπως αναφέρεται από τους
Levy & Stockwell, 2006).

O Dalgarno (όπως αναφέρεται από τους Levy & Stockwell, 2006), στην
προσπάθειά του να προτείνει ένα θεωρητικό μοντέλο για τις εφαρμογές CALL, το
οποίο να στηρίζεται στις αρχές του κονστρουκτιβισμού, απομόνωσε τα εξής
χαρακτηριστικά της εν λόγω θεωρίας:

 Κάθε άτομο δημιουργεί τις δικές του αναπαραστάσεις της γνώσης. Τα άτομα
μαθαίνουν (δημιουργώντας αυτές τις γνωστικές αναπαραστάσεις) μέσω
ενεργής εξερεύνησης.
 Η μάθηση πραγματοποιείται μέσα σε ένα κοινωνικό συγκείμενο, το οποίο
καθορίζει τα χαρακτηριστικά της και την όλη πορεία της. Η διάδραση
ανάμεσα στους μαθητές είναι αναπόσπαστο κομμάτι της μαθησιακής
διαδικασίας.

Λαμβάνοντας υπόψη του αυτές τις γενικές θεωρητικές αρχές και προβάλλοντάς τες
στη μορφή και τα χαρακτηριστικά μιας υπολογιστικής εφαρμογής για τη διδασκαλία
της γλώσσας, κατέληξε στα εξής συμπεράσματα:

 Ένα τέτοιο λογισμικό θα πρέπει να προωθεί την κατευθυνόμενη από το


χρήστη ανακάλυψη της γνώσης. Οι γλωσσικές δομές που πρέπει να
κατακτηθούν σε καμία περίπτωση δεν θα παρουσιάζονται άμεσα στο χρήστη,
θεωρώντας τον παθητικό δέκτη της γνώσης, αλλά θα αναδύονται μέσα από τα
γλωσσικά περιβάλλοντα που συναντώνται και με την ενεργή συμμετοχή του
μαθητή. Αυτή η διαδικασία της γνωστικής ανακάλυψης θα επιτελείται
χρησιμοποιώντας υπερμέσα, εξομοιώσεις καταστάσεων, συστήματα
22
πολυμέσων, τα οποία θα έχουν το ρόλο της προώθησης της ενεργής
εξερεύνησης εκ μέρους του χρήστη μέσα σε ένα ψηφιακό περιβάλλον που θα
προσομοιώνει το πραγματικό.
 Το λογισμικό θα πρέπει να παρέχει άμεση και στοχευμένη καθοδήγηση στο
χρήστη, ώστε να επιτύχει το στόχο της ανακάλυψης της γνώσης, επιτρέποντας
παράλληλα στους μαθητές να οικοδομούν τις δικές τους γνωστικές
αναπαραστάσεις, με τη χρησιμοποίηση γνωστικών εργαλείων, συστημάτων
καθοδήγησης και εκμάθησης, κατευθυνόμενων υπερμέσων και άλλων
μεθόδων που παρέχουν στην CALL οι διάφορες εξελίξεις στο χώρο της
πληροφορικής.
 Πρέπει να ευνοεί την κοινωνική διάδραση και τη συνεργασία ανάμεσα στους
μαθητές, με τις δυνατότητες χρησιμοποίησης του γλωσσικού συστήματος
μέσα από το ίδιο το περιβάλλον της εφαρμογής και να υιοθετεί τη χρήση
μεθόδων συνεργατικής μάθησης, υποβοηθούμενη από ανάλογες λειτουργίες
του υπολογιστή, όπως η σύνδεση στο διαδίκτυο ή η δημιουργία τοπικών
δικτύων.

2.3.2 Θεωρητικές Προσεγγίσεις Για Τη Μορφή Διδασκαλίας

Η διδακτική πρακτική που ακολουθείται από έναν δάσκαλό, στα πλαίσια της
μαθησιακής διαδικασίας για την απόκτηση μιας γλώσσας (language acquisition),
είναι αναγκαίο να έχει μια θεωρητική βάση και να μη στηρίζεται αποκλειστικά και
μόνο στην εμπειρική του γνώση. Από την άλλη, αρκετοί ερευνητές έχουν επισημάνει
την αρνητική στάση των εκπαιδευτικών απέναντι στις διάφορες θεωρητικές
προσεγγίσεις. Όπως υποστηρίζουν, η θεωρία πολλές φορές αντιτίθεται στην
πρακτική, καθώς θεωρείται από πολλούς δασκάλους αποκομμένη από τις
πραγματικές συνθήκες διδασκαλίας.

Σε αυτή τη σύντομη επισκόπηση των θεωριών που αφορούν στη μορφή της
διδασκαλίας σε μια τάξη CALL, μπορούμε πιο εύκολα να διαπιστώσουμε μια
ισχυρότερη επιρροή από θεωρητικές προσεγγίσεις που έχουν διατυπωθεί στο χώρο
της αμιγούς διδασκαλίας μιας γλώσσας. Αν και θα συναντήσουμε θεωρίες που
αναφέρθηκαν και στην προηγούμενη υποενότητα, εντοπίζουμε και κάποιες άλλες που

23
ενσωματώνουν τις ιδέες τους στην πραγματικότητα της διδασκαλίας της γλώσσας
μέσω υπολογιστή.

α) Θεωρία Διάδρασης (Swain, 1985)

Σύμφωνα με τη συγκεκριμένη θεωρητική προσέγγιση, σε μια τάξη CALL θα


πρέπει να δίνεται έμφαση στην προώθηση των διαδράσεων ανάμεσα στους μαθητές ή
μεταξύ δασκάλου - μαθητή. Ο εκπαιδευτικός επικεντρώνει την προσοχή του στη
σημασία των γλωσσικών δομών και στην κατανοησιμότητά τους. Επομένως, μέσα
από τις δραστηριότητες που γίνονται στην τάξη αναδύεται ως σκοπός η γλωσσική
παραγωγή των μαθητών ως μέσο εκφοράς νοημάτων σε μια επικοινωνιακή
περίσταση.

β) Κοινωνικοπολιτισμική Θεωρία (Vygotsky, 1978)

Σύμφωνα με αυτό το θεωρητικό μοντέλο, ο εκπαιδευτικός πρέπει μέσα από τη


διδακτική πράξη να προωθήσει τη συνεργατική μάθηση, μέσω της οργάνωσης
ψηφιακών κοινωνιών. Αυτό μπορεί να επιτευχθεί με συστήματα οπτικοακουστικής
συνομιλίας (audio ή video conference), αλλά και μέσα από πλατφόρμες συνομιλίας
χρηστών μέσω πληκτρολόγησης (chat rooms κ.α.). Κεντρικό ρόλο στη μαθησιακή
διδαδικασία κατέχουν δραστηριότητες που προωθούν τη συνεργασία έναντι της
εξατομικευμένης συμμετοχής των μαθητών και ταυτόχρονα επιτυγχάνουν τη σύνδεση
με πραγματικές περιστάσεις επικοινωνίας.

γ) Κονστρουκτιβισμός (Ruschoff - Ritter, 2001)

Η διδακτική προσέγγιση που προκύπτει από την εφαρμογή των γενικών


αρχών του κονστρουκτιβισμού δίνει μεγάλη βαρύτητα στην ανάλυση και αξιολόγηση
από τον εκπαιδευτικό όλων των παραμέτρων της μαθησιακής διαδικασίας. Φυσικά,
στο κέντρο αυτής της ανάλυσης θα πρέπει να βρίσκεται το υποκείμενο της
δραστηριότητας, δηλαδή ο μαθητής. Επομένως, στη δημιουργία των δραστηριοτήτων
ο εκπαιδευτικός θα πρέπει να ενσωματώνει δύο βασικές αρχές: η δραστηριότητα θα
πρέπει να είναι βασισμένη σε αυθεντικές περιστάσεις επικοινωνίας και να καλύπτει
τις ανάγκες του κάθε μαθητή, όπως αυτές έχουν διαγνωσθεί από το δάσκαλο. Με
άλλα λόγια, μια δραστηριότητα δεν πρέπει να εμφανίζει σταθερά στοιχεία αλλά
παραμετροποιήσιμα χαρακτηριστικά, ούτως ώστε να προσαρμόζεται στις γνωστικές

24
απαιτήσεις των μαθητών μιας τάξης, οι οποίες διαμορφώνονται δυναμικά στο πέρας
του χρόνου.

δ) Καταστασιακή μάθηση (Halliday, 1993)

H συγκεκριμένη θεωρητική προσέγγιση βασίζεται στην άποψη ότι ένα


γλωσσικό σύστημα χρησιμοποιείται διαφορετικά σε διάφορες καταστάσεις, κάθε μια
από τις οποίες εμφανίζει τα δικά της χαρακτηριστικά. Ο εκπαιδευτικός, επομένως,
μέσα στα πλαίσια της διδασκαλίας πρέπει να επιλέξει τις δραστηριότητες και τις
εφαρμογές εκείνες που θα ασκήσουν τους μαθητές στις διαφορετικές χρήσεις του
γλωσσικού συστήματος (συγγραφή κειμένων για κάποιο σκοπό, επικοινωνία ιδεών,
διαπροσωπικές σχέσεις κ.α.).

2.4 Χαρακτηριστικά Ανάπτυξης Ενός Λογισμικού CALL

Το πλέον σημαντικό στοιχείο που βρίσκεται στο κέντρο μιας τάξης CALL
είναι ο υπολογιστής, καθώς αυτός τη διαφοροποιεί από άλλες διδακτικές
προσεγγίσεις για την απόκτηση μιας γλώσσας από τους μαθητές. Οι εκπαιδευτικοί
καλούνται να αξιοποιήσουν τις δυνατότητες που παρέχονται από ένα σύστημα
υπολογιστή, ενσωματώνοντας κάποιες από τις λειτουργίες του σε δραστηριότητες
που συνθέτουν τη διδακτική πράξη. Ο δάσκαλος έχει την ευχέρεια να χρησιμοποιήσει
προϋπάρχουσες προγραμματιστικές πλατφόρμες, οι λειτουργίες των οποίων μπορούν
να αξιοποιηθούν στη διδακτική διαδικασία (π.χ. το Microsoft Word), ή να εντάξουν
στη διδασκαλία τους εξειδικευμένα λογισμικά, που έχουν δημιουργηθεί με σκοπό την
απόκτηση μιας γλώσσας από τους μαθητές. Στην παρούσα ενότητα θα εξετασθούν οι
βασικές αρχές που πρέπει να καθορίζουν και να κατευθύνουν την πορεία δημιουργίας
ενός τέτοιου λογισμικού.

Έχει ήδη αναφερθεί στην προηγούμενη ενότητα ότι έχουν προταθεί από
πολλούς ερευνητές της CALL διάφορα θεωρητικά πλαίσια που σκοπό έχουν να
καθορίσουν και να κατευθύνουν τη δημιουργία ανάλογων λογισμικών. Η θεωρητική
προσέγγιση που κρύβεται πίσω από ένα πρόγραμμα δεν υφίσταται για λόγους
τυπολογίας. Άλλωστε, έχει ήδη γίνει αντιληπτό ότι ενδεχόμενες αλλαγές ή και
καινούριες τάσεις που κάνουν την εμφάνισή τους σε θεωρητικό επίπεδο αποτελούν
τους καταλύτες για την ίδια την εξέλιξη των εφαρμογών CALL. Σε κάθε περίπτωση,

25
είναι απαραίτητο ο προγραμματιστής να καταλήξει σε ένα θεωρητικό μοντέλο, πάνω
στο οποίο θα βασιστεί η ανάπτυξη ενός προγράμματος. Προγραμματιστικές
εφαρμογές που δεν ακολουθούν κάποιες βασικές θεωρητικές αρχές δεν έχουν τα
αναμενόμενα αποτελέσματα, όσον αφορά στις επιδόσεις των μαθητών ή στην
αποδοτικότητα του ίδιου του εργαλείου (Bancheri 2006).

Η δημιουργία ενός εκπαιδευτικού λογισμικού για τη διδασκαλία μιας


γλώσσας είναι ένα προϊόν που ενσωματώνει πολλά διαφορετικά στοιχεία. Ως
προγραμματιστική εφαρμογή, περιλαμβάνει αλγοριθμικές μεθόδους και τεχνικές που
προέρχονται από το χώρο της πληροφορικής. Μάλιστα, εξελίξεις στο συγκεκριμένο
τομέα δίνουν νέα ώθηση και δυνατότητες σε αυτά τα προγράμματα. Επιπλέον, σαν
παιδαγωγικό εργαλείο, ένα τέτοιο πρόγραμμα είναι απαραίτητο να στηρίζεται πάνω
σε κάποιες θεωρητικές αρχές της παιδαγωγικής, ιδιαίτερα πάνω στο σχεδιασμό των
δραστηριοτήτων που περιλαμβάνονται. Τέλος, σημαντικό είναι και το καλλιτεχνικό
κομμάτι, με τη δημιουργία γραφικών, εικόνων και γενικότερα όλου του
περιβάλλοντος διάδρασης, ώστε να είναι θελκτικό και λειτουργικό για το χρήστη.
Όπως επισημαίνει και ο Hendricks (1998, όπως αναφέρεται από τον Bancheri, 2006),
ένα πρόγραμμα CALL για μια δεύτερη ή ξένη γλώσσα πρέπει να είναι προϊόν
συνεργασίας ενός έμπειρου προγραμματιστή, ενός γραφίστα και ενός δασκάλου
εκπαιδευμένου στην παιδαγωγική διδασκαλίας δεύτερης γλώσσας.

Ένα σημαντικό στοιχείο το οποίο θα πρέπει να λαμβάνεται υπόψη κατά τη


δημιουργία ενός εκπαιδευτικού λογισμικού για τη διδασκαλία της γλώσσας από την
ομάδα ανάπτυξης είναι το ζήτημα της διαφάνειας (transparency). Πρόκειται για μία
διάσταση που απαντάται σε όλα τα προγράμματα υπολογιστών, ακόμα και σε
εφαρμογές άσχετες με το χώρο της εκπαίδευσης, και έχει να κάνει με το χειρισμό
τους. Η αλληλεπίδραση του χρήστη με μια υπολογιστική εφαρμογή γίνεται με βάση
ένα περιβάλλον διάδρασης (user interface), το οποίο λειτουργεί με συγκεκριμένο
τρόπο. Σύμφωνα με τον Bancheri (2006), ο χειρισμός του προγράμματος θα πρέπει να
είναι όσο το δυνατό πιο απλός, ώστε ο μαθητής να μην ασχοληθεί με τους
μηχανισμούς αυτούς και να επικεντρωθεί στη γλωσσική δραστηριότητα.

Μια από τις δυνατότητες που παρέχει ένα λογισμικό διδασκαλίας της
γλώσσας είναι η ποικιλία δραστηριοτήτων που μπορεί να δοθούν στους χρήστες –
μαθητές. Αυτή η ποικιλομορφία αυξάνει το ενδιαφέρον των μαθητών, καθώς

26
αποφεύγεται η επανάληψη πανομοιότυπων εργασιών. Επιπλέον, διαφορετικές
ασκήσεις μπορούν να βασίζονται σε διαφορετικές μαθησιακές τεχνικές και διδακτικές
προσεγγίσεις. Εξάλλου, η ποικιλία δραστηριοτήτων δίνει στο εκπαιδευτικό
πορτφόλιο δυνατότητα παραμετροποίησης, κυρίως στον τομέα του δείκτη δυσκολίας.
Τα ανώτερα επίπεδα δραστηριοτήτων μπορεί να αναφέρονται σε περίπλοκες
γλωσσικές δομές ή σε πιο απαιτητικές νοητικές διεργασίες, όπως η κριτική σκέψη, η
αναλυτική σκέψη, η δημιουργικότητα κ.α.

Αν και θεωρούνται από πολλούς δευτερευούσης σημασίας χαρακτηριστικά,


εντούτοις τα εξωτερικά στοιχεία ενός προγράμματος CALL εμφανίζουν κάποια
λειτουργικότητα. Πρόκειται για τα γραφικά, τους χρωματισμούς που επιλέγονται, τις
γραμματοσειρές, τις δυνατότητες βίντεο και ήχου και γενικότερα τις δυνατότητες
πολυμέσων που επιλέγονται από τον προγραμματιστή, προκειμένου να πλαισιώσουν
την εφαρμογή. Η σωστή και με μέτρο χρησιμοποίηση των παραπάνω στοιχείων
μπορεί να δώσει επιπλέον κίνητρα στους μαθητές - χρήστες. Αυτό που είναι
απαραίτητο να επιτευχθεί είναι μια ισορροπία στην εισαγωγή τέτοιων στοιχείων. Από
τη μία μπορεί να προσελκύεται το ενδιαφέρον των μαθητών, από την άλλη όμως η
υπερβολική χρησιμοποίησή τους μπορεί να αποσπάσει τους μαθητές από το
περιεχόμενο των δραστηριοτήτων και, κατά συνέπεια, από το διδακτικό στόχο.

Όπως έχει ήδη αναφερθεί, η ποικιλία που εμφανίζουν οι δραστηριότητες μιας


εφαρμογής CALL δίνουν τη δυνατότητα παραμετροποίησης τους από τους
προγραμματιστές ή τους εκπαιδευτικούς. Οι παράμετροι που διαφοροποιούν μια
δραστηριότητα μπορεί να κινηθούν σε διαφορετικούς άξονες. Ο Kazeroni (2006)
επισημαίνει τις εξής διαστάσεις που καθορίζουν μια δραστηριότητα στα πλαίσια της
CALL: πολυπλοκότητα, χρόνος διεκπεραίωσης και ανοικτή ή κλειστή
δραστηριότητα. Πιο συγκεκριμένα, η πολυπλοκότητα μιας εργασίας κυμαίνεται σε
δύο συνιστώσες: τη γνωστική ικανότητα, δηλαδή κατά πόσο απαιτεί ανώτερες
νοητικές διεργασίες (δημιουργικότητα, κριτική σκέψη, αναλυτική σκέψη), και τη
δομή του γλωσσικού φαινομένου, δηλαδή κατά πόσο αφορά σε περίπλοκες και
εξεζητημένες γλωσσικές δομές που πρέπει να επεξεργαστούν οι μαθητές. Από την
άλλη μεριά, ο χρόνος διεξαγωγής μιας δραστηριότητας μπορεί να καθορίσει τη
μορφή της. Υπάρχουν εργασίες που ζητούν μεγάλη ταχύτητα από τους μαθητές ως
προς την επεξεργασία τους. Ο στόχος αυτός έχει πρακτικό αντίκρισμα, καθώς
υπάρχουν καταστάσεις επικοινωνίας (κυρίως στον προφορικό λόγο) που απαιτούν

27
γρήγορα γλωσσικά αντανακλαστικά από τον ομιλητή. Άλλες δραστηριότητες
παρέχουν άνεση χρόνου στο μαθητή, προκειμένου να επικεντρωθεί περισσότερο στην
ακρίβεια και τη σωστή διατύπωση των απαντήσεων. Τέλος, η ύπαρξη ανοικτών
δραστηριοτήτων δίνει στους μαθητές τη δυνατότητα εξατομικευμένων απαντήσεων
και, επιπλέον, η εξατομίκευση προάγεται ως χαρακτηριστικό της διδασκαλίας. Από
την άλλη, κλειστές δραστηριότητες είναι πιο εύκολα επεξεργάσιμες από τον
ηλεκτρονικό υπολογιστή και μπορούν να παράσχουν αυτοματοποιημένη
ανατροφοδότηση στο χρήστη – μαθητή.

Η αξιολόγηση της επίδοσης ενός μαθητή και η ανατροφοδότηση που


λαμβάνει προκειμένου να την βελτιώσει είναι άλλο ένα σημαντικό χαρακτηριστικό
ενός προγράμματος διδασκαλίας της γλώσσας που πρέπει να ληφθεί υπόψη από τον
προγραμματιστή. Πρόκειται για τη διαδικασία ανεύρεσης του λάθους σε μια
δραστηριότητα και την επεξήγησή του στο χρήστη – μαθητή, ώστε να προβεί στις
απαραίτητες ενέργειες προκειμένου να το διορθώσει. Σε πιο πρόσφατες εφαρμογές
CALL, η διαδικασία αυτή πραγματοποιείται αυτόματα σε ένα βαθμό, δηλαδή από το
ίδιο το πρόγραμμα, χωρίς την παρέμβαση του εκπαιδευτικού. Στην υλοποίηση αυτής
της δυνατότητας εμφανίζονται αρκετές δυσκολίες, όπως ο καθορισμός του λόγου για
τον οποίο πραγματοποιείται ένα λάθος σε μια γλωσσική δραστηριότητα. Ειδικά στην
περίπτωση δραστηριοτήτων ανοικτού τύπου, όπου οι μαθητές έχουν τη δυνατότητα
για πολλές διαφορετικές παραγωγές γλωσσικών δομών, το πρόβλημα μεγιστοποιείται.
Η αξιολόγηση των μαθητών σε ένα πρόγραμμα CALL πραγματοποιείται σε
διαφορετικές κλίμακες, ανά απάντηση και ανά δραστηριότητα, όπου λαμβάνεται
υπόψη το σύνολο των απαντήσεων, προκειμένου να διαπιστωθεί αν έχει επιτευχθεί ο
κεντρικός στόχος (Kazeroni, 2006). Επιπλέον, το ζήτημα της αξιολόγησης και
ανατροφοδότησης καθίσταται περισσότερο περίπλοκο, καθώς μπορεί να υπάρχουν
απαντήσεις που δεν είναι απολύτως σωστές αλλά είναι αποδεκτές. Σε αυτήν την
περίπτωση πρέπει το πρόγραμμα να είναι σε θέση να αναγνωρίζει αυτές τις
απαντήσεις και να ενημερώνει αναλόγως το χρήστη.

Η παροχή ανατροφοδότησης από ένα λογισμικό που χρησιμοποιείται στη


διδασκαλία της γλώσσας στοχεύει κυρίως στην αντιμετώπιση των λαθών που μπορεί
να κάνει ο χρήστης - μαθητής και στην προσπάθεια διόρθωσής τους. Ο
προγραμματιστής, λοιπόν, που θέλει να ενσωματώσει έναν τέτοιο μηχανισμό
ανατροφοδότησης στην υπολογιστική εφαρμογή που αναπτύσσει, θα πρέπει να

28
εντρυφήσει πάνω στα λάθη που ενδεχομένως να γίνουν από το χρήστη και τα οποία
θα ενεργοποιήσουν το μηχανισμό αυτό. Σύμφωνα με τον Bancheri (2006), η
ανάπτυξη ενός τέτοιου μηχανισμού πρέπει να πραγματοποιηθεί σε δύο βήματα. Σε
μια πρώτη φάση, πρέπει να ληφθούν υπόψη κάποια συνηθισμένα λάθη που κάνουν οι
μαθητές κατά την παραγωγή γλωσσικών δομών, ούτως ώστε να αναπτυχθεί ο
αλγόριθμος του μηχανισμού ανατροφοδότησης, ο οποίος θα αντιμετωπίζει τα λάθη
αυτά, παρέχοντας ανάλογο μήνυμα στο χρήστη προς διόρθωσή τους. Το δεύτερο
βήμα πραγματοποιείται μετά την υλοποίηση του προγράμματος και τη
χρησιμοποίησή του από μαθητές. Σε αυτή τη φάση ο προγραμματιστής δημιουργεί
μια τράπεζα λαθών που έχουν γίνει από τους χρήστες κατά τη χρησιμοποίηση του
προγράμματος. Αυτό οδηγεί σε μια βάση δεδομένων που μπορεί να χρησιμοποιηθεί
για να βελτιωθεί και να εξειδικευθεί ακόμα περισσότερο ο μηχανισμός
ανατροφοδότησης.

Ολοκληρώνοντας το συγκεκριμένο κεφάλαιο, θα αναφερθούμε σε ορισμένα


χαρακτηριστικά που παρουσιάζονται σε δραστηριότητες CALL που αφορούν σε
παραγωγή λόγου, καθώς σε αυτό το είδος δραστηριότητας κατατάσσεται το
πρόγραμμα που αποτελεί το αντικείμενο του συγκεκριμένου πονήματος. Πρόκειται
για ανοικτές δραστηριότητες, οι οποίες δοκιμάζουν την ικανότητα γραφής των
μαθητών πάνω στη γλώσσα – στόχο. Αρκετές εφαρμογές CALL που έχουν
υλοποιήσει τέτοιες δραστηριότητες ενσωματώνουν διάφορες επιπλέον δυνατότητες,
όπως είναι η παροχή συγκεκριμένου λεξιλογίου στο χρήστη αλλά και στοιχείων
δομής του κειμένου που θα συγγραφεί από το μαθητή, καθώς και κάποια
υποδείγματα, τα οποία θα πρέπει να λάβει υπόψη του. Σημαντικό πρόβλημα
προκύπτει στη διαδικασία αξιολόγησης των κειμένων από το ίδιο το πρόγραμμα,
καθώς πρόκειται για ανοικτή δραστηριότητα. Ο Bancheri (2006) προτείνει για
τέτοιου είδους δραστηριότητες να μη γίνεται βαθμολόγηση ή άλλου τύπου
αξιολόγηση, αλλά να αναλύεται η παραγωγή με βάση ορισμένα κριτήρια:

- αριθμός λέξεων που χρησιμοποιήθηκαν


- αριθμός παραγράφων που χρησιμοποιήθηκαν
- αριθμός προτάσεων που χρησιμοποιήθηκαν
- μέσος όρος λέξεων ανά πρόταση
- μέσος όρος λέξεων ανά παράγραφο

29
- λίστα και αριθμός διαφορετικών λέξεων που χρησιμοποιήθηκαν, καθώς και η
συχνότητά τους.

2.5 Θεωρητικές Προσεγγίσεις Σχεδιασμού Λογισμικών CALL

Ο σχεδιασμός είναι μια δραστηριότητα που διαπερνά όλες τις πλευρές και τις
διαστάσεις της CALL και πραγματοποιείται σε όλες τις κλίμακες της, από το επίπεδο
της διδασκαλίας έως και το επίπεδο της κάθε άσκησης ή δραστηριότητας. Ο
σχεδιασμός στοχεύει στην κατά το δυνατό καλύτερη εξυπηρέτηση των στόχων της
διδασκαλίας της γλώσσας με τη βοήθεια του υπολογιστή, όπως αυτοί έχουν
διατυπωθεί από τον εκπαιδευτικό / προγραμματιστή (Levy – Stockwell, 2008).

Κατά τη διάρκεια της συγκεκριμένης διαδικασίας υπεισέρχονται πολλοί και


ποικίλοι παράγοντες, οι οποίοι την καθορίζουν και την κατευθύνουν. Πρόκειται
λοιπόν για μια διαδικασία εντελώς δυναμική, με ενδεχόμενη τροποποίηση των
επιμέρους στοιχείων, ανάλογα με το περιεχόμενο της ανατροφοδότησης που δέχεται
ο ερευνητής κατά την υλοποίηση του συγκεκριμένου λογισμικού ή προγράμματος
σπουδών. Μια πρόχειρη ταξινόμηση των συγκεκριμένων παραγόντων επιχειρήθηκε
από τον Ayres (2003, όπως αναφέρεται από τους Levy – Stockwell, 2008), ο οποίος
καθορίζει τρεις επιμέρους κατηγορίες:

 Σχεδιασμός βασισμένος στη θεωρία και τις συνθήκες που καθορίζει ένα
θεωρητικό πλαίσιο.
 Η μορφή και τα χαρακτηριστικά μιας άσκησης ή μιας δραστηριότητας, καθώς
και οι ειδικές συνθήκες που διαμορφώνει, μπορεί να καθορίσει και το
σχεδιασμό μιας εφαρμογής.
 Ο σχεδιασμός μπορεί να επηρεαστεί και από τις παραμέτρους του
περιβάλλοντος ανάπτυξης του λογισμικού (σε ποιο υπολογιστικό σύστημα θα
εγκατασταθεί, ποια πλατφόρμα προγραμματισμού θα χρησιμοποιηθεί κ.α.)

Είναι πολύ σημαντικό να σημειωθεί ότι το περιεχόμενο της έννοιας του


σχεδιασμού διαφοροποιείται ανάλογα με το εύρος του επιπέδου πάνω στο οποίο
στοχεύει η εν λόγω διαδικασία. Ο σχεδιασμός, όπως έχει ήδη αναφερθεί, διαπερνά
όλα τα επίπεδα εφαρμογής της CALL, από το πιο γενικό (επίπεδο αναλυτικού
προγράμματος σε ένα εκπαιδευτικό ίδρυμα), έως το πιο βασικό δομικό στοιχείο του

30
συγκεκριμένου επιστημονικού πεδίου, που είναι η άσκηση – δραστηριότητα. Κάθε
ένα από τα επίπεδα αυτά διαμορφώνεται από διαφορετικούς παράγοντες και ειδικές
συνθήκες, με αποτέλεσμα οι επιλογές που πρέπει να γίνουν κατά τη διάρκεια της
διαδικασίας του σχεδιασμού να είναι εντελώς διαφορετικές. Λόγω της φύσεως της
συγκεκριμένης εργασίας, και κυρίως του ερευνητικού αντικειμένου της, θα δοθεί στη
συνέχεια περισσότερη έμφαση σε θέματα σχεδιασμού που αφορούν στις
δραστηριότητες – ασκήσεις της CALL.

Προκειμένου να επιτευχθεί η δημιουργία ενός θεωρητικού πλαισίου πάνω στην


οποία θα στηριχθεί ο σχεδιασμός μιας δραστηριότητας CALL, οι διάφοροι ερευνητές
προσπάθησαν να καθορίσουν την έννοια της δραστηριότητας με αναφορά στα
συνθετικά της στοιχεία και τα ιδιαίτερα χαρακτηριστικά της. Ο Nunan (1989)
αναφέρει ότι μια δραστηριότητα καθορίζεται από το σύνολο των επιμέρους στοιχείων
της, όπως οι στόχοι, τα εισαγόμενα δεδομένα (input data), οι ενέργειες που
απαιτούνται από τη φύση των δεδομένων αυτών και οι ρόλοι που δίνονται από τη
δραστηριότητα, τόσο στο δάσκαλο, όσο και στο μαθητή.

Κατά τη διάρκεια της διαδικασίας σχεδιασμού μιας δραστηριότητας πρέπει να


ληφθούν υπόψη από το δημιουργό της οι παράγοντες εκείνοι που υπεισέρχονται σε
αυτή και ενδέχεται να την επηρεάσουν. Οι συγκεκριμένοι παράγοντες μπορούν να
ταξινομηθούν σε δύο επιμέρους κατηγορίες. Στην πρώτη περιλαμβάνονται αυτοί που
σχετίζονται με την ίδια τη δραστηριότητα και αναφέρονται στις συνθήκες και το
περιβάλλον που η ίδια καθορίζει. Στη δεύτερη κατηγορία περιλαμβάνονται οι
παράγοντες που σχετίζονται με το μαθητή και έχουν σχέση με την προσωπικότητά
του και τα ιδιαίτερα χαρακτηριστικά του γνωρίσματα. Σε κάθε περίπτωση, ο
σχεδιασμός μιας άσκησης για ένα λογισμικό διδασκαλίας της γλώσσας καθορίζεται
σε μεγάλο βαθμό από τους συγκεκριμένους παράγοντες και θα πρέπει να εκπονείται
σε σχέση με αυτούς, με μια σημαντική λεπτομέρεια. Οι δυνατότητες πρόβλεψης του
τρόπου με τον οποίο θα προσεγγίσει τη δραστηριότητα αυτή ο μαθητής είναι
περιορισμένες και ενδεχομένως κατά την εμπλοκή του σε αυτή να οδηγηθεί σε
καταστάσεις τις οποίες ο δημιουργός δεν είχε υπόψη του.

Τα μέσα που παρέχονται λόγω των διαφόρων τεχνολογικών εξελίξεων, οι οποίες


επηρεάζουν και τον τομέα της CALL, δίνουν τη δυνατότητα στους ερευνητές –
δημιουργούς λογισμικών, και κατ’ επέκταση δραστηριοτήτων, να αναπτύξουν

31
ασκήσεις περισσότερο πολύπλοκες και σαφώς ανωτέρου επιπέδου εξέλιξης. Αυτό
είχε σαν αποτέλεσμα να αλλάξει η εικόνα για το ποιο είδος δραστηριότητας
θεωρείται επιτυχημένο. Ο Meskill (1999), επιχειρώντας να απαντήσει στο παραπάνω
ερώτημα, έδωσε σε μια τέτοια δραστηριότητα τα παρακάτω χαρακτηριστικά:

- Να έχει περισσότερες από μια λύσεις ή περισσότερους από έναν τρόπους να


καταλήξει ο μαθητής στη λύση.
- Να έχει ενδιαφέρουσα δομή και να παρέχει αμοιβές και κίνητρα στο μαθητή
για την ενασχόλησή του με αυτή.
- Να επιτρέπει σε διαφορετικούς μαθητές να συνεισφέρουν με διαφορετικό
τρόπο στη λύση, ανάλογα με τις δυνατότητές τους.
- Να χρησιμοποιεί εφαρμογές πολυμέσων.
- Να απαιτεί μεγάλη ποικιλία δεξιοτήτων και συμπεριφορών από την πλευρά
του μαθητή.
- Να προσφέρει κλιμακωτό βαθμό πρόκλησης – δυσκολίας.

Στο θέμα των παραμέτρων σχεδιασμού μιας δραστηριότητας CALL, οι ερευνητές


του πεδίου έχουν προτείνει αρκετά θεωρητικά μοντέλα, προκειμένου να κατευθύνουν
τους δημιουργούς σε αυτή τη διαδικασία. Σε μια τέτοια προσπάθεια, οι Misham και
Strunz (2003, όπως αναφέρεται από τους Levy – Stockwell, 2008) δημιούργησαν ένα
θεωρητικό πλαίσιο που ενσωμάτωσαν σε ένα παιδαγωγικό μοντέλο, το οποίο
αναφέρουν ως «αυθεντική προσέγγιση» (authenticity – centered approach). Σύμφωνα
με αυτό το πλαίσιο, ο σχεδιασμός πρέπει να εξασφαλίζει ότι μια δραστηριότητα που
είναι βασισμένη σε ένα κείμενο εξυπηρετεί τον αυθεντικό επικοινωνιακό σκοπό του
κειμένου. Επιπλέον, θα πρέπει να βασίζεται σε πραγματικές συνθήκες της
καθημερινής μας ζωής. Επίσης θα πρέπει να περιλαμβάνεται σε κάθε δραστηριότητα
ένα πλαίσιο το οποίο θα επιτρέπει την αυθεντική επικοινωνία ανάμεσα στους
μαθητές, και σε αρκετές περιπτώσεις θα την απαιτεί, μέσα στα πλαίσια επίλυσής της.
Τέλος, είναι απαραίτητο να ενεργοποιεί την υπάρχουσα γνώση των μαθητών, τόσο
για τη γλώσσα – στόχο, όσο και για την κουλτούρα την οποία εκφράζει το εν λόγω
γλωσσικό σύστημα (κοινωνιογλωσσολογική προσέγγιση).

Τέλος, θα πρέπει να σημειωθεί ότι, λόγω της τεχνολογικής εξέλιξης και των
μέσων που έχουν τεθεί στη διάθεση των δημιουργών δραστηριοτήτων CALL, έχει
επικρατήσει μια σύγχρονη τάση στο σχεδιασμό δραστηριοτήτων που θέλει το μαθητή

32
να είναι αυτόνομος σε όλη τη διάρκεια της μαθησιακής διαδικασίας. Πιο
συγκεκριμένα, ενισχύεται ο ρόλος του μαθητή ως προς την επιλογή των
δραστηριοτήτων ή τον καθορισμό των παραμέτρων τους, και επιπλέον του δίνεται η
δυνατότητα να καθορίσει και τον τρόπο προσέγγισης που θα ακολουθήσει για την
επίλυσή τους (Molebash, 2003, όπως αναφέρεται από τους Levy – Stockwell, 2008).

2.6 Ο Δάσκαλος Σε Μια Τάξη CALL

Όπως έχει ήδη αναφερθεί σε προηγούμενα κεφάλαια, τα χαρακτηριστικά της


διδακτικής πράξης, όπως αυτή διαμορφώνεται σε μια τάξη όπου χρησιμοποιούνται
προγράμματα για τη διδασκαλία μιας γλώσσας, δημιουργούν παιδαγωγικές συνθήκες
διαφορετικές από αυτές που απαντώνται στις συμβατικές τάξεις. Οι δυνατότητες που
παρέχουν οι υπολογιστές, και κυρίως η ευελιξία τους στον τομέα της
εξατομικευμένης διδασκαλίας, μεταβάλλουν τις ισορροπίες και τις σχέσεις που
αναπτύσσονται στο μαθησιακό περιβάλλον, καθώς και το ρόλο των υποκειμένων που
το διαμορφώνουν. Είναι, λοιπόν, σαφές ότι σε τέτοιες παιδαγωγικές προσεγγίσεις ο
ρόλος του δασκάλου δεν θα μπορούσε να παραμείνει ως είχε.

Η εξάπλωση των υπολογιστών στην καθημερινότητα των ανθρώπων, και κυρίως


η είσοδός τους στην εκπαίδευση προκάλεσε την ανησυχία έως και την εξ ολοκλήρου
αρνητική στάση ορισμένων εκπαιδευτικών. Πρόκειται για μια στάση που πολύ
έντονα θυμίζει τις αντιδράσεις των εργατών απέναντι στις μεθόδους
αυτοματοποίησης της παραγωγής, καθώς εκφράζονται φόβοι περί αντικαταστάσεως
των εκπαιδευτικών από ευφυή προγράμματα υπολογιστών. Φυσικά και τέτοιοι φόβοι
είναι εντελώς αβάσιμοι, καθώς ο εκπαιδευτικός είναι βασικότατη συνιστώσα της
παιδαγωγικής διαδικασίας, για να μπορεί να παρακαμφθεί. Η συγκεκριμένη στάση
των εκπαιδευτικών αναφέρεται από τον Kazeroni (2006), αν και σπεύδει να
παρατηρήσει ότι υπάρχει μια μεγάλη μερίδα δασκάλων που επιθυμούν να διανθίσουν
τη διδασκαλία τους, ενισχύοντάς τη με τη χρήση υπολογιστή, αλλά αδυνατούν να
βρουν μια συγκεκριμένη μεθοδολογία και διδακτική προσέγγιση, προκειμένου να
επιτύχουν κάτι τέτοιο.

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

33
μεγάλο βαθμό από τις δυνατότητες και τους περιορισμούς της πλατφόρμας
διδασκαλίας που θα χρησιμοποιηθεί (πρόγραμμα CALL), σε κάθε περίπτωση είναι
αναγκαίο να εξασφαλίζεται η αλληλεπίδραση μεταξύ δασκάλου και προγράμματος
(Webster και Murphy, 2008). Πιο συγκεκριμένα, ο εκπαιδευτικός έχει τη δυνατότητα
να υιοθετήσει ένα συγκεκριμένο τρόπο διδασκαλίας και να επιλέξει την εφαρμογή ή
τις εφαρμογές CALL που θα τον υπηρετήσουν κατά το δυνατόν καλύτερα. Επιπλέον
όμως, θα πρέπει να παρέχεται και η δυνατότητα από τα ίδια τα προγράμματα στον
εκπαιδευτικό να επιφέρει αλλαγές στον τρόπο δόμησης τους αλλά και στη σειρά
παρουσίασης των διαφόρων δραστηριοτήτων, προκειμένου να ανταπεξέλθει στις
μαθησιακές συνθήκες που προκύπτουν, καθώς το περιβάλλον μάθησης είναι κάτι
δυναμικό και μεταβάλλεται διαρκώς.

Η στάση των εκπαιδευτικών απέναντι στα προγράμματα υπολογιστών για τη


διδασκαλία μιας γλώσσας, όπως ήδη έχει αναφερθεί, ποικίλουν ανάμεσα στην
απόλυτα θετική και στην απόλυτα αρνητική στάση. Ορισμένοι από τους δασκάλους
που πρόσκεινται αρνητικά στην CALL αιτιολογούν τη στάση τους αυτή
παραθέτοντας τα απογοητευτικά αποτελέσματα της χρήσης διαφόρων εφαρμογών
CALL ως προς την επίδοση των μαθητών. Επιπλέον, υποστηρίζουν ότι δεν έχουν
έλεγχο πάνω στην επιλογή του περιεχομένου, στην οργάνωση αλλά και στον τρόπο
παρουσίασης του εκπαιδευτικού υλικού, καθώς τα περισσότερα προγράμματα είναι
κλειστά ως προς τη λειτουργία τους, μην επιτρέποντας αλλαγές ή παραμετροποιήσεις
(Bancheri, 2006). Μια τέτοια όμως παροχή δυνατότητας στους εκπαιδευτικούς θα
έπρεπε να συνοδεύεται και από αντίστοιχη κατάρτιση, καθώς οι αρχές ανάπτυξης και
λειτουργίας μιας εφαρμογής CALL δεν ταυτίζονται με δραστηριότητες και εργασίες
που χρησιμοποιούσαν οι δάσκαλοι ήδη στην τάξη, καθώς οι συνθήκες εργασίας και
μάθησης είναι διαφορετικές. Παράλληλα, έχει παρατηρηθεί ότι αρκετοί εκπαιδευτικοί
έχουν την τάση, κατά τη διάρκεια κατάρτισης δραστηριοτήτων, να υιοθετούν τεχνικές
και μεθόδους που ήταν αποτελεσματικές στο παρελθόν, αλλά είναι ασύμβατες με
δραστηριότητες βασισμένες στους υπολογιστές, καθώς έχουν διαφορετικούς
προσανατολισμούς (Kazeroni, 2006).

Είναι λοιπόν προφανές ότι η δραστηριοποίηση ενός εκπαιδευτικού στο χώρο του
σχεδιασμού, ανάπτυξης και χρησιμοποίησης εφαρμογών CALL πρέπει να
συνοδεύεται και από ανάλογη κατάρτισή τους. Ο Kazeroni (2006) προτείνει ένα
τέτοιο σχέδιο εκπαίδευσης δασκάλων πάνω στη διδασκαλία της γλώσσας μέσω

34
υπολογιστή, το οποίο μπορεί να πραγματοποιηθεί σε δύο φάσεις. Στην πρώτη φάση οι
εκπαιδευτικοί ασκούνται στην αξιολόγηση των διαθέσιμων τεχνολογιών ή
προγραμμάτων, τα οποία θα μπορούσαν να αξιοποιηθούν σε μια τάξη CALL. Πιο
συγκεκριμένα, η διδασκαλία μια γλώσσας με τη χρήση υπολογιστή ακολουθεί την
τάση όλων των σύγχρονων παιδαγωγικών προσεγγίσεων, στις οποίες ο εκπαιδευτικός
σταματάει να είναι φορέας γνώσης και αναλαμβάνει το ρόλο του διευκολυντή της
διαδικασίας απόκτησης της γνώσης, η οποία πλέον γίνεται μαθητοκεντρική. Μέσα σε
αυτές τις συνθήκες και το μαθησιακό περιβάλλον, ο δάσκαλος πρέπει να είναι σε
θέση να αναγνωρίζει τα θετικά και αρνητικά στοιχεία προγραμμάτων CALL και να
επιλέγει εκείνα που θα οδηγήσουν με τον καλύτερο δυνατό τρόπο τους μαθητές στην
επίτευξη των ζητούμενων γλωσσικών στόχων.

Η δεύτερη φάση της κατάρτισης των εκπαιδευτικών εμβαθύνει ακόμα


περισσότερο σε ζητήματα CALL, με την ενθάρρυνση να αναλάβουν ενεργό
συμμετοχή στη δημιουργία ή τροποποίηση των διαθέσιμων προγραμμάτων. Πιο
συγκεκριμένα, οι εκπαιδευτικοί, μέσα από τη βαθύτερη γνώση δομών και μεθόδων
εφαρμογών CALL, μπορούν να προσαρμόσουν το υπάρχον διδακτικό υλικό, ή να
προσθέσουν και δικό τους, προκειμένου να επιτύχουν τους στόχους της διδασκαλίας
τους. Σε αυτό το σημείο βέβαια πρέπει να τονίσουμε ότι δεν είναι απαραίτητο οι
δάσκαλοι να αποκτήσουν πλήρως εξειδικευμένες προγραμματιστικές γνώσεις, αλλά
να αντιλαμβάνονται τις δυνατότητες και τους περιορισμούς των νέων τεχνολογιών,
προκειμένου να καθοδηγήσουν τους προγραμματιστές στην ανάπτυξη συγκεκριμένων
προγραμμάτων για τη διδασκαλία μιας γλώσσας.

2.6 Τεχνολογίες CALL

Από τη στιγμή που η CALL χρησιμοποιεί τον υπολογιστή ως βασικό εργαλείο


διδασκαλίας, οι διάφορες τεχνολογικές εξελίξεις στο χώρο της πληροφορικής είναι
αναπόφευκτο να επηρεάζουν τη μορφή και τις δυνατότητες των προγραμμάτων που
χρησιμοποιούνται για τη διδασκαλία μιας γλώσσας. Οι δραστηριότητες που
περιλαμβάνονται μέσα σε μια εφαρμογή CALL εξαρτώνται από τις δυνατότητες του
προγράμματος αλλά και του υπολογιστικού συστήματος, το οποίο το εκτελεί. Οι

35
Levy και Stockwell (2006) αναφέρουν χαρακτηριστικά τρεις κατηγορίες
τεχνολογικών εξελίξεων, που επηρεάζουν τη μορφή και τις δυνατότητες ενός
προγράμματος διδασκαλίας μιας γλώσσας:

 Στον τρόπο παρουσίασης της πληροφορίας (πολυμέσα, γραφικά, ήχος).


 Στην αποθηκευτική ικανότητα (CD-ROM, DVD-ROM, BlueRay), η οποία
όσο μεγαλώνει, τόσο επιτρέπει την εισαγωγή περισσότερου υλικού στην
εφαρμογή (κείμενα, ηχητικές καταχωρήσεις, βίντεο κ.α.).
 Στις δυνατότητες ανατροφοδότησης και αυτονομίας του συστήματος από τον
προγραμματιστή.

Στη συνέχεια της συγκεκριμένης ενότητας επιχειρείται η παρουσίαση ορισμένων


μορφών προγραμμάτων CALL, και γίνεται αναφορά σε τεχνολογικές εξελίξεις που
επηρέασαν τη μορφή και τον τρόπο λειτουργίας εφαρμογών διδασκαλίας της
γλώσσας.

2.6.1 Συγγραφικά Εργαλεία (authoring tools)

Η συγκεκριμένη κατηγορία λογισμικού διδασκαλίας της γλώσσας ξεφεύγει


από τα στενά όρια των προγραμμάτων που απευθύνονται σε μαθητές και έχουν ως
κύριο αποδέκτη τον εκπαιδευτικό. Πιο συγκεκριμένα, πρόκειται για ψηφιακές
πλατφόρμες, οι οποίες δίνουν τη δυνατότητα στους δασκάλους να δημιουργήσουν
δραστηριότητες στοχευμένες στις ανάγκες των μαθητών τους. Οι δυνατότητες αυτών
των συγγραφικών πακέτων ποικίλουν ως προς τη μορφή και τα επιμέρους στοιχεία
τους. Επιπλέον, οι εκπαιδευτικοί μπορούν, χρησιμοποιώντας τα εν λόγω λογισμικά,
να δημιουργήσουν είτε μεμονωμένες δραστηριότητες, είτε ένα αρκετά μεγάλο
διδακτικό πακέτο, με σαφείς διδακτικούς στόχους και επιδιώξεις.

Ένα επιμέρους χαρακτηριστικό στοιχείο που έχει κάνει την εμφάνισή του σε
διδακτικά πακέτα των τελευταίων ετών είναι η διαδικτυακή δυνατότητα των
συγκεκριμένων προγραμμάτων, που μπορεί να έχει και άμεσες επιπτώσεις τόσο στη
μορφή όσο και στη λειτουργία τους. Σχολιάζοντας τις δυνατότητες αυτές, οι Arneil
και Holmes (2003) επισημαίνουν ότι οι διαδικτυακές δραστηριότητες που έχουν
δημιουργηθεί από ένα συγγραφικό εργαλείο μπορεί να είναι βασισμένες στον
εξυπηρετούμενο υπολογιστή (client based), όπου το περιεχόμενο τους υπάρχει και

36
λειτουργεί στον υπολογιστή του χρήστη, και βασισμένες σε εξυπηρετητή (server
based), όπου αυτό το περιεχόμενο υπάρχει και χρησιμοποιείται σε έναν
απομακρυσμένο υπολογιστή και ο χρήστης έχει πρόσβαση σε αυτόν με τον δικό του
υπολογιστή, ο οποίος χρησιμοποιείται ως τερματικό.

Όπως έχει ήδη αναφερθεί, οι ψηφιακές πλατφόρμες δημιουργίας


δραστηριοτήτων διακρίνονται σε δύο διαφορετικές κατηγορίες. Από τη μία μεριά
έχουμε τα συγγραφικά εργαλεία από τα οποία προκύπτουν μεμονωμένες
δραστηριότητες για τη διδασκαλία μιας γλώσσας, και από την άλλη εργαλεία για τη
συγγραφή διδακτικών πακέτων. Η πρώτη κατηγορία των εν λόγω προγραμμάτων
εμφανίζει ένα σημαντικό μειονέκτημα ως προς την οργάνωση των μεμονωμένων
δραστηριοτήτων και την ενσωμάτωσή τους σε ένα γενικότερο πλαίσιο ασκήσεων ή
και διδακτικών προσεγγίσεων. Ένα παράδειγμα, προκειμένου να γίνει αντιληπτό το
προαναφερθέν μειονέκτημα, είναι το σύστημα βαθμολόγησης. Πιο συγκεκριμένα, οι
βαθμολογίες εκπονούνται μεμονωμένα για κάθε άσκηση, χωρίς να εντάσσονται σε
ένα γενικότερο πλαίσιο, με αξιολόγηση της γλωσσικής παραγωγής π.χ. ανά επίπεδο
ανάλυσης της γλώσσας (μορφολογία, σύνταξη, σημασιολογία κ.τ.λ.).

2.6.2 Συνομιλίες

Η μορφή και οι δυνατότητες των εφαρμογών CALL εξαρτώνται κατά πολύ


από τις τεχνολογικές εξελίξεις στο χώρο της πληροφορικής. Μια από τις δυνατότητες
που εντάχθηκε σε τέτοια προγράμματα διδασκαλίας της γλώσσας ήταν και αυτή της
πραγματοποίησης συνδιαλέξεων ανάμεσα σε χρήστες. Η συγκεκριμένη δυνατότητα
έχει βελτιωθεί σημαντικά, με τη χρησιμοποίηση ήχου αλλά και βίντεο σε αυτές τις
συνομιλίες.

Η δυνατότητα αυτή, που ενσωματώνεται πλέον στα περισσότερα


προγράμματα διδασκαλίας μιας γλώσσας, είναι πάρα πολύ σημαντική, καθώς
επιτρέπει την επικοινωνία του χρήστη - μαθητή είτε με φυσικούς ομιλητές της
γλώσσας που μαθαίνει, είτε με άλλους σπουδαστές της ίδιας γλώσσας, τους οποίους
χωρίζουν μεγάλες αποστάσεις. Μέσα, επομένως, από την ηλεκτρονική εκδοχή μιας
συνδιάλεξης επιτυγχάνεται το διδακτικό πλαίσιο που περιγράφει ο Vygkotsky στη
θεωρία του, με την αλληλεπίδραση μαθητών μεταξύ τους, έστω και διαδικτυακά.

37
Οι τεχνολογικές εξελίξεις στο χώρο των υπολογιστών βελτίωσαν κατά πολύ
τόσο την μορφή όσο και την ποιότητα αυτών των «ηλεκτρονικών» συνομιλιών. Οι
πρώτες εκδοχές αυτών των συνδιαλέξεων απαιτούσαν, ως μέσο εισαγωγής κειμένου
στον υπολογιστή, την πληκτρολόγησή του. Αυτό, κατ' ουσίαν, είναι μια
δραστηριότητα στην οποία δεν είναι όλοι εξασκημένοι και, λόγω του γεγονότος
αυτού, μια τέτοια συνομιλία μπορεί να φαίνεται εξαιρετικά απαιτητική. Όπως θα
αναφερθεί και στο επόμενο κεφάλαιο, εξελιγμένοι τρόποι εισαγωγής κειμένου στον
υπολογιστή (αναγνώριση φωνής) οδηγούν στην απλούστευση αυτών των
δραστηριοτήτων ως προς το χειρισμό τους, επιτρέποντας στους μαθητές - χρήστες να
επικεντρώσουν την προσοχή τους σε ζητήματα που αφορούν κυρίως το γλωσσικό
σύστημα που προσπαθούν να κατακτήσουν.

Τέλος, η εξέλιξη της ποιότητας και του εύρους των διαδικτυακών συνδέσεων
βοήθησε κατά πολύ στη βελτίωση των συνομιλιών μέσω υπολογιστή, καθώς η
γρηγορότερη μεταφορά περισσότερων δεδομένων επέτρεψε τόσο τη συζήτηση σε
πραγματικό χρόνο (συγχρονισμένη επικοινωνία), όσο και την αποστολή αρχείων
ήχου και βίντεο, για την πιο ζωντανή απεικόνιση αυτής της δραστηριότητας.

2.6.3 Αναγνώριση Oμιλίας

Μια από τις εξελίξεις στο χώρο της πληροφορικής που είχε άμεσο αντίκτυπο
στα προγράμματα διδασκαλίας μιας γλώσσας ήταν και η δυνατότητα του υπολογιστή
να αναγνωρίζει την ανθρώπινη ομιλία και να την εισάγει με τη μορφή κειμένου.
Πρόκειται για μια εξέλιξη που έδωσε άλλη ώθηση στα μέσα εισαγωγής δεδομένων
στους υπολογιστές, καθώς δεν προϋποθέτει καμία δεξιότητα από τη μεριά του χρήστη
(π.χ. ικανότητα πληκτρολόγησης), αλλά στηρίζεται σε δεξιότητες που ήδη κατέχει και
χρησιμοποιεί στην καθημερινή του ζωή (προφορικός λόγος). Αυτό έχει σαν
αποτέλεσμα το περιβάλλον διάδρασης των διαφόρων εφαρμογών υπολογιστών να
γίνεται απλούστερο και προσιτό σε μεγαλύτερο αριθμό χρηστών. Όπως, άλλωστε,
υποστηρίζει και ο Hardison (2004), η αναγνώριση φωνής αποτελεί επανάσταση στις
μεθόδους εισόδου δεδομένων (data input), καθώς δεν απαιτεί από το χρήστη τη
δυνατότητα πληκτρολόγησης, απλά τη δυνατότητα της ομιλίας.

38
Η αρχή στην οποία βασίζονται τα περισσότερα προγράμματα αναγνώρισης
ομιλίας είναι η κωδικοποίηση των ήχων σε ψηφιακή μορφή και η σύγκρισή τους με
μοντέλα που έχουν ήδη καταχωρηθεί σε μια βάση δεδομένων. Η ψηφιοποίηση των
ήχων γίνεται μέσα από το φάσμα συχνοτήτων τους και την απομόνωση των
ιδιαίτερων χαρακτηριστικών που παρουσιάζει σε αυτό ο κάθε φθόγγος. Το πρόβλημα
που ανακύπτει έγκειται στο γεγονός ότι η εκφορά κάθε φθόγγου διαφοροποιείται από
άτομο σε άτομο, με αποτέλεσμα να υπάρχουν και διαφοροποιήσεις στις συχνότητες
τους. Τα προγράμματα αντιπαρέρχονται την παραπάνω δυσκολία με μια διαδικασία
που λέγεται "εκπαίδευση του προγράμματος" (program training), όπου ο κάθε
χρήστης εισάγει στο σύστημα συγκεκριμένες εκφορές, οι οποίες καταχωρούνται σε
μια βάση δεδομένων, προκειμένου να αναγνωρίζονται οι φθόγγοι κατά τη γλωσσική
εκφορά του εν λόγω χρήστη.

Υπάρχουν δύο διαφορετικές μορφές τεχνολογίας αναγνώρισης φωνής (Levy


και Stockwell, 2008):

A) Διακριτή αναγνώριση φωνής

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

Β) Συνεχής αναγνώριση φωνής

Πρόκειται για μια πιο περίπλοκη διαδικασία, η οποία επιτρέπει στο σύστημα να
αναγνωρίσει οτιδήποτε ειπωθεί από τη μεριά του χρήστη σε μια συγκεκριμένη
γλώσσα, καθιστώντας την τεχνική αυτή απαραίτητο εργαλείο σε ανοικτού τύπου
δραστηριότητες, όπου οι πιθανές διαφορετικές γλωσσικές παραγωγές είναι αδύνατο
να προβλεφθούν. Ο μηχανισμός που χρησιμοποιείται σε αυτή τη μορφή αναγνώρισης

39
ομιλίας είναι τα κρυφά μοντέλα Markov (ΗΜΜ), που καταχωρούν και αναγνωρίζουν
αλληλουχίες φωνημάτων με βάση στατιστικές μεθόδους.

2.6.4 «Φορητή» Μάθηση

Πρόκειται για μια τεχνολογική προέκταση της CALL, η οποία πήρε μεγάλη
ώθηση τα τελευταία χρόνια, με την εξάπλωση της χρήσης φορητών συσκευών, όπως
τα κινητά τηλέφωνα και οι υπολογιστές χειρός (PDA). Επιπλέον, σημαντική
τεχνολογική εξέλιξη που βοήθησε ακόμα περισσότερο στην εξάπλωση αυτών των
συσκευών ήταν και η δυνατότητα ασύρματων δικτύων (Wi - Fi).

Το ενδιαφέρον των προγραμματιστών για αυτές τις συσκευές έγινε


περισσότερο έντονο με την προσθήκη σε αυτές διαφόρων στοιχείων που τους έδιναν
μεγαλύτερη δυνατότητα αλληλεπίδρασης με το χρήστη, όπως μεγαλύτερη οθόνη
υψηλότερης ανάλυσης, ισχυρότεροι επεξεργαστές, μεγαλύτερη μνήμη,
ενσωματωμένη κάμερα κ. α. Όλα αυτά τα μέσα δίνουν τη δυνατότητα ανάπτυξης
λογισμικού, που να χρησιμοποιεί αυτούς τους πόρους με στόχο τη διδασκαλία μιας
γλώσσας. Βέβαια, όπως υποστηρίζει και ο Roschelle (2003), οι δυνατότητες αυτών
των συστημάτων είναι περιορισμένες, καθώς σε καμία περίπτωση δε μπορούν να
συγκριθούν με τις επιδόσεις επιτραπέζιων υπολογιστών. Πρότεινε μάλιστα, για την
εξυπηρέτηση των σκοπών της CALL, τη χρησιμοποίηση εφαρμογών με σχετικά
μικρές απαιτήσεις σε υπολογιστική ισχύ, όπως προγράμματα συγγραφής mail και
SMS.

Πάντως, η εξέλιξη των φορητών αυτών συσκευών και των δυνατοτήτων τους
είναι διαρκής και προσφέρει καινούριες προκλήσεις σε προγραμματιστές και
εκπαιδευτικούς, ως προς την ανάπτυξη εφαρμογών CALL. Οι Homer και Thornton
(2004) εντοπίζουν δύο κατηγορίες τεχνολογικών επιτευγμάτων που μπορούν να
δώσουν επιπλέον ώθηση στη λεγόμενη "φορητή" μάθηση:

 Μεγαλύτερες δυνατότητες σε υπολογιστική ισχύ. Κάτι τέτοιο θα σήμαινε πιο


περίπλοκες εφαρμογές, με χρήση πολυμέσων και πιο εξεζητημένες
δραστηριότητες.
 Βελτίωση της δυνατότητας λήψης δεδομένων από το διαδίκτυο
(downloading). Αυτό το γεγονός θα βοηθούσε στη μείωση του κόστους

40
υπηρεσιών για τη λήψη αρχείων βίντο ή και ήχου, τα οποία θα μπορούσαν να
χρησιμοποιηθούν σε ένα online πρόγραμμα διδασκαλίας της γλώσσας.

2.7 Ερευνητικά Ερωτήματα

Όπως έχει ήδη αναφερθεί ήδη στο κεφάλαιο 1.2 περί του σκοπού της παρούσας
εργασίας, στόχος μας είναι η ανάπτυξη ενός προγράμματος, το οποίο θα παρουσιάζει
στοιχεία ενός λογισμικού CALL, ούτως ώστε να μπορεί να αποτελέσει τη βάση για
ένα προϊόν που να μπορεί να χρησιμοποιηθεί σε μια τάξη για τη διδασκαλία της
ελληνικής γλώσσας ως δεύτερης ή ξένης. Πιο συγκεκριμένα, στοχεύουμε στη
δημιουργία ενός αλγορίθμου, ο οποίος να είναι σε θέση να επεξεργάζεται απλές
προτάσεις της νέας ελληνικής. Οι προτάσεις αυτές θα στηρίζονται σε ένα βασικό
λεξιλόγιο, το οποίο θα έχει ως θέμα τις δραστηριότητες σε μια σχολική τάξη, θα
παρουσιάζουν πολύ απλές συντακτικές δομές (μόνο ένα ρήμα στην πρόταση, απουσία
συνδέσμων και προσδιορισμών) και θα αναφέρονται σε χρόνο ενεστώτα της
ενεργητικής φωνής. Το πρόγραμμά μας, προκειμένου να θεωρηθεί ότι λειτουργεί
σωστά, πρέπει να είναι σε θέση να καλύπτει τα εξής σημεία:

 Να αναγνωρίζει τις σωστές γραμματικά και συντακτικά προτάσεις.


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

41
2.8 Επεξηγήσεις Συντομογραφιών Που Χρησιμοποιούνται

Α.Ι. – Artificial Intelligence (= τεχνητή νοημοσύνη)


C.A.I. – Computer Assisted Instruction (= εκπαίδευση με τη βοήθεια
υπολογιστή)
C.A.L.L. – Computer Assisted Language Learning (= διδασκαλία της γλώσσας
με τη βοήθεια υπολογιστή)
CD–ROM – Compact Disk Read Only Memory (= συμπαγής δίσκος μνήμης
μόνο ανάγνωσης)
C.L. – Computational Linguistics (= υπολογιστική γλωσσολογία)
DVD–ROM – Digital Video Disk Read Only Memory (= ψηφιακός
βιντεοδίσκος μνήμης μόνο ανάγνωσης)
G.U.I. – Graphic User Interface (= γραφικό περιβάλλον διάδρασης χρήστη)
Η.Μ.Μ. – Hidden Markov Models (= κρυφά μοντέλα Μαρκόφ)
I.D.E. – Integrated Development Environment (= ενσωματωμένο περιβάλλον
ανάπτυξης)
Μ.Β. – Megabytes (= μεγκαμπάιτ, μονάδα μέτρησης χωρητικότητας της μνήμης)
Μ.Τ. – Machine Translation (= αυτόματη μετάφραση)
N.L.P. – Natural Language Processing (= επεξεργασία φυσικής γλώσσας)
P.D.A. – Personal Digital Assistant (= προσωπικός ψηφιακός βοηθός)
S.M.S. – Short Message Service (= υπηρεσία σύντομων μηνυμάτων)

42
Κεφάλαιο 3
Μεθοδολογία

43
3.1 Εργαλεία Ανάπτυξης

Τα κεφάλαια που προηγήθηκαν του συγκεκριμένου πονήματος είχαν ως


σκοπό να οριοθετήσουν το θεωρητικό πλαίσιο, πάνω στο οποίο θα στηριχθεί η
ανάπτυξη του συγκεκριμένου λογισμικού. Αυτό που εμφανίζει περισσότερο
ενδιαφέρον είναι η εξέταση των διαφόρων θεωρητικών μοντέλων, τα οποία
καθορίζουν τη μορφή, αλλά και τον τρόπο λειτουργίας ενός προγράμματος για τη
διδασκαλία μιας γλώσσας. Επιπλέον, πραγματοποιήθηκε μια γενική επισκόπηση των
τεχνικών και των μέσων που διατίθενται σε ερευνητές που ασχολούνται με την
CALL, προκειμένου να αναπτύξουν μια σχετική εφαρμογή.

Πέρα από το θεωρητικό μοντέλο και τις γενικές δυνατότητες που δίνονται από
το χώρο της πληροφορικής, το εγχείρημα της ανάπτυξης ενός λογισμικού για τη
διδασκαλία της γλώσσας θα πρέπει να υλοποιηθεί με τη χρησιμοποίηση κατάλληλων
"εργαλείων", που άπτονται κυρίως της προγραμματιστικής πλευράς της προσπάθειας
αυτής και λιγότερο της παιδαγωγικής. Πιο συγκεκριμένα, πρόκειται για μορφές
αλγορίθμων, τεχνικές κατάτμισης γλωσσικών παραγωγών (parsing techniques) και,
κυρίως, η γλώσσα προγραμματισμού, μέσω της οποίας θα υλοποιηθεί το εν λόγω
πρόγραμμα.

Στο συγκεκριμένο κεφάλαιο θα παρουσιαστούν συνοπτικά όλες οι


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

3.1.1 Η Γλώσσα Προγραμματισμού Visual Prolog

Η γλώσσα προγραμματισμού Visual Prolog είναι μια επέκταση της Prolog,


μιας γλώσσας ιδιαίτερα χρησιμοποιημένης σε περιπτώσεις εφαρμογών τεχνητής
νοημοσύνης (artificial intelligence) και υπολογιστικής γλωσσολογίας. Πιο
συγκεκριμένα, η Visual Prolog διατηρεί σε ένα μεγάλο βαθμό τα ιδιαίτερα
χαρακτηριστικά της Prolog, από την άλλη όμως έχει το δικό της χαρακτήρα και τις

44
δικές της ιδιαιτερότητες, που τη διαφοροποιούν από τη "μητρική" της γλώσσα. Οι
σημαντικότερες διαφορές της εντοπίζονται στο γεγονός ότι είναι αντικειμενοστραφής
(object - oriented) και ότι προσφέρει στον προγραμματιστή τη δυνατότητα
δημιουργίας γραφικού περιβάλλοντος διάδρασης (GUI) για την εφαρμογή που
πρόκειται να αναπτύξει (De Boer, 2009).

Η Prolog είναι μια λογική γλώσσα προγραμματισμού, καθώς στηρίζεται στις


αρχές της μαθηματικής λογικής (first - order logic). Η ανάπτυξή της οφείλεται στην
ιδέα που αναδύθηκε στις αρχές της δεκαετίας του εβδομήντα, η οποία πρότεινε τη
χρησιμοποίηση της μαθηματικής λογικής ως γλώσσας προγραμματισμού. Από αυτήν
την ιδέα, άλλωστε, προέρχεται και η ονομασία της γλώσσας (PROgramming in
LOGic). Στους αρχικούς εμπνευστές αυτής της ιδέας περιλαμβάνονται οι Robert
Kowalski (θεωρητικό μέρος), Maarten van Emden (παρουσίαση) και Alain
Colmerauer (ανάπτυξη).

Η Prolog διαφέρει από τις περισσότερες γλώσσες προγραμματισμού στο ότι


είναι δηλωτική (declarative) γλώσσα και όχι διαδικαστική (procedural). Πιο
συγκεκριμένα, η προγραμματιστική λογική που τη διέπει εκφράζεται μέσω δήλωσης
των σχέσεων που υπάρχουν ανάμεσα σε συγκεκριμένα στοιχεία. Η δήλωση αυτή
γίνεται με τη βοήθεια των δύο βασικότερων δομικών σχημάτων της γλώσσας, τα
δεδομένα (facts) και τους κανόνες (rules).

H Prolog στηρίζεται σε ένα μικρό σύνολο μηχανισμών, όπως αντιστοίχιση


μοτίβων, αυτόματη αναζήτηση προς τα πίσω (backtracking) και δημιουργία δομών
δεδομένων μορφής δέντρου (tree-based data structuring). Αυτό το μικρό σύνολο
μηχανισμών, όμως, συνιστά ένα ισχυρό αλλά και ευέλικτο πλαίσιο προγραμματισμού
(Bratko, 2001). Βασικό χαρακτηριστικό αυτής της γλώσσας είναι η προσομοίωση της
λογικής διαδικασίας της επαγωγής. Αναλυτικότερα, οι μηχανισμοί της PROLOG
επιχειρούν, κατά τη διάρκεια λειτουργίας του αλγορίθμου, να αποδείξουν εάν μια
πρόταση ή συνθήκη που έχει εισάγει ο χρήστης στο σύστημα μπορεί να επαχθεί από
τους κανόνες και τα δεδομένα που υπάρχουν στον αλγόριθμο αυτό.

Η Visual Prolog επιλέχθηκε ως η πιο ενδεδειγμένη προγραμματιστική


πλατφόρμα για την υλοποίηση του συγκεκριμένου πονήματος για τους εξής λόγους:

45
 Το αρχείο εγκατάστασής της είναι σχετικά μικρό (περίπου 25 MB) και
διατίθεται δωρεάν για ερευνητικούς σκοπούς και για προσωπική
χρήση. Αυτό την καθιστά εύκολα και άμεσα χρησιμοποιήσιμη.
 Έχει τη δυνατότητα να επεξεργάζεται ελληνικούς χαρακτήρες και
ελληνικές γραμματοσειρές.
 Διατηρεί ακέραιους τους μηχανισμούς επαγωγής και backtracking της
Prolog, χαρακτηριστικά απαραίτητα για τη δημιουργία parser και την
επεξεργασία φυσικής γλώσσας (NLP).
 Προσφέρει στον προγραμματιστή ένα γραφικό περιβάλλον ανάπτυξης,
σε αντίθεση με τη γραμμή εντολών της Prolog, διευκολύνοντάς τον
κατά τη δημιουργία του αλγορίθμου.
 Δίνει τη δυνατότητα για ανάπτυξη εφαρμογών με γραφικό περιβάλλον
χειρισμού (GUI) για το χρήστη, καθιστώντας τα προγράμματα αυτά
τόσο πιο θελκτικά όσο και πιο λειτουργικά γι’ αυτόν.
 Είναι ιδανική για δενδρικές αναπαραστάσεις δεδομένων, μέσω των
οποίων μπορεί να απεικονιστεί η συντακτική δομή των προτάσεων που
πρόκειται να αναλυθούν από το πρόγραμμα.

3.1.2 Δενδρικές Μορφές Δεδομένων

Ο πιο συνηθισμένος τρόπος για την αναπαράσταση μιας πρότασης μέσω


αποδόμησης της στα συστατικά της στοιχεία (φράσεις και λέξεις) είναι η δενδρική
μορφή δεδομένων. Η ιδέα για το συγκεκριμένο τρόπο αναπαράστασης των
γλωσσικών εκφορών διαμορφώθηκε κυρίως μέσω των απόψεων και θεωριών που
διατύπωσε ο Noam Chomsky και αφορούν στη δομή και τη λειτουργία των
γλωσσικών συστημάτων, στην προσπάθεια του να βρει ένα καθολικό μοντέλο
(universal model) ερμηνείας τους.

Στο βιβλίο του «Συντακτικές Δομές», ο Chomsky προτείνει το δικό του


θεωρητικό μοντέλο για τη δομή των γλωσσικών συστημάτων, διαμορφώνοντας τη
θεωρία της «μετασχηματιστικής γραμματικής». Ο Chomsky εισήγαγε την ιδέα της
τυπικής γραμματικής (formal grammar), όρου καθαρά μαθηματικού, για να
περιγράψει ένα γλωσσικό σύστημα. Η τυπική γραμματική ουσιαστικά είναι ένα
σύνολο κανόνων που απεικονίζουν μαθηματικώς ένα απειροσύνολο, που αποτελείται

46
από αλληλουχίες πεπερασμένου αριθμού συμβόλων που ονομάζεται αλφάβητο
(Jurafsky & Martin, 2000). Η αναλογία με ένα γλωσσικό σύστημα είναι εμφανής,
καθώς υπάρχει μία γραμματική με κανόνες που καθορίζουν εάν μια αλληλουχία
λέξεων (πρόταση) είναι αποδεκτή ή όχι. Οι διαφορετικές προτάσεις που μπορούν να
δημιουργηθούν είναι άπειρες, ενώ το σύνολο των λέξεων μιας γλώσσας, ως δομικά
στοιχεία των προτάσεων, είναι πεπερασμένος, αν και μεγάλος.

Το πιο σημαντικό στοιχείο για την περιγραφή ενός γλωσσικού συστήματος,


σύμφωνα με τη θεωρία του Chomsky, είναι η γραμματική. Πρόκειται για ένα
πεπερασμένο σύνολο κανόνων, το οποίο διαδραματίζει διπλό ρόλο. Καταρχήν,
καθορίζει εάν μια γλωσσική εκφορά (φράση ή πρόταση) είναι αποδεκτή από το
γλωσσικό σύστημα ή όχι. Επιπλέον, με τη χρήση των συγκεκριμένων κανόνων
μπορεί να διεκπεραιωθεί ο καθορισμός της συντακτικής δομής μιας πρότασης και του
τρόπου με τον οποίο τα συστατικά της στοιχεία συνδέονται μεταξύ τους.

Οι κανόνες που συνθέτουν μια γραμματική μπορούν να ταξινομηθούν σε δύο


κατηγορίες: phrase structure rules (κανόνες δομής της φράσης) και lexical rules
(λεξιλογικοί κανόνες). Στην πρώτη κατηγορία ανήκουν κανόνες που σκοπό έχουν να
αναλύσουν την πρόταση ή επιμέρους φράσεις στα συστατικά τους στοιχεία. Έχουν τη
γενική μορφή μιας εξίσωσης, στο αριστερό μέρος της οποίας εμφανίζεται το σύμβολο
της πρότασης ή φράσης και στο δεξί το σύνολο των συμβόλων των επιμέρους
στοιχείων που την αποτελούν και στα οποία μπορεί να αναλυθεί. Το μεγαλύτερο
λεκτικό σύνολο, από το οποίο ξεκινάει η περαιτέρω ανάλυση μιας γλωσσικής
εκφοράς είναι η πρόταση, η οποία συνήθως συμβολίζεται με το αρχικό σύμβολο S.

S → NP VP (3.1)

Στη συνέχεια ακολουθούν διαδοχικές αναλύσεις των συστατικών στοιχείων, έως ότου
προκύψει μία αναπαράσταση που περιλαμβάνει σύμβολα που αντιστοιχούν σε
γραμματικές κατηγορίες λέξεων. Σε αυτό το σημείο τίθενται σε εφαρμογή οι κανόνες
της δεύτερης κατηγορίας (λεξιλογικοί), οι οποίοι αναλαμβάνουν τη σύνδεση των
συμβόλων γραμματικών κατηγοριών με τις λέξεις που αντιστοιχούν σε αυτά.

N → άλογο (3.2)

Τα σύμβολα που χρησιμοποιούνται στους κανόνες και των δύο κατηγοριών


ανήκουν επίσης σε δύο κατηγορίες. Η πρώτη κατηγορία περιλαμβάνει τα μη

47
τερματικά σύνολα, τα οποία μπορούν να αναλυθούν περαιτέρω με βάση κάποιον από
τους κανόνες της γραμματικής (π.χ. NP). Η δεύτερη κατηγορία περιλαμβάνει τα
τερματικά σύμβολα, τα οποία δεν μπορούν να αναλυθούν περισσότερο και, κατ’
επέκταση, τερματίζουν την ανάλυση της πρότασης. Σε μια τέτοια γραμματική τα
τερματικά σύμβολα είναι ουσιαστικά οι λέξεις που αποτελούν την πρόταση.

Η αναπαράσταση της συντακτικής δομής μιας πρότασης, που προκύπτει από


την ανάλυση της μέσω των κανόνων της γραμματικής, συνήθως παρουσιάζεται με τη
μορφή δέντρου και αποτελεί τη λεγόμενη «δενδρική δομή δεδομένων» (tree data
structure). Η ονομασία της περιγράφει ουσιαστικά τη μορφή της, η οποία μοιάζει με
ανεστραμμένο δέντρο. Η συγκεκριμένη μορφή αναπαράστασης δεδομένων
αποτελείται από δύο στοιχεία: τους κόμβους και τις συνδέσεις. Οι κόμβοι ουσιαστικά
είναι τα σύμβολα, τερματικά και μη, που περιλαμβάνονται στους κανόνες της
γραμματικής. Οι συνδέσεις είναι οι γραμμές που υποδηλώνουν τις σχέσεις ανάμεσα
στους κόμβους, καθώς αυτοί αναλύονται στα δομικά τους στοιχεία. Ο αρχικός
κόμβος της δενδρικής αναπαράστασης ονομάζεται «ρίζα» και βρίσκεται στο πάνω
μέρος της. Οι κόμβοι που δεν μπορούν να αναλυθούν περισσότερο ονομάζονται
«φύλλα» και βρίσκονται στο κάτω μέρος της αναπαράστασης. Στην περίπτωση της
συντακτικής αναπαράστασης μιας πρότασης, η «ρίζα» του δέντρου είναι το σύμβολο
της πρότασης (S) και τα «φύλλα» οι λέξεις που την αποτελούν (τερματικά σύμβολα).
Για παράδειγμα, η πρόταση «Ο κηπουρός ποτίζει τον κήπο.» έχει τη συντακτική
αναπαράσταση του Σχ. 3.1.

Σχ. 3.1. Γραφική αναπαράσταση της συντακτικής δομής της πρότασης «Ο κηπουρός ποτίζει τον κήπο.».

48
3.1.3 Τεχνικές Kατάτμησης (Parsing Techniques)

Η κεντρική διαδικασία που περιλαμβάνεται σε έναν αλγόριθμο επεξεργασίας


της φυσικής γλώσσας ονομάζεται «κατάτμηση» (parsing). Η έννοια του parsing
διαπερνά τα στενά όρια της γλωσσολογίας κι έχει ένα ευρύτερο περιεχόμενο,
περιγράφοντας τη διαδικασία κατά την οποία ένας αλγόριθμος λαμβάνει ένα
δεδομένο εισαγωγής (input) και στη συνέχεια παράγει ένα είδος δομής για αυτό
(Jurafsky & Martin, 2000).

Στη συγκεκριμένη περίπτωση, όπου έχουμε αλγόριθμο επεξεργασίας εκφορών


φυσικής γλώσσας, μπορούμε να κάνουμε τον ορισμό του parsing ακόμα πιο
συγκεκριμένο. Επομένως, πρόκειται για τη διαδικασία που ο αλγόριθμος δέχεται μια
πρόταση φυσικής γλώσσας και την επεξεργάζεται, προκειμένου να παράγει μια
δενδρική αναπαράσταση της συντακτικής της δομής.

Η διαδικασία του parsing είναι κατ’ ουσίαν μια ερευνητική διαδικασία. Ο


αλγόριθμος αναζητά από το σύνολο όλων των πιθανών δενδρικών αναπαραστάσεων
της συντακτικής δομής μιας πρότασης αυτήν που περιγράφει σωστά και πλήρως την
πρόταση που έχει εισαχθεί. Αυτό το σύνολο καθορίζεται από τη γραμματική του
συγκεκριμένου γλωσσικού συστήματος. Στόχος της διαδικασίας είναι η ανεύρεση
ενός δέντρου του οποίου η «ρίζα» είναι το αρχικό σύμβολο «S» και οι απολήξεις του,
τα «φύλλα», είναι οι λέξεις της πρότασης που έχει εισαχθεί στο σύστημα. Η
διαδικασία εύρεσης καθορίζεται από δύο περιορισμούς, οι οποίοι υφίστανται λόγω
της φύσεως της δενδρικής αναπαράστασης. Ο πρώτος είναι οι ίδιες οι λέξεις που
απαρτίζουν την πρόταση και ο δεύτερος η γραμματική, η οποία καθορίζει σαν αρχικό
σύμβολο και «ρίζα» της αναπαράστασης το «S». Αυτοί οι δύο περιορισμοί
αναδεικνύουν τις δύο βασικές στρατηγικές ανευρέσεως που χαρακτηρίζουν έναν
αλγόριθμο ανάλυσης: την ανίχνευση από πάνω προς τα κάτω (top-down) ή
κατευθυνόμενη από το στόχο (goal directed) και την ανίχνευση από κάτω προς τα
πάνω (bottom-up) ή κατευθυνόμενη από τα δεδομένα (data directed).

Η πρώτη στρατηγική έχει ως αφετηρία της το αρχικό σύμβολο «S», ξεκινάει


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

49
συνεχεία, χρησιμοποιώντας τους κανόνες που εμπεριέχονται στη γραμματική,
επιδιώκει να αναλύσει αρχικά το «S» και στη συνέχεια τα υπόλοιπα μη τερματικά
σύμβολα που προκύπτουν, όσο το δυνατόν περισσότερο, έως ότου καταλήξει στα
τερματικά σύμβολα, δηλαδή στις λέξεις που απαρτίζουν την εισαχθείσα πρόταση.
Εάν κάτι τέτοιο δεν καταστεί εφικτό, ο αλγόριθμος τερματίζεται δηλώνοντας
αποτυχία.

Η δεύτερη στρατηγική ακολουθεί την ακριβώς αντίθετη διαδικασία, έχοντας


ως αφετηρία τις λέξεις που απαρτίζουν την εισαχθείσα στο σύστημα πρόταση. Στη
συνέχεια, επιχειρεί να δημιουργήσει τη δενδρική αναπαράσταση της συντακτικής
δομής συνθέτοντας φράσεις από τα συστατικά τους στοιχεία, με βάση τους κανόνες
της γραμματικής. Σε αυτή τη διαδικασία οι κανόνες λαμβάνονται υπόψη αντίστροφα,
από το δεξί μέρος προς το αριστερό. Η διαδικασία αυτή ανασύνθεσης θεωρείται
επιτυχής όταν καταλήξει στο αρχικό σύμβολο «S», το οποίο θα καλύπτει ολόκληρη
την εισαχθείσα πρόταση.

Κάθε μία από αυτές τις αλγοριθμικές στρατηγικές εμφανίζει τα


πλεονεκτήματα και τα μειονεκτήματα της. Η στρατηγική από πάνω προς τα κάτω δεν
αναλώνεται στο να ανιχνεύσει δενδρικές αναπαραστάσεις που δεν έχουν ως «ρίζα» το
αρχικό σύμβολο «S», καθώς ξεκινάει να δημιουργεί ακριβώς τέτοια δέντρα. Στην
περίπτωση της από κάτω προς τα πάνω στρατηγικής, δενδρικές αναπαραστάσεις που
δεν καταλήγουν στο σύμβολο «S», δημιουργούνται κανονικά και στη συνέχεια
εγκαταλείπονται. Από την άλλη μεριά, η πρώτη στρατηγική έχει κι αυτή τις
αδυναμίες της. Αν και δε χάνει χρόνο να δημιουργεί αναπαραστάσεις που ξεκινάνε με
το «S», οδηγεί σε δενδρικές δομές που δεν συμφωνούν με την πρόταση που έχει
εισαχθεί. Η αδυναμία αυτών των αλγοριθμικών στρατηγικών έγκειται στο γεγονός ότι
ξεκινούν να δημιουργούν δέντρα χωρίς να εξετάσουν καθόλου την πρόταση, κάτι που
εκμεταλλεύεται η κατευθυνόμενη από τα δεδομένα στρατηγική.

3.1.4 Προσέγγιση Ενοποίησης Χαρακτηριστικών (Unification-based Approach)

Οι στρατηγικές και τα χαρακτηριστικά των αλγορίθμων, που έχουν


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

50
την ανάλυση της στα δομικά της συστατικά και στη μελέτη του τρόπου που αυτά
συνδυάζονται μεταξύ τους, προκειμένου να προκύψουν πιο περίπλοκες συντακτικές
δομές, φτάνοντας στο επίπεδο της πρότασης. Η συγκεκριμένη διαδικασία, όμως,
παρουσιάζει μια εγγενή αδυναμία. Η αδυναμία αυτή έγκειται στο γεγονός ότι τα
δομικά συστατικά μιας πρότασης δεν συνδέονται τυχαία προκειμένου να
σχηματίσουν δομές ανωτέρου επιπέδου. Θα πρέπει να ισχύσουν συγκεκριμένες
προϋποθέσεις που έχουν σχέση με τα επιμέρους χαρακτηριστικά των συνθετικών
αυτών στοιχείων.

Προκειμένου να καταστεί περισσότερο σαφής η παραπάνω διαπίστωση, θα


δοθεί ένα συγκεκριμένο παράδειγμα πρότασης:

Το παιδί παίζει στον κήπο. (3.3)

Η ονοματική φράση «το παιδί» σχηματίζεται από το συνδυασμό του άρθρου «το» με
το ουσιαστικό «παιδί». Όμως δεν είναι αποδεκτή οποιαδήποτε σύνθεση άρθρου και
ουσιαστικού για το σχηματισμό μιας ονοματικής φράσης. Έτσι, για παράδειγμα οι
φράσεις

* τα παιδί (3.4)

* ο παιδί (3.5)

* του παιδί (3.6)

δεν είναι γραμματικά αποδεκτές, έστω κι αν πρόκειται για ένα φραστικό σύνολο
αποτελούμενο από ένα άρθρο και από ένα ουσιαστικό. Προκειμένου να καθοριστεί
και να ερμηνευθεί η συγκεκριμένη αδυναμία σχηματισμού φράσης, εισήχθη από τους
γλωσσολόγους η έννοια της «ασυμφωνίας» (disagreement).

Πιο συγκεκριμένα, μια λέξη, πλην της σημασιολογικής της ταυτότητας, φέρει
και μια σειρά πληροφοριών που καθορίζουν τη γραμματική της ταυτότητα. Το
σύνολο των γραμματικών πληροφοριών που χαρακτηρίζουν μια λέξη εκφράζεται με
ένα σύνολο από ζεύγη ιδιοτήτων-τιμών. Πρόκειται για μια σειρά από ιδιότητες, που
διαφέρουν ανάλογα με τη γραμματική κατηγορία της λέξης (αριθμός, πτώση, γένος,
πρόσωπο κ.α.), και οι οποίες παίρνουν μια συγκεκριμένη τιμή, ανάλογα με το κλιτικό
παράδειγμα της συγκεκριμένης λέξης (ενικός, ονομαστική, αρσενικό, τρίτο κ.α.).

51
Όσον αφορά στο παράδειγμα (3.3), οι γραμματικές πληροφορίες για τις δύο λέξεις
που σχηματίζουν την ονοματική φράση έχουν ως εξής:

το → γένος: ουδέτερο, πτώση: ονομαστική, αριθμός: ενικός (3.7)

παιδί → γένος: ουδέτερο, πτώση: ονομαστική, αριθμός: ενικός (3.8)

Ένας αλγόριθμος βασισμένος στην ενοποίηση χαρακτηριστικών (unification-


based) έχει ένα διπλό ρόλο στη διαδικασία της ανάλυσης μιας πρότασης. Κατά
πρώτον, ενισχύει τον αλγόριθμο με επιπλέον γλωσσολογικές πληροφορίες σχετικά με
τις λέξεις και τις φράσεις της πρότασης. Κατά δεύτερον, αποτρέπει τον
υπερσχηματισμό προτάσεων (overgeneration - σχηματισμός μη γραμματικών
προτάσεων), θέτοντας συγκεκριμένους περιορισμούς κατά τη διάρκεια σχηματισμού
τους.

Ένας τέτοιος αλγόριθμος μπορεί να θέσει τρεις διαφορετικούς τύπους


περιορισμών στη διαδικασία σχηματισμού ή ανάλυσης μιας πρότασης:

i. Υπάρχουν περιορισμοί στις ιδιότητες που εμφανίζονται σε μια γραμματική


κατηγορία. Για παράδειγμα, ένα ρήμα δεν μπορεί να φέρει στη λίστα των
ιδιοτήτων του την ιδιότητα «πτώση».
ii. Υπάρχουν περιορισμοί στις τιμές που μπορεί να πάρει μια ιδιότητα. Επομένως,
απορρίπτονται ζεύγη ιδιοτήτων-τιμών του τύπου «πτώση: ενικός», καθώς είναι
αδύνατος ο σχηματισμός τους.
iii. Κατά τη διάρκεια του συνδυασμού τους, προκειμένου να σχηματίσουν
προτάσεις, οι λέξεις ή φράσεις θα πρέπει να ακολουθούν τον κανόνα της
ενοποίησης (rule of unification), ο οποίος καθορίζει ποιοι από τους
συνδυασμούς θα είναι αποδεκτοί από το σύστημα. Πιο συγκεκριμένα, δύο
συστατικά μέρη μπορούν να ενοποιηθούν και να σχηματίσουν ανώτερο
συντακτικό σχηματισμό αν και μόνο αν οι γραμματικές ιδιότητες τους είναι
τελείως διαφορετικές, ή αν περιέχουν κοινά ζεύγη ιδιοτήτων-τιμών. Στην
περίπτωση που οι δύο σχηματισμοί έχουν την ίδια ιδιότητα αλλά με
διαφορετική τιμή, δεν πραγματοποιείται ενοποίηση.

52
Ο κανόνας της ενοποίησης χειρίζεται επιτυχώς πολλές ιδιάζουσες περιπτώσεις,
όπως συμφωνία αριθμού, συμφωνία υποκειμένου - ρήματος κ.α. Ως παράδειγμα του
πως λειτουργεί ο συγκεκριμένος κανόνας μπορεί να θεωρηθεί ο μη γραμματικός
σχηματισμός (3.4) που αναφέρθηκε παραπάνω («τα παιδί»). Πιο συγκεκριμένα, το
άρθρο «τα» εμπεριέχει στη λίστα των γραμματικών του ιδιοτήτων το ζευγάρι
«αριθμός: πληθυντικός». Από την άλλη, το ουσιαστικό «παιδί» έχει στη δική του
λίστα το ζευγάρι «αριθμός: ενικός». Όταν οι δύο αυτές λέξεις συνδυαστούν για να
σχηματίσουν μια ονοματική φράση, ο κανόνας της ενοποίησης απορρίπτει το
σχηματισμό της, καθώς η ιδιότητα «αριθμός» εμφανίζεται με δύο διαφορετικές τιμές.

3.2 Μεθοδολογία Ανάπτυξης Του Λογισμικού

Αν ληφθούν υπόψη όλα όσα έχουν αναφερθεί στα προηγούμενα κεφάλαια του
πονήματος αυτού, μπορεί να εξαχθεί το συμπέρασμα ότι η ανάπτυξη ενός λογισμικού
που προορίζεται ως βοήθημα για τη διδασκαλία της γλώσσας είναι μια περίπλοκη
διαδικασία που περιλαμβάνει πολλά στάδια. Ο δημιουργός (προγραμματιστής ή
εκπαιδευτικός), με μια ανασκόπηση σε όλη την υπάρχουσα σχετική βιβλιογραφία,
διαθέτει πολλαπλές επιλογές σε θέματα που άπτονται στόχων, μεθόδων και
διαδικασιών, στοιχεία τα οποία θα πρέπει να αξιολογήσει, στα πλαίσια του δικού του
υπό δημιουργία διδακτικού υλικού, και στη συνέχεια να αποφασίσει ποια από αυτά
θα υιοθετήσει, προκειμένου να ικανοποιήσει τους διδακτικούς ή προγραμματιστικούς
στόχους που έχει θέσει.

Από τα παραπάνω διαφαίνεται ότι η υλοποίηση ενός λογισμικού CALL δεν


είναι μια απλή διαδικασία και ούτε μπορεί να ξεκινήσει απότομα. Χρειάζεται
προσεκτικό σχεδιασμό, τόσο στο σύνολο του προγράμματος, όσο και στα επιμέρους
δομικά του στοιχεία. Μέσα από αυτή τη διαδικασία ο προγραμματιστής /
εκπαιδευτικός θα αποτυπώσει τις στρατηγικές του και τις μεθόδους που θα
επιστρατεύσει, ούτως ώστε να υλοποιηθούν οι σκοποί που έχει διατυπώσει. Ο
σχεδιασμός μπορεί να προειδοποιήσει τον προγραμματιστή για διάφορα ατοπήματα
προγραμματιστικής ή άλλης φύσης, τα οποία ενδεχομένως να προκαλέσουν
δυσλειτουργίες στο πρόγραμμα, και γενικότερα σκιαγραφεί μια πορεία που θα πρέπει
να ακολουθηθεί ώστε να ολοκληρωθεί το λογισμικό. Θα πρέπει να παρατηρηθεί ότι
οι αποφάσεις που έχουν ληφθεί και αποτυπωθεί στο σχεδιασμό του προγράμματος

53
δεν είναι τελεσίδικες και αμετάβλητες. Συνεχώς αξιολογούνται, κυρίως μέσω της
ανατροφοδότησης στα διάφορα στάδια της υλοποίησης, και σε περίπτωση
δυσλειτουργίας ή απόκλισης από τους αναμενόμενους στόχους, διαφοροποιούνται ή
αντικαθίστανται.

Το συγκεκριμένο κεφάλαιο ασχολείται με τη διαδικασία του σχεδιασμού και


τα στάδια υλοποίησης του λογισμικού. Αρχικά δίνεται μια γενική περιγραφή της
αρχιτεκτονικής του λογισμικού, με την απαραίτητη αιτιολόγηση που συνοδεύει τις
συγκεκριμένες επιλογές. Στη συνέχεια, ξεκινάει μια αναλυτική αναφορά του τρόπου
λειτουργίας του αλγορίθμου σε όλα τα επιμέρους δομικά του στοιχεία, με ιδιαίτερη
όμως έμφαση σε εκείνα τα λειτουργικά μέρη που εμφανίζουν περισσότερο
ενδιαφέρον στα πλαίσια του τομέα της υπολογιστικής γλωσσολογίας.

3.2.1 Συνοπτική Περιγραφή Της Αρχιτεκτονικής Του Προγράμματος

Λαμβάνοντας υπόψη τη θεωρία πάνω στο σχεδιασμό, η οποία έχει ήδη


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

Όπως έχει ήδη αναφερθεί, το εύρος του συγκεκριμένου λογισμικού είναι


αρκετά περιορισμένο, καθώς στους βασικούς σκοπούς δεν είναι η ανάπτυξη ενός
ολοκληρωμένου εμπορικού προϊόντος, κάτι το οποίο χρειάζεται μια πλειάδα ειδικών,
προκειμένου να ολοκληρωθεί με επιτυχία. Η προσπάθεια αυτή έχει επικεντρωθεί
κυρίως στην ολοκλήρωση ενός αλγορίθμου, ο οποίος μπορεί να αποτελέσει τη βάση
για τη δημιουργία ενός τέτοιου προϊόντος. Βασική επιδίωξη είναι να δοκιμαστούν
διάφοροι μηχανισμοί και μέθοδοι, προκειμένου να πραγματοποιείται έλεγχος σε
προτάσεις γραπτού λόγου στη νέα ελληνική γλώσσα, οι οποίες εισάγονται μέσω
πληκτρολόγησης από το χρήστη – μαθητή.

Προκειμένου να επιτευχθεί κατά το δυνατόν περισσότερο ο στόχος που είχε


τεθεί, ο συγκεκριμένος αλγόριθμος θα πρέπει να έχει μια συγκεκριμένη δομή, η οποία
θα του επιτρέπει να χειριστεί με επιτυχία τα δεδομένα που εισάγονται με τη μορφή

54
προτάσεων, αλλά παράλληλα να ανταπεξέρχεται και στους περιορισμούς που τίθενται
από τα χαρακτηριστικά και τις ιδιαιτερότητες της γλώσσας προγραμματισμού, η
οποία χρησιμοποιείται για την ανάπτυξή του.

Καταρχήν, είναι σημαντικό να σημειωθεί ότι, τόσο για λόγους διευκόλυνσης


του προγραμματιστή, όσο και προς αντιμετώπιση των δυσκολιών που ενδεχομένως
να ανέκυπταν κατά τη διάρκεια της ανάπτυξης του λογισμικού (με τη μορφή bugs του
προγράμματος), ο εν λόγω αλγόριθμος χωρίζεται σε συγκεκριμένα δομικά στοιχεία,
κάθε ένα από τα οποία επιτελεί και μια διαφορετική λειτουργία. Τα επιμέρους αυτά
στοιχεία συνεργάζονται υπό την καθοδήγηση μιας κεντρικής αλγοριθμικής
διαδικασίας (procedure) και τα αποτελέσματα των λειτουργιών τους
χρησιμοποιούνται προκειμένου να δοθεί στο χρήστη μια ξεκάθαρη πληροφορία για
την ορθότητα ή μη της πρότασης που έχει εισάγει στο σύστημα. Τα συγκεκριμένα
δομικά στοιχεία, όπως και ο τρόπος διασύνδεσης και επικοινωνίας μεταξύ τους
φαίνεται στο Σχ. 3.2.

Σχ. 3.2. Αρχιτεκτονική του αλγορίθμου

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

Η αλληλεπίδραση του χρήστη με το συγκεκριμένο πρόγραμμα


πραγματοποιείται μέσω των συσκευών εισαγωγής και παρουσίασης δεδομένων. Οι
συγκεκριμένες συσκευές έχουν ενσωματωθεί σε μια κοινή φόρμα, η οποία
παρουσιάζεται κατά την εκτέλεση του προγράμματος και περιέχει ένα πεδίο για την
εισαγωγή της πρότασης μέσω πληκτρολόγησης. Τα αποτελέσματα της διόρθωσης των
δεδομένων που εισάγονται κατ’ αυτόν τον τρόπο παρουσιάζονται στο χρήστη υπό τη
μορφή αναδυόμενων παραθύρων (pop-up windows), τα οποία εμπεριέχουν τις
απαραίτητες πληροφορίες που αναφέρονται στην ορθότητα ή μη της πρότασης και
στην υπόδειξη ενδεχόμενων λαθών που υπάρχουν.

Ο τρόπος εισαγωγής της πρότασης, όπως καθορίζεται από τις δυνατότητες της
γλώσσας προγραμματισμού, συνεπάγεται τη δημιουργία μιας αλληλουχίας ελληνικών
χαρακτήρων (character string). Ο συγκεκριμένος τύπος δεδομένων, προκειμένου να
τον επεξεργαστούν τα ακόλουθα στοιχεία του αλγορίθμου, πρέπει να μετατραπεί σε
συγκεκριμένη μορφή, δηλαδή σε μια λίστα λέξεων (word list). Τη συγκεκριμένη
διαδικασία αναλαμβάνει το φίλτρο εισαγωγής, το οποίο στη συνέχεια διοχετεύει τη
λίστα αυτή στη γραμματική.

Η γραμματική είναι το βασικό δομικό στοιχείο του αλγορίθμου. Πρόκειται για


ένα σύνθετο εξάρτημα, το οποίο αναλαμβάνει να εκτελέσει όλη τη διαδικασία
ελέγχου της πρότασης που έχει εισαχθεί από το χρήστη, να εντοπίσει τυχόν λάθη που
έχουν γίνει και στη συνέχεια να παράσχει όλες τις σχετικές πληροφορίες,
προκειμένου να δοθούν προς παρουσίαση από τη συσκευή παρουσίασης δεδομένων.
Προκειμένου να φέρει εις πέρας όλες τις παραπάνω λειτουργίες, η γραμματική έχει
ενσωματωμένα επιμέρους τμήματα, τα οποία τις αναλαμβάνουν χωριστά. Έτσι ο
κατατμιτής (parser) αναλαμβάνει να αντιστοιχίσει την πρόταση σε συγκεκριμένη
συντακτική δομή και περιέχει συντακτικούς κανόνες που ουσιαστικά αποτελούν τη
γραμματική του συστήματος. Ο αλγόριθμος ενοποίησης (unification algorithm)

56
ελέγχει τα χαρακτηριστικά (features) των λέξεων ή φράσεων, προκειμένου να
αποφανθεί για το αν μπορούν να συνδυαστούν σε συντακτικές δομές ανωτέρου
επιπέδου. Ο διορθωτής (checker) χρησιμοποιεί τη διαδικασία ενοποίησης,
προκειμένου να καταγράψει τα λάθη που έχουν γίνει από το χρήστη κατά το
σχηματισμό της πρότασης και στη συνέχεια να διοχετεύσει τις πληροφορίες αυτές
στο φίλτρο εξόδου.

Οι πληροφορίες των χαρακτηριστικών καθεμιάς από τις λέξεις που


απαρτίζουν την πρόταση που έχει εισαχθεί βρίσκονται αποθηκευμένες σε ένα τμήμα
του αλγορίθμου που ονομάζεται λεξικό. Πρόκειται για μια λίστα, η οποία περιέχει τη
γραφημική αναπαράσταση της κάθε λέξης, τη γραμματική της κατηγορία και τα
ιδιαίτερα χαρακτηριστικά της. Σε μια προσπάθεια να μειωθεί η χωρητικότητα του
λεξικού, αποφεύγοντας την αποθήκευση όλων των κλιτικών παραδειγμάτων μιας
λέξης, δημιουργήθηκε και ένας μορφολογικός αναλυτής, ο οποίος περιέχει
καταλήξεις κλιτών μερών του λόγου, από τις οποίες η γραμματική μπορεί να εξάγει
συμπληρωματικά χαρακτηριστικά μιας λέξης (χρόνος, πρόσωπο, πτώση κ.τ.λ.).

Τέλος, οι πληροφορίες που αναφέρονται στην ορθότητα της πρότασης και στα
ενδεχόμενα λάθη που υπάρχουν σε αυτή πρέπει να τροποποιηθούν κατάλληλα και να
πάρουν τη μορφή συγκεκριμένου μηνύματος, το οποίο θα δοθεί στο χρήστη μέσα από
ένα αναδυόμενο παράθυρο. Τη διαδικασία αυτής της τροποποίησης αναλαμβάνει το
φίλτρο εξόδου.

3.2.2 Η Διαδικασία Εισαγωγής Των Δεδομένων

Βασικό δομικό στοιχείο ενός προγράμματος υπολογιστή είναι ο τρόπος


επικοινωνίας του με το χρήστη, το περιβάλλον διάδρασης του χρήστη (user interface).
Ουσιαστικά πρόκειται για ένα υπολογιστικό περιβάλλον, το οποίο σε παλαιότερες
εποχές αποτελούνταν από γραπτές εντολές με συγκεκριμένη σύνταξη (command
prompt), ενώ σήμερα έχει εξελιχθεί σε γραφική αναπαράσταση (graphical user
interface – GUI), πάνω στην οποία ο χρήστης παρεμβαίνει με τη βοήθεια δύο
σημαντικών περιφερειακών συσκευών ενός υπολογιστικού συστήματος, του
πληκτρολογίου και του ποντικιού. Τα αποτελέσματα των επιλογών του, καθώς και

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

Στις περισσότερες περιπτώσεις λογισμικών, ο χρήστης εισάγει στο


σύστημα μια επιθυμία του, με τρόπο που καθορίζεται από τη φύση του λογισμικού
και το περιβάλλον διάδρασης, και το σύστημα με τη σειρά του προβαίνει στις
απαραίτητες ενέργειες, ώστε να ικανοποιήσει την επιθυμία αυτή. Πάνω σε αυτό το
μοτίβο είναι βασισμένο και το εν λόγω λογισμικό, με το χρήστη να εισάγει μια
πρόταση στο σύστημα και να ζητάει από αυτό να αξιολογήσει τον ορθότητα της και
να υποδείξει τα λάθη που έχουν γίνει σε περίπτωση σφάλματος. Το περιβάλλον
διάδρασης, επομένως, είναι απαραίτητο να παρέχει στο χρήστη ένα μέσο εισαγωγής
μιας τέτοιας πρότασης στο σύστημα. Αυτό αναλαμβάνει η συσκευή εισόδου
δεδομένων, όπως αναφέραμε και στην περιγραφή της αρχιτεκτονικής του
αλγορίθμου.

Εικόνα 3.1. Το γραφικό περιβάλλον διάδρασης.

Στο συγκεκριμένο λογισμικό που αναπτύχθηκε, τόσο η συσκευή εισόδου όσο


και η συσκευή εξόδου δεδομένων είναι ενσωματωμένες σε ένα είδος φόρμας, το

58
οποίο αποτελεί και το γραφικό περιβάλλον διάδρασης του χρήστη (Εικ. 3.1). Σε αυτό
το παράθυρο δίνονται στο χρήστη οι οδηγίες για τη χρησιμοποίηση του
προγράμματος, με τη μορφή εκφώνησης άσκησης. Στο κέντρο περίπου της οθόνης
ξεχωρίζει ένα πλαίσιο που τιτλοφορείται «Πρόταση». Πρόκειται για ένα πλαίσιο
κειμένου, στο οποίο ο χρήστης μπορεί να πληκτρολογήσει την πρόταση που επιθυμεί,
προκειμένου αυτή να εισαχθεί στο σύστημα.

Όπως έχει ήδη αναφερθεί σε προηγούμενη ενότητα, η συσκευή εισόδου


δεδομένων παίρνει την πρόταση που έχει πληκτρολογηθεί από το χρήστη και τη
μεταφέρει στα υπόλοιπα δομικά στοιχεία του αλγορίθμου με τη μορφή ακολουθίας
χαρακτήρων (character string). Ο συγκεκριμένος τύπος δεδομένων δεν μπορεί να
υποστεί περαιτέρω επεξεργασία με την παρούσα μορφή. Σε αυτό το σημείο, το
πρόγραμμα χρησιμοποιεί τη διαδικασία tokenize, ούτως ώστε να μετατρέψει την
ακολουθία χαρακτήρων σε λίστα λέξεων (word list).

tokenize(S, [T|Ts]) :-
frontToken(S, T, R), !, tokenize(R, Ts).
tokenize(_, []).

Η συγκεκριμένη διαδικασία παίρνει κάθε λέξη της ακολουθίας, όπως αυτή χωρίζεται
από τις υπόλοιπες με κενό, και την προσθέτει ως ξεχωριστό στοιχείο μιας λίστας που
δημιουργεί εκείνη τη στιγμή. Έτσι η πρόταση «Το παιδί παίζει.» μετατρέπεται στη
λίστα λέξεων

[“το”, “παιδί”, “παίζει”, “.”] (3.9)

Όπως μπορεί να διαπιστωθεί, η τελευταία λέξη – στοιχείο της λίστας είναι η τελεία, η
οποία αποτελεί μεν σημείο στίξης και μέρος της πρότασης, αλλά δεν συγκαταλέγεται
στις άλλες λέξεις, οι οποίες περιλαμβάνονται στο λεξικό του αλγορίθμου. Το
πρόγραμμα, με την εντολή

Output1 = list::remove(SentenceList, ".")

απομακρύνει το στοιχείο αυτό από τη λίστα, προκειμένου τα υπόλοιπα στοιχεία να


διοχετευθούν στη γραμματική του προγράμματος, προς περαιτέρω επεξεργασία.

59
3.2.3 Η γραμματική

Όπως έχει ήδη σημειωθεί, πρόκειται για το βασικό τμήμα του αλγορίθμου, το
οποίο κατά τη διάρκεια της λειτουργίας του εμπλέκει και όλα τα υπόλοιπα,
αποτελώντας τον βασικό συνδετικό κρίκο όλης της δομής του προγράμματος. Ο
ρόλος της γραμματικής είναι πολύπλευρος, καθώς περιέχει υπό τη μορφή κανόνων
όλες εκείνες τις συντακτικές δομές που είναι αποδεκτές από την ελληνική γλώσσα,
οπότε αποφαίνεται για την ορθότητα των προτάσεων που εισάγει ο χρήστης.
Επιπλέον, διαθέτει διαδικασίες οι οποίες ανατρέχουν στο λεξικό και στο μορφολογικό
αναλυτή, λόγος για τα οποία γίνεται στο επόμενο κεφάλαιο, προκειμένου να
αναζητήσει πληροφορίες για τις λέξεις που εμπεριέχονται στην πρόταση και να
δημιουργήσει τη λίστα των χαρακτηριστικών τους (attribute – value pairs). Τέλος, η
γραμματική διαθέτει και μια διαδικασία ελέγχου, που λειτουργεί παράλληλα με τον
έλεγχο της ορθότητας της πρότασης, αναζητά συγκεκριμένα συντακτικά ή
γραμματικά λάθη και, στην περίπτωση που τα βρει, ενημερώνει το χρήστη με
αντίστοιχα μηνύματα πάνω στην οθόνη.

Στη συνέχεια θα πραγματοποιηθεί μια περισσότερο λεπτομερής επισκόπηση


των διαφόρων αλγοριθμικών στοιχείων που συνθέτουν τη γραμματική του
προγράμματος και θα γίνουν εκτενής αναφορές στον τρόπο λειτουργίας τους, τα
χαρακτηριστικά αλλά και τις αδυναμίες τους, εάν υπάρχουν. Η αφετηρία της
επισκόπησης θα είναι ο μηχανισμός ελέγχου της πρότασης (parser), ο οποίος έχει
επιλεχθεί με κύριο κριτήριο τη δυνατότητα επεξεργασίας προτάσεων της νέας
ελληνικής γλώσσας.

Ένα από τα βασικά στοιχεία της σύνταξης προτάσεων της ελληνικής


γλώσσας, που τη διαφοροποιούν από γλώσσες όπως η αγγλική, είναι ότι το
υποκείμενο και το αντικείμενο μιας πρότασης υποδεικνύονται από την πτώση στην
οποία βρίσκονται οι ονοματικές φράσεις που τα αποτελούν, και όχι από τη σειρά τους
μέσα στην πρόταση (πριν ή μετά το ρήμα). Πιο συγκεκριμένα, το υποκείμενο
βρίσκεται πάντα στην ονομαστική πτώση, ενώ το αντικείμενο στην αιτιατική πτώση.
Επομένως η πτώση είναι αυτή που υποδεικνύει εάν μια ονοματική φράση έχει
συντακτικό ρόλο υποκειμένου ή αντικειμένου. Αυτό το γεγονός καθιστά αδύνατη τη
δημιουργία μιας γραμματικής στον αλγόριθμο, η οποία να είναι βασισμένη σε
κανόνες φραστικής δομής (phrase – structure rules), οι οποίοι στηρίζονται στον

60
καθορισμό συγκεκριμένης σειράς των συντακτικών στοιχείων μιας πρότασης. Ο
αλγόριθμος θα πρέπει να μετασχηματιστεί, ούτως ώστε να αναζητά την πτώση σε μια
ονοματική φράση και στη συνέχεια να αποφαίνεται για το συντακτικό της ρόλο.

Η συγκεκριμένη ιδιαιτερότητα της ελληνικής γλώσσας επιβάλλει τη χρήση


ενός parser, ο οποίος να χρησιμοποιεί την «από κάτω προς τα πάνω» (bottom – up)
στρατηγική ανάλυσης της πρότασης. Έτσι θα ξεκινάει από τα βασικά δομικά στοιχεία
της πρότασης, δηλαδή τις λέξεις, και στη συνέχεια θα οικοδομεί ολοένα και πιο
περίπλοκες συντακτικές δομές, φτάνοντας στο σημείο που θα έχουμε μια
ολοκληρωμένη πρόταση. Για το σκοπό αυτό χρησιμοποιήθηκε στον αλγόριθμο η
τεχνική shift – reduce (Nugues, 2006).

Ο τρόπος με τον οποίο λειτουργεί η συγκεκριμένη τεχνική είναι σχετικά


απλός. Το πρόγραμμα αρχικά δημιουργεί μια στοίβα (stack), η οποία αποτελείται από
τις λέξεις που απαρτίζουν την πρόταση. Στη συνέχεια, παίρνει την πρώτη λέξη της
στοίβας, την αντικαθιστά με τη γραμματική κατηγορία της και στη συνέχεια την
τοποθετεί σε μια λίστα. Η συγκεκριμένη λειτουργία πραγματοποιείται από τη
διαδικασία shift, η οποία ορίζεται στο πρόγραμμα ως εξής:

shift([First|Rest], Stack, Rest, Newstack) :-


lex(First, Pos),
Newstack = append(Stack, [Pos]).

Η διαδικασία lex που εμφανίζεται στον πιο πάνω ορισμό έχει σχέση με το
λεξικό και το μορφολογικό αναλυτή, επομένως θα εξετασθεί στην επόμενη ενότητα
του παρόντος πονήματος. Πριν από κάθε επίκληση της διαδικασίας shift, η οποία
προσθέτει άλλη μια κατηγορία στη λίστα, ο αλγόριθμος ελέγχει εάν η ακολουθία των
γραμματικών κατηγοριών αντιστοιχεί σε κάποια συντακτική δομή, η οποία
καθορίζεται από «κανόνες δομής φράσης» (phrase structure rules) της μορφής:

match_rule([art(A), n(B)], np(C))

61
Ο πιο πάνω κανόνας ουσιαστικά ερμηνεύεται ως εξής: Εάν στη λίστα των
γραμματικών κατηγοριών εντοπισθεί η ακολουθία άρθρο (art) – ουσιαστικό (n), θα
πρέπει να αφαιρεθεί από τη λίστα και να αντικατασταθεί με μια ονοματική φράση (np).
Η διαδικασία του αλγορίθμου που αναλαμβάνει τον συγκεκριμένο έλεγχο και
αντικατάσταση ονομάζεται reduce και ορίζεται στον αλγόριθμο ως εξής:

reduce(Stack, Newstack) :-
combine(Stackbottom, Expansion, Stack),
match_rule(Expansion, Head),
Newstack = append(Stackbottom, [Head]).

Στην παραπάνω δήλωση της διαδικασίας reduce, αξίζει να σημειωθεί ότι η διαδικασία
match_rule είναι υπεύθυνη για να εξετάσει εάν και κατά πόσον υπάρχει κανόνας
δομής φράσης που να προβλέπει τη συγκεκριμένη αλληλουχία γραμματικών
κατηγοριών. Ουσιαστικά, η διαδικασία reduce μετασχηματίζει την ακολουθία των
γραμματικών κατηγοριών σε ακολουθία πολυπλοκότερων φραστικών δομών
(ονοματικές και ρηματικές φράσεις, εμπρόθετους προσδιορισμούς κ.α.). Η σύνθεση
όμως αυτών των ανώτερων συντακτικών δομών δε γίνεται αυτόματα, με την εύρεση
από τον αλγόριθμο απλά μιας αλληλουχίας γραμματικών κατηγοριών. Θα πρέπει να
ελεγχθεί εάν τα χαρακτηριστικά της μιας κατηγορίας είναι συμβατά με αυτά της
άλλης, ούτως ώστε να αποφευχθούν περιπτώσεις ασυμφωνίας γένους, πτώσης ή και
αριθμού. Όπως έχει ήδη αναφερθεί σε προηγούμενο κεφάλαιο, η αλγοριθμική τεχνική
που μπορεί να ελέγξει τη συμβατότητα μεταξύ χαρακτηριστικών είναι η ενοποίηση
(unification). Η τεχνική αυτή, στο συγκεκριμένο πρόγραμμα, έχει πάρει τη μορφή
μιας διαδικασίας που ονομάζεται unify και την οποία επικαλείται με τη σειρά της η
διαδικασία match_rule μέσα στον ορισμό της.

match_rule([art(A), n(B)], np(C)) :- !, unify(A, B, C).

Εντούτοις, η φύση του συγκεκριμένου προγράμματος δεν είναι απλά να


αποφαίνεται για την ορθότητα ή μη μιας πρότασης και να ενημερώνει το χρήστη
ανάλογα, αλλά και να παρέχει συγκεκριμένες πληροφορίες για τη φύση του λάθους
που έχει γίνει, ώστε ο χρήστης να προβεί στη διόρθωσή του. Επομένως, ο αλγόριθμος

62
πρέπει να εμπλουτιστεί, ώστε η διαδικασία unify να μην ελέγχει απλά τη
συμβατότητα των χαρακτηριστικών, αλλά να καθορίζει και το είδος αυτής της
ασυμβατότητας. Τον ρόλο αυτό τον αναλαμβάνει μια άλλη διαδικασία, η οποία
εντάσσεται μέσα στον ορισμό της unify, η οποία ονομάζεται check.

unify([H|Tail1], List, [H|Tail2]) :- check(H, List), !, unify(Tail1, List, Tail2).

H συγκεκριμένη διαδικασία εξετάζει εάν στη λίστα των χαρακτηριστικών υπάρχει


κάποιο, που εμφανίζεται δύο φορές με διαφορετική τιμή. Στην περίπτωση αυτή
ενημερώνει το χρήστη για την ασυμφωνία αυτή, προβάλλοντας στην οθόνη το
ανάλογο μήνυμα. Για παράδειγμα, στην περίπτωση που η διαδικασία check εντοπίσει
το χαρακτηριστικό number (αριθμός) με δύο διαφορετικές τιμές (ενικός –
πληθυντικός), η εφαρμογή θα τερματιστεί, ενώ στην οθόνη θα εμφανιστεί μήνυμα
που θα υποδεικνύει την ασυμφωνία στον αριθμό.

Στο σημείο αυτό πρέπει να σημειωθεί μια τεχνική που παρουσιάζει


φαινομενικά μια ασυμβατότητα με αυτά που αναφέρθηκαν σχετικά με την ελληνική
γλώσσα. Πιο συγκεκριμένα, έχει αναφερθεί ότι η σύνταξη της νέας ελληνικής είναι
περισσότερο ελεύθερη και δεν ακολουθεί την άκαμπτη αλληλουχία υποκείμενο -
ρήμα–- αντικείμενο, η οποία εμφανίζεται σε άλλες γλώσσες. Επομένως, οι κλασικοί
«κανόνες δομής φράσης» δεν μπορούν να υιοθετηθούν σε έναν αλγόριθμο που
επεξεργάζεται προτάσεις στα νέα ελληνικά. Πιο πριν, όμως, χρησιμοποιήθηκε ένας
τέτοιος κανόνας για να περιγράψει τη δομή της ονοματικής φράσης. Αυτό συμβαίνει
διότι σε επίπεδο φραστικής δομής ισχύουν συγκεκριμένοι κανόνες αλληλουχίας
γραμματικών κατηγοριών. Έτσι, για παράδειγμα, σε καμία περίπτωση το άρθρο δεν
μπορεί να ακολουθεί το ουσιαστικό σε μια ονοματική φράση. Αυτή η κλειστή και
άκαμπτη φραστική δομή δίνει τη δυνατότητα στον αλγόριθμο να χρησιμοποιήσει
«κανόνες δομής φράσης», προκειμένου να αναλύσει ή να συνθέσει χαμηλού επιπέδου
συντακτικές δομές, όπως οι ονοματικές φράσεις.

Επανερχόμενοι στον αλγόριθμο, οι διαδικασίες shift και reduce εφαρμόζονται


αλλεπάλληλα, αντικαθιστώντας τις λέξεις της πρότασης με γραμματικές κατηγορίες
και συνθέτοντας ανώτερες συντακτικές δομές. Ο parser, όμως, δεν καταλήγει στο

63
τερματικό σύμβολο S (για την πρόταση), όπως συμβαίνει σε κλασικούς bottom – up
parsers. Αντιθέτως, η ανάλυση φτάνει στο επίπεδο όπου έχουν επισημανθεί οι
φράσεις της πρότασης (ονοματικές, ρηματικές κ.τ.λ.) και ακολουθούνται από λίστες
ζευγών χαρακτηριστικών τιμών (attribute – value pairs), όπως αυτές έχουν προκύψει
από τη λειτουργία της ενοποίησης (unification). Το επόμενο βήμα στη λειτουργία της
γραμματικής είναι να καθοριστούν οι ονοματικές φράσεις που παίζουν συγκεκριμένο
συντακτικό ρόλο, δηλαδή το ρόλο του υποκειμένου και του αντικειμένου.

Προκειμένου να επιτευχθεί η συγκεκριμένη λειτουργία του αλγορίθμου και,


λαμβάνοντας υπόψη τα χαρακτηριστικά της νεοελληνικής σύνταξης, ορίζεται στο
πρόγραμμα η διαδικασία findsyntax.

findsyntax([], []).
findsyntax([Pos1|Tail], [Pos2|Tail2]) :-
findsub(Pos1, Pos2), findsyntax(Tail, Tail2).
findsyntax([Pos1|Tail], [Pos2|Tail2]) :-
findobj(Pos1, Pos2), findsyntax(Tail, Tail2).
findsyntax([vp(_A)|Tail], [vp(_A)|Tail2]) :- findsyntax(Tail, Tail2).

Η διαδικασία αυτή ανατρέχει τη λίστα των φράσεων της πρότασης, όπως αυτή έχει
προκύψει από τη λειτουργία της διαδικασίας shift – reduce, και απομονώνει
αποκλειστικά τις ονοματικές φράσεις, καθώς αυτές έχουν τη δυνατότητα του
συντακτικού ρόλου του υποκειμένου ή του αντικειμένου. Στη συνέχεια ψάχνει τη
λίστα των χαρακτηριστικών κάθε ονοματικής φράσης. Σε περίπτωση που η φράση
βρίσκεται σε πτώση ονομαστική, ο αλγόριθμος αποδίδει στη φράση το πρόθεμα
npsub, για να καταδείξει ότι λειτουργεί ως υποκείμενο της πρότασης. Εάν η φράση
βρίσκεται σε πτώση αιτιατική, ο αλγόριθμος της αποδίδει το πρόθεμα npobj,
χαρακτηρίζοντάς την αντικείμενο της πρότασης. Στις περιπτώσεις άλλων πτώσεων, ο
αλγόριθμος διατηρεί το πρόθεμα np στην αρχή της ονοματικής φράσης.

Η λειτουργία του αλγορίθμου που αποτελεί τη γραμματική του προγράμματος


ολοκληρώνεται με τον έλεγχο της συμφωνίας υποκειμένου – ρήματος. Πιο
συγκεκριμένα, το πρόγραμμα επικαλείται τη διαδικασία checksub, ο ορισμός της
οποίας ακολουθεί παρακάτω:

checksub(Phrases) :-
findsubfeats(Phrases, A),!,
64
findvpfeats(Phrases, B),!,
unify(A, B, C).
checksub(Phrases).

Η διαδικασία checksub λαμβάνει ως εισαγόμενα δεδομένα την αναμορφωμένη λίστα


των φράσεων που έχουν βρεθεί στην πρόταση, έτσι όπως αυτή έχει προκύψει από τη
λειτουργία της findsyntax. Στη συνέχεια, απομονώνει τα ζεύγη χαρακτηριστικών –
τιμών που αντιστοιχούν στην ονοματική φράση που λειτουργεί ως υποκείμενο της
πρότασης (npsub) και στη ρηματική φράση (vp). Ακολούθως, χρησιμοποιεί τη
διαδικασία unify, προκειμένου να ελέγξει εάν υπάρχει ενοποίηση των
χαρακτηριστικών αυτών. Σε περίπτωση που η ενοποίηση πραγματοποιηθεί, η unify
επιτυγχάνει και ο αλγόριθμος καταλήγει στην αποδοχή της γραμματικότητας της
πρότασης. Σε αντίθετη περίπτωση η unify αποτυγχάνει και ο αλγόριθμος τερματίζει
απότομα, προβάλλοντας το αντίστοιχο μήνυμα λάθους στο χρήστη.

3.2.4 Το λεξικό

Η προηγούμενη ενότητα ασχολήθηκε με το τμήμα εκείνο του αλγορίθμου που


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

Όπως φαίνεται και από την ίδια την ονομασία του συγκεκριμένου τμήματος
του αλγορίθμου, το λεξικό περιλαμβάνει έναν κατάλογο όλων των λέξεων, τις οποίες
αναγνωρίζει το πρόγραμμα, προκειμένου να τις αντιστοιχίσει με την ανάλογη
γραμματική κατηγορία, καθώς και με συγκεκριμένη λίστα ζευγών χαρακτηριστικών –
τιμών, η οποία βρίσκεται επίσης καταχωρημένη εκεί.

Η αφετηρία της λειτουργίας του λεξικού εντοπίζεται στην επίκληση της


διαδικασίας lex, η οποία αναλαμβάνει να ανατρέξει στο λεξικό και να ανασύρει τις
απαραίτητες πληροφορίες για κάποια συγκεκριμένη λέξη.

65
lex(Word, F) :- analyse(Word, _Stem, F), !.
lex(_Word, _F) :-
stdio::write("Αυτή η λέξη δεν υπάρχει μέσα στο λεξικό"), errorexit(1).

Στον παραπάνω ορισμό της lex, αυτό που εμφανίζει μεγαλύτερο ενδιαφέρον είναι η
δεύτερη γραμμή κώδικα. Αυτή περιλαμβάνει οδηγίες για την περίπτωση που μια λέξη
δεν περιλαμβάνεται μέσα στο λεξικό. Εάν συμβεί κάτι τέτοιο, το πρόγραμμα
ενημερώνει το χρήστη, προβάλλοντας το αντίστοιχο μήνυμα.

Η καταχώρηση κάθε λέξης στο λεξικό έχει μια συγκεκριμένη τυπολογία


(format), η οποία φαίνεται παρακάτω:

dictionary("ο", art([num(sing), gen(masc), case(nom)])).

Η καταχώρηση της λέξης γίνεται με τη μορφή γεγονότος (fact) στην ορολογία της
PROLOG, με την ονομασία dictionary. Αυτή εμφανίζει τρία χαρακτηριστικά. Το
πρώτο είναι η γραφημική αναπαράσταση της λέξης, μέσω της οποίας γίνεται η
αναζήτησή της από το πρόγραμμα. Ακολουθεί η ένδειξη της γραμματικής κατηγορίας
στην οποία ανήκει η συγκεκριμένη λέξη, με τη μορφή συντομογραφίας. Η
καταχώρηση ολοκληρώνεται με την ακολουθία των ζευγών χαρακτηριστικών –
τιμών, οργανωμένων υπό τη μορφή λίστας.

Η δημιουργία ενός λεξικού με όλες τις πιθανές λέξεις που μπορεί να


εισαχθούν στο συγκεκριμένο πρόγραμμα θα οδηγούσε στην κατάρτιση μιας λίστας
καταχωρήσεων, η οποία θα είχε πολύ μεγάλο μέγεθος, ιδιαίτερα εάν αναλογιστούμε
ότι τα κλιτά μέρη του λόγου παρουσιάζουν και πολλαπλά κλιτικά παραδείγματα.
Επιπλέον, η αναζήτηση μιας καταχώρησης σε ένα λεξικό τόσο μεγάλου μεγέθους θα
παρουσιάζει μεγαλύτερη καθυστέρηση για να ολοκληρωθεί. Για τους λόγους αυτούς
κρίθηκε απαραίτητο να ενσωματωθεί στο λεξικό του αλγορίθμου ένας μορφολογικός
αναλυτής. Η κύρια λειτουργία του είναι να απομονώνει τις καταλήξεις των κλιτών
μερών του λόγου και να δημιουργεί μόνος του τη λίστα ζευγών χαρακτηριστικών –
τιμών, χωρίς να χρειάζεται να υπάρχει καταχώρηση για κάθε κλιτικό παράδειγμα της
λέξης.

Ο μορφολογικός αναλυτής έχει και αυτός τη μορφή μιας διαδικασίας στον


αλγόριθμο, η οποία ονομάζεται analyse. Η διαδικασία αυτή τίθεται σε λειτουργία

66
μέσα από την διαδικασία lex και σκοπό έχει να απομονώσει από τη γραφημική
αναπαράσταση της λέξης την κατάληξη. Στη συνέχεια ανατρέχει σε ένα άλλο τμήμα
του λεξικού, το οποίο έχει καταχωρημένες τις καταλήξεις διαφόρων κλιτικών
παραδειγμάτων, μαζί με τα ζεύγη χαρακτηριστικών – τιμών, που αντιστοιχούν στην
κάθε κατάληξη. Στη συνέχεια παρατίθεται ένα τμήμα αυτών των καταχωρήσεων, το
οποίο αναφέρεται στις καταλήξεις του ενεστώτα ενεργητικής ρημάτων της α΄
συζυγίας.

analyse(Word, Stem, Feats) :-


hasSuffix(Word, "ω", Stem),!,
Feats =v( [per(first), num(sing), ten(pres)]).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "εις", Stem),!,
Feats = v([per(sec), num(sing), ten(pres)]).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ει", Stem),!,
Feats = v([per(third), num(sing), ten(pres)]).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ουμε", Stem),!,
Feats = v([per(first), num(pl), ten(pres)]).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ετε", Stem),!,
Feats = v([per(sec), num(pl), ten(pres)]).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ουν", Stem),!,
Feats = v([per(third), num(pl), ten(pres)]).

Το χωρισμό κάθε λέξης σε θέμα (Stem) και κατάληξη (Suffix) αναλαμβάνει η


διαδικασία hasSuffix, η οποία προϋπάρχει στη Visual Prolog (built – in procedure).
Ακολούθως, η analyse, ανάλογα με την κατάληξη που έχει προκύψει, επιστρέφει τα
αντίστοιχα ζεύγη χαρακτηριστικών – τιμών στη γραμματική του προγράμματος.

67
3.3 Μεθοδολογία Αξιολόγησης

Η αξιολόγηση είναι μια διαδικασία εξαιρετικής σημασίας σε όλες τις


ερευνητικές δραστηριότητες που πραγματοποιούνται στα πλαίσια διαφόρων
επιστημονικών πεδίων. Τα αποτελέσματά της καταδεικνύουν εάν η έρευνα κινήθηκε
προς τη σωστή κατεύθυνση και παρέχονται πορίσματα που βελτιώνουν και
συμπληρώνουν τις αντιλήψεις των ερευνητών για τα υπό εξέταση φαινόμενα.
Επιπλέον, η αξιολόγηση χρησιμοποιείται προκειμένου να καταδείξει τα προτερήματα
αλλά και τις αδυναμίες προϊόντων, υπηρεσιών αλλά και θεσμών, ώστε να συμβάλλει
στη βελτιστοποίησή τους και στην εξάλειψη ενδεχόμενων δυσλειτουργιών που
εμφανίζουν.

Το πρακτικό μέρος της παρούσας εργασίας ήταν αφιερωμένο στην ανάπτυξη


ενός αλγορίθμου, ο οποίος μπορεί να χρησιμοποιηθεί για την επεξεργασία και,
κυρίως, για την αυτόματη διόρθωση προτάσεων της νέας ελληνικής γλώσσας, όπως
αυτές εισάγονται στο σύστημα από τον εκάστοτε χρήστη. Προκειμένου να υπάρξει
μια καθοδήγηση κατά τα επιμέρους στάδια της ανάπτυξης, με ενδεχόμενες βελτιώσεις
στον προγραμματισμό, αλλά και να αξιολογηθεί συνολικά η αποδοτικότητα της
εφαρμογής αυτής, επιστρατεύτηκαν κάποιες μέθοδοι αξιολόγησης, τόσο κατά τη
διάρκεια της δημιουργίας του προγράμματος, όσο και στο τελικό προϊόν.

Σε αυτό το σημείο πρέπει να σημειωθεί ότι, λόγω της φύσεως της μεθόδου
ανάπτυξης του λογισμικού, αλλά και του περιορισμένου εύρους της, δεν ήταν δυνατή
η αξιολόγησή του στα πλαίσια της χρήσης του, με την εμπλοκή των ίδιων των
χρηστών σε αυτή. Πιο συγκεκριμένα, το πρόγραμμα αυτό παρουσιάζεται σε μια
πρωτόλεια μορφή, η οποία ούτε μπορεί να θεωρηθεί θελκτική για το χρήστη, ούτε
εμφανίζεται αρκετά λειτουργική ως προς το περιβάλλον διάδρασης. Άλλωστε, ο
σκοπός της ανάπτυξης του συγκεκριμένου λογισμικού δεν ήταν να εμφανιστεί ως μια
πλήρης εφαρμογή διδασκαλίας της ελληνικής, αλλά η δημιουργία μιας αλγοριθμικής
πλατφόρμας, πάνω στην οποία θα μπορούσε να στηριχθεί ένα τέτοιο μελλοντικό
πρόγραμμα. Προκειμένου να ενσωματωθούν, λοιπόν, κάποια αυθεντικά δεδομένα, με
τη μορφή προτάσεων, ούτως ώστε να αξιολογηθεί ο parser ως προς την
αποδοτικότητά του, με γνώμονα τα ερευνητικά ερωτήματα που έχουμε θέσει σε
προηγούμενο κεφάλαιο, χρησιμοποιήθηκαν κάποια ερευνητικά εργαλεία τα οποία
δόθηκαν σε άτομα του πληθυσμού των χρηστών που απευθύνεται το συγκεκριμένο

68
πρόγραμμα. Παράλληλα, ο αλγόριθμος αξιολογήθηκε και με δικές μας προτάσεις,
ούτως ώστε να αναδειχθούν προβλήματα κατά τη διάρκεια της ανάπτυξής του, αλλά
και αδυναμίες και περιορισμοί του τελικού προϊόντος.

Η παρούσα ενότητα ξεκινάει με τη θεωρητική τοποθέτηση των μεθόδων


αξιολόγησης που χρησιμοποιήθηκαν κατά τη διάρκεια της εργασίας. Πρόκειται για
την παράθεση θεωρητικών στοιχείων, τα οποία μας οδήγησαν στην υιοθέτηση της
συγκεκριμένης μεθοδολογίας αξιολόγησης. Στη συνέχεια θα παρουσιαστούν
αναλυτικά τα χαρακτηριστικά των μεθόδων που χρησιμοποιήθηκαν, προκειμένου να
αξιολογηθεί η αποδοτικότητα (ποιοτική και ποσοτική) του συγκεκριμένου
λογισμικού.

3.3.1 Θεωρητική Τοποθέτηση Της Μεθοδολογίας

Όπως έχει ήδη σημειωθεί, η αξιολόγηση είναι μια διαδικασία με


σημαντικότατο ρόλο σε όλη την πορεία ανάπτυξης ενός λογισμικού, καθώς μπορεί να
αποτρέψει σχεδιαστικές αστοχίες και, εν τέλει, να βοηθήσει στην κατά το δυνατόν
μεγαλύτερη βελτίωση του προγράμματος που θα προκύψει. Προκειμένου όμως η
διαδικασία αυτή να έχει τα αναμενόμενα αποτελέσματα, θα πρέπει να στηρίζεται
πάνω σε συγκεκριμένες αρχές και να έχει σαφές θεωρητικό υπόβαθρο. Για το λόγο
αυτό, λήφθηκαν υπόψη διάφορες θεωρητικές προσεγγίσεις περί αξιολόγησης,
προκειμένου να καταρτιστεί μία άρτια αξιολογική μεθοδολογία.

Στο επίκεντρο μιας οποιασδήποτε μεθοδολογικής προσέγγισης της


αξιολόγησης βρίσκεται η συλλογή δεδομένων. Άλλωστε, στους περισσότερους
ορισμούς της αναφέρεται ρητά η παραπάνω διαπίστωση: «Ως αξιολόγηση μπορούμε
να ορίσουμε τη συστηματική συλλογή, ανάλυση και ερμηνεία πληροφοριών για
οποιαδήποτε πλευρά ενός προϊόντος, με στόχο τη διαπίστωση της αποτελεσματικότητας
και της αποδοτικότητάς του ή την εκτίμηση οποιωνδήποτε άλλων παραμέτρων που
σχετίζονται με την εφαρμογή του.» (Παναγιωτακόπουλος, Πιερρακέας και Πιντέλας,
2003).

Ανάλογα με τον τόπο και τον τρόπο της συλλογής των δεδομένων αυτών,
προκύπτουν διαφορετικές μεθοδολογικές προσεγγίσεις και, κυρίως, μια διαφορετική
οπτική του εν λόγω ζητήματος. Πιο συγκεκριμένα, η αξιολόγηση θα πρέπει να
πραγματοποιείται με βάση δύο άξονες: το χρήστη – μαθητή (μαθησιακή άποψη) και

69
το ίδιο το προϊόν, με τις δυνατότητες και τους περιορισμούς που προκύπτουν από το
σχεδιασμό του και την πλατφόρμα ανάπτυξης (τεχνολογική άποψη).
(Παναγιωτακόπουλος, Πιερρακέας και Πιντέλας, 2003).

Στην περίπτωση του εκπαιδευτικού λογισμικού, ο παράγοντας «χρήστης»


πρέπει να λαμβάνεται σοβαρά υπόψη στην εκτίμηση της αποδοτικότητας του
προγράμματος, καθώς την επηρεάζει σε μεγάλο βαθμό. Οι επιλογές στις οποίες θα
καταλήξει ο σχεδιαστής του προγράμματος θα πρέπει να εξυπηρετούν τις μαθησιακές
ανάγκες της ομάδας στόχου, η οποία καθορίζεται από τα ιδιαίτερα χαρακτηριστικά
των μαθητών που την απαρτίζουν. Στη συγκεκριμένη περίπτωση η ομάδα μαθητών
στην οποία απευθύνεται το εν λόγω λογισμικό είναι μη φυσικοί ομιλητές της
ελληνικής γλώσσας.

Τα εργαλεία και οι μέθοδοι αξιολόγησης που προσφέρονται σε


προγραμματιστές εφαρμογών CALL είναι πάρα πολλές και καλύπτουν ένα μεγάλο
εύρος με πολλαπλά επίπεδα, από το πιο απλό έως και το πιο σύνθετο. Στο ένα άκρο
αυτής της ποικιλίας επιπέδων αξιολόγησης βρίσκονται τα απλά ερωτηματολόγια ή οι
λίστες ελέγχου (checklists). Στο άλλο άκρο εμφανίζονται πολύπλοκες μεθοδολογίες
πολλαπλών επιπέδων αξιολόγησης και μεγάλης έκτασης, οι οποίες χρησιμοποιούν μια
μεγάλη γκάμα εργαλείων συλλογής τόσο ποσοτικών όσο και ποιοτικών δεδομένων
(Levy & Stockwell, 2006).

Η αξιολόγηση του συγκεκριμένου προγράμματος θα στοχεύσει στο κατά


πόσον ικανοποιούνται τα ερευνητικά ερωτήματα που έχουν διατυπωθεί σε
προηγούμενο κεφάλαιο και τα οποία αφορούν στις δυνατότητες του συγκεκριμένου
αλγορίθμου. Θα πρέπει να σημειώσουμε ότι, προκειμένου να καταρτιστούν τα
συγκεκριμένα ερευνητικά ερωτήματα και ταυτόχρονα να τεθούν οι άξονες
σχεδιασμού του λογισμικού, στραφήκαμε προς τους χρήστες, στους οποίους τελικά
απευθύνεται αυτό το πόνημα. Αναλυτικότερα, είτε με τη βοήθεια πρόχειρων φύλλων
εργασίας, είτε με την ανασκόπηση σχετικών βιβλιογραφικών αναφορών, καθορίσαμε
από το βασικό λεξιλόγιο που περιλαμβάνει το λεξικό του προγράμματος, μέχρι και τις
δυνατότητες που θα πρέπει να παρέχει το λογισμικό, ώστε να στοχεύει σε
συγκεκριμένες γλωσσικές αδυναμίες που παρουσιάζουν μη φυσικοί ομιλητές κατά
την εκμάθηση της ελληνικής.

70
Προκειμένου λοιπόν να καλυφθούν οι ιδιαίτερες ανάγκες της συγκεκριμένης
μαθησιακής ομάδας, θα πρέπει να αναζητηθούν ερευνητικές δραστηριότητες που
σκιαγραφούν τις αδυναμίες των συγκεκριμένων χρηστών και σε ποιες περιοχές του
γλωσσικού συστήματος εντοπίζονται. Καθώς το συγκεκριμένο πρόγραμμα δίνει
μεγαλύτερη βάση στη γραμματική διόρθωση των προτάσεων, τόσο λόγω
αρχιτεκτονικής του, αλλά κυρίως λόγω των δυνατοτήτων που έχει, η έρευνα
εστιάστηκε στον εντοπισμό μεγάλης συχνότητας γραμματικών λαθών της
συγκεκριμένης ομάδας. Η καταγραφή και ομαδοποίηση αυτών των λαθών θα
καθορίσει και την αξιολόγηση της αποδοτικότητας του προγράμματος.

Από την επισκόπηση της σχετικής βιβλιογραφίας προέκυψε το συμπέρασμα


ότι τα περισσότερα γραμματικά λάθη από μη φυσικούς ομιλητές παρατηρούνται στο
πεδίο της χρήσης των άρθρων. Πιο συγκεκριμένα, εστιάζεται μια δυσκολία των μη
φυσικών ομιλητών στην σωστή χρήση των πτώσεων αλλά και του γένους των
ουσιαστικών, κυρίως αν η μητρική τους γλώσσα διαφοροποιείται στον τρόπο
χειρισμού των συγκεκριμένων περιπτώσεων, όπως π.χ. η απουσία του ουδετέρου
γένους στις λατινικές γλώσσες (γαλλικά, ιταλικά, ισπανικά). Σε αυτή λοιπόν την
περίπτωση θα πρέπει ο αλγόριθμος να αναγνωρίζει λάθη που σχετίζονται με την
εσωτερική συμφωνία της ονοματικής φράσης (συμφωνία άρθρου – επιθέτου –
ουσιαστικού).

Μια άλλη κατηγορία λαθών στα οποία οι μη φυσικοί ομιλητές της ελληνικής
εμφανίζονται πιο επιρρεπείς είναι στη μορφολογία των ρημάτων και στην αλλαγή του
θέματος ανάλογα με το χρόνο. Αυτό, κυρίως, συμβαίνει σε μαθητές των οποίων η
μητρική γλώσσα δεν εμφανίζει τη μορφολογική ποικιλία της ελληνικής γλώσσας. Η
μεγαλύτερη δυσκολία έγκειται στο γεγονός ότι τα κλιτικά παραδείγματα ενός
ρήματος διαφοροποιούνται μορφολογικά τόσο ανάλογα με τον αριθμό, όσο και με το
χρόνο, αλλά και την έγκλιση. Την ίδια στιγμή, σε γλώσσες με φτωχή κλιτική
μορφολογία (inflectional morphology), όπως για παράδειγμα τα αγγλικά, οι
μορφολογικές διαφοροποιήσεις είναι ελάχιστες και συνήθως περιλαμβάνουν την
προσθήκη ενός μόνο επιθέματος (suffix) ή βοηθητικού ρήματος για τη
διαφοροποίηση του χρόνου. Λαμβάνοντας υπόψη όλα τα παραπάνω, προκύπτει ότι το
εν λόγω πρόγραμμα θα πρέπει να ελέγχει και τη μορφολογία του ρήματος της
πρότασης, ώστε να διαπιστωθεί εάν η επιλογή της μορφολογίας αυτής αντανακλά την
πρόθεση του χρήστη.

71
Απόρροια της παραπάνω δυσκολίας στη σωστή χρήση της μορφολογίας του
ρήματος είναι και τα γραμματικά λάθη που προκύπτουν λόγω ασυμφωνίας
υποκειμένου – ρήματος. Πάντως, πρέπει να σημειωθεί ότι η έρευνα πάνω στα
γραμματικά λάθη μη φυσικών ομιλητών της νέας ελληνικής δε δείχνει στατιστικά
σημαντικές ενδείξεις για ενδεχόμενη δυσκολία των εν λόγω μαθητών σε αυτό το
είδος συμφωνίας. Παρόλα αυτά, θα ενσωματωθεί στον αλγόριθμο η δυνατότητα
αναγνώρισης λαθών του παραπάνω τύπου, καθώς ήδη υπάρχουν οι μηχανισμοί
εκείνοι που επιτρέπουν τη συγκεκριμένη λειτουργία, χωρίς να είναι απαραίτητη η
προσθήκη πρόσθετων γραμμών κώδικα.

Η συμπεριφορά του λογισμικού που αναπτύχθηκε, σε περιπτώσεις προτάσεων


που περιλαμβάνουν γραμματικά λάθη, τα οποία εμπίπτουν στις παραπάνω
κατηγορίες, θα είναι και ο βασικός άξονας της αξιολόγησης του τελικού προϊόντος.
Τυχόν αδυναμίες στην αναγνώριση προβληματικών φράσεων ή προτάσεων αυτού του
τύπου θα πρέπει να ελαχιστοποιηθούν, με στοχευμένες βελτιώσεις πάνω στον κώδικα
ή στη μεθοδολογία λειτουργίας του.

Στο σημείο αυτό θα πρέπει να αναφερθεί ότι στο συγκεκριμένο εγχείρημα θα


εφαρμοστούν δύο είδη αξιολόγησης, η διαμορφωτική και η τελική αξιολόγηση, με
διαφορετικά ποιοτικά χαρακτηριστικά η καθεμία. Πιο συγκεκριμένα, η διαμορφωτική
αξιολόγηση θα πραγματοποιηθεί σε όλα τα επιμέρους στάδια της ανάπτυξης του
αλγορίθμου, προκειμένου να διαπιστωθεί η ορθότητα της λειτουργίας ενός
καινούριου τμήματος ή μιας βελτιωτικής παρέμβασης σε ένα προϋπάρχον. Κατά τη
διάρκεια της διαμορφωτικής αξιολόγησης το ζητούμενο δεν είναι η σωστή
συμπεριφορά του προγράμματος στις περιπτώσεις λαθών που προαναφέρθηκαν, αλλά
η ομαλή λειτουργία του σύμφωνα με τις προθέσεις και τις επιλογές του
προγραμματιστή (debugging).

Αντιθέτως, η τελική αξιολόγηση θα υπάρξει μια ενιαία διαδικασία, η οποία


ξεκινάει με την ολοκλήρωση της ανάπτυξης του προγράμματος, προκειμένου να
καταδείξει τα ισχυρά σημεία , αλλά και τις αδυναμίες του και, επιπλέον, να οδηγήσει
σε βελτιωτικές προτάσεις που θα μπορούσαν να εφαρμοστούν σε μελλοντική
ενασχόληση με αυτό. Η τελική αξιολόγηση θα έχει δύο άξονες ως προς τον τρόπο
πραγματοποίησής της και της οπτικής που θα χρησιμοποιηθεί. Σε μια πρώτη
διάσταση θα αξιολογήσουμε το λογισμικό εισάγοντας συγκεκριμένες, μη αυθεντικές

72
προτάσεις (δεν θα έχουν δημιουργηθεί από κάποιο χρήστη, αλλά από εμάς τους
ίδιους), προκειμένου να δια πιστωθεί στοχευμένα η συμπεριφορά του αλγορίθμου σε
συγκεκριμένες περιπτώσεις δεδομένων. Στη συνέχεια, θα χρησιμοποιηθεί ένας ικανός
αριθμός αυθεντικών προτάσεων, προκειμένου να καταδειχθεί τόσο ποιοτικά όσο και
ποσοτικά η αποδοτικότητα του προγράμματος σε κατά το δυνατό πλησιέστερες στις
πραγματικές συνθήκες, με δεδομένα από την ομάδα των χρηστών στους οποίους
απευθύνεται.

Κλείνοντας τη συγκεκριμένη τοποθέτηση, είναι απαραίτητο να αναφερθούμε


σε κάποιες παραλήψεις που έγιναν εσκεμμένα κατά την αξιολογική διαδικασία. Πιο
συγκεκριμένα, λόγω του περιορισμένου εύρους του εν λόγω εγχειρήματος, αλλά και
των διαθέσιμων μέσων, όπως της συγκεκριμένης γλώσσας προγραμματισμού, η
τελική μορφή του προγράμματος παρουσιάζει ένα στοιχειώδες περιβάλλον
διάδρασης. Για το λόγο αυτό από την αξιολόγηση απουσιάζουν παράμετροι που
έχουν να κάνουν με την ευχρηστία αλλά και την τεχνολογική αρτιότητα της
εφαρμογής, ή το πόσο θελκτική παρουσιάζεται στον τελικό χρήστη. Άλλωστε,
πρόκειται για έναν εντελώς πειραματικό αλγόριθμο, στον οποίο μας ενδιαφέρει
κυρίως ο τρόπος λειτουργίας του και η σωστή συμπεριφορά του απέναντι σε
προβληματικές περιπτώσεις προτάσεων. Κάτι τέτοιο, πάντως, θα μπορούσε να
αποτελέσει αντικείμενο μιας μελλοντικής βελτιωτικής δραστηριότητας πάνω στη
συγκεκριμένη εφαρμογή.

3.3.2 Αναλυτική Παρουσίαση Της Μεθόδου Αξιολόγησης

Συνοψίζοντας αυτά που αναφέρθηκαν παραπάνω, το μεγαλύτερο ενδιαφέρον,


καθώς μέσω αυτής καταδεικνύεται και αποδεικνύεται η ορθή λειτουργία και η
αποδοτικότητα του αλγορίθμου, παρουσιάζει η τελική αξιολόγηση. Ειδικά το τμήμα
εκείνο, στο οποίο εμπλέκονται και πρωτογενή αυθεντικά δεδομένα από χρήστες που
αποτελούν τον πληθυσμό – στόχο του λογισμικού, θα παράσχει εξαιρετικά χρήσιμες
πληροφορίες για τους δημιουργούς του.

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


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

73
(διαμορφωτική αξιολόγηση), η οποία όμως παρουσιάζει μια σημαντική διαφορά. Στο
σημείο αυτό έχουμε το τελικό προϊόν και, επομένως, οι δυνατότητες παρέμβασης και
βελτίωσης του αλγορίθμου είναι ελάχιστες. Οι διαπιστώσεις όμως που προκύπτουν
είναι σημαντικότατες ώστε να καθοριστεί έως που φτάνουν οι δυνατότητες του
προγράμματος και να σημειωθούν ενδεχόμενοι περιορισμοί της λειτουργίας του.

Οι προτάσεις που θα επιλεχθούν, προκειμένου να αξιολογηθεί η λειτουργία


του προγράμματος, έχουν συγκεκριμένα χαρακτηριστικά και στοχεύουν να
αναδείξουν συγκεκριμένες πτυχές των αλγοριθμικών του μεθόδων. Καταρχήν θα
δημιουργηθούν προτάσεις που θα περιέχουν λέξεις εκτός λεξιλογίου, προκειμένου να
καθορίσουμε εάν το πρόγραμμα έχει την αναμενόμενη συμπεριφορά. Στη συνέχεια θα
χρησιμοποιηθούν σωστές γραμματικά προτάσεις για να δούμε αν η εφαρμογή της
αναγνωρίζει και, επιπλέον, αν τους αποδίδει σωστή συντακτική δομή. Στη συνέχεια
θα επιλέξουμε προτάσεις που θα περιέχουν γραμματικά λάθη, κυρίως ασυμφωνίας
όρων φράσεων, αλλά και υποκειμένου – ρήματος. Τέλος, θα εισάγουμε κάποιες
προβληματικές περιπτώσεις προτάσεων, ούτως ώστε να αναδείξουμε τυχόν αδυναμίες
ή και περιορισμούς του λογισμικού κατά την επεξεργασία τους.

Ο καθορισμός των περιορισμών και των αδυναμιών του προγράμματος είναι


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

Το δεύτερο τμήμα της τελικής αξιολόγησης έχει αρκετές ομοιότητες με μια


ερευνητική δραστηριότητα, με την ειδοποιό διαφορά ότι τα δεδομένα που θα
συλλεχθούν δε στοχεύουν στην επιβεβαίωση ή απόρριψη κάποιας ερευνητικής
υπόθεσης, ούτε σχετίζονται με συγκεκριμένες μεταβλητές που πρόκειται να
διερευνηθούν. Άλλωστε, η φύση των ερευνητικών ερωτημάτων είναι τέτοια που δεν
εμπλέκουν την επίδραση παραγόντων – χαρακτηριστικών των χρηστών που πρέπει να
διερευνηθούν. Παρόλα αυτά, στοχεύει σε συγκεκριμένο πληθυσμό, χρησιμοποιεί
δείγμα με παρόμοια χαρακτηριστικά και χρησιμοποιεί μαθηματικές μεθόδους, ούτως
ώστε να καθορίσει το κατά πόσο ο αλγόριθμος είναι αποδοτικός ή όχι.

74
Ο πληθυσμός στον οποίο αναφέρεται αυτή η αξιολογική δραστηριότητα είναι
το σύνολο των μαθητών δημοτικών σχολείων, οι οποίοι είναι μη φυσικοί ομιλητές της
νέας ελληνικής, με ποικίλο χρόνο παραμονής στην Ελλάδα. Το δείγμα που θα
χρησιμοποιηθεί, προκειμένου να συλλεχθούν τα δεδομένα και να καταρτιστεί η
τράπεζα προτάσεων ήταν δεκαπέντε αλλοδαποί μαθητές, ηλικίας 8 – 13 ετών, οι
οποίοι φοιτούν στις τάξεις Β έως Στ΄ του Δωδεκαθέσιου Δημοτικού Σχολείου
Διακοπτού. Περισσότερα χαρακτηριστικά του δείγματος δεν κρίνεται απαραίτητο να
καθοριστούν από το εργαλείο της έρευνας, καθώς δεν παρουσιάζουν κάποιο
ενδιαφέρον, λόγω των στόχων της αξιολογικής δραστηριότητας.

Το εργαλείο που θα χρησιμοποιηθεί σε αυτό το τμήμα της αξιολογικής


διαδικασίας είναι ένα φύλλο εργασίας που απευθύνεται στους μαθητές του δείγματος.
Το συγκεκριμένο έντυπο δεν περιλαμβάνει πεδία συμπλήρωσης που να αφορούν σε
προσωπικά στοιχεία του μαθητή, καθώς δεν κρίνονται απαραίτητα για τη
συγκεκριμένη διαδικασία που θα ακολουθηθεί. Το μόνο πεδίο που πρέπει να
συμπληρωθεί από τους μαθητές είναι αυτό των δέκα προτάσεων που πρέπει να
γράψουν, και από τις οποίες θα προκύψει η τράπεζα των 150 προτάσεων που θα
εισαχθεί στο λογισμικό με σκοπό την αξιολόγησή του.

Αυτό που αναφέρεται ρητά στις οδηγίες συμπλήρωσης είναι ο τρόπος με τον
οποίο πρέπει να δημιουργηθούν οι προτάσεις από το μαθητή, και οι οποίες
συντάχθηκαν με βάση τους περιορισμούς του προγράμματος, ώστε να μη προκύψουν
δεδομένα, τα οποία το πρόγραμμα δεν θα μπορέσει να επεξεργαστεί λόγω εγγενών
αδυναμιών και αρχιτεκτονικής. Επ’ ουδενί οι συγκεκριμένοι περιορισμοί δεν τίθενται
για να μειωθεί το ποσοστό των προτάσεων που δεν θα αναλυθούν σωστά από την
εφαρμογή. Πρόκειται για περιορισμούς που τίθενται από το λεξιλόγιο που
περιλαμβάνει το λεξικό, καθώς και από το είδος των φράσεων που αναγνωρίζει το
πρόγραμμα. Άλλωστε, οι οδηγίες αυτές δεν έχουν καμιά σχέση με τα ερευνητικά
ερωτήματα που έχουν διατυπωθεί και με βάση τα οποία θα διενεργηθεί η αξιολόγηση
του αλγορίθμου.

Το φύλλο εργασίας θα δοθεί στους μαθητές, με τις όποιες γραπτές οδηγίες το


συνοδεύουν να αναφέρονται και προφορικά στους μαθητές, ώστε να μην υπάρχει
περίπτωση μη κατανόησης τους. Οι προτάσεις που θα καταγραφούν θα πρέπει να
είναι απλές, χωρίς επιθετικούς ή επιρρηματικούς προσδιορισμούς και τα ρήματα θα

75
πρέπει να βρίσκονται σε χρόνο ενεστώτα. Οι προτάσεις θα έχουν σχέση με
δραστηριότητες που κάνει ο δάσκαλος και οι μαθητές στην τάξη, χρησιμοποιώντας το
λεξιλόγιο που παρατίθεται και το οποίο περιλαμβάνει ρήματα και ουσιαστικά.

Αφού οι αυθεντικές προτάσεις των μαθητών συλλεχθούν με τη διαδικασία που


περιγράφηκε προηγουμένως, θα ταξινομηθούν σε ορθές και λανθασμένες και στη
συνέχεια θα εισαχθούν στο πρόγραμμα, προκειμένου να αξιολογηθεί η συμπεριφορά
του ως προς την επεξεργασία τους. Η αξιολόγηση αυτή θα γίνει πάνω σε δύο άξονες,
όπως προκύπτει και από τη φύση των ερευνητικών ερωτημάτων που έχουν
διατυπωθεί. Θα αξιολογήσουμε την αποδοτικότητά του στο χειρισμό των ορθών
προτάσεων, ως προς το κατά πόσον τις κάνει αποδεκτές και σε δεύτερη φάση αν τους
αποδίδει σωστή συντακτική δομή. Επιπλέον, θα αξιολογηθεί η επεξεργασία των
λανθασμένων προτάσεων, ως προς το βαθμό που αναγνωρίζει το είδος των λαθών
που έχουν γίνει. Τα αποτελέσματα αυτής της αξιολόγησης, καθότι ποσοτικά, θα
ομαδοποιηθούν σε πίνακες και γραφήματα, ούτως ώστε να υπάρχει μια συνολική
εικόνα περί της λειτουργίας του αλγορίθμου.

Το τελευταίο στάδιο της αξιολόγησης θα περιλαμβάνει τη συνολική θεώρηση,


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

76
Κεφάλαιο 4
Αξιολόγηση

77
4.1 Περιορισμοί Του Λογισμικού

Μια από τις λειτουργίες της διαμορφωτικής αξιολόγησης, την οποία


επιτελέσαμε τόσο κατά τη διάρκεια της ανάπτυξης του λογισμικού, όσο και μετά την
ολοκλήρωσή του, ήταν να διαπιστώσουμε κατά πόσο το τελικό προϊόν κινήθηκε μέσα
στα πλαίσια των ερευνητικών προσδοκιών μας και, κατά δεύτερον, να αναδειχθούν
ενδεχόμενες αδυναμίες αλλά και περιορισμοί του λογισμικού, ούτως ώστε να
ληφθούν υπόψη τόσο στην περαιτέρω αξιολόγηση του προγράμματος, όσο και σε
μελλοντικές προσπάθειες βελτίωσης και επέκτασης των δυνατοτήτων του προϊόντος.
Ο σημαντικότερος περιορισμός που θα πρέπει να λάβουμε υπόψη, και ο
οποίος έγκειται στους εγγενείς μηχανισμούς του parser, εντοπίζεται στο λεξιλόγιο
που αναγνωρίζεται από το πρόγραμμα. Πιο συγκεκριμένα, προκειμένου να γίνει η
ανάλυση μιας πρότασης και να καθοριστεί η ορθότητά της, θα πρέπει να
αναγνωριστούν από τον αλγόριθμο όλα τα λεκτικά της στοιχεία. Για να επιτευχθεί
αυτό, οι λέξεις αυτές θα πρέπει να βρίσκονται ήδη καταχωρημένες στο λεξικό του
προγράμματος, καθώς σε διαφορετική περίπτωση θα θεωρηθούν άγνωστες και θα
τερματιστεί η λειτουργία του. Η επιλογή μας πάνω στην κατάρτιση του λεξικού που
θα χρησιμοποιούσαμε, ούτως ώστε το εύρος του να είναι περιορισμένο, βασίστηκε
πάνω στον θεματολογικό καθορισμό του λεξιλογικού περιεχομένου. Ειδικότερα,
επιλέξαμε να συμπεριλάβουμε λέξεις που έχουν σχέση με δραστηριότητες που
γίνονται στα πλαίσια του μαθήματος μέσα σε μια σχολική τάξη. Για να καθοριστεί,
μάλιστα, αυτό το ελάχιστο λεξιλόγιο ζητήθηκε από μαθητές να γράψουν προτάσεις
με βάση τον παραπάνω θεματολογικό περιορισμό, οι οποίες τελικά
χρησιμοποιήθηκαν για να απομονωθούν οι συνηθέστεροι λεκτικοί τύποι και να
συμπεριληφθούν στο λεξικό του λογισμικού.

Μια άλλη επιλογή που δημιουργεί πρόσθετους περιορισμούς στο πρόγραμμα


είναι η ενσωμάτωση μορφολογικού αναλυτή στον αλγόριθμο, προκειμένου να
μειωθεί ο αριθμός των λεξικογραφικών εγγραφών στο λεξικό. Ο μορφολογικός
αναλυτής αφορά στα ρήματα και όχι στα ουσιαστικά ή στα επίθετα. Αυτό σημαίνει
ότι τα κλιτικά παραδείγματα των υπολοίπων κλιτών μερών του λόγου πρέπει να
δηλωθούν με τρόπο εξαντλητικό στο λεξικό, διότι σε διαφορετική περίπτωση δε θα
αναγνωριστούν από το πρόγραμμα. Επιπλέον, κάποιες περιπτώσεις ρημάτων που
εμφανίζουν ιδιαίτερη συμπεριφορά κατά την κλίση τους δεν καλύπτονται από το
μορφολογικό αναλυτή που έχει εκπονηθεί και ο οποίος αφορά σε ομαλές περιπτώσεις

78
κλιτικών παραδειγμάτων.
Επιπρόσθετα, στον αλγόριθμο που έχει αναπτυχθεί απουσιάζει κάποιος
μηχανισμός επίλυσης της αμφισημίας (ambiguity) ορισμένων λεκτικών τύπων, όπως
είναι για παράδειγμα η πτώση στο ουδέτερο άρθρο "το". Σε αυτή την περίπτωση, ο
αλγόριθμος δε μπορεί να ανταποκριθεί στις ανάγκες αναγνώρισης του τύπου που
χρησιμοποιείται, και αυτό έχει άμεση συνέπεια στην ορθότητα ανάλυσης της
πρότασης και εντοπισμού ενδεχόμενων λαθών. Οι περιορισμοί αυτοί μπορούν να
φτάσουν μέχρι και στο επίπεδο λανθασμένης συντακτικής δομής που αποδίδεται στην
πρόταση, καθώς το πρόγραμμα δε μπορεί να καθορίσει το υποκείμενο ή και το
αντικείμενο της πρότασης που καλείται να αναλύσει.

Ένας ακόμα περιορισμός που θα πρέπει να ληφθεί υπόψη κατά την


αξιολόγηση του προγράμματος και ο οποίος έγκειται στον τρόπο με τον οποίο
αναγνωρίζεται ο κάθε λεκτικός τύπος μέσω της λειτουργίας του λεξικού είναι η
αντιμετώπιση των ορθογραφικών λαθών, κυρίως στο θέμα το λέξεων.
Αναλυτικότερα, όταν ο χρήστης εισάγει στο σύστημα μια λέξη που περιέχει ένα ή
περισσότερα ορθογραφικά λάθη, ο αλγόριθμος συγκρίνει τον εισαχθέντα λεκτικό
τύπο με το σύνολο των λεξικογραφικών εγγραφών που εμπεριέχονται στο λεξικό και,
μη βρίσκοντας κάτι ανάλογο, αποφαίνεται ότι η λέξη είναι άγνωστη, τερματίζοντας
τη λειτουργία του προγράμματος. Ο τερματισμός αυτός δε συνοδεύεται από κάποιο
μήνυμα που να ενημερώνει το χρήστη για περίπτωση λανθασμένης ορθογραφίας, με
αποτέλεσμα να δίνεται η εντύπωση ότι απλά ο συγκεκριμένος λεκτικός τύπος, αν και
σωστός, δεν περιλαμβάνεται στο λεξικό του προγράμματος.

4.2 Αξιολόγηση Από τους Ερευνητές

Μετά την προσπάθεια αποσαφήνισης των κεντρικών αξόνων, πάνω στους


οποίους πραγματοποιήθηκε η αξιολογική διαδικασία που αφορά στο συγκεκριμένο
λογισμικό, ακολουθούν τα αποτελέσματα αυτής της αξιολόγησης, όπως προέκυψαν
από τη λειτουργία του αλγορίθμου σε συγκεκριμένες εισαγόμενες προτάσεις της νέας
ελληνικής. Η παρουσίαση των αποτελεσμάτων αυτών, προκειμένου να γίνει
περισσότερο λειτουργική, ακολουθεί μια συγκεκριμένη μορφή τυποποίησης. Πιο
συγκεκριμένα, αρχικά αναφέρεται η πρόταση που εισήχθη στο σύστημα, στη
συνέχεια γίνεται μια περιγραφή της λειτουργίας του αλγορίθμου και της

79
αναμενόμενης συμπεριφοράς του και τέλος παρατίθεται το αποτέλεσμα που ελήφθη,
συνοδευόμενο από έναν σύντομο σχολιασμό περί του κατά πόσον ήταν αναμενόμενο.
Επιπλέον, έχει επιχειρηθεί μια κατηγοριοποίηση των προτάσεων που δόθηκαν στο
πρόγραμμα προς επεξεργασία, ούτως ώστε να διευκολυνθεί η διεξαγωγή
συμπερασμάτων ως προς την ορθότητα της λειτουργίας του.

4.2.1 Χειρισμός Προτάσεων Με Λέξεις Εκτός Λεξιλογίου

Το συγκεκριμένο πρόγραμμα έχει έναν κεντρικό περιορισμό λόγω της


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

Η Μαρία γράφει. (4.1)

Η συγκεκριμένη πρόταση περιλαμβάνει το άγνωστο για το πρόγραμμα ουσιαστικό


«Μαρία». Από τη στιγμή που δεν υπάρχει κάποια καταχώρηση για τη συγκεκριμένη
λέξη, το πρόγραμμα δεν μπορεί να ανασύρει πληροφορίες για αυτή, με αποτέλεσμα ο
αλγόριθμος να τερματίζεται, παρέχοντας το ανάλογο μήνυμα στο χρήστη.

Η λέξη την οποία αφορά το συγκεκριμένο μήνυμα αναγράφεται στην επικεφαλίδα


του παραθύρου (dialog box), ώστε ο χρήστης να ενημερωθεί ανάλογα.

80
Μέσω του μορφολογικού αναλυτή, ο χειρισμός των άγνωστων λέξεων μπορεί
να γίνει λίγο περισσότερο ευφυής και, κατά συνέπεια αποδοτικός. Πιο συγκεκριμένα,
και κυρίως για τα κλιτά μέρη του λόγου, το πρόγραμμα θα μπορούσε να αναζητά την
κατάληξη της συγκεκριμένης λέξης και, αν αυτή υπάρχει καταχωρημένη στο
μορφολογικό αναλυτή, να της αποδίδονται το μέρος του λόγου και τα ζεύγη
χαρακτηριστικών – τιμών που αντιστοιχούν στην κατάληξη αυτή. Κατ’ αυτόν τον
τρόπο, το πρόγραμμα θα μπορεί να επεξεργαστεί περισσότερες προτάσεις,
ξεπερνώντας κάποιους από τους περιορισμούς του λεξιλογίου.

Μια αδυναμία που προκύπτει από τη μορφή του μηχανισμού του


συγκεκριμένου προγράμματος αφορά στις περιπτώσεις που ο χρήστης, είτε λόγω
λανθασμένης πληκτρολόγησης, είτε λόγω μη γνώσης της σωστής ορθογραφίας,
εισάγει ένα λανθασμένο λεκτικό τύπο. Σε αυτή την περίπτωση, ο αλγόριθμος
αδυνατεί να αναγνωρίσει ότι πρόκειται για κάποιο ορθογραφικό ή τυπογραφικό λάθος
και θεωρεί ότι η λέξη που έχει εισαχθεί δεν υπάρχει μέσα στο λεξικό, προβάλλοντας
το σχετικό μήνυμα. Ενδεχομένως κάτι τέτοιο να προβλεφθεί σε μια μελλοντική
έκδοση του προγράμματος.

4.2.2. Αναγνώριση Σωστών Γραμματικά Προτάσεων

Ένα από τα πρώτα στοιχεία που αποδεικνύουν την αποδοτικότητα του


συγκεκριμένου αλγορίθμου είναι η δυνατότητά του να αναγνωρίζει σωστές
γραμματικά προτάσεις και να τους αποδίδει την κατάλληλη συντακτική διάρθρωση,
αναγνωρίζοντας υποκείμενα, ρήματα και αντικείμενα, ανεξάρτητα από τη θέση που
κατέχουν στην πρόταση.

Ο μαθητής γράφει. (4.2)

Γράφει ο μαθητής. (4.3)

Στις δύο παραπάνω περιπτώσεις προτάσεων το ρήμα δε συντάσσεται με αντικείμενο.


Όπως βλέπουμε και στην παρακάτω αναφορά του αλγορίθμου, το πρόγραμμα
αναγνωρίζει τη γραμματικότητα της κάθε πρότασης καθώς και το υποκείμενό της,
ανεξάρτητα από το αν προηγείται του ρήματος ή το ακολουθεί.

[npsub([num(sing()),gen(masc()),case(nom())]),vp([per(third()),num(sing()),ten(pres(
))])]

81
[vp([per(third()),num(sing()),ten(pres())]),npsub([num(sing()),gen(masc()),case(nom(
))])]

Επιπλέον, το πρόγραμμα έχει τη δυνατότητα να αναγνωρίζει και την ύπαρξη


αντικειμένου στην πρόταση. Η δυνατότητα αυτή έχει δημιουργηθεί ώστε να
αναγνωρίζεται η μη ορθότητα προτάσεων στις οποίες το ρήμα δε συντάσσεται με
αντικείμενο.

Ο μαθητής γράφει την πρόταση. (4.4)

[npsub([num(sing()),gen(masc()),case(nom())]),vp([per(third()),num(sing()),ten(pres(
))]),

npobj([case(acc()),num(sing()),gen(fem())])]

Η ίδια αποδοτικότητα επιδεικνύεται από τον αλγόριθμο και στην περίπτωση


που το αντικείμενο προηγείται του υποκειμένου. Αυτό επιτυγχάνεται λόγω του
τρόπου σχεδιασμού του συγκεκριμένου προγράμματος. Όπως έχει ήδη προαναφερθεί,
μια ονοματική φράση χαρακτηρίζεται ως υποκείμενο ή αντικείμενο ανάλογα με την
πτώση στην οποία βρίσκονται τα συστατικά της στοιχεία. Με αυτό τον τρόπο η θέση
μιας ονοματικής φράσης δεν παίζει κανένα ρόλο στη διαδικασία συντακτικής
ταυτοποίησής της.

Την πρόταση γράφει ο μαθητής. (4.5)

[npobj([case(acc()),num(sing()),gen(fem())]),vp([per(third()),num(sing()),ten(pres())]
),npsub([num(sing()),gen(masc()),case(nom())])]

4.2.3 Αναγνώριση Γραμματικών Λαθών

Οι στόχοι της δημιουργίας του συγκεκριμένου λογισμικού απείχαν από την


ανάπτυξη ενός απλού parser της νέας ελληνικής, ο οποίος απλά θα δεχόταν ορθές
γραμματικά προτάσεις και θα απέρριπτε τις λανθασμένες. Ο συγκεκριμένος
παιδαγωγικός προσανατολισμός του προγράμματος επιβάλει την προσθήκη ενός
μηχανισμού που θα αναγνωρίζει τα λάθη που γίνονται από τον εκάστοτε χρήστη και
θα παρέχει την αντίστοιχη ανατροφοδότηση, με τη μορφή συγκεκριμένου μηνύματος,
προκειμένου ο χρήστης να ενημερωθεί για το λάθος του και να οδηγηθεί στην
περαιτέρω βελτίωση των γλωσσικών του ικανοτήτων.

82
Όπως έχει ήδη αναφερθεί στο κεφάλαιο περί της αρχιτεκτονικής του εν λόγω
προγράμματος, μέσα στον αλγόριθμο έχουν ενσωματωθεί οι μηχανισμοί εκείνοι που
επιτρέπουν τη λειτουργία εμφάνισης μηνυμάτων σε περίπτωση λάθους. Τα μηνύματα
αυτά έχουν πολύ απλή μορφή και αναφέρονται στο είδος του λάθους που έχει γίνει
από το χρήστη. Σε μια μελλοντική έκδοση του προγράμματος μπορούν να
διαμορφωθούν διαφορετικά, ώστε να είναι περισσότερο στοχευμένα και παιδαγωγικά
άρτια.

Μια πρώτη περίπτωση λάθους που θα εξετασθεί στα πλαίσια αυτής της
αξιολόγησης είναι η εσωτερική συμφωνία μεταξύ των συστατικών στοιχείων μιας
ονοματικής φράσης. Σε αυτή την περίπτωση θα πρέπει άρθρο και ουσιαστικό να
έχουν το ίδιο γένος, τον ίδιο αριθμό και την ίδια πτώση. Σε αντίθετη περίπτωση
έχουμε γραμματικό λάθος, οπότε ο χρήστης θα πρέπει να ενημερώνεται σχετικά με το
αντίστοιχο μήνυμα.

*Ο μαθητές γράφουν. (4.6)

*Ο παιδί γράφει. (4.7)

*Τον μαθητής γράφει. (4.8)

Οι παραπάνω προτάσεις περιέχουν τέτοιου είδους γραμματικά λάθη. Ο αλγόριθμος


αναγνωρίζει την ύπαρξή τους, τερματίζει την εφαρμογή και προβάλει το αντίστοιχο
μήνυμα, ενημερώνοντας το χρήστη. Ακολουθούν τα μηνύματα που προβάλλονται
αντιστοίχως για κάθε μια από τις παραπάνω προτάσεις.

83
Υπάρχουν, φυσικά, και περιπτώσεις όπου περιέχονται περισσότερα από ένα λάθη
στην πρόταση που εισάγει ο χρήστης. Σε μια πρώιμη εκδοχή του συγκεκριμένου
προγράμματος ο χειρισμός αυτής της περίπτωσης δεν ήταν ο ενδεδειγμένος. Πιο
συγκεκριμένα, ο αλγόριθμος τερματιζόταν σε περίπτωση ανίχνευσης κάποιου λάθους,
με αποτέλεσμα να εμφανίζεται μόνο το πρώτο κατά σειρά από αυτά. Στη συνέχεια το
πρόβλημα αυτό διορθώθηκε και έτσι, στην παρούσα εκδοχή της εφαρμογής,
παρουσιάζονται με τη σειρά όλα τα μηνύματα που αναφέρονται σε λάθη της
πρότασης. Έτσι, για παράδειγμα στην περίπτωση της πρότασης

*Το μαθητές γράφουν. (4.9)

αρχικά προβάλλεται στο χρήστη ένα μήνυμα για λάθος στο γένος και, όταν αυτός
πατήσει το κουμπί «ΟΚ», προβάλλεται μήνυμα για λάθος στον αριθμό.

Μια ακόμη περίπτωση λάθους αναφέρεται στην περίπτωση ασυμφωνίας του


υποκειμένου με το ρήμα της πρότασης. Πιο συγκεκριμένα, το υποκείμενο πρέπει να
βρίσκεται στο ίδιο πρόσωπο και στον ίδιο αριθμό με το αντίστοιχο ρήμα. Ο
μηχανισμός του συγκεκριμένου αλγορίθμου είναι τέτοιος που επιτρέπει τον έλεγχο

84
της συγκεκριμένης ασυμφωνίας αφού αποδοθεί στην κατάλληλη ονοματική φράση ο
συντακτικός ρόλος του υποκειμένου. Επομένως, σε μια πρόταση του τύπου

*Οι μαθητές γράφει. (4.10)

το πρόγραμμα αποδίδει στην ονοματική φράση οι μαθητές το συντακτικό ρόλο του


υποκειμένου, καθώς βρίσκεται σε πτώση ονομαστική. Στη συνέχεια, ο αλγόριθμος
επικαλείται τη διαδικασία unify, προκειμένου να ελέγξει την περίπτωση ασυμφωνίας
μεταξύ υποκειμένου και ρήματος, και τελικά προβάλλει το παρακάτω μήνυμα
λάθους.

Διαπιστώνουμε, λοιπόν, ότι και σε αυτή την περίπτωση ο αλγόριθμός μας λειτουργεί
κατά το αναμενόμενο.

4.2.4 Προβληματικές Περιπτώσεις

Αν και, όπως είδαμε στην προηγούμενη υποενότητα, η συμπεριφορά του


προγράμματος κατά την επεξεργασία ορθών και λανθασμένων προτάσεων είναι η
αναμενόμενη, εντούτοις υπάρχουν περιπτώσεις στις οποίες το πρόγραμμα λειτουργεί
με τέτοιο τρόπο, ώστε δίνει μη έγκυρα αποτελέσματα. Η συμπεριφορά αυτή
αιτιολογείται τόσο λόγω της μορφής των διαδικασιών και της αρχιτεκτονικής του
αλγορίθμου, όσο και λόγω της ίδιας της φύσης της ελληνικής γλώσσας.

Αυτό που μπορεί να διαπιστωθεί καταρχήν είναι η αδυναμία της εφαρμογής


να επεξεργαστεί λέξεις, οι οποίες είτε έχουν γραφτεί με λανθασμένη ορθογραφία, είτε

85
έχουν πληκτρολογηθεί λάθος από βιασύνη του χρήστη. Σε τέτοια περίπτωση το
λογισμικό δεν έχει την ευχέρεια να απομονώσει το λάθος και να προτείνει μέσω
μηνύματος στο χρήστη να εισάγει ξανά την πρόταση. Επιπλέον, απουσιάζει και η
δυνατότητα εξεύρεσης και διόρθωσης ορθογραφικών λαθών. Έτσι, σε περιπτώσεις
προτάσεων όπως

*Οι μαθιτές γράφουν. (4.11)

*Οι μαθατές γράφουν. (4.12)

το πρόγραμμα, αφού αναζητήσει στο λεξικό το συγκεκριμένο λεκτικό τύπο και δεν
τον βρει, ενημερώνει το χρήστη με το κατάλληλο μήνυμα απλά ότι η συγκεκριμένη
λέξη δεν υπάρχει καταχωρημένη στο λεξικό.

Με αυτόν τον τρόπο, όμως, ο μαθητής δε λαμβάνει την ενδεδειγμένη


ανατροφοδότηση, ιδιαίτερα σε περιπτώσεις ορθογραφικών λαθών, ώστε να βελτιώσει

86
την ορθογραφία του, που είναι μέσα στις ζητούμενες γλωσσικές ικανότητες που
πρέπει να αναπτύξει στα πλαίσια της διδασκαλίας.

Άλλη μια περίπτωση μη αποδεκτής λειτουργίας του συγκεκριμένου


λογισμικού σε συγκεκριμένες περιπτώσεις φράσεων και προτάσεων αιτιολογείται από
την ίδια τη φύση της ελληνικής γλώσσας, η οποία παρουσιάζει ασάφειες σε
συγκεκριμένες δομές της. Έτσι, για παράδειγμα, στα ουδέτερα ουσιαστικά η
ονομαστική και η αιτιατική, τόσο στον ενικό όσο και στον πληθυντικό αριθμό, δεν
εμφανίζουν καμία μορφολογική διαφορά. Το ίδιο συμβαίνει και με τα αντίστοιχα
άρθρα (το και τα), με αποτέλεσμα να μην υπάρχει καμία διαφοροποίηση μεταξύ
ονοματικών φράσεων των δύο αυτών πτώσεων. Αυτό δημιουργεί το πρόβλημα στην
εξεύρεση του υποκειμένου της πρότασης, καθώς η πτώση είναι το κριτήριο για να
χαρακτηριστεί μια ονοματική φράση υποκείμενο ή αντικείμενο. Σε αυτό το
ενδεχόμενο το πρόγραμμα αναγνωρίζει την πρώτη ονοματική φράση σαν υποκείμενο
και την επόμενη σαν αντικείμενο. Με αυτόν τον τρόπο όμως λειτουργίας δεν αποδίδει
σωστή συντακτική δομή σε προτάσεις όπου προηγείται το αντικείμενο. Έτσι, λοιπόν,
στην περίπτωση της πρότασης

Ένα πρόβλημα έλυσε το παιδί. (4.13)

η εφαρμογή αναγνωρίζει σαν υποκείμενο την ονοματική φράση ένα πρόβλημα και
σαν αντικείμενο τη φράση το παιδί, ενώ στην ουσία συμβαίνει το αντίθετο.

Επιπλέον, τόσο στα αρσενικά όσο και στα ουδέτερα ουσιαστικά, το άρθρο του
είναι η γενική τόσο του αρσενικού ο όσο και του ουδετέρου το. Εδώ, λοιπόν, έχουμε
άλλη μια περίπτωση ασάφειας, όπου στην εγγραφή στο λεξικό του λεκτικού τύπου
του δε μπορούμε να καθορίσουμε το άρθρο. Ακόμα και σε αυτή την περίπτωση, λόγω
της αρχιτεκτονικής και των διαδικασιών που περιλαμβάνονται στον αλγόριθμο,
οδηγούμαστε σε υπερ – παραγωγικότητα, με αποδοχή προτάσεων όπως

*Το παιδί του δασκάλας γράφει. (4.14)

Αν και οι παραπάνω περιπτώσεις μη αποδεκτής συμπεριφοράς του


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

87
μηχανισμών αποσαφήνισης διφορούμενων λεκτικών τύπων, ώστε η αποδοτικότητα
του προγράμματος να βελτιωθεί ακόμα περισσότερο.

4.3 Αξιολόγηση Από Τους Χρήστες

Όπως έχει ήδη αναφερθεί, το δεύτερο μέρος της διαδικασίας αξιολόγησης


αφορά στην επεξεργασία αυθεντικών προτάσεων, οι οποίες έχουν δημιουργηθεί από
δείγμα μαθητών της ομάδας στόχου, που είναι οι μη φυσικοί ομιλητές της ελληνικής
και φοιτούν σε δημοτικό σχολείο. Πρέπει να επισημανθεί ότι η εισαγωγή των
δεδομένων αυτών στο σύστημα δεν έγινε απευθείας από τους μαθητές, ούτως ώστε να
περιοριστούν τα λάθη που οφείλονται σε μη γλωσσολογικούς παράγοντες (δυσκολίες
στην πληκτρολόγηση κ.α.).

Μέσω των φύλλων εργασίας που δόθηκαν στους μαθητές αυτούς


δημιουργήθηκε μια τράπεζα 150 προτάσεων, η οποία συμπεριλαμβάνεται στο παρόν
έντυπο, στην ενότητα των παραρτημάτων. Οι προτάσεις αυτές παρουσιάζουν τα
χαρακτηριστικά που διαφαίνονται στον πίνακα και στο γράφημα που ακολουθούν:

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

Σωστή 98 65,3
Λάθος 52 34,7

Πίνακας 4.1 Χαρακτηρισμός Προτάσεων

Ορθότητα Προτάσεων

Σωστές
Λάθος

88
Γράφημα 4.1 Χαρακτηρισμός Προτάσεων

Όπως προκύπτει, οι μαθητές του δείγματος δημιούργησαν περισσότερες ορθές


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

ΕΙΔΟΣ ΛΑΘΟΥΣ ΑΠΟΛΥΤΗ ΣΥΧΝΟΤΗΤΑ ΣΧΕΤΙΚΗ ΣΥΧΝΟΤΗΤΑ

Κατάληξης 41 74,5
Ορθογραφίας 4 7,3
Ασυμφωνίας 10 18,2

Πίνακας 4.2 Είδη Λαθών

Είδη Λαθών

Κατάληξης
Ορθογραφίας
Ασυμφωνίας

Γράφημα 4.2 Είδη Λαθών

89
Επεξηγηματικά, τα λάθη κατάληξης αφορούν σε ορθογραφικά λάθη στις καταλήξεις
ρημάτων και ουσιαστικών. Τα λάθη ορθογραφίας αποτελούν λάθη στο θέμα των
λέξεων. Τέλος, τα λάθη ασυμφωνίας προκύπτουν εντός της δομής των φράσεων, όταν
δύο στοιχεία (π.χ. άρθρο και ουσιαστικό) έχουν διαφορετικό αριθμό, γένος, πτώση
κ.α. Από την επισκόπηση των στοιχείων παρατηρούμε ότι τα λάθη σε καταλήξεις
αποτελούν τη συντριπτική πλειοψηφία, ακολουθούμενα από τα λάθη ασυμφωνίας
και, τέλος, τα ορθογραφικά.

Στη συνέχεια ακολουθεί η παρουσίαση των δεδομένων που προκύπτουν από


την επεξεργασία των προτάσεων αυτών από τον αλγόριθμο που αναπτύχθηκε για το
σκοπό αυτό. Αρχικά παρατίθενται τα στοιχεία των επιδόσεων του αλγορίθμου για
κάθε κατηγορία προτάσεων ξεχωριστά (ορθές, με λάθη κατάληξης, με λάθη
ορθογραφίας και με λάθη ασυμφωνίας. Στη συνέχεια δίνεται ένας γενικός πίνακας
που δηλώνει συγκεντρωτικά σε πόσες περιπτώσεις των 150 προτάσεων η εφαρμογή
συμπεριφέρθηκε προβλεπόμενα και σε ποιες όχι.

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


ΠΡΟΓΡΑΜΜΑΤΟΣ

Προβλεπόμενη 73 74,5
Μη Προβλεπόμενη 25 25,5

Πίνακας 4.3 Επεξεργασία Ορθών Προτάσεων

Συμπεριφορά σε ορθές προτάσεις

Προβλεπόμενη
Μη προβλεπόμενη

Γράφημα 4.3 Επεξεργασία Ορθών Προτάσεων

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

Προβλεπόμενη 34 82,9
Μη Προβλεπόμενη 7 17,1

Πίνακας 4.4 Επεξεργασία Προτάσεων Με Λάθη Κατάληξης

Επιδόσεις Σε Λάθη Κατάληξης

Προβλεπόμενη
Μη Προβλεπόμενη

Γράφημα 4.4 Επεξεργασία Προτάσεων Με Λάθη Κατάληξης

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


ΠΡΟΓΡΑΜΜΑΤΟΣ

Προβλεπόμενη 0 0
Μη Προβλεπόμενη 4 100

Πίνακας 4.5 Επεξεργασία Προτάσεων Με Λάθη Ορθογραφίας

91
Επιδόσεις σε Λάθη Ορθογραφίας

Προβλεπόμενη
Μη Προβλεπόμενη

Γράφημα 4.5 Επεξεργασία Προτάσεων Με Λάθη Ορθογραφίας

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


ΠΡΟΓΡΑΜΜΑΤΟΣ

Προβλεπόμενη 7 70
Μη Προβλεπόμενη 3 30

Πίνακας 4.6 Επεξεργασία Προτάσεων Με Λάθη Ασυμφωνίας

Επιδόσεις Σε Λάθη Ασυμφωνίας

Προβλεπόμενη
Μη Προβλεπόμενη

Γράφημα 4.6 Επεξεργασία Προτάσεων Με Λάθη Ασυμφωνίας

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


ΠΡΟΓΡΑΜΜΑΤΟΣ

Προβλεπόμενη 114 74,5


Μη Προβλεπόμενη 39 25,5

Πίνακας 4.7 Συνολικά Αποτελέσματα Επεξεργασίας Προτάσεων

92
Συνολικές Επιδόσεις

Προβλεπόμενη
Μη Προβλεπόμενη

Γράφημα 4.7 Συνολικά Αποτελέσματα Επεξεργασίας Προτάσεων

4.4 Συζήτηση

Μετά την παράθεση των δεδομένων που προέκυψαν από την αξιολογική
διαδικασία, στην οποία υπεβλήθη ο αλγόριθμος ούτως ώστε να διαπιστωθεί η
αποδοτικότητά του, είναι απαραίτητο να ακολουθήσει η συζήτηση των
αποτελεσμάτων αυτών και να προκύψουν τα σχετικά συμπεράσματα, που αφορούν
τόσο στην προβλεπόμενη ή μη συμπεριφορά του προγράμματος όσο και στο κατά
πόσον καλύπτει τα κριτήρια λειτουργίας που τέθηκαν ως ερευνητικά ερωτήματα σε
προηγούμενο κεφάλαιο. Προκειμένου να εξαχθούν τα συμπεράσματα αυτά και να
διατυπωθούν τα ανάλογα πορίσματα, θα πρέπει να θεωρήσουμε τόσο τα
αποτελέσματα της αξιολόγησης των ερευνητών, όσο και αυτά της αξιολόγησης των
χρηστών, ώστε να προκύψει μια σφαιρική εικόνα περί των επιδόσεων του
προγράμματος.

Το λογισμικό είναι σε θέση να χειρίζεται την περίπτωση λέξεων που δεν


υπάρχουν στο λεξικό με σχετικό μήνυμα το οποίο εμφανίζεται στο χρήστη. Το
μήνυμα περιλαμβάνει και την επίμαχη λέξη, ούτως ώστε η σχετική ενημέρωση να
είναι επαρκής. Η συγκεκριμένη συμπεριφορά, όμως, της εφαρμογής ενέχει και ένα
πολύ συγκεκριμένο πρόβλημα. Η λειτουργία του λογισμικού διακόπτεται με την
εμφάνιση μιας άγνωστης λέξης, με αποτέλεσμα να μην υπάρχει καμία αξιολόγηση

93
των υπολοίπων στοιχείων της πρότασης. Σε αυτό το σημείο θα ήταν καλό να ενταχθεί
ένας μηχανισμός, ο οποίος να προσπαθεί να προσδώσει στην άγνωστη λέξη
γραμματικά χαρακτηριστικά (λ.χ. μέσω της κατάληξής της) ή με κάποιο τρόπο να
παρακάμπτεται και να επεξεργάζεται την υπόλοιπη πρόταση, αναδεικνύοντας λάθη
στα υπόλοιπα στοιχεία. Επιπλέον, λόγω της παραπάνω συμπεριφοράς, ο αλγόριθμος
τερματίζεται ακόμα και με την εισαγωγή λέξεων που είναι γραμμένες με λάθος
ορθογραφία ή λάθος πληκτρολόγηση.

Στην περίπτωση αναγνώρισης της ορθότητας κάποιων προτάσεων, ο


αλγόριθμος συμπεριφέρεται σύμφωνα με τον προβλεπόμενο τρόπο, αρκεί η
εισαχθείσα πρόταση να υπόκειται σε συγκεκριμένους περιορισμούς, οι οποίοι έχουν
να κάνουν με τη φύση της λειτουργίας του αλγορίθμου, αλλά και με τις δυνατότητές
του. Πιο συγκεκριμένα, οι προτάσεις θα πρέπει να αποτελούνται από εγγεγραμμένες
στο λεξικό λέξεις, με απλή συντακτική δομή (υποκείμενο – ρήμα – αντικείμενο).
Στην αξιολόγηση μέσω αυθεντικών προτάσεων, οι επιδόσεις του αλγορίθμου είναι
θετικές, αλλά όχι εξαιρετικές (μία στις τρεις προτάσεις δεν αξιολογείται σωστά). Το
συγκεκριμένο ποσοστό μπορεί να φαίνεται χαμηλό, αλλά εμφανίζεται έτσι διότι δεν
ακολουθήθηκαν οι περιορισμοί στο σχηματισμό προτάσεων που προαναφέρθηκαν.
Στις 25 περιπτώσεις μη προβλεπόμενης λειτουργίας, μόνο οι 8 αφορούσαν σε
συντακτικές δομές που δεν υπάρχουν στη γραμματική του αλγορίθμου (π.χ.
εμπρόθετοι προσδιορισμοί), ενώ οι υπόλοιπες περιπτώσεις προτάσεων απλά
περιελάμβαναν λέξεις οι οποίες δε συμπεριλαμβάνονταν στο λεξικό. Λαμβάνοντας
υπόψη αυτά τα δεδομένα, συμπεραίνουμε ότι η λειτουργία του αλγορίθμου ήταν
όντως η προβλεπόμενη.

Μια από τις παραμέτρους αποδοτικότητας του αλγορίθμου, όπως αυτή


διατυπώθηκε στα ερευνητικά ερωτήματα ήταν η αναγνώριση λαθών που αφορούν σε
ασυμφωνίες στον αριθμό, στην πτώση κ.τ.λ. Στην περίπτωση εσωτερικών
ασυμφωνιών (στα συστατικά στοιχεία μιας φράσης) ο αλγόριθμος λειτουργεί με τον
επιθυμητό τρόπο, υποδεικνύοντας ότι η πρόταση είναι λάθος και καθορίζοντας και το
είδος της ασυμφωνίας. Στην περίπτωση ασυμφωνίας υποκειμένου – ρήματος, υπάρχει
μια προβληματική περίπτωση πρότασης, στην οποία το υποκείμενο δεν
αναγνωρίζεται, προκειμένου να καθοριστεί εάν υπάρχει λάθος. Πρόκειται για
προτάσεις στις οποίες και το υποκείμενο και το αντικείμενο είναι γένους ουδετέρου.
Λόγω αμφισημίας χαρακτηριστικής της ελληνικής γλώσσας, στο ουδέτερο δε μπορεί

94
να διακριθεί μορφολογικά η ονομαστική και η αιτιατική πτώση. Ο αλγόριθμος
αποδίδει σε ονοματικές φράσεις το συντακτικό ρόλο του υποκειμένου ή του
αντικειμένου ανάλογα με την πτώση στην οποία βρίσκονται. Αφού κάτι τέτοιο δε
μπορεί να γίνει, το πρόγραμμα δε λειτουργεί σωστά. Ο μόνος τρόπος αναγνώρισης
του υποκειμένου σε τέτοιες περιπτώσεις είναι η αναγνώριση συγκεκριμένων
σημασιολογικών στοιχείων στο υποκείμενο και στο ρήμα, κάτι που στην παρούσα
έκδοση του προγράμματος δεν υφίσταται. Στην περίπτωση της αξιολόγησης του
αλγορίθμου από τους χρήστες, τα λάθη ασυμφωνίας που εντοπίστηκαν στις
αυθεντικές προτάσεις ήταν λιγοστά και οφείλονταν περισσότερο σε ορθογραφικά
λάθη στα άρθρα, που παρέπεμπαν σε διαφορετικό αριθμό ή πτώση. Παρόλα αυτά, οι
7 περιπτώσεις ασυμφωνίας εντοπίστηκαν κανονικά από το λογισμικό και μόλις τρεις
δεν αξιολογήθηκαν ορθά. Πρέπει, όμως, να σημειωθεί ότι οι συγκεκριμένες
προτάσεις περιείχαν λέξεις εκτός λεξικού ή με ορθογραφικά λάθη, με αποτέλεσμα η
λειτουργία του αλγορίθμου να τερματίζεται πρόωρα.

Τα λάθη στις καταλήξεις των ρημάτων μπορούν αν αναγνωριστούν από το


πρόγραμμα σε υψηλότατο ποσοστό. Κάτι τέτοιο γίνεται εύκολα με την ύπαρξη του
μορφολογικού αναλυτή, ο οποίος διαχωρίζει το θέμα από την κατάληξη και στη
συνέχεια αναγνωρίζει την ορθότητα της δεύτερης, προβάλλοντας στο χρήστη το
αντίστοιχο μήνυμα. Η προβλεπόμενη συμπεριφορά του αλγορίθμου σε αυτήν την
περίπτωση αναγνώρισης λάθους φτάνει στη μέγιστη τιμή της (82,9%), ενώ και σε
αυτή την περίπτωση, οι προτάσεις που δεν αξιολογούνται ορθά περιέχουν λέξεις
εκτός λεξικού ή με λάθος ορθογραφία, όποτε και το πρόγραμμα εκ φύσεως δε μπορεί
να λειτουργήσει σωστά.

Σε μια συνολική αποτίμηση της αποδοτικότητας και της γενικής επίδοσης του
προγράμματος στο σύνολο της επεξεργασίας της τράπεζας προτάσεων που
καταρτίθηκε, οι σωστές αξιολογήσεις των προτάσεων ανέρχονται στο 74,5%,
ποσοστό που δηλώνει πλειοψηφία, αλλά όχι αρκετά υψηλό. Αυτό, σε μια πρώτη
ανάγνωση θα συνεπαγόταν μη επαρκή λειτουργία του αλγορίθμου. Ελέγχοντας, όμως
τα δεδομένα εις βάθος, διαπιστώνουμε ότι η συντριπτική πλειοψηφία των
περιπτώσεων όπου το πρόγραμμα δε λειτούργησε σωστά περιείχε ανορθόγραφες ή
άγνωστες για το λεξικό λέξεις. Εάν αυτές εξέλειπαν, το λογισμικό θα είχε την
αναμενόμενη συμπεριφορά και επίδοση. Επομένως, το σχετικά υψηλό ποσοστό
αποτυχημένων αναλύσεων προτάσεων δεν οφείλεται μόνο σε μη επαρκή λειτουργία

95
του αλγορίθμου, αλλά περισσότερο στην αδυναμία των μαθητών της ομάδας στόχου
να ακολουθήσουν τους περιορισμούς στο σχηματισμό προτάσεων, οι οποίοι
περιγράφονταν από το φύλλο εργασίας το οποίο κλήθηκαν να συμπληρώσουν. Ακόμα
και τα ορθογραφικά λάθη που έγιναν θα μπορούσαν να είχαν αποφευχθεί αν ήταν
λίγο πιο προσεκτικοί, καθώς η ορθογραφία του θέματος των λέξεων που
εμπεριέχονται στο λεξικό φαινόταν στο φύλλο εργασίας που τους δόθηκε.

Συνοψίζοντας όλες τις παραπάνω παρατηρήσεις και διαπιστώσεις, διαφαίνεται


ότι η αποδοτικότητα του αλγορίθμου μπορεί να αυξηθεί σε σημαντικό ποσοστό εάν
προστεθεί κάποιος μηχανισμός, ο οποίος να αναγνωρίζει τα ορθογραφικά λάθη, να
ενημερώνει σχετικά το χρήστη για αυτά και στη συνέχεια να συνεχίζει την
επεξεργασία της πρότασης, αναγνωρίζοντας την επίμαχη λέξη μέσα στις διάφορες
εγγραφές του λεξικού. Είναι σημαντικό να βρεθούν τρόποι ούτως ώστε το πρόγραμμα
να μην τερματίζει τη λειτουργία του σε περίπτωση κάποιου άγνωστου λεκτικού
στοιχείου, αλλά με κάποιο τρόπο να την αντιπαρέρχεται και να συνεχίζει την
επεξεργασία και την αξιολόγησης της συγκεκριμένης πρότασης. Η σχεδίαση και
υλοποίηση ενός τέτοιου μηχανισμού θα μπορούσε να είναι μια από τις πρώτες
προτεραιότητες σε ενδεχόμενες μελλοντικές βελτιώσεις που θα οδηγήσουν σε
μεταγενέστερες εκδόσεις του προγράμματος.

96
Κεφάλαιο 5
Εν κατακλείδι

97
5.1 Γενικά Συμπεράσματα

Όπως διατυπώθηκε σαφώς στο πρώτο κεφάλαιο του παρόντος πονήματος, ο


σκοπός της συγκεκριμένης εργασίας είναι διπλός, σε θεωρητικό και πρακτικό
επίπεδο. Σε πρώτο στάδιο επιδιώξαμε να πραγματοποιήσουμε μια γενικότερη
ανασκόπηση του θεωρητικού πλαισίου που έχει διαμορφωθεί γύρω από το
επιστημονικό πεδίο της CALL, με αναφορές που φτάνουν έως και σε σύγχρονες
προσεγγίσεις και τεχνοτροπίες. Σε δεύτερο χρόνο, χρησιμοποιώντας ως εφαλτήριο
και κατευθυντήριες γραμμές ορισμένα στοιχεία του πλαισίου αυτού, έγινε μια
απόπειρα να δημιουργηθεί ένα πρόγραμμα υπολογιστή που θα μπορέσει να
αποτελέσει τη βάση για μελλοντικές εφαρμογές για τη διδασκαλία της ελληνικής
γλώσσας.

Η ανίχνευση του θεωρητικού πλαισίου που έχει διαμορφωθεί για να στηρίξει


επιστημολογικά τον τομέα της CALL ανέδειξε αρκετά ενδιαφέροντα στοιχεία. Όπως
ήταν αναμενόμενο, οι θεωρητικές προσεγγίσεις που επηρέασαν τόσο τη δημιουργία
εξειδικευμένου λογισμικού για τη διδασκαλία μιας γλώσσας, όσο και τον τρόπο
ενσωμάτωσης του υπολογιστή στη διδακτική πρακτική, έχουν τις βάσεις τους σε
αντίστοιχες θεωρίες της παιδαγωγικής επιστήμης. Η τάση που επικρατεί τη
συγκεκριμένη χρονική στιγμή στον υπό εξέταση χώρο, έχει τις ρίζες της κυρίως στη
θεωρία του κονστρουκτιβισμού.

Επιχειρώντας να θέσουμε επιγραμματικά κάποια χαρακτηριστικά που θα


πρέπει να αναδεικνύονται τόσο στα προγράμματα για τη διδασκαλία μιας γλώσσας,
όσο και σε αναλυτικά προγράμματα που τα χρησιμοποιούν, θα μπορούσαμε να
διατυπώσουμε κάποιες βασικές αρχές. Καταρχήν, το μοντέλο διδασκαλίας που
προτείνεται είναι το μαθητοκεντρικό. Ο μαθητής είναι υπεύθυνος για την οικοδόμηση
της γνώσης και την ενίσχυση των γλωσσικών του ικανοτήτων. Αν και το
μαθητοκεντρικό μοντέλο προτείνεται και από άλλες θεωρητικές προσεγγίσεις, ο
νεωτερισμός έχει να κάνει με τη μετατόπιση του ελέγχου της διδασκαλίας από το
δάσκαλο στο μαθητή. Οι μαθησιακοί στόχοι, η σειρά κατάκτησής τους, οι
δραστηριότητες που θα χρησιμοποιηθούν είναι αποκλειστική ευθύνη του σπουδαστή
της γλώσσας. Ο ρόλος του δασκάλου περιορίζεται στο να καθοδηγεί και να
διευκολύνει τη σκέψη του μαθητή, βοηθώντας τον στην αναζήτηση της γνώσης. Το

98
μαθησιακό αυτό μοντέλο μπορεί να εξυπηρετηθεί καλύτερα με κάποιο εξειδικευμένο
εκπαιδευτικό λογισμικό. Μπορεί να δοθεί απευθείας στο μαθητή να επιλέξει τις
δραστηριότητες που επιθυμεί, να ασχοληθεί με συγκεκριμένες ενότητες της ύλης, να
αποφασίσει για το ρυθμό της προόδου του ή για την ώρα ενασχόλησής του, ακόμα
και να οδηγηθεί σε μια αυτοαξιολόγηση, υποβοηθούμενος από το ίδιο το πρόγραμμα.

Μια άλλη παράμετρος της μαθησιακής διαδικασίας, στην οποία δίνεται πολύ
μεγάλη σημασία, είναι η κοινωνική διάσταση της μάθησης. Οι μαθησιακοί στόχοι
μπορούν να εκπληρωθούν πιο γρήγορα και ορθά μέσω της αλληλεπίδρασης μαθητών
μεταξύ τους. Η εργασία σε ομάδες, προκειμένου να επιτευχθεί ένας κοινός
μαθησιακός στόχος, αποτελεί μια από τις πλέον διαδεδομένες παιδαγωγικές
πρακτικές. Οι διάφορες τεχνολογικές εξελίξεις επιτρέπουν στα σημερινά
εκπαιδευτικά προγράμματα να χρησιμοποιούν τις δυνατότητες του διαδικτύου, ώστε
οι χρήστες να είναι σε θέση να επικοινωνούν μεταξύ τους, ακόμα και σε πραγματικό
χρόνο, χρησιμοποιώντας συσκευές που προϋποθέτουν αμιγώς γλωσσικές ικανότητες
(συζητούν αντί να πληκτρολογούν μηνύματα ο ένας στον άλλο).

Σημαντική εξέλιξη στον τομέα της πληροφορικής και, κατ’ επέκταση, και στα
προγράμματα διδασκαλίας της γλώσσας, αποτελεί η προσθήκη και συνεχής βελτίωση
της τεχνητής νοημοσύνης. Το γεγονός αυτό έδωσε τη δυνατότητα αναβάθμισης της
επικοινωνίας μεταξύ χρήστη και υπολογιστή και εμπλούτισε τα προγράμματα με
δυνατότητες που ξεφεύγουν από το στενό πλαίσιο δράσης – αντίδρασης στις
διάφορες εφαρμογές. Ένα πρόγραμμα είναι σε θέση να αξιολογήσει, χωρία κάποια
ανθρώπινη παρέμβαση, τις εισαγόμενες πληροφορίες και δεδομένα και να
ενημερώσει το χρήστη για την πρόοδό του, ή να του προτείνει εναλλακτικές
μεθόδους δράσης, ώστε να οδηγηθεί σε περεταίρω βελτίωση.

Μια από τις πιο σημαντικές εφαρμογές της τεχνητής νοημοσύνης στην
τεχνολογία των υπολογιστών είναι η δυνατότητα επικοινωνίας μεταξύ χρήστη και
προγράμματος μέσω φυσικής γλώσσας. Με τον τρόπο αυτό αποφεύγεται η
προαπαίτηση εξειδικευμένων γνώσεων προγραμματισμού ή μεθοδολογιών
προκειμένου να επιτευχθεί η αλληλεπίδραση. Ως μέσο επικοινωνίας αναδεικνύεται η
φυσική γλώσσα, την οποία ούτως ή άλλως οι άνθρωποι χρησιμοποιούν σε διάφορες
επικοινωνιακές καταστάσεις που εμπλέκονται. Σε ένα πρόγραμμα διδασκαλίας μιας
γλώσσας αυτή η δυνατότητα καθίσταται ανεκτίμητη, καθώς ο χρήστης – μαθητής

99
εμπλέκεται σε δραστηριότητες, όπου χρειάζεται να επικοινωνήσει μέσω του ίδιου του
αντικειμένου της μελέτης του, οδηγώντας σε βελτίωση των ικανοτήτων του αλλά και
σε υψηλότερες επιδόσεις.

Μέσα σε αυτό το θεωρητικό πλαίσιο, επιχειρήθηκε η ανάπτυξη ενός


λογισμικού που θα μπορούσε να χρησιμοποιηθεί για τη διδασκαλία της ελληνικής
και, ταυτόχρονα, να κινείται μέσα στα πλαίσια που οριοθετήθηκαν προηγουμένως.
Καθώς το πρόγραμμα αυτό αποτελεί προϊόν της προσπάθειας ενός μόνο ατόμου, εκ
των πραγμάτων δε μπορούσε να έχει φιλόδοξο εύρος. Δεν πρόκειται για μια εμπορική
εφαρμογή ή για ένα τελικό προϊόν, το οποίο μπορεί να χρησιμοποιηθεί αυτούσιο σε
μια σχολική τάξη και να εξυπηρετήσει συγκεκριμένους διδακτικούς σκοπούς. Θα
μπορούσε να θεωρηθεί σαν μια εισαγωγική πλατφόρμα, πάνω στην οποία μπορεί να
στηριχθεί μια μελλοντική επέκταση και να μετουσιωθεί σε ένα σύνολο
δραστηριοτήτων με σαφείς μαθησιακούς προσανατολισμούς, με δυνατότητες
πολυμέσων και με ένα θελκτικό περιβάλλον εργασίας.

Λαμβάνοντας υπόψη τα παραπάνω, το τελικό πρόγραμμα που προέκυψε από


αυτό το εγχείρημα εμφανίζει κάποια δυνατά σημεία, αλλά και αδυναμίες, οι οποίες θα
πρέπει να περιοριστούν σε μελλοντικές εκδοχές, προκειμένου να αυξηθεί η
αποδοτικότητά του. Στο κέντρο του συγκεκριμένου λογισμικού βρίσκεται ο parser, ο
οποίος αναγνωρίζει προτάσεις που εισάγονται από το χρήστη και αποφαίνεται για την
ορθότητά τους ως προς τη γραμματική και το συντακτικό. Η παιδαγωγική αξία του
συγκεκριμένου τμήματος του αλγορίθμου είναι φανερή, καθώς εδώ μπορούν να
διαπιστωθούν τα λάθη στις προτάσεις και να ενημερωθεί ο χρήστης για το είδος τους
μέσω μηνυμάτων που παρέχονται από το ίδιο το πρόγραμμα. Η αποδοτικότητα του
αλγορίθμου καθορίζεται από τη δυνατότητα που έχει να αναγνωρίζει τα λάθη που
γίνονται στις προτάσεις, να καθορίζει σωστά το είδος τους και να παρέχει επαρκείς
πληροφορίες για τη διόρθωσή τους. Επιπλέον, θα πρέπει να αποδέχεται όλες τις
γραμματικά ορθές προτάσεις και να απορρίπτει όλες τις λανθασμένες. Όπως
διαπιστώνεται στο κεφάλαιο της αξιολόγησης του λογισμικού, υπάρχουν περιπτώσεις
προτάσεων, οι οποίες, αν και λάθος, αναγνωρίζονται από το πρόγραμμα ως σωστές.
Αυτή είναι μια αδυναμία που σε μελλοντικές εκδόσεις πρέπει να απαλειφθεί.

Εξάλλου, πρέπει να λαμβάνεται συνεχώς υπόψη ότι το συγκεκριμένο


πρόγραμμα δεν προορίζεται για να λειτουργήσει απλά ως ξεχωριστή εφαρμογή. Η

100
φιλοδοξία του εγχειρήματος είναι να δημιουργηθεί η βάση για περαιτέρω εφαρμογές
CALL, με περισσότερες δυνατότητες και φιλικότερο περιβάλλον χρήστη. Πάνω σε
αυτή την παραδοχή βασίστηκαν αρκετές σχεδιαστικές επιλογές, οι οποίες έγιναν υπό
έναν ορίζοντα μελλοντικών προσθηκών. Με βάση αυτή την προοπτική, το
αποτέλεσμα της λειτουργίας του αλγορίθμου δεν θα έπρεπε να είναι απλά μια δήλωση
περί της ορθότητας της πρότασης, ή κάποιων μηνυμάτων που αναφέρονται στο είδος
των λαθών που έχουν γίνει από το χρήστη. Έτσι, στην περίπτωση κάποιας ορθής
πρότασης δίνεται ως τελικό προϊόν λειτουργίας του αλγορίθμου η συντακτική της
αναπαράσταση. Αυτό μπορεί να χρησιμοποιηθεί σε εφαρμογές επικοινωνίας χρήστη –
υπολογιστή μέσω φυσικής γλώσσας, ή ακόμα και για κάποια σημασιολογική
ανάλυση της εισαχθείσας πρότασης. Γι’ αυτό το λόγο, άλλωστε, και η δομή των
εγγραφών του λεξικού είναι δοσμένη με τέτοιο τρόπο ώστε να επιτρέπει την
εισαγωγή περισσοτέρων πληροφοριών για τους λεκτικούς τύπους που έχουν εισαχθεί,
ούτως ώστε να επιτρέπεται η επέκταση της λειτουργίας του αλγορίθμου και σε άλλα
επίπεδα γλωσσολογικής ανάλυσης, είτε ανώτερα (σημασιολογική, πραγματολογική),
είτε κατώτερα (φωνητική, φωνολογική).

Όσον αφορά στην αξιολόγηση των επιδόσεων του αλγορίθμου που


αναπτύχθηκε στα πλαίσια της παρούσας ερευνητικής δραστηριότητας, σε συσχετισμό
με τα ερευνητικά ερωτήματα που θέσαμε στο κεφάλαιο του θεωρητικού πλαισίου,
προκύπτουν τα παρακάτω συμπεράσματα:

 Η εφαρμογή αναγνωρίζει επαρκώς τις ορθές προτάσεις που εισάγονται, σε


αρκετά υψηλό ποσοστό. Οι περιπτώσεις προτάσεων που δεν αναγνωρίστηκαν
ως ορθές, αν και ήταν, περιείχαν λέξεις εκτός λεξικού του προγράμματος, ή με
ορθογραφικά λάθη, με αποτέλεσμα η λειτουργία του αλγορίθμου να
τερματίζεται πρόωρα, πριν ολοκληρωθεί η ανάλυση της πρότασης.
 Λάθη ασυμφωνίας ανάμεσα στα δομικά στοιχεία φράσεων (π.χ. άρθρο και
ουσιαστικό) αναγνωρίζονται σε υψηλό ποσοστό. Επιπλέον, στο σύνολο των
περιπτώσεων αυτών αναγνωρίστηκε ακριβώς και το είδος της ασυμφωνίας
(π.χ. στην πτώση, στο γένος κ.τ.λ.). Και σε αυτή την περίπτωση, η
δυσλειτουργία του αλγορίθμου εντοπίζεται σε προτάσεις που περιείχαν
ανορθόγραφες ή εκτός λεξικού λέξεις.

101
 Αυθεντικές προτάσεις που να περιέχουν ασυμφωνία υποκειμένου – ρήματος
σε πρόσωπο ή αριθμό δεν περιλαμβάνονταν μέσα στην τράπεζα προτάσεων
που δημιουργήθηκε. Η αξιολόγηση της επίδοσης του προγράμματος σε
τέτοιες περιπτώσεις στηρίχθηκε μόνο στην αξιολογική δραστηριότητα του
ερευνητή, με στοχευμένες προτάσεις που εισήχθησαν στο σύστημα και οι
οποίες αναλύθηκαν ακριβώς και εντοπίστηκαν τα λάθη. Μοναδική περίπτωση
δυσλειτουργίας του αλγορίθμου είναι στην περίπτωση παρουσίας υποκειμένου
και αντικειμένου σε ουδέτερο γένος. Σε αυτή την περίπτωση, λόγω του ότι η
πτώση στην οποία βρίσκονται οι ονοματικές φράσεις δε μπορεί να διακριθεί
μορφολογικά, ο αλγόριθμος αδυνατεί να αποδώσει σωστά το συντακτικό ρόλο
του υποκειμένου ή του αντικειμένου, με αποτέλεσμα να μη μπορεί να
αναγνωρίσει ενδεχόμενη ασυμφωνία μεταξύ υποκειμένου και ρήματος.
 Τα καταληκτικά λάθη των ρημάτων αναγνωρίζονται επαρκώς, με την ανάλογη
προβολή μηνύματος στον χρήστη, χάρη στην ύπαρξη του μορφολογικού
αναλυτή, ο οποίος είναι σε θέση να διαχωρίζει το θέμα από την κατάληξη του
ρήματος. Δυστυχώς το ίδιο δε συμβαίνει με καταληκτικά λάθη στα
ουσιαστικά, καθώς δεν υπάρχει αντίστοιχος μορφολογικός αναλυτής που να
τα επεξεργάζεται.

6.2 Μελλοντικές Bελτιώσεις

Τόσο στο κεφάλαιο της αξιολόγησης του λογισμικού, όσο και στην
προηγούμενη ενότητα, αναφέρθηκαν οι αδυναμίες του συγκεκριμένου προγράμματος
στο χειρισμό κάποιων προβληματικών περιπτώσεων προτάσεων της νέας ελληνικής.
Από τη στιγμή που διαπιστώθηκαν οι αδυναμίες αυτές, είναι απαραίτητο να
προταθούν συγκεκριμένοι τρόποι αλλά και μέθοδοι, προκειμένου να προκύψει μια
βελτιωμένη εκδοχή του συγκεκριμένου προγράμματος. Η συγκεκριμένη ενότητα θα
ασχοληθεί με την αναφορά συγκεκριμένων προτάσεων προς βελτίωση του τελικού
προϊόντος, αλλά και επέκτασης των δυνατοτήτων του, η οποία δεν επετεύχθη λόγω
του περιορισμένου εύρους του.

Ένα από τα πρώτα σημεία του κώδικα που επιδέχεται περαιτέρω επέκτασης
είναι ο μορφολογικός αναλυτής. Συγκεκριμένα, περιλαμβάνει καταλήξεις ρημάτων σε
Ενεστώτα και Αόριστο. Σε μια μελλοντική επέκταση θα μπορούσε να εμπλουτιστεί

102
με καταλήξεις άλλων χρόνων και εγκλίσεων, χωρίς να αλλάξει ο βασικός μηχανισμός
του αλγορίθμου. Η μοναδική προσθήκη που θα χρειαστεί έγκειται στη συμπλήρωση
της γραμματικής, με την προσθήκη κανόνων στις ρηματικές φράσεις, οι οποίοι θα
περιλαμβάνουν τη χρησιμοποίηση χαρακτηριστικών μορίων, όπως το «θα» για τους
μέλλοντες ή το «να» για την υποτακτική. Επιπλέον, ο μορφολογικός αναλυτής μπορεί
να περιλαμβάνει και καταλήξεις ουσιαστικών και επιθέτων. Αυτό που πρέπει να
ληφθεί υπόψη είναι η προσθήκη ενός μηχανισμού που θα περιλαμβάνει τους κανόνες
τονισμού και θα προβλέπει τη μετακίνησή τους στη γενική και στην αιτιατική, καθώς
και το χειρισμό των ανισοσύλλαβων ουσιαστικών, με αλλαγές στο θέμα της
συγκεκριμένης λέξης.

Κάποιες επιπλέον αλλαγές θα μπορούσαν να υιοθετηθούν στον τρόπο


αναπαράστασης και χειρισμού του λεξικού του συγκεκριμένου προγράμματος. Πιο
συγκεκριμένα, η παρούσα εκδοχή του αλγορίθμου δεν εκμεταλλεύεται καθόλου τις
δυνατότητες του αντικειμενοστραφούς προγραμματισμού (object – oriented
programming), τις οποίες προσφέρει η Visual Prolog. Επομένως, το λεξικό θα
μπορούσε να επανασχεδιαστεί σαν ξεχωριστή κλάση (class), στην οποία κάθε λέξη
θα αποτελεί ξεχωριστό αντικείμενο (object), στο οποίο θα ορίζονται ως
χαρακτηριστικά (attributes) τόσο η γραφημική του αναπαράσταση, όσο και οι τιμές
των επιμέρους γραμματικών χαρακτηριστικών του (μέρος του λόγου, αριθμός,
πτώση, γένος, πρόσωπο κ.τ.λ.). Με αυτόν τον τρόπο μπορεί να δοθεί η ευκαιρία και
για δημιουργία ενός μηχανισμού, ο οποίος να επιτρέπει στον εκπαιδευτικό να
παρεμβαίνει στο λημματολόγιο του λεξικού, με τη δυνατότητα προσθήκης,
αφαίρεσης ή και επεξεργασίας των υπαρχόντων λημμάτων. Οι παρεμβάσεις του
εκπαιδευτικού θα μπορούν να πραγματοποιηθούν χωρίς καμία επαφή με τον
πραγματικό κώδικα, μέσω μιας ειδικά διαμορφωμένης φόρμας, στην οποία θα
συμπληρώνονται ή θα διαφοροποιούνται τα επιμέρους πεδία της.

Επιπρόσθετα, αλλαγές ενδεχομένως να μπορούσαν να γίνουν και στη


γραμματική. Ο εμπλουτισμός της γραμματικής με επιπλέον κανόνες δομής φράσης
(phrase – structure rules) είναι δυνατό να οδηγήσει στη δυνατότητα επεξεργασίας πιο
πολύπλοκων προτάσεων. Κάτι τέτοιο θα μπορούσε να περιλαμβάνει την εισαγωγή
εμπρόθετων προσδιορισμών, παρατακτικής αλλά και υποτακτικής σύνδεσης και, κατά
συνέπεια, δημιουργία περιόδων με περισσότερα του ενός ρήματα. Σε αυτή την
περίπτωση, πρέπει να εισαχθούν επιπλέον κανόνες και για τους συνδέσμους,

103
προκειμένου να προσδιορίζεται κάθε φορά το είδος της σύνδεσης των προτάσεων και
έτσι να δίνεται η δυνατότητα στο σύστημα να αποφαίνεται για την γραμματικότητα
των προτάσεων αυτών.

Μια σημαντικότατη βελτίωση για το συγκεκριμένο αλγόριθμο θα μπορούσε


να είναι η επέκτασή του, ούτως ώστε να έχει τη δυνατότητα να επεξεργάζεται
κειμενικές παραγωγές που ξεπερνούν το επίπεδο της πρότασης. Σε αυτές τiς
περιπτώσεις, το πρόγραμμα θα πρέπει να εμπλουτιστεί με κανόνες και μηχανισμούς
που θα επιτρέπουν την επίλυση της αναφοράς (reference resolution). Αυτό, εν
ολίγοις, σημαίνει ότι η εφαρμογή θα πρέπει να αναγνωρίζει τις οντότητες στις οποίες
αναφέρονται οι αναφορικές αντωνυμίες, ώστε να μπορεί να ελέγχει ζητήματα
συμφωνίας αριθμού ή γένους.

Όσον αφορά στη μακροδομή της εφαρμογής που αναπτύχθηκε, θα μπορούσαν


να προστεθούν μια σειρά από δυνατότητες που θα βοηθούσαν τον εκπαιδευτικό στο
διδακτικό του έργο. Πιο συγκεκριμένα, χρησιμοποιώντας τους προϋπάρχοντες
μηχανισμούς του αλγορίθμου, μπορεί να προκύψουν επιπλέον δραστηριότητες υπό τη
μορφή συμπλήρωσης κενών. Σε αυτές θα ζητείται από τους μαθητές να
συμπληρώσουν προτάσεις, χρησιμοποιώντας τους κατάλληλους κλιτικούς τύπους
λέξεων (ουσιαστικών, επιθέτων ή ρημάτων), οι οποίες βρίσκονται μέσα σε
παρενθέσεις. Ο αλγόριθμος έχει τη δυνατότητα να ελέγξει την επιλογή του μαθητή
και να παράσχει πληροφορίες για την ορθότητα της με τη μορφή μηνύματος.
Επιπλέον, μέσω του μορφολογικού αναλυτή, ο εκπαιδευτικός έχει τη δυνατότητα να
δημιουργήσει αυτόματα τέτοιες δραστηριότητες, με το πρόγραμμα να απομονώνει τις
ζητούμενες λέξεις από ένα κείμενο που του δίνεται και να το παρουσιάζει με κενά,
βάζοντας τις λέξεις αυτές μέσα σε παρενθέσεις στη μορφή του εισόδιου λήμματος
λεξικού (πρώτο ενικό πρόσωπο ενεστώτα για τα ρήματα, ονομαστική ενικού για τα
ουσιαστικά και για τα επίθετα).

Τέλος, μια δυνατότητα που θα ήταν δυνατό να υιοθετηθεί από το λογισμικό


προς την κατεύθυνση της βελτίωσης της λειτουργικότητάς του θα ήταν η δημιουργία
μιας βάσης δεδομένων για τους μαθητές που το χρησιμοποιούν. Πιο συγκεκριμένα,
κάθε μαθητής θα έχει τη δυνατότητα να εισάγει τα στοιχεία του την πρώτη φορά που
θα χρησιμοποιεί το πρόγραμμα. Στη συνέχεια, και για κάθε φορά που θα το
χρησιμοποιεί, θα χρειάζεται μόνο ένα όνομα χρήστη και έναν κωδικό. Η εγγραφή

104
κάθε μαθητή στο σύστημα θα δημιουργεί μια καταχώρηση, η οποία, εκτός από τα
προσωπικά του στοιχεία, θα περιλαμβάνει τις επιδόσεις του σε δραστηριότητες που
έχει αναλάβει, τα είδη λαθών στα οποία είναι περισσότερο επιρρεπής κ.α. Αυτό θα
δίνει τη δυνατότητα στον εκπαιδευτικό να παρακολουθεί την πρόοδό τους και να
αναγνωρίζει τυχόν αδυναμίες τους, προκειμένου να προσαρμόσει τη διδασκαλία του
στις ανάγκες τους. Επιπλέον, μέσα από τις συγκεκριμένες πληροφορίες θα μπορεί το
ίδιο το πρόγραμμα να προτείνει στο μαθητή δραστηριότητες που σχετίζονται με τα
πιο συνήθη λάθη του, προκειμένου να βελτιωθεί.

105
Βιβλιογραφία
Arneil, S. & Holmes, M. (2003). Servers, clients, testing and teaching. Στο U. Felix
(Επιμ.), Language learning online: Towards best practice (σελ. 59 – 80). Lisse, The
Netherlands: Swets & Zeitlinger.

Bancheri, S. (2006). A Language Teacher’s Perspective on Effective Courseware.


Στο R. P. Donaldson & M. A. Haggstrom (Επιμ.), Changing Language Education
Through CALL (σελ. 31 - 48). New York: Routledge.

Blin, F. (2004). CALL and the development of learner autonomy: Towards an activity
– theoretical perspective. ReCALL, 16 (2), 377 – 395.

Bratko, I. (2001). PROLOG Programming for Artificial Intelligence. Essex, UK:


Pearson Education Limited.

Γιωλτζόγλου Σ. (2008). Προβλήματα διδασκαλίας της ελληνικής γλώσσας στην


Τουρκία. Στο Γεωργογιάννης Π. (Επιμ.), Διδακτική της Ελληνικής ως Δεύτερης ή
Ξένης Γλώσσας: Βηματισμοί για μια αλλαγή στην εκπαίδευση- Τόμος 4ος (σελ. 175 -
181). Πάτρα: TYPOCENTER.

De Boer, T. W. (2009). A Beginners’ Guide to Visual Prolog – Version 7.2.


Ανακτήθηκε στις 12 Απριλίου 2011 από την ιστοσελίδα www.visualprolog.com .

Egbert, J. (2005). Conducting Research on CALL. Στο J. Egbert & G. M. Petrie


(Επιμ.), CALL Research Perpsectives (σελ. 3 - 8). Mahwah, NJ: Lawrence Erlbaum
Associates.

Fotos, S. & Browne C. M. (2004). The Development of CALL and current options.
Στο S. Fotos & C. M. Browne (Επιμ.), New Perspectives on CALL for second
language classrooms (σελ. 3 - 14). Mahwah, NJ: Lawrence Erlbaum Associates.

Fox, J. (1989). Can computers aid vocabulary learning? Στο Κ. Cameron (Επιμ.),
Computer Assisted Language Learning (σελ. 1 – 13). Oxford, UK: Intellect Limited.

Hardison, D. M. (2004). Generalisation of computer – assisted prosody training:


Quantitative and qualitative findings. Language Learning & Technology, 8 (1), 34 –
52.

Jurafsky, D. & Martin, J. H. (2000). Speech and Language Processing: An


Introduction to Natural Language Processing, Computational Linguistics and Speech
Recognition. Upper Saddle River, NJ: Prentice Hall.

Kazeroni , A. (2006). Have we left the Teacher out of the Equation? Strengthening the
link between Teacher Cognition and Task Design in CALL. Στο R. P. Donaldson &

106
M. A. Haggstrom (Επιμ.), Changing Language Education Through CALL (σελ. 19 -
30). New York: Routledge.

Levy, M. (1997). Computer – assisted language learning: Context and


conceptualization. Oxford, UK: Clarendon.

Levy, M. (2006). Effective use of CALL Technologies: Finding the right balance. Στο
R. P. Donaldson & M. A. Haggstrom (Επιμ.), Changing Language Education
Through CALL (σελ. 1 - 18). New York: Routledge.

Levy, M. & Kennedy, C. (2004). A task – cycling pedagogy using audio –


conferencing and stimulated reflection for foreign language learning. Language
Learning & Technology, 8 (2), 50 – 68.

Levy, M. & Stockwell, G. (2006). CALL Dimensions: Options and Issues in


Computer - Assisted Language Learning. Mahwah, NJ: Lawrence Erlbaum
Associates.

Light, P. (1993). Collaborative learning with computers. Στο Scrimshaw P. (Επιμ.),


Language, Classroom and Computers (σελ. 40 – 56). London: Routledge.

Μάρακα Κ. (2008). Επισημάνσεις και διαπιστώσεις από τη διδασκαλία της ελληνικής


ως ξένης γλώσσας στην Απουλία. Στο Γεωργογιάννης Π. (Επιμ.), Διδακτική της
Ελληνικής ως Δεύτερης ή Ξένης Γλώσσας: Βηματισμοί για μια αλλαγή στην
εκπαίδευση- Τόμος 4ος (σελ. 182 - 191). Πάτρα: TYPOCENTER.

Meskill, C. (1999). Computers as tools for sociocollaborative language learning. Στο


Cameron K. (Επιμ.), Computer Assisted Language Learning: Media, design and
applications (σελ. 141 – 164). Lisse, The Netherlands: Swets & Zeitlinger.

Μιλένοβα, Μ. (2008). Δυσκολίες που αντιμετωπίζουν οι σλαβόφωνοι κατά την


εκμάθηση της Νεοελληνικής ως δεύτερης ή ξένης γλώσσας. Στο Γεωργογιάννης Π.
(Επιμ.), Διδακτική της Ελληνικής ως Δεύτερης ή Ξένης Γλώσσας: Βηματισμοί για μια
αλλαγή στην εκπαίδευση- Τόμος 4ος (σελ. 158 – 163). Πάτρα: TYPOCENTER.

Nugues, P. M. (2006). An Introduction to Natural Language Processing with Perl and


Prolog. Berlin, Germany: Springer.

Nunan, D. (1989). Designing tasks for the communicative classroom. Cambridge,


UK: Cambridge University Press.

Παναγιωτακόπουλος, Χ., Πιερρακέας, Χ. & Πιντέλας, Π. (2003). Το εκπαιδευτικό


λογισμικό και η αξιολόγησή του. Αθήνα: Μεταίχμιο.

Roschelle, J. (2003). Keynote paper: Unlocking the learning value of wireless mobile
devices. Journal of Computer Assisted Learning, 19, 260 – 272.

107
Webster, L. & Murphy, D. (2008). Enhancing Learning Through Technology:
Challenges and Responses. Στο R. Kwan, R. Fox, F.T. Chan & P. Tsang (Επιμ.),
Enhancing Learning through technology: Research on Emerging Technologies and
Pedagogies (σελ. 1 - 16). Singapore: World Scientific Publishing.

Wertch J. V. (1985). Vygotsky and the Social Formation of Mind. Cambridge, MA:
Harvard University Press.

108
Παράρτημα

109
Τράπεζα Προτάσεων
Για Τη Διαδικασία Αξιολόγησης

Τα παιδιά κάνουν μάθημα.

Γράφο στο τετράδιο.

Η μαθητές παίζουν στην αυλή.

Η κυρία γράφι στον πίνακα.

Εγώ γράφο την αντιγραφί.

Εγώ κάνω την άσκηση.

Τα παιδιά μιλάνε.

Τραβάω την γραμμή.

Δίνω την γόμα.

Κόβω το χαρτί.

Ο δάσκαλος μαθαίνη τα παιδιά.

Ο μαθητής ανοίγη το παράθυρο.

Ο μαθητής παίζη στο προαύλιο.

Εγώ σηκώνο το χέρι.

Η κυρία ρωτάι τους μαθητές.

Μιλάο στην τάξη.

Ο δάσκαλος γράφι στον πίνακα.

Τα παιδιά διαβάζουν το βιβλίο.

Ο δάσκαλος σβήνι τον πίνακα.

Ο δάσκαλος μας μαθαίνει τα μαθήματα.

Τα παιδιά γράφουν στο τετράδιο.

Εγώ μαθαίνω την άσκηση.

110
Τα παιδιά κάνουν κατασκευή.

Λέω την προπαίδεια.

Ο δάσκαλος κάνει μια άσκηση στον πίνακα.

Ο μαθητής μαθαίνη την ορθογραφία.

Το αγόρι λύνει την άσκηση.

Το κορίτσι μιλάει.

Το κορίτσι σβήνη τον πίνακα.

Το κορίτσι κλείνη την πόρτα.

Τα παιδιά πάνε στην αίθουσα.

Ο δάσκαλος μαθαίνι τα παιδιά.

Οι μαθητές διαβάζουν στο δάσκαλος.

Ο δάσκαλος σβήνι τον πίνακα.

Ο δάσκαλος διορθώνι τα παιδιά.

Οι δασκάλα μαθαίνι τους μαθητές.

Οι μαθητές βοηθούν την δασκάλα.

Εγώ διαβάζω το βιβλίο.

Τα παιδιά διαβάζουν τα βιβλία.

Το παιδί λένε της προπαίδειες.

Τα παιδιά κλείνουν τα παράθυρα.

Η κυρία διορθώνι τα βιβλία.

Εμείς γράφουμε το τεστ.

Εμείς μιλάμε.

Τα παιδιά ζωγραφίζουν.

Η κυρία γράφει τις ασκήσης στον πίνακα.

Οι μαθητές μιλάνε.

Ένα κορίτσι γράφει μια άσκηση στο τετράδιο.

Ένας σημαθητής μου λύνη μια άσκηση στον πίνακα.

111
Η κυρία φωνάζη στα παιδιά.

Εγώ γράφω μια άσκηση.

Ένα παιδί γράφει μια έκθεση.

Ένα παιδί διαβάζη ένα κείμενο.

Ένα κορίτσι δεν προσέχη στο μάθημα.

Το αγόρι κάνει της ασκήσης του.

Το κορίτσι παίζει με το στυλό.

Ο μαθητής παίζει με τη γόμα.

Η μαθήτρια μιλάει με την δασκάλα.

Ο συμμαθητής μου παίζει με τον χάρακα.

Η αδερφή μου παίζει με το μολύβι.

Η κυρία λέει την άσκηση.

Ο μαθητής λύνει την άσκηση.

Η κυρία διορθώνει της ασκήσεις.

Εγώ γράφω την άσκηση στον πίνακα.

Εγώ διαβάζω για το διαγώνισμα.

Ζωγραφίζουμε στον πίνακα.

Ο δάσκαλος σβήνει τον πίνακα.

Πηγαίνω στο προαύλιο.

Κλείνω την τσάντα.

Ο μαθητής διαβάζει την άσκηση.

Εγώ ξύνω το μολύβι.

Οι δασκάλες μας λένε το μάθημα.

Εγώ δίνω το στυλό μου.

Εγώ ανοίγω την πόρτα.

Εγώ κάνω κατασκευές.

Εγώ γράφω την άσκηση.

112
Εμείς γράφουμε το τεστ.

Εγώ διαβάζω την άσκηση.

Εμείς ζωγραφίζουμε.

Ο δάσκαλος κλείνι τη πόρτα.

Ο μαθητής λέει το μάθημα.

Ο δάσκαλος φωνάζει τους μαθητές.

Ο μαθητής παίζει στην αίθουσα.

Το αγόρι διαβάζει ένα βιβλίο.

Ο δάσκαλος φωνάζει στο αγόρι.

Γράφω τις ασκήσης.

Κλείνετε το βιβλίο.

Παίζω στο προαύλιο.

Δίνετε το τεστ.

Ρωτάω τον δάσκαλο.

Βοηθάω τους μαθητές.

Κάνει την αντιγραφή.

Ξύνουμε το μολύβι.

Κλείνουμε το παράθυρο.

Λύνις το τεστ.

Ο μαθητής διαβάζει της ασκήσεις.

Ο δάσκαλος μαθαίνη τα παιδιά.

Ο δάσκαλος κλείνη το παράθυρο.

Οι κυρία βοηθάϊ τα παιδιά.

Ο δάσκαλος φωνάζι στα παιδιά.

Ο κύριος δίνι τεστ στα παιδιά.

Οι κυρία βάζει έκθεση στης μαθήτριες.

Ο κύριος δίνι εργασία στα παιδιά.

113
Οι κυρίες κάνουν κατασκευές.

Ο κύριος μαθαίνη ορθογραφία στα παιδιά.

Ο δάσκαλος διορθώνει τους μαθητές.

Τα παιδιά διαβάζουν βιβλία.

Η δασκάλα σηκώνει το αγόρι στον πίνακα.

Οι μαθητές δίνουν την άσκηση στην κυρία.

Ο κύριος ανοίγει την πόρτα.

Ο μαθητής γράφει το τετράδιο.

Παίζουμε στην αυλή.

Κάνω την αντιγραφή.

Μαθαίνω την προπαίδεια.

Το κορίτσι μιλάει.

Ο δάσκαλος διαβάζει.

Η δασκάλα γράφει.

Το παιδί διαβάζει τα μάθημα.

Η μαθήτρια σηκώνη το χέρι.

Το αγόρι μιλάει.

Προσέχουμε στο μάθημα.

Τα παιδιά παίζουν στο αυλή.

Το παιδί ανοίγη την κασετίνα.

Τα παιδιά ανοίγουν τα τετράδια.

Τα παιδιά κάθονται στην αίθουσα.

Ο δάσκαλος διαβάζει.

Ο μαθητήςς ηκώνει το χέρι.

Η κυρία σηκώνει τα αγόρι.

Ανοίγει την πόρτα.

Ο κύριος μαθαίνει τα παιδιά.

114
Το παιδί κάνει μια γραμμή.

Βοηθάο το αγόρι.

Γράφο έκθεση.

Το παιδί κόβι το χαρτί.

Κάνω την αντιγραφί.

Η δασκάλα σβήνει τον πίνακα.

Γράφει το κορίτσι.

Τα αγόρια ξύνουν τα μολύβια.

Ο μαθητής φωνάζει.

Ο κύριος ρωτάει την μαθήτρια.

Δίνω τον χάρακα.

Διορθόνουμε το διαγόνισμα.

Η κυρία κάνει γραμμή.

Η ξύστρα ξύνει.

Ο δάσκαλος πάιρνει το χαρτί.

Ο μαθητής κλείνει τα παράθηρα.

Η μαθήτρια γράφει τεστ.

Βοηθάω τον μαθητή μου.

Γράφω ένα γράμμα.

Ο κύριος διαβάζει.

115
ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ
Να σχηματίσετε δέκα (10) προτάσεις που να περιγράφουν τι κάνει ένας δάσκαλος –
δασκάλα ή ένας μαθητής – μαθήτρια μέσα στην τάξη. Οι προτάσεις πρέπει να είναι
απλές. Τα ρήματα που θα χρησιμοποιήσετε μπορούν να είναι σε όλα τα πρόσωπα,
αλλά σε χρόνο ενεστώτα. Τα ουσιαστικά μπορεί να είναι και στον ενικό και στον
πληθυντικό αριθμό. Μπορείτε να χρησιμοποιήσετε όλα τα άρθρα, όπως «ο, τον, τους,
στο, ένας» κ.α. Για να φτιάξετε τις προτάσεις χρησιμοποιείστε τις παρακάτω λέξεις:

ΡΗΜΑΤΑ

Διαβάζω, γράφω, σβήνω, ξύνω, κάνω, μιλάω, δίνω, παίρνω, ανοίγω,


κλείνω, παίζω, μαθαίνω, κόβω, ρωτάω, σηκώνω, λέω, διορθώνω, λύνω,
πηγαίνω, βοηθάω, λύνω, φωνάζω, προσέχω, αφήνω, φτιάχνω

ΟΥΣΙΑΣΤΙΚΑ

Δάσκαλος, δασκάλα, μαθητής, μαθήτρια, αγόρι, κορίτσι, παιδί, πίνακας,


βιβλίο, τετράδιο, άσκηση, χέρι, χάρακας, ξύστρα, γόμα, μολύβι, στιλό,
κασετίνα, τσάντα, προαύλιο, αυλή, μάθημα, προπαίδεια, διαγώνισμα,
έκθεση, κυρία, κύριος, τεστ, παράθυρο, αίθουσα, πόρτα, ορθογραφία,
κατασκευή, γραμμή, χαρτί, αριθμός, γράμμα, αντιγραφή

1._________________________________________________________

2. _________________________________________________________

3._________________________________________________________

4._________________________________________________________

5._________________________________________________________

6._________________________________________________________

7._________________________________________________________

8._________________________________________________________

9._________________________________________________________

10.________________________________________________________

116
ΑΛΓΟΡΙΘΜΟΣ

1. Main
implement main
open core, string

constants
className = "main".
classVersion = "VIC1001".

clauses
classInfo(className, classVersion).

%Διαδικασία Μετατροπής Πρότασης Σε Λίστα Λέξεων


clauses
tokenize(S, [T|Ts]) :-
frontToken(S, T, R), !, tokenize(R, Ts).
tokenize(_, []).

clauses
run():-
TaskWindow = taskWindow::new(),
TaskWindow:show().
end implement main

goal
mainExe::run(main::run).

117
2. Grammar – Parser
implement grammar
open core, list, string

constants
className = "parser/grammar/grammar".
classVersion = "VIC1001".

domains
pos = art(feats*); n(feats*); v(feats*); np(feats*); vp(feats*); npsub(feats*); npobj(feats*); part(feats*
); pp(feats*); pr(feats*).
feats = num(number); gen(gender); per(person); case(case); ten(tense); inf(inflect).
number = sing; pl.
gender = masc; fem; neu.
tense = pres; past; pastc.
person = first; sec; third.
case = nom; gen; acc.
inflect = one; two.

class facts
dictionary : (string, pos).

class predicates

shift_reduce : (string*, pos*) determ (i, o).


shift_reduce : (string*, pos*, pos*) determ (i, i, o).
shift : (string*, pos*, string*, pos*) nondeterm (i, i, o, o).
reduce : (pos*, pos*) nondeterm (i, o).
match_rule : (pos*, pos) nondeterm (i, o).
combine : (pos*, pos*, pos*) multi (o, o, i).
unify : (feats*, feats*, feats*) nondeterm (i, i, o).
check : (feats, feats*) nondeterm (i, i).
findsyntax : (pos*, pos*) nondeterm (i, o).

118
findsub : (pos, pos) determ (i, o).
findobj : (pos, pos) determ (i, o).
checksub : (pos*) nondeterm (i).
findsubfeats : (pos*, feats*) nondeterm (i, o).
findvpfeats : (pos*, feats*) nondeterm (i, o).
lex : (string, pos) procedure (i, o).
analyse : (string Word, string Stem, pos Feats) nondeterm (i,o,o).
morphcheck : (feats*, feats*) nondeterm (i, i).

clauses

%Λεξικό του αλγόριθμου------------------------------------------------------------------------------------------

%Άρθρα
%Οριστικά Άρθρα
dictionary("ο", art([num(sing), gen(masc), case(nom)])).
dictionary("του", art([num(sing), case(gen)])).
dictionary("τον", art([num(sing), gen(masc), case(acc)])).
dictionary("οι", art([num(pl), case(nom)])).
dictionary("των", art([num(pl), case(gen)])).
dictionary("τους", art([num(pl), gen(masc), case(acc)])).
dictionary("η", art([num(sing), gen(fem), case(nom)])).
dictionary("της", art([num(sing), gen(fem), case(gen)])).
dictionary("την", art([num(sing), gen(fem), case(acc)])).
dictionary("τις", art([num(pl), gen(fem), case(acc)])).
dictionary("το", art([num(sing), gen(neu)])).
dictionary("τα", art([num(pl), gen(neu)])).

%Αόριστα Άρθρα
dictionary("ένας", art([num(sing), gen(masc), case(nom)])).
dictionary("έναν", art([num(sing), gen(masc), case(acc)])).
dictionary("μια", art([num(sing), gen(fem)])).
dictionary("ένα", art([num(sing), gen(neu)])).

119
%Εμπρόθετα Άρθρα
dictionary("στον", part([num(sing), gen(masc), case(acc)])).
dictionary("στην", part([num(sing), gen(fem), case(acc)])).
dictionary("στο", part([num(sing), gen(neu), case(acc)])).
dictionary("στoυς", part([num(pl), gen(masc), case(acc)])).
dictionary("στις", part([num(pl), gen(fem), case(acc)])).
dictionary("στα", part([num(pl), gen(neu), case(acc)])).

%Αντωνυμίες
dictionary("εγώ", pr([num(sing), per(first), case(nom)])).
dictionary("εσύ", pr([num(sing), per(sec), case(nom)])).
dictionary("αυτός", pr([num(sing), per(third), gen(masc), case(nom)])).
dictionary("αυτή", pr([num(sing), per(first), gen(fem), case(nom)])).
dictionary("αυτό", pr([num(sing), per(first), gen(neu), case(nom)])).
dictionary("εμείς", pr([num(pl), per(first), case(nom)])).
dictionary("εσείς", pr([num(pl), per(sec), case(nom)])).
dictionary("αυτοί", pr([num(sing), per(third), gen(masc), case(nom)])).
dictionary("αυτές", pr([num(sing), per(third), gen(fem), case(nom)])).
dictionary("αυτά", pr([num(sing), per(third), gen(neu), case(nom)])).

%Ουσιαστικά
dictionary("παιδί", n([num(sing), gen(neu)])).
dictionary("παιδιά", n([num(pl), gen(neu)])).
dictionary("μαθητής", n([num(sing), gen(masc), case(nom)])).
dictionary("μαθητή", n([num(sing), gen(masc), case(acc)])).
dictionary("πρόταση", n([num(sing), gen(fem)])).
dictionary("προτάσεις", n([num(pl), gen(fem)])).
dictionary("μαθητές", n([num(pl), gen(masc), case(nom)])).
dictionary("μαθήτρια", n([num(sing), gen(fem)])).
dictionary("μαθήτριες", n([num(pl), gen(fem)])).
dictionary("δάσκαλος", n([num(sing), gen(masc), case(nom)])).
dictionary("δασκάλα", n([num(sing), gen(fem)])).
dictionary("δάσκαλο", n([num(sing), gen(masc), case(acc)])).
dictionary("δάσκαλοι", n([num(pl), gen(masc), case(nom)])).
dictionary("δασκάλες", n([num(pl), gen(fem)])).
dictionary("δασκάλους", n([num(pl), gen(masc), case(acc)])).
dictionary("τσάντα", n([num(sing), gen(fem)])).
dictionary("τσάντες", n([num(sing), gen(fem)])).
dictionary("μολύβι", n([num(sing), gen(neu)])).

120
dictionary("μολύβια", n([num(pl), gen(neu)])).
dictionary("στιλό", n([gen(neu)])).
dictionary("βιβλίο", n([num(sing), gen(neu)])).
dictionary("βιβλία", n([num(pl), gen(neu)])).
dictionary("γόμα", n([num(sing), gen(fem)])).
dictionary("γόμες", n([num(pl), gen(fem)])).
dictionary("κουδούνι", n([num(sing), gen(neu)])).
dictionary("κουδούνια", n([num(pl), gen(neu)])).
dictionary("θρανίο", n([num(sing), gen(neu)])).
dictionary("θρανία", n([num(pl), gen(neu)])).
dictionary("καρέκλα", n([num(sing), gen(fem)])).
dictionary("καρέκλες", n([num(pl), gen(fem)])).
dictionary("παράθυρο", n([num(sing), gen(neu)])).
dictionary("παράθυρα", n([num(pl), gen(neu)])).
dictionary("πόρτα", n([num(sing), gen(fem)])).
dictionary("πόρτες", n([num(pl), gen(fem)])).
dictionary("σφουγγάρι", n([num(sing), gen(neu)])).
dictionary("σφουγγάρια", n([num(pl), gen(neu)])).
dictionary("πίνακας", n([num(sing), gen(masc), case(nom)])).
dictionary("πίνακα", n([num(sing), gen(masc), case(acc)])).
dictionary("πίνακες", n([num(pl), gen(masc)])).
dictionary("βάζο", n([num(sing), gen(neu)])).
dictionary("βάζα", n([num(pl), gen(neu)])).
dictionary("τετράδιο", n([num(sing), gen(neu)])).
dictionary("τετράδια", n([num(pl), gen(neu)])).
dictionary("χαρτί", n([num(sing), gen(neu)])).
dictionary("χαρτιά", n([num(sing), gen(neu)])).
dictionary("αγόρι", n([num(sing), gen(neu)])).
dictionary("αγόρια", n([num(pl), gen(neu)])).
dictionary("κορίτσι", n([num(sing), gen(neu)])).
dictionary("κορίτσια", n([num(pl), gen(neu)])).
dictionary("χέρι", n([num(sing), gen(neu)])).
dictionary("χέρια", n([num(pl), gen(neu)])).
dictionary("μάθημα", n([num(sing), gen(neu)])).
dictionary("μαθήματα", n([num(pl), gen(neu)])).
dictionary("διαγώνισμα", n([num(sing), gen(neu)])).
dictionary("διαγωνίσματα", n([num(pl), gen(neu)])).
dictionary("τεστ", n([gen(neu)])).
dictionary("γράμμα", n([num(sing), gen(neu)])).
dictionary("γράμματα", n([num(pl), gen(neu)])).

121
dictionary("χάρακας", n([num(sing), gen(masc), case(nom)])).
dictionary("χάρακα", n([num(sing), gen(masc), case(acc)])).
dictionary("χάρακες", n([num(pl), gen(masc)])).
dictionary("κύριος", n([num(sing), gen(masc), case(nom)])).
dictionary("κύριο", n([num(sing), gen(masc), case(acc)])).
dictionary("κύριοι", n([num(pl), gen(masc), case(nom)])).
dictionary("κυρίους", n([num(pl), gen(masc), case(acc)])).
dictionary("αριθμός", n([num(sing), gen(masc), case(nom)])).
dictionary("αριθμό", n([num(sing), gen(masc), case(acc)])).
dictionary("αριθμοί", n([num(pl), gen(masc), case(nom)])).
dictionary("αριθμούς", n([num(pl), gen(masc), case(acc)])).
dictionary("ξύστρα", n([num(sing), gen(fem)])).
dictionary("ξύστρες", n([num(pl), gen(fem)])).
dictionary("άσκηση", n([num(sing), gen(fem)])).
dictionary("ασκήσεις", n([num(pl), gen(fem)])).
dictionary("κασετίνα", n([num(sing), gen(fem)])).
dictionary("κασετίνες", n([num(pl), gen(fem)])).
dictionary("προπαίδεια", n([num(sing), gen(fem)])).
dictionary("προπαίδειες", n([num(pl), gen(fem)])).
dictionary("έκθεση", n([num(sing), gen(fem)])).
dictionary("εκθέσεις", n([num(pl), gen(fem)])).
dictionary("κυρία", n([num(sing), gen(fem)])).
dictionary("κυρίες", n([num(pl), gen(fem)])).
dictionary("αίθουσα", n([num(sing), gen(fem)])).
dictionary("αίθουσες", n([num(pl), gen(fem)])).
dictionary("αυλή", n([num(sing), gen(fem)])).
dictionary("αυλές", n([num(pl), gen(fem)])).
dictionary("ορθογραφία", n([num(sing), gen(fem)])).
dictionary("ορθογραφίες", n([num(pl), gen(fem)])).
dictionary("κατασκευή", n([num(sing), gen(fem)])).
dictionary("κατασκευές", n([num(pl), gen(fem)])).
dictionary("γραμμή", n([num(sing), gen(fem)])).
dictionary("γραμμές", n([num(pl), gen(fem)])).
dictionary("αντιγραφή", n([num(sing), gen(fem)])).
dictionary("αντιγραφές", n([num(pl), gen(fem)])).
dictionary("προαύλιο", n([num(sing), gen(neu)])).
dictionary("προαύλια", n([num(pl), gen(neu)])).

%Ρήματα
dictionary("γράφ", v([ten(pres)])).

122
dictionary("έγραφ", v([ten(pastc), inf(one)])).
dictionary("γράψ", v([ten(past), inf(two)])).
dictionary("έγραψ", v([ten(past), inf(one)])).
dictionary("διαβάζ", v([ten(pres)])).
dictionary("διάβαζ", v([ten(pastc), inf(one)])).
dictionary("διαβάσ", v([ten(past), inf(two)])).
dictionary("διάβασ", v([ten(past), inf(one)])).
dictionary("ζωγραφίζ", v([ten(pres)])).
dictionary("ζωγράφιζ", v([ten(pastc), inf(one)])).
dictionary("ζωγραφίσ", v([ten(past), inf(two)])).
dictionary("ζωγράφισ", v([ten(past), inf(one)])).
dictionary("ανοίγ", v([ten(pres)])).
dictionary("άνοιγ", v([ten(pastc), inf(one)])).
dictionary("ανοίξ", v([ten(past), inf(two)])).
dictionary("άνοιξ", v([ten(past), inf(one)])).
dictionary("κλείν", v([ten(pres)])).
dictionary("έκλειν", v([ten(pastc), inf(one)])).
dictionary("κλείσ", v([ten(past), inf(two)])).
dictionary("έκλεισ", v([ten(past), inf(one)])).
dictionary("σβήν", v([ten(pres)])).
dictionary("έσβην", v([ten(pastc), inf(one)])).
dictionary("σβήσ", v([ten(past), inf(two)])).
dictionary("έσβησ", v([ten(past), inf(one)])).
dictionary("ξύν", v([ten(pres)])).
dictionary("έξυν", v([ten(pastc), inf(one)])).
dictionary("ξύσ", v([ten(past), inf(two)])).
dictionary("έξυσ", v([ten(past), inf(one)])).
dictionary("μιλ", v([ten(pres)])).
dictionary("μίλ", v([ten(pastc), inf(one)])).
dictionary("μιλήσ", v([ten(past), inf(two)])).
dictionary("μίλησ", v([ten(past), inf(one)])).
dictionary("δίν", v([ten(pres)])).
dictionary("έδιν", v([ten(pastc), inf(one)])).
dictionary("δώσ", v([ten(past), inf(two)])).
dictionary("έδωσ", v([ten(past), inf(one)])).
dictionary("παίρν", v([ten(pres)])).
dictionary("έπαιρν", v([ten(pastc), inf(one)])).
dictionary("πήρ", v([ten(past)])).
dictionary("παίζ", v([ten(pres)])).
dictionary("έπαιζ", v([ten(pastc), inf(one)])).

123
dictionary("παίξ", v([ten(past), inf(two)])).
dictionary("έπαιξ", v([ten(past), inf(one)])).
dictionary("μαθαίν", v([ten(pres)])).
dictionary("μάθαιν", v([ten(pastc), inf(one)])).
dictionary("μάθ", v([ten(past), inf(two)])).
dictionary("έμαθ", v([ten(past), inf(one)])).
dictionary("σβήν", v([ten(pres)])).
dictionary("έσβην", v([ten(pastc), inf(one)])).
dictionary("σβήσ", v([ten(past), inf(two)])).
dictionary("έσβησ", v([ten(past), inf(one)])).
dictionary("κόβ", v([ten(pres)])).
dictionary("έκοβ", v([ten(pastc), inf(one)])).
dictionary("κόψ", v([ten(past), inf(two)])).
dictionary("έκοψ", v([ten(past), inf(one)])).
dictionary("ρωτ", v([ten(pres)])).
dictionary("ρώτ", v([ten(pastc), inf(one)])).
dictionary("ρωτήσ", v([ten(past), inf(two)])).
dictionary("ρώτησ", v([ten(past), inf(one)])).
dictionary("σηκών", v([ten(pres)])).
dictionary("σήκων", v([ten(pastc), inf(one)])).
dictionary("σηκώσ", v([ten(past), inf(two)])).
dictionary("σήκωσ", v([ten(past), inf(one)])).
dictionary("λέ", v([ten(pres)])).
dictionary("έλεγ", v([ten(pastc), inf(one)])).
dictionary("είπ", v([ten(past)])).
dictionary("διορθών", v([ten(pres)])).
dictionary("διόρθων", v([ten(pastc), inf(one)])).
dictionary("διορθώσ", v([ten(past), inf(two)])).
dictionary("διόρθωσ", v([ten(past), inf(one)])).
dictionary("λύν", v([ten(pres)])).
dictionary("έλυν", v([ten(pastc), inf(one)])).
dictionary("λύσ", v([ten(past), inf(two)])).
dictionary("έλυσ", v([ten(past), inf(one)])).
dictionary("βοηθ", v([ten(pres)])).
dictionary("βοήθ", v([ten(pastc), inf(one)])).
dictionary("βοηθήσ", v([ten(past), inf(two)])).
dictionary("βοήθησ", v([ten(past), inf(one)])).
dictionary("φωνάζ", v([ten(pres)])).
dictionary("φώναζ", v([ten(pastc), inf(one)])).
dictionary("φωνάξ", v([ten(past), inf(two)])).

124
dictionary("φώναξ", v([ten(past), inf(one)])).
dictionary("προσέχ", v([ten(pres)])).
dictionary("πρόσεχ", v([ten(pastc), inf(one)])).
dictionary("προσέξ", v([ten(past), inf(two)])).
dictionary("πρόσεξ", v([ten(past), inf(one)])).
dictionary("αφήν", v([ten(pres)])).
dictionary("άφην", v([ten(pastc), inf(one)])).
dictionary("αφήσ", v([ten(past), inf(two)])).
dictionary("άφησ", v([ten(past), inf(one)])).
dictionary("φτιάχν", v([ten(pres)])).
dictionary("έφτιαχν", v([ten(pastc), inf(one)])).
dictionary("φτιάξ", v([ten(past), inf(two)])).
dictionary("έφτιαξ", v([ten(past), inf(one)])).
dictionary("κάν", v([ten(pres)])).

%--------------------------------------------------------------------------------------------------------------------------
---------------------------------
clauses
classInfo(className, classVersion).

clauses
%Μορφολογικός Αναλυτής Ρημάτων

%Καταλήξεις Ενεστώτα
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ω", Stem),!,
Feats =v( [per(first), num(sing)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "εις", Stem),!,
Feats = v([per(sec), num(sing)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ει", Stem),!,
Feats = v([per(third), num(sing)]),

125
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ουμε", Stem),!,
Feats = v([per(first), num(pl)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ετε", Stem),!,
Feats = v([per(sec), num(pl)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ουν", Stem),!,
Feats = v([per(third), num(pl)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ουν", Stem),!,
Feats = v([per(third), num(pl)]),
VFeats = [ten(pres)],
dictionary(Stem, v(VFeats1)),
morphcheck(VFeats, VFeats1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ι", Stem),
dictionary(Stem, v(_VFeats1)),
vpiCommonDialogs::error(Word, "Η κατάληξη του ρήματος είναι λάθος"), errorexit(1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "η", Stem),
dictionary(Stem, v(_VFeats1)),
vpiCommonDialogs::error(Word, "Η κατάληξη του ρήματος είναι λάθος"), errorexit(1).
analyse(Word, Stem, Feats) :-
hasSuffix(Word, "ο", Stem),
dictionary(Stem, v(_VFeats1)),
vpiCommonDialogs::error(Word, "Η κατάληξη του ρήματος είναι λάθος"), errorexit(1).

126
%Λέξεις εκτός Μορφολογικού Αναλυτή

analyse(Word, Stem, Feats) :-


Stem = Word,
dictionary(Stem, Feats).

clauses

%Διαδικασία Ελέγχου Κατάληξης Ρήματος


morphcheck([], List).
morphcheck([F|Tail], List) :- check(F, List), morphcheck(Tail, List).

%Λέξη εκτός λεξικού


lex(Word, F) :- analyse(Word, _Stem, F), !.
lex(Word, _F) :-
vpiCommonDialogs::error(Word, "Αυτή η λέξη δεν υπάρχει μέσα στο λεξικό"), errorexit(1).

%Έλεγχος Ασυμφωνίας Υποκειμένου - Ρήματος


findsubfeats([_P|Tail], A) :- findsubfeats(Tail, A).
findsubfeats([npsub(A)|_Tail], A).

findvpfeats([_P|Tail], A) :- findvpfeats(Tail, A).


findvpfeats([vp(A)|_Tail], A).

checksub(Phrases) :-
findsubfeats(Phrases, A),!,
findvpfeats(Phrases, B),!,
unify(A, B, C).
checksub(Phrases).

%Εύρεση Υποκειμένου - Αντικειμένου


findsyntax([], []).
findsyntax([Pos1|Tail], [Pos2|Tail2]) :-
findsub(Pos1, Pos2), findsyntax(Tail, Tail2).
findsyntax([Pos1|Tail], [Pos2|Tail2]) :-
findobj(Pos1, Pos2), findsyntax(Tail, Tail2).
findsyntax([vp(_A)|Tail], [vp(_A)|Tail2]) :- findsyntax(Tail, Tail2).

127
findsub(np(A), npsub(A)) :- isMember(case(nom), A).
findobj(np(A), npobj(A)) :- isMember(case(acc), A).

%Διαδικασία Ενοποίησης Χαρακτηριστικών (Features Unification)


unify([], List, List).
unify([H|Tail1], List, List1) :- isMember(H, List), !, unify(Tail1, List, List1).
unify([H|Tail1], List, [H|Tail2]) :- check(H, List), !, unify(Tail1, List, Tail2).

%Έλεγχος Λαθών Ασυμφωνίας


check(H, []).
check(num(A), [num(A)|Tail]) :- check(num(A), Tail).
check(num(A), [num(B)|Tail]) :-
vpiCommonDialogs::error("ΠΡΟΣΕΞΕ!", "Ασυμφωνία στον αριθμό - Λάθος").
check(gen(A), [gen(A)|Tail]) :- check(gen(A), Tail).
check(gen(A), [gen(B)|Tail]) :- vpiCommonDialogs::error("ΠΡΟΣΕΞΕ!", "Ασυμφωνία στο γένος -
Λάθος").
check(case(A), [case(A)|Tail]) :- check(case(A), Tail).
check(case(A), [case(B)|Tail]) :-
vpiCommonDialogs::error("ΠΡΟΣΕΞΕ!", "Ασυμφωνία στην πτώση - Λάθος").
check(per(A), [per(A)|Tail]) :- check(per(A), Tail).
check(per(A), [per(B)|Tail]) :-
vpiCommonDialogs::error("ΠΡΟΣΕΞΕ!", "Ασυμφωνία στο πρόσωπο - Λάθος").
check(ten(A), [ten(A)|Tail]) :- check(ten(A), Tail).
check(ten(A), [ten(B)|Tail]) :-
vpiCommonDialogs::error("ΠΡΟΣΕΞΕ!", "Η κατάληξη δεν είναι σωστή για αυτόν τον χρόνο -
Λάθος").
check(inf(A), [inf(A)|Tail]) :- check(inf(A), Tail).
check(inf(A), [inf(B)|Tail]) :-
vpiCommonDialogs::error("ΠΡΟΣΕΞΕ!", "Υπάρχει πρόβλημα με την αύξηση - Λάθος").
check(A, [B|Tail]) :- check(A, Tail).

%Κεντρικός Αλγόριθμος του Bottom - Up Parser


shift_reduce(Sentence, Category) :-
shift_reduce(Sentence, [], Category).

shift_reduce([], Category, Newcategory) :- reduce(Category, Newcategory), !.


shift_reduce(Sentence, Stack, Category) :-

128
reduce(Stack, Reducedstack),
stdio::write("Reduce: ", Reducedstack), stdio::nl,
shift_reduce(Sentence, Reducedstack, Category), !.
shift_reduce(Sentence, Stack, Category) :-
shift(Sentence, Stack, Newsentence, Newstack),
stdio::write("Shift: ", Newstack), stdio::nl,
shift_reduce(Newsentence, Newstack, Category), !.

shift([First|Rest], Stack, Rest, Newstack) :-


lex(First, Pos),!,
Newstack = append(Stack, [Pos]).

reduce(Stack, Newstack) :-
combine(Stackbottom, Expansion, Stack),
match_rule(Expansion, Head),
Newstack = append(Stackbottom, [Head]).

%Κανόνες Γραμματικής
match_rule([v(A)], vp(B)) :- A = B.
match_rule([art(A), n(B)], np(C)) :- unify(A, B, C).
match_rule([pr(A)], npsub(B)) :- A = B.

combine([], List2, List2).


combine([H|List1], List2, [H|List3]) :-
combine(List1, List2, List3).

%Διαδικασία που συντονίζει όλα τα μέρη του parser


solve(B) :- shift_reduce(B, C), findsyntax(C, D), checksub(D), stdio::write(D), fail.
solve(_B).

end implement grammar

129
130
131
132

You might also like