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

Σχετικά έγγραφα
Κριτήρια και Πλαίσιο Αξιολόγησης Κώδικα Οπτικού Προγραμματισμού

Έρκυνα, Επιθεώρηση Εκπαιδευτικών Επιστημονικών Θεμάτων, Τεύχος 11ο, , 2016

Αναπαράσταση του κώδικα σε ένα ρομποτικό project

O Προγραμματισμός (με το Scratch) ως εργαλείο ανάπτυξης της υπολογιστικής σκέψη (computational thinking) στην Π/θμια και Δ/θμια εκπαίδευση

Πληροφορική Γυμνασίου. Δρ. Κοτίνη Ισαβέλλα Σχ. Σύμβουλος Πληροφορικής Πέλλας, Ημαθίας και Πιερίας

Θέμα: Αποτίμηση σεμιναρίου για τη διδακτική του προγραμματισμού Η/Υ του σχ. έτους

Τεχνολογία στην Εκπαίδευση Εισαγωγή. Χαρίκλεια Τσαλαπάτα 24/9/2012

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

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

Προγραμματίζω παίζοντας: βασικές έννοιες προγραμματισμού με το Scratch

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

Τμηματοποίηση του κώδικα στο περιβάλλον οπτικού προγραμματισμού με πλακίδια Scratch

Διδακτική της Πληροφορικής: ερευνητικές προσεγγίσεις στη μάθηση και στη διδασκαλία (ΜΠΣ)

ΠΡΟΓΡΑΜΜΑ ΕΠΙΜΟΡΦΩΣΗΣ Β ΕΠΙΠΕΔΟΥ ΠΕ19 20 ΑΠΡΙΛΙΟΣ 2013

Ο προγραμματισμός Η/Υ στο νέο Πρόγραμμα Σπουδών της υποχρεωτικής εκπαίδευσης στο πλαίσιο του μαθήματος για τον Πληροφορικό Γραμματισμό

Κωνσταντίνος Δελησταύρου. Fulbright Education Network Greece «Αξιοποιώντας την αφήγηση στη Διδασκαλία» 20/5/2017 YouthLab, Ξάνθη

Αρχές Προγραμματισμού Υπολογιστών

Α.Σ.ΠΑΙ.Τ.Ε. Π.Μ.Σ. ΕΠΙΣΤΗΜΕΣ ΤΗΣ ΑΓΩΓΗΣ

Μάθημα: Διδακτική της Πληροφορικής. Περιγραφή μαθήματος. Διδάσκων: Παλαιγεωργίου Γ. Διαλέξεις: Παρασκευή 17:00-20:00

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

Μια πρόταση ταξινόμησης των προγραμματιστικών βρόχων στο Scratch

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

Π. Καριώτογλου. Παιδαγωγική Σχολή, Πανεπιστήμιο Δυτικής Μακεδονίας

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

Ρετσινάς Σωτήριος ΠΕ 1703 Ηλεκτρολόγων ΑΣΕΤΕΜ

«Το μάθημα ΤΠΕ στο Ολοήμερο Δημοτικό Σχολείο», επιμορφωτική συνάντηση

8 Τεχνικός Εφαρμογών Πληροφορικής με Πολυμέσα

Τo πρόγραμμα «Διάγραμμα Ροής» και η διδακτική του αξιοποίηση στην Διδασκαλία του προγραμματισμού

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

Διδακτική της Πληροφορικής

«Give me your PIN! You have three tries!» (Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον, ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ: ΟΣΟ.. ΕΠΑΝΑΛΑΒΕ

ΣΥΝΕΔΡΙΟ ΕΛ/ΛΑΚ 2010

Δομημένος Προγραμματισμός

3 ο Πανελλήνιο Συνέδριο με Διεθνή Συμμετοχή για το Εκπαιδευτικό Υλικό στα Μαθηματικά και τις Φυσικές Επιστήμες

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

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

710 -Μάθηση - Απόδοση

Δυσκολίες μαθητών Δημοτικού με τη γλώσσα προγραμματισμού Scratch

710 -Μάθηση - Απόδοση

Περι-γράφοντας... βρόχους

Ο προγραμματισμός Η/Υ στο νέο Πρόγραμμα Σπουδών της υποχρεωτικής εκπαίδευσης στο πλαίσιο του μαθήματος για τον Πληροφορικό Γραμματισμό

Διδακτική της Πληροφορικής

Ο ρόλος της Πληροφορικής και των Τεχνολογιών Πληροφορικής και Επικοινωνιών στη διαμόρφωση σύγχρονων Προγραμμάτων Σπουδών Α/θμιας & Β/θμιας Εκπ/σης

Λογισμικό Καθοδήγησης ή Διδασκαλίας

Βασίλειος Κοντογιάννης ΠΕ19

Τι ώρα είναι; 1. Τίτλος διδακτικού σεναρίου. 2. Εκτιμώμενη διάρκεια διδακτικού σεναρίου

Στάδια επίλυσης προβλήματος -Εφαρμογή στη Δομή της Επανάληψης

Ενότητα 13: Διδασκαλία Οντοκεντρικού Προγραμματισμού. Διδάσκων: Βασίλης Κόμης, Καθηγητής

Μέρος B: Εισαγωγή στις έννοιες παιδαγωγικής αξιοποίησης των ΤΠΕ με εφαρμογή στη διδακτική της Πληροφορικής Οργάνωση και Σχεδίαση Μαθήματος

Δημιουργία Γεωμετρικών σχημάτων στη γλώσσα προγραμματισμού logo με χρήση της Δομής Επανάληψης.

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου

Διαμορφωτική Αξιολόγηση των Δεικτών Επιτυχίας και Επάρκειας στη Δημοτική και Μέση Εκπαίδευση (Ιούλιος 2017)

Αλληλεπίδραση Ανθρώπου- Υπολογιστή & Ευχρηστία. Ενότητα 11: Αξιολόγηση Σχεδίασης Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Δημιουργία, εμφάνιση, μέτρηση πλήθους γραμμών, λέξεων και χαρακτήρων αρχείων κειμένου στο Λ/Σ Unix

Τεχνολογίες Πληροφορίας & Επικοινωνιών στην Εκπαίδευση (ΤΠΕ-Ε)

Τα σχέδια μαθήματος 1 Εισαγωγή

Εισαγωγή στην έννοια του Αλγορίθμου

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

Καρτσιώτου Θωμαϊς M.Sc. Δασκάλα Δ.Σ. Παληού Καβάλας Περίληψη

Σχεδίαση Εκπαιδευτικού Λογισμικού. Εργασία 2 - Α' φάση. Σενάριο/Σχέδιο μαθήματος. Σταματία Κορρέ Μ1430

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

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ

Δημιουργία παιχνιδιού με το ΜΙΤ AppInvnentor (Πινγκ - Πονγκ).

710 -Μάθηση - Απόδοση

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

Σωτηρίου Σοφία. Εκπαιδευτικός ΠΕ0401, Πειραματικό Γενικό Λύκειο Μυτιλήνης

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

Δυσκολίες μαθητών Δημοτικού με τη γλώσσα προγραμματισμού Scratch

ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ

Διδακτική της Πληροφορικής ΙΙ

Προσχολική Παιδαγωγική Ενότητα 8: Σχεδιασμός Ημερησίων Προγραμμάτων

Γουλή Ευαγγελία. 1. Εισαγωγή. 2. Παρουσίαση και Σχολιασµός των Εργασιών της Συνεδρίας

Παιδαγωγικές Εφαρμογές Η/Υ (Θεωρία) 21/03/2017. Διδάσκουσα: Αδαμαντία Κ. Σπανακά

Media Monitoring. Ενότητα 2: Η ανάλυση περιεχομένου. Σταμάτης Πουλακιδάκος Σχολή ΟΠΕ Τμήμα ΕΜΜΕ

Ποιοτική μεθοδολογία έρευνας στη Διδακτική των Μαθηματικών Ενότητα 1: Η έρευνα στη Διδακτική των Μαθηματικών

Τάσος Λαδιάς Σχολ.. Σύμβουλος ΠΕ19 Πειραιά & Δ Αθήνας

Εργαστηριακή Εισήγηση. «Οι μεταβλητές στη γλώσσα προγραμματισμού Scratch»

«Εκπαιδευτική Ρομποτική σε Σχολικό Περιβάλλον»

- Επιστημονικός Υπεύθυνος Ενεργείας: Θεόδωρος Γ. Εξαρχάκος Καθηγητής του Πανεπιστημίου Αθηνών Πρόεδρος του Παιδαγωγικού Ινστιτούτου «Αναμόρφωση / εκ

Ποιοτική μεθοδολογία έρευνας στη Διδακτική των Μαθηματικών Ενότητα 7: Συγγραφή μιας εργασίας

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

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

Ανάπτυξη Παιχνιδιών Γνώσεων με το Scratch: Μια Διαθεματική Προσέγγιση Προγραμματισμού και Μουσικής

ΔΗΜΙΟΥΡΓΙΑ ΓΕΩΜΕΤΡΙΚΩΝ ΣΧΗΜΑΤΩΝ ΣΕ LOGO

Η έννοια της μεταβλητής και της λίστας με την βοήθεια του λογισμικού Scratch

Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Εργασία 1 η Ενεργή παρακολούθηση του Διεθνούς Συνεδρίου Scinte2015 με θέμα «Science in Technology»

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

Ο πρώτος νόμος της Θερμοδυναμικής για τα κλειστά συστήματα

Αναλυτικό Πρόγραμμα Μαθηματικών

Διδακτική Πληροφορικής

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

Ποσοτικές Μέθοδοι Ανάλυσης στις Κοινωνικές Επιστήμες

Κατερίνα Γλέζου Ph.D., M.Sc., M.Ed. Εκπαιδευτικός ΠΕ04/19

Εργαστηριακή εισήγηση. «ΜΑΘΗΣΙΣ: Μία Ευφυής Διαδικτυακή Τάξη Άλγεβρας»

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

Εισαγωγή στη δομή επιλογής στο προγραμματιστικό περιβάλλον SCRATCH.

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

«Το Λογισμικό Αράχνη Επικουρικό Εργαλείο στην Διδασκαλία του Προγραμματισμού»

ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΧΗΜΕΙΑΣ

Transcript:

Σχεδιασμός έρευνας για την αξιολόγηση κώδικα οπτικού προγραμματισμού Ιωάννης Αργυρίου 1, Θεόδωρος Καρβουνίδης 2, Αναστάσιος Λαδιάς 3, Χρήστος Δουληγέρης 4 1 ioannisargyriou@gmx.com, 2 tkarv@otenet.gr, 3 ladiastas@gmail.com, 4 cdoulig@unipi.gr 1 Προπτυχιακός φοιτητής, Τμήμα Πληροφορικής, Πανεπιστήμιο Πειραιώς 2 Εκπαιδευτικός, Μεταδιδακτορικός Ερευνητής, Τμήμα Πληροφορικής, Πανεπιστήμιο Πειραιώς 3 PhD, Σχολικός Σύμβουλος ΠΕ19 Πειραιά & Δ' Αθήνας 4 Καθηγητής, Τμήμα Πληροφορικής, Πανεπιστήμιο Πειραιώς Περίληψη Σκοπός της εργασίας αυτής είναι η ανάδειξη της ανάγκης για την καθιέρωση ενός πλαισίου κριτηρίων αξιολόγησης κωδίκων οπτικού προγραμματισμού. Κατ αρχάς πραγματοποιείται μια εκτενής αναζήτηση στη βιβλιογραφία για την ύπαρξη κριτηρίων οπτικού και μη προγραμματισμού, ώστε να γίνει η κατάλληλη επιλογή και διαμόρφωση. Γίνεται επίσης έλεγχος για την αξιοπιστία του τρόπου αξιολόγησης ήδη υπαρχόντων εργαλείων. Στη συνέχεια προτείνεται ένα σύνολο κριτηρίων με σκοπό την αποτελεσματική αξιολόγηση κωδίκων. Επιπλέον, εξετάζεται η πιθανή συνεισφορά και αρωγή που μπορούν να προσφέρουν τα ΚωδικΟράματα στη διαδικασία της αξιολόγησης. Τέλος, αναφέρονται τα μελλοντικά σχέδια που θα ληφθούν υπ όψιν για την ολοκλήρωση της έρευνας και το πώς θα αξιολογηθούν τα αποτελέσματά της. Λέξεις κλειδιά: Οπτικός προγραμματισμός, scratch, αξιολόγηση κώδικα Εισαγωγή Στην διαθέσιμη βιβλιογραφία μπορεί κάποιος να βρει μια πληθώρα κριτηρίων για την ποιοτική και ποσοτική αξιολόγηση των διαφόρων ειδών γλωσσών προγραμματισμού (Friedman & Voas, 1995; Jackson et al, 2011). Η σχετική πληροφορία, όμως, όσον αφορά τον οπτικό προγραμματισμό (Ο.Π.) είναι ελλιπής. Η αξιολόγηση ενός κώδικα οπτικού προγραμματισμού με κριτήρια αξιολόγησης ενός προγράμματος που έχει αναπτυχθεί σε μια αντικειμενοστρεφή γλώσσα, θα ήταν αναξιόπιστη, λόγω των θεμελιωδών διαφορών των δύο ειδών. Τα υπάρχοντα κριτήρια αξιολόγησης διαφόρων ειδών προγραμματισμού είναι μεν πολύ χρήσιμα, όμως θα πρέπει να διερευνηθεί και να οριστεί ένα πλαίσιο διαλογής τους, κατηγοριοποίησής τους και προσαρμογής τους στα δεδομένα του οπτικού προγραμματισμού. Η παρούσα εργασία αποσκοπεί στην διερεύνηση, κατηγοριοποίηση και καθιέρωση κατάλληλων κριτηρίων αξιολόγησης οπτικού προγραμματισμού. Τα αποτελέσματα της εν λόγω έρευνας θα μπορούσαν να συμπεριληφθούν στις εκπαιδευτικές διαδικασίες και στις διαδικασίες εκμάθησης οπτικού προγραμματισμού. Για παράδειγμα η εκμάθηση της γλώσσας προγραμματισμού Scratch, η οποία διδάσκεται στις τελευταίες τάξεις του δημοτικού και στο γυμνάσιο θα μπορούσε να ενισχυθεί με τη χρήση από τον διδάσκοντα κριτηρίων αξιολόγησης του κώδικα ώστε να αποφεύγονται επαναλαμβανόμενα λάθη. Στη συνέχεια της παρούσας εργασίας παρατίθεται αρχικά μία εισαγωγή με στοιχεία του οπτικού προγραμματισμού προκειμένου να δοθεί έμφαση στις ιδιαιτερότητές του και, στη συνέχεια, μια βιβλιογραφική έρευνα στην οποία αναφέρονται αφενός υπάρχοντα εργαλεία τα οποία χρησιμοποιούνται για την ποιοτική και ποσοτική αξιολόγηση κωδίκων Ο.Π. με τα κριτήρια που εμπεριέχονται σε αυτά και αφετέρου τα διάφορα προβλήματα που παρουσιάζουν τα εργαλεία αυτά κατά τη χρήση τους. Ακολουθεί μια διερεύνηση για την επιλογή κριτηρίων αξιολόγησης που συνάδουν με τις ιδιαιτερότητες του Ο.Π. και αναφορά στο πρόσφατο εργαλείο «ΚωδικΌραμα» (Παπαδόπουλος κ.α., 2015) το οποίο θα χρησιμοποιηθεί κατά την διάρκεια της έρευνάς μας για την διαδικασία της αξιολόγησης. Τέλος, θα αναφερθούν τα επόμενα βήματα της έρευνάς μας, δεδομένου ότι η έρευνα αυτή είναι σε εξέλιξη, και η εργασία θα κλείσει με τα συμπεράσματα. Πρακτικά Εργασιών 10 ου Πανελλήνιου Συνεδρίου Καθηγητών Πληροφορικής, Ναύπλιο 15-17 Απριλίου 2016

2 10 ο Πανελλήνιο Συνέδριο Καθηγητών Πληροφορικής Οπτικός προγραμματισμός Οι γλώσσες Ο.Π. (Visual Programming Languages VPL) επιτρέπουν στους χρήστες να προγραμματίζουν μέσω γραφικών στοιχείων αντί κειμένου. Συνήθως, οι γλώσσες οπτικού προγραμματισμού είναι ενσωματωμένες σε ειδικά περιβάλλοντα προγραμματισμού (Visual Programming Environment VPE) (Kaučič & Asič, 2011). Οι περισσότερες σύγχρονες γλώσσες οπτικού προγραμματισμού ουσιαστικά είναι απόγονοι της γλώσσας Logo και είναι απλές και ισχυρές, επιτρέποντας σύντομο κύκλο ανάπτυξης με άμεση εκτέλεση εντολών (Λαδιάς, 2011). Η δυνατότητα που δίνεται στο χρήστη να δει τα αποτελέσματα των εντολών ενός προγράμματος με γραφικό τρόπο καθιστά τη διαδικασία του προγραμματισμού πιο άμεση. Ο περιορισμός των δυσκολιών ως προς το συντακτικό που υπάρχει στις παραδοσιακές γλώσσες προγραμματισμού, καθιστά τα οπτικά περιβάλλοντα προγραμματισμού ιδανικά για την εκμάθησή τους για νεαρούς μαθητές. Για την εν λόγω μελέτη βασιστήκαμε στην χρήση της οπτικής γλώσσα προγραμματισμού Scratch (MIT, 2016). Αξίζει να σημειωθεί πως αν και η έρευνα χρησιμοποιεί το Scratch, τα αποτελέσματά της μπορεί να γενικευτούν για τις περισσότερες γλώσσες οπτικού προγραμματισμού με τη χρήση πλακιδίων (όπως τις AppInventor, StarlogoTNG, TurtleArt, Alice κτλ), όχι όμως και για τις γλώσσες διαγραμμάτων και τις γλώσσες βασισμένες σε φόρμες που επίσης ανήκουν στην οικογένεια του Ο.Π. To Scratch αναπτύχθηκε στο Massachusetts Institute of Technology (MIT) από το Lifelong Kindergarten Group. Δόθηκε προς χρήση στο γενικό κοινό το 2007 και χρησιμοποιείται κυρίως για τη δημιουργία εκπαιδευτικών παιγνίων και διαδραστικών αφηγήσεων. Θεωρείται ένα ιδιαίτερα δημοφιλές και αποτελεσματικό μέσο εκμάθησης προγραμματισμού. Σύμφωνα με τα στοιχεία της επίσημης ιστοσελίδας του Scratch, έχουν δημιουργηθεί και διαμοιραστεί περισσότερα από 13.000.000 έργα στην κοινότητα του Scratch, με ένα μεγάλο μέρος αυτών για εκπαιδευτικούς σκοπούς. Πλέον χρησιμοποιείται παγκοσμίως σε διαφόρων τύπων σχολεία και εκπαιδευτικούς οργανισμούς. Στην Εικόνα 1 φαίνεται ένα παράδειγμα κώδικα Scratch. Εικόνα 1: Παράδειγμα κώδικα Scratch με χρήση loop Ο προγραμματισμός στο Scratch καθοδηγείται από γεγονότα και υλοπoιείται συνδυάζοντας blocksεντολές που εφαρμόζουν μεταξύ τους όπως τα τουβλάκια της Lego, για να καθορίσουν τη συμπεριφορά διδιάστατων αντικειμένων (sprites) που «ζουν» σε ένα συγκεκριμένο χώρο (stage). Ένα block-εντολή στο Scratch ακολουθεί μια χρωματική κωδικοποίηση που παραπέμπει / αντιστοιχεί στην κατηγορία των εντολών που ανήκει. Έτσι για τις γλώσσες οπτικού προγραμματισμού, όπως το Scratch, παρουσιάζεται μια επιπλέον δυσκολία αξιολόγησης του κώδικα και σαφούς διατύπωσης

Η Πληροφορική στην Πρωτοβάθμια και Δευτεροβάθμια Εκπαίδευση Ρόλος και Εφαρμογές 3 κριτηρίων αξιολόγησής του γιατί δεν υπάρχουν «συντακτικά λάθη» και το πρόγραμμα «τρέχει» πάντα ακόμη και εάν δεν λειτουργεί όπως επιθυμεί ο προγραμματιστής. Μελέτη και αποτίμηση υπαρχόντων εργαλείων Κάθε εργαλείο αποτίμησης κώδικα Ο.Π. εμπεριέχει μια σειρά από παραμέτρους/κριτήρια με βάση τα οποία επιτελείται η αξιολόγηση. Η αξιοπιστία της αξιολόγησης δεν μόνο είναι συνέπεια του επιτυχούς ορισμού των παραμέτρων/κριτηρίων αλλά και του τρόπου με τον οποίο υλοποιείται η αξιολόγηση. Έτσι, λοιπόν, η διερεύνηση των εργαλείων αυτών κινείται σε αυτή τη συλλογιστική. «Dr. Scratch» Μια προσπάθεια για την αξιολόγηση κώδικα σε Scratch έχει γίνει από το «Dr. Scratch». Το «Dr. Scratch» είναι ένα διαδικτυακό εργαλείο ελεύθερου και ανοιχτού λογισμικού για την αξιολόγηση κωδίκων Scratch (Moreno-León & Robles, 2015). Χρησιμοποιώντας επιπρόσθετα του Hairball (Boe et al, 2013), το «Dr. Scratch» αναλύει και αξιολογεί προγράμματα σε Scratch με στόχο την ανατροφοδότηση για τη βελτίωση των προγραμματιστικών ικανοτήτων και της υπολογιστικής σκέψης. Για την αξιολόγηση, το εργαλείο χρειάζεται είτε το αρχείο του προγράμματος προς ανάλυση, είτε τον υπερσύνδεσμό του (hyperlink) στον ιστότοπο του Scratch. Στην Εικόνα 2 βλέπουμε ένα παράδειγμα αξιολόγησης του «Dr. Scratch». Εικόνα 2: Παράδειγμα αξιολόγησης του «Dr. Scratch» Το «Dr. Scratch» βαθμολογεί το πρόγραμμα μετά το πέρας της ανάλυσης σε κλίμακα από 0 εώς 21. Η βαθμολογία αυτή εξαρτάται από επτά διαφορετικά κριτήρια τα οποία είναι: Αφαιρετικότητα και αποσύνθεση προβλήματος (abstraction and problem decomposition) Λογική σκέψη (logical thinking) Συγχρονισμός (synchronization) Παραλληλία (parallelism) Έλεγχος ροής (flow control) Aλληλεπίδραση με το χρήστη (user interactivity) Αναπαράσταση δεδομένων (data representation)

4 10 ο Πανελλήνιο Συνέδριο Καθηγητών Πληροφορικής Ανάλογα με την ικανοποίηση των κριτηρίων αυτών επηρεάζεται ο τελικός βαθμός. Το «Dr. Scratch» εντοπίζει επίσης πιθανά λάθη στον κώδικα (που δεν επηρεάζουν τη βαθμολογία) όπως επανάληψη κώδικα, μηνύματα που δεν λαμβάνονται από κανένα αντικείμενο, κώδικας που δεν εκτελείται ποτέ και λάθος αρχικοποίηση μεταβλητών. Το εργαλείο βαθμολογεί ξεχωριστά κάθε επιμέρους κριτήριο για να καταλήξει σε έναν τελικό βαθμό. Ωστόσο, τα αποτελέσματα που προκύπτουν από την ανάλυση του «Dr. Scratch» δεν μπορεί να είναι πάντα αξιόπιστα, καθώς η μεθοδολογία του είναι περιορισμένη και μπορεί να ξεγελαστεί εύκολα, όπως στο πρόγραμμα της Εικόνας 3 που διαθέτει ένα μεγάλο πλήθος διαφορετικών blocksεντολών, τα οποία όμως συνολικά δεν παράγουν κάποιο λογικό αποτέλεσμα. Ωστόσο, βαθμολογείται από το «Dr. Scratch» με άριστα (21/21). Εικόνα 3: Άριστη αξιολόγηση προγράμματος που δεν παράγει αποτέλεσμα από το «Dr. Scratch» Φαίνεται ότι το εργαλείο ελέγχει την ύπαρξη ή μη συγκεκριμένων πλακιδίων ώστε να αξιολογήσει κάποιο κριτήριο (με την προϋπόθεση ότι τα αποτελέσματα της εκτέλεσης είναι τα αναμενόμενα από

Η Πληροφορική στην Πρωτοβάθμια και Δευτεροβάθμια Εκπαίδευση Ρόλος και Εφαρμογές 5 τον προγραμματιστή), με συνέπεια η μεθοδολογία αυτή να επιφέρει αμφισβητούμενα αποτελέσματα για την πραγματική ποιότητα του κώδικα. Γίνεται, λοιπόν, φανερό πως διαδικασίες όπως αυτή της αποσφαλματοποίησης (debugging) είναι πρακτικά αδύνατον να ελεγχθούν και να αξιολογηθούν με τη βοήθεια του «Dr. Scratch». Παρόλα αυτά, τα κριτήρια που έχουν επιλεγεί για την υλοποίηση του «Dr. Scratch» αντιπροσωπεύουν τις αρχές του οπτικού προγραμματισμού, και θα αποτελέσουν βασικό μέρος της παρούσας έρευνας. Ο τρόπος, όμως, με τον οποίο αξιολογούνται διαφέρει σημαντικά. Πλαίσιο αξιολόγησης εξέλιξης της υπολογιστικής σκέψης Έχει αναπτυχθεί ένα πλαίσιο αξιολόγησης της εξέλιξης της υπολογιστικής σκέψης ενός χρήστη με επίκεντρο το Scratch (Brennan & Resnick, 2012), το οποίο αποτελείται από τρεις διαφορετικές διαστάσεις: τις υπολογιστικές έννοιες (computational concepts), τις υπολογιστικές πρακτικές (computational practices) και τις υπολογιστικές αντιλήψεις (computational perspectives). Με το συνδυασμό και την αξιολόγηση των παραπάνω διαστάσεων διαπιστώνεται το κατά πόσο έχει εξελιχθεί στο χρόνο η ικανότητα της υπολογιστικής σκέψης ενός χρήστη στην κοινότητα του Scratch. Για τις ανάγκες της έρευνας θα ασχοληθούμε με τις υπολογιστικές έννοιες οι οποίες είναι: ακολουθίες εντολών, επαναλήψεις, γεγονότα, παραλληλία, συνθήκες, τελεστές, δεδομένα. Οι έννοιες αυτές είναι κοινές ή μοιάζουν αρκετά με τα κριτήρια που προτείνει το «Dr. Scratch». Μοντέλο ποιότητας Το «μοντέλο ποιότητας (quality model)» είναι ένα μοντέλο αξιολόγησης ανοιχτού λογισμικού (Samoladas et al, 2012). Κατασκευάστηκε έτσι ώστε να προσφέρει μια αυτοματοποιημένη αξιολόγηση λογισμικού με ελάχιστη ανθρώπινη παρέμβαση. Το μοντέλο εστιάζει στον πηγαίο κώδικα του λογισμικού, χωρίς όμως να λαμβάνει υπ όψιν τη λειτουργικότητά του. Η λειτουργικότητα θεωρείται υποκειμενική και αφήνεται στην κρίση του αξιολογητή. Τα κριτήρια που χρησιμοποιεί το μοντέλο είναι τα εξής: Αναλυσιμότητα (analyzability) Μεταβλητότητα (changeability) Σταθερότητα (stability) Δοκιμαστικότητα (testability) Ωριμότητα (maturity) Αποτελεσματικότητα (effectiveness) Ασφάλεια (security) Λίστα μηνυμάτων (mailing list) Εγχειρίδια (documentation) Σύνολο προγραμματιστών (developer base). Κάθε ένα από αυτά τα κριτήρια χρειάζεται κάποιες παραμέτρους για να αξιολογηθεί ώστε το μοντέλο να λειτουργήσει αυτόματα. Παράμετροι, όμως, όπως η συχνότητα των σχολίων, ο αριθμός των «παιδιών» (κληρονομικότητα), το επίπεδο εμφωλιασμών και το βάθος ενός δέντρου κληρονομικότητας δεν έχουν νόημα για τις περισσότερες γλώσσες οπτικού προγραμματισμού όπως το Scratch καθώς δεν μπορούν να υποστηριχθούν. Άλλωστε, το μοντέλο αυτό δεν αφορά συγκεκριμένο είδος προγραμματισμού. Ο τρόπος αξιολόγησης, λοιπόν, θα αλλάξει στα κριτήρια που θα επιλεγούν. Γενικότερα, ένα αυτοματοποιημένο μοντέλο (όπως και το «Dr. Scratch»), αν και ιδιαίτερα πρακτικό προς τη χρήση, μπορεί να επιφέρει ανακριβή αποτελέσματα σε σχέση με την ποιότητα του κώδικα και να «ξεγελαστεί εύκολα». Ενώ λοιπόν αρκετά από τα προαναφερθέντα κριτήρια είναι ιδιαίτερα χρήσιμα, ο τρόπος αξιολόγησής τους οφείλει να αλλάξει για τις ανάγκες της παρούσας έρευνας.

6 10 ο Πανελλήνιο Συνέδριο Καθηγητών Πληροφορικής Επιλογή και διαμόρφωση κριτηρίων Σύμφωνα με τα παραπάνω ευρήματα και προσθέτοντας τα κριτήρια της βελτιστοποίησης (χωρίστηκε από την αποτελεσματικότητα) και της αναγνωσιμότητας (Meerbaum-Salaant et al, 2011), θεωρούμε πως τα κριτήρια του Πίνακα 1 αποτελούν ένα επαρκές σύνολο για την αξιολόγηση κωδίκων οπτικού προγραμματισμού. Πίνακας 1: Κριτήρια αξιολόγησης κώδικα οπτικού προγραμματισμού Κριτήρια Αποτελεσματικότητα Αναγνωσιμότητα Βελτιστοποίηση Μεταβλητότητα Ασφάλεια Επεξήγηση Λειτουργεί σωστά το πρόγραμμα; Ανταποκρίνεται στις ανάγκες του χρήστη; Ικανοποιεί τους στόχους που τέθηκαν πριν την υλοποίησή του; Είναι ο κώδικας εύκολα κατανοήσιμος; Οι μεταβλητές, τα αντικείμενα και οι διαδικασίες έχουν κατάλληλες ονομασίες; Η τοποθέτηση των πλακιδίων στο χώρο έχει συνοχή; Μπορούν οι αλγόριθμοι να εκφραστούν με λιγότερα βήματα και να παραγάγουν το ίδιο αποτέλεσμα; Υπάρχουν κομμάτια κώδικα που επαναλαμβάνονται; Είναι όλα τα πλακίδια απαραίτητα για τη ροή του προγράμματος ή υπάρχει «νεκρός» κώδικας; Πόσο εύκολα μπορεί να τροποποιηθεί/επεκταθεί ο κώδικας; Αρχικοποιούνται οι μεταβλητές όταν πρέπει; Οι επαναλήψεις τερματίζονται μετά από ένα ορισμένο αριθμό βημάτων; Δοκιμαστικότητα Πόσο εύκολα μπορεί να δοκιμαστεί η ορθότητα του προγράμματος; Αποσύνθεση Αλληλεπίδραση με χρήστη Αναπαράσταση δεδομένων Επικοινωνία Συγχρονισμός Παραλληλία Σειριακότητα Το πρόβλημα «σπάει» σωστά σε μικρότερα και απλούστερα μέρη; Υπάρχει η κατάλληλη αλληλεπίδραση με το χρήστη; Οι μεταβλητές είναι σωστά ορισμένες; Οι μεταβλητές χρησιμοποιούνται με τον κατάλληλο τρόπο; Χρησιμοποιούνται δομές δεδομένων (λίστες); Υπάρχουν οι κατάλληλες εντολές που βοηθούν τη ροή του προγράμματος; Τα γεγονότα είναι σωστά ορισμένα; Η επικοινωνία μεταξύ των αντικειμένων γίνεται με ορθό τρόπο; Γίνεται σωστά ο διαχωρισμός μεταξύ παράλληλων και σειριακών διαδικασιών; Πηγή, Habits of Programming in Scratch Dr. Scratch Dr. Scratch Dr. Scratch, Πλαίσιο αξιολόγησης της εξέλιξης της υπολογιστικής σκέψης Dr. Scratch, Πλαίσιο αξιολόγησης της εξέλιξης της υπολογιστικής σκέψης Dr. Scratch, Πλαίσιο αξιολόγησης της εξέλιξης της υπολογιστικής σκέψης Αρχικά, τονίζουμε πως κάποια από τα κριτήρια που εντοπίσαμε απορρίφθηκαν για τον τελικό πίνακα. Αυτά είναι η σταθερότητα, η ωριμότητα, η λίστα μηνυμάτων, τα εγχειρίδια και το σύνολο προγραμματιστών. Τα τρία τελευταία απορρίφθηκαν καθώς αν και ιδιαίτερα χρήσιμα, δεν έχουν άμεση σχέση με τον κώδικα ενός προγράμματος. Η σταθερότητα απορρίφθηκε καθώς οι παράμετροί της δεν ταιριάζουν στη φιλοσοφία και τη λειτουργία του Scratch, ενώ η ωριμότητα απορρίφθηκε

Η Πληροφορική στην Πρωτοβάθμια και Δευτεροβάθμια Εκπαίδευση Ρόλος και Εφαρμογές 7 λόγω του μακροπρόθεσμου χαρακτήρα της. Επίσης, η αναλυσιμότητα συγχωνεύτηκε με την αναγνωσιμότητα λόγω της ομοιότητάς τους. Γίνεται εύκολα αντιληπτό πως κάποια από τα κριτήρια συνδέονται άμεσα μεταξύ τους. Για παράδειγμα η αποτελεσματικότητα επηρεάζεται άμεσα από την αποσύνθεση. Είναι φυσιολογικό μια αρνητική αξιολόγηση στο δεύτερο κριτήριο να συνεπάγεται αρνητική αξιολόγηση και στο πρώτο. Χρήση ΚωδικΟραμάτων για την αξιολόγηση Έχοντας πλέον θέσει τα κατάλληλα κριτήρια, είναι σημαντικό να βρεθούν τρόποι ενίσχυσης της διαδικασίας της αξιολόγησης από την πλευρά του αναλυτή. Τέτοια δυνατότητα μπορούν να προσφέρουν τα ΚωδικΟράματα. Εικόνα 4: Παράδειγμα ΚωδικΟράματος (πηγή: Παπαδόπουλος κ.α., 2015, σελ. 78) Το ΚωδικΌραμα είναι ένα εργαλείο για τη διδακτική του οπτικού προγραμματισμού. Επινοήθηκε για την απλούστευση της ανάλυσης πολύπλοκων σεναρίων. Πιο συγκεκριμένα, είναι ένας δισδιάστατος πίνακας, όπου στη μία διάσταση ορίζονται τα αντικείμενα και στην άλλη οι καταστάσεις στις οποίες βρίσκονται τα αντικείμενα στη χρονική διάρκεια του προγράμματος. Εσωτερικά σχηματίζονται κελιά που περιέχουν τον αντίστοιχο κώδικα ανάλογα με τη θέση (Παπαδόπουλος κ.α., 2015). Στην Εικόνα 4 βλέπουμε ένα παράδειγμα ΚωδικΟράματος. Με το ΚωδικΌραμα μπορούμε να παρατηρήσουμε χαρακτηριστικά του κώδικα που γίνονται αντιληπτά πιο

8 10 ο Πανελλήνιο Συνέδριο Καθηγητών Πληροφορικής εύκολα απ ότι στο περιβάλλον του Scratch. Αρχικά φαίνεται ο κώδικας στην ολότητά του, κάτι που στο Scratch είναι αδύνατον (μπορεί να προβληθεί μόνο ο κώδικας κάθε αντικειμένου ξεχωριστά). Το μέγεθος και η πυκνότητα του κώδικα γίνονται προφανή. Επίσης, χάρη στον τρόπο σχεδιασμού του ΚωδικΟράματος, είναι προφανείς και οι καταστάσεις στις οποίες λειτουργεί κάθε κομμάτι κώδικα. Έτσι, ο αξιολογητής έχοντας την εποπτεία μπορεί να απαντήσει σε ερωτήματα όπως: «Ποιος κώδικας αντιστοιχεί σε ποια συμπεριφορά, ποιου αντικειμένου, και σε ποια κατάσταση.» (Λαδιάς κ.α., 2016) Το ΚωδικΌραμα επιπλέον προσφέρει σημαντική βοήθεια για την αξιολόγηση της ποιότητας του κώδικα. Σε συνδυασμό με τα κριτήρια που αναφέρθηκαν προηγουμένως, παρατηρούμε πως αρκετά από αυτά μπορεί να αξιολογηθούν αποτελεσματικότερα με τη χρήση του ΚωδικΟράματος. Έννοιες όπως η αναγνωσιμότητα, η αριστοποίηση, η αποσύνθεση, η επικοινωνία συγχρονισμός και η παραλληλία σειριακότητα γίνονται πιο απλές για τον αναλυτή, αφού με τη χρήση του ΚωδικΟράματος αναδύονται και αποκαλύπτονται τυχόν αστοχίες σε αυτά τα κριτήρια. Για παράδειγμα, οι καφέ γραμμές στην Εικόνα 4 υποδηλώνουν την μετάδοση μηνυμάτων και μέσω των γραμμών αυτών μπορεί να εντοπιστούν ευκολότερα πιθανά λάθη επικοινωνίας μέσα στον κώδικα. Επίλογος Επόμενα βήματα Παρατηρήσαμε πως παρά τις προσπάθειες που έχουν γίνει για την αξιολόγηση κωδίκων Ο.Π., η έρευνα είναι ακόμη ελλιπής και τα αποτελέσματα αναξιόπιστα. Τα κριτήρια που προκύπτουν από την έρευνα θα αποτελέσουν τη βάση για έναν περισσότερο αποτελεσματικό και αξιόπιστο τρόπο αξιολόγησης κωδίκων Ο.Π. Το επόμενο στάδιο για την έρευνα αποτελεί η ομαδοποίηση και η κατηγοριοποίηση των κριτηρίων που επιλέχθηκαν με βάση τα χαρακτηριστικά και τις ομοιότητές τους, καθώς και η κατάταξη των κριτηρίων με βάση τη σημαντικότητά τους. Η διαδικασία αυτή θα γίνει μέσω της συμπλήρωσης σχετικών ερωτηματολογίων από εκπαιδευτικούς κλάδου πληροφορικής. Τα ερωτηματολόγια αυτά αποσκοπούν στην καταγραφή της άποψη των καθηγητών για τη σημαντικότητα των τελικών κριτηρίων και την κατάταξή τους με γνώμονα τη σημαντικότητα αυτή. Στην συνέχεια, θα πρέπει να τεθούν τα κατάλληλα βάρη σημαντικότητας για κάθε κριτήριο και η κλίμακα στην οποία αυτά θα βαθμολογούνται. Τέλος, έχοντας πλέον καθορίσει πλήρως τον τρόπο αξιολόγησης, θα πάρουμε ένα δείγμα έργων από την κοινότητα του Scratch, θα σχηματίσουμε τα ΚωδικΟράματά τους και θα τα αξιολογήσουμε ως προς την ποιότητά τους, ελέγχοντας παράλληλα την αξιοπιστία των μεθόδων μας. Αναφορές Boe, B., Hill, C., Len, M., Dreschler, G., Conrad, P., & Franklin, D. (2013). Hairball: Lint-inspired static analysis of scratch projects. Proceedings of the 44th ACM Technical Symposium on Computer Science Education (SIGCSE 2013), pp.215-220. Brennan, K., & Resnick, M. (2012). Using artifact-based interviews to study the development of computational thinking in interactive media design. American Educational Research Association meeting, Vancouver, BC, Canada. Friedman, M. A., & Voas, J. M. (1995). Software assessment: reliability, safety, testability. John Wiley & Sons, Inc.. Jackson, M., Crouch, S., & Baxter, R. (2011). Software evaluation: criteria-based assessment. Software Sustainability Institute, The University of Edinburgh, available at: http://software. ac. uk/sites/default/files/ssi-softwareevaluationcriteria. pdf (accessed 1 October 2012). Kaučič, B., & Asič, T. (2011, May). Improving introductory programming with Scratch?. In MIPRO, 2011 Proceedings of the 34th International Convention (pp. 1095-1100). IEEE. Moreno-León, J., & Robles, G. (2015). Analyze your Scratch projects with Dr. Scratch and assess your computational thinking skills. In Scratch Conference (pp. 12-15). Meerbaum-Salant, O., Armoni, M., & Ben-Ari, M. (2011, June). Habits of programming in scratch. In Proceedings of the 16th annual joint conference on Innovation and technology in computer science education (pp. 168-172). ACM. Samoladas, I., Gousios, G., Spinellis, D., Stamelos, I. (2012). The quality model: measurement-based open source software evaluation. In Ernesto Damiani and Giancarlo Succi, editors, Open Source

Η Πληροφορική στην Πρωτοβάθμια και Δευτεροβάθμια Εκπαίδευση Ρόλος και Εφαρμογές 9 Development, Communities and Quality OSS 2008: 4th International Conference on Open Source Systems, pages 237 248, Boston, September 2008. IFIP 20th World Computer Congress, Working Group 2.3 on Open Source Software, Springer. (doi:10.1007/978-0-387-09684-1_19) Scratch Visual Programming Language, URL: http://scratch.mit.edu. Τελευταία πρόσβαση: 26/2/2016. Λαδιάς Τ. (2011). Ο προγραμματισμός Η/Υ στο νέο Π.Σ. της υποχρεωτικής εκπαίδευσης στο πλαίσιο του μαθήματος για τον Πληροφορικό Γραμματισμό. CIE Πειραιάς Οκτώβριος 2011. Λαδιάς Τ., Παπαδόπουλος Γ., Φωτιάδης Δ. (2016), ΚωδικΌραμα: Εργαλείο για τη διδασκαλία οπτικού προγραμματισμού σε Scratch. Πανελλήνιο Συνέδριο «Ψηφιακό Εκπαιδευτικό Υλικό και Ηλεκτρονική Μάθηση 2.0» Κόρινθος 26-27 Μαρτίου 2016. Παπαδόπουλος Γ., Φωτιάδης Δ., Λαδιάς Τ., (2015), Ειδικά θέματα προγραμματισμού σε Scratch, ISBN:978-960- 473-674-4, http://scratchtopics.blogspot.gr/.