Λύσεις — Κεφάλαιο 8 · Εφαρμογές με Χρήση API — Python (σελ. 145)
Απαντήσεις στις Ερωτήσεις (Ε.Α.Υ., διεπαφή χρήστη, ευχρηστία και χαρακτηριστικά, κανόνες σχεδίασης, APIs και παραδείγματα).
Ερ.1 — Επικοινωνία ανθρώπου-υπολογιστή
Ερώτηση: Τι είναι η επικοινωνία ανθρώπου υπολογιστή;
Απάντηση:
- Η Επικοινωνία Ανθρώπου-Υπολογιστή (Ε.Α.Υ. — Human Computer Interaction, HCI) είναι το επιστημονικό πεδίο της πληροφορικής που μελετά την αλληλεπίδραση μεταξύ ανθρώπων (χρηστών) και υπολογιστών.
- Ασχολείται με τον σχεδιασμό, την υλοποίηση και την αξιολόγηση διαδραστικών υπολογιστικών συστημάτων για ανθρώπινη χρήση· βασικός στόχος της είναι η αυξημένη ευχρηστία του συστήματος.
Σύνοψη: (ενδεικτική) Το επιστημονικό πεδίο της πληροφορικής (HCI) που μελετά την αλληλεπίδραση ανθρώπων-υπολογιστών, με βασικό στόχο την αυξημένη ευχρηστία.
Κριτήρια αξιολόγησης:
- Κριτήριο: μελέτη αλληλεπίδρασης + στόχος ευχρηστίας.
Ερ.2 — Διεπαφή χρήστη
Ερώτηση: Τι είναι η διεπαφή χρήστη;
Απάντηση:
- Η διεπαφή χρήστη (user interface) είναι το επίπεδο στο οποίο γίνεται η αλληλεπίδραση χρήστη και υπολογιστή, μέσω κατάλληλου λογισμικού και υλικού.
- Καλύπτει μόνο τα στοιχεία του υπολογιστή με τα οποία ο άνθρωπος έχει άμεση επαφή (π.χ. ό,τι εμφανίζεται στην οθόνη και η είσοδος από πληκτρολόγιο και ποντίκι)· γι' αυτό η Ε.Α.Υ. είναι πολύ ευρύτερος τομέας.
- Μια γραφική διεπαφή (GUI) στην Python υλοποιείται π.χ. με τη βιβλιοθήκη Tkinter.
Σύνοψη: (ενδεικτική) Το επίπεδο (λογισμικό και υλικό) όπου γίνεται η αλληλεπίδραση χρήστη-υπολογιστή· περιλαμβάνει τα στοιχεία του υπολογιστή με τα οποία ο χρήστης έχει άμεση επαφή.
Κριτήρια αξιολόγησης:
- Κριτήριο: «επίπεδο αλληλεπίδρασης/άμεση επαφή» + διάκριση από την ευρύτερη Ε.Α.Υ.
Ερ.3 — Ευχρηστία & χαρακτηριστικά
Ερώτηση: Τι είναι η ευχρηστία συστήματος και ποια βασικά χαρακτηριστικά έχει ένα σύστημα με αυξημένη ευχρηστία;
Απάντηση:
- Ευχρηστία (usability), κατά το πρότυπο ISO 9241: η ικανότητα ενός συστήματος να λειτουργεί αποτελεσματικά και αποδοτικά, ενώ παρέχει υποκειμενική ικανοποίηση στους χρήστες του.
- Ένα σύστημα με αυξημένη ευχρηστία χαρακτηρίζεται από: ευκολία εκμάθησης, υψηλή απόδοση εκτέλεσης έργου (επίδοση), χαμηλή συχνότητα εμφάνισης λαθών χρήστη, ευκολία συγκράτησης της γνώσης της χρήσης του, υποκειμενική ικανοποίηση του χρήστη.
Σύνοψη: (ενδεικτική) Ευχρηστία = ικανότητα του συστήματος να λειτουργεί αποτελεσματικά και αποδοτικά με υποκειμενική ικανοποίηση των χρηστών. Χαρακτηριστικά: ευκολία εκμάθησης, υψηλή επίδοση, λίγα λάθη χρήστη, ευκολία συγκράτησης της γνώσης χρήσης, ικανοποίηση χρήστη.
Κριτήρια αξιολόγησης:
- Κριτήριο: ορισμός + τουλάχιστον 3 από τα 5 χαρακτηριστικά.
Ερ.4 — Κανόνες σχεδίασης διεπαφής
Ερώτηση: Ποιοι είναι οι βασικοί κανόνες για το σχεδιασμό μιας διεπαφής;
Απάντηση:
- Οι βασικοί κανόνες του Shneiderman:
-
- Ομοιομορφία και συνέπεια στη λειτουργία της διεπαφής (ορολογία, μηνύματα, μενού, οθόνες βοήθειας, γραμματοσειρές, χρώμα, μορφή) και αποφυγή απροσδόκητης συμπεριφοράς.
-
- Σύντομοι χειρισμοί (shortcut) για τους έμπειρους χρήστες (συντμήσεις, ειδικά πλήκτρα, μακροεντολές).
-
- Συνεχής ανατροφοδότηση της κατάστασης του συστήματος (π.χ. ποσοστό αρχείου που αντιγράφηκε).
-
- Οι «διάλογοι» χρήστη-υπολογιστή ολοκληρώνονται σε λίγα βήματα.
-
- Πρόβλεψη και χειρισμός σφαλμάτων των χρηστών.
-
- Δυνατότητα εύκολης αναίρεσης μιας ή περισσότερων ενεργειών.
-
- Ο έλεγχος της αλληλεπίδρασης από την πλευρά του χρήστη και όχι του συστήματος.
-
- Ελαχιστοποίηση του φορτίου βραχύχρονης μνήμης του χρήστη (κανόνας των 7±2).
Σύνοψη: (ενδεικτική) Συνέπεια/ομοιομορφία, σύντομοι χειρισμοί, συνεχής ανατροφοδότηση, διάλογοι σε λίγα βήματα, πρόβλεψη και χειρισμός σφαλμάτων, εύκολη αναίρεση, έλεγχος από τον χρήστη, ελάχιστο φορτίο βραχύχρονης μνήμης (7±2).
Κριτήρια αξιολόγησης:
- Κριτήριο: οι 8 κανόνες του Shneiderman (τουλάχιστον 5 για επαρκή απάντηση).
Ερ.5 — Τι είναι τα API + παραδείγματα Python
Ερώτηση: Τι είναι οι διεπαφές προγραμματισμού εφαρμογών – Application Programming Interfaces (APIs). Αναφέρατε δύο δημοφιλή παραδείγματα για τη γλώσσα Python.
Απάντηση:
- APIs (Διεπαφές Προγραμματισμού Εφαρμογών) ή βιβλιοθήκες λογισμικού: συλλογές έτοιμου λογισμικού για πολλές εφαρμογές — σαν εργαλειοθήκες με έτοιμα εργαλεία που χρησιμοποιούμε μέσα στον κώδικά μας.
- Δημοφιλή παραδείγματα για Python: η βιβλιοθήκη οπτικοποίησης δεδομένων Matplotlib, η SeaBorn (επέκταση του Matplotlib), η ggplot, καθώς και η Tkinter, η πρότυπη βιβλιοθήκη για γραφικές διεπαφές (GUI).
Σύνοψη: (ενδεικτική) API = συλλογή έτοιμου λογισμικού (βιβλιοθήκη/εργαλειοθήκη) που χρησιμοποιούμε στον κώδικά μας. Π.χ. Matplotlib και Tkinter (επίσης SeaBorn, ggplot).
Κριτήρια αξιολόγησης:
- Κριτήριο: «έτοιμο λογισμικό/βιβλιοθήκη/εργαλειοθήκη» + 2 υπαρκτά παραδείγματα (π.χ. Matplotlib, SeaBorn, ggplot, Tkinter).