Έλεγχος Αξιοπιστίας & Διασφάλιση Ποιότητας Λογισμικού 2025 Flashcards

(46 cards)

1
Q

Τι είναι ποιότητα;

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Τι είναι ποιότητα λογισμικού;

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Ποια είναι τα χαρακτηριστικά της ποιότητας (ονομαστικά);

A
  • Λειτουργικότητα
  • Αξιοπιστία
  • Ευχρηστία
  • Ασφάλεια
  • Αποδοτικότητα
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Τι ειναι Λειτουργικότητα; Δώσε 1-2 παραδείγματα

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Τι ειναι Αξιοπιστία; Δώσε 1-2 παραδείγματα

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Τι ειναι Ευχρηστία; Δώσε 1-2 παραδείγματα

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Ποια ειναι τα υποχαρακτηστικά της ευχριστίας; Δώσε ένα σύντομο παράδειγμα για κάθε ένα

A
  1. Καταλληλότητα (Appropriateness)
    Το σύστημα καλύπτει τις ανάγκες του χρήστη στο πλαίσιο που το χρησιμοποιεί.
    Παράδειγμα: Μια εφαρμογή παραγγελίας φαγητού έχει επιλογή “παραγγελία με ένα κλικ” για τακτικούς πελάτες.
  2. Αναγνωρισιμότητα (Recognizability)
    Ο χρήστης καταλαβαίνει εύκολα τον σκοπό και τις δυνατότητες του συστήματος.
    Παράδειγμα: Ένα εικονίδιο με κάδο σημαίνει “διαγραφή” και είναι άμεσα αναγνωρίσιμο.
  3. Ευκολία εκμάθησης (Learnability)
    Ο χρήστης μπορεί να μάθει γρήγορα πώς να χρησιμοποιεί το σύστημα.
    Παράδειγμα: Ένα εργαλείο επεξεργασίας κειμένου προσφέρει σύντομη ξενάγηση στην πρώτη χρήση.
  4. Ευκολία χειρισμού (Operability)
    Το σύστημα είναι εύκολο στη χρήση και στον έλεγχο κατά τη λειτουργία.
    Παράδειγμα: Ένα app με καθαρά κουμπιά και λογική ροή για την κράτηση εισιτηρίων.
  5. Προστασία από σφάλματα (User Error Protection)
    Το σύστημα προλαμβάνει ή βοηθά στη διόρθωση λαθών του χρήστη.
    Παράδειγμα: Μήνυμα επιβεβαίωσης πριν τη μόνιμη διαγραφή αρχείου.
  6. Αισθητική διεπαφής (User Interface Aesthetics)
    Ο σχεδιασμός είναι ευχάριστος, καθαρός και δεν κουράζει τον χρήστη.
    Παράδειγμα: Μια εφαρμογή με απαλά χρώματα, καθαρές γραμματοσειρές και ομοιόμορφα εικονίδια.
  7. Μινιμαλιστικός σχεδιασμός (Minimalist Design)
    Περιέχει μόνο τα απαραίτητα στοιχεία, χωρίς περιττές πληροφορίες.
    Παράδειγμα: Μια αρχική σελίδα με τρία βασικά κουμπιά: “Έναρξη”, “Ρυθμίσεις”, “Βοήθεια”.
  8. Προσβασιμότητα (Accessibility)
    Το σύστημα είναι λειτουργικό και για άτομα με αναπηρίες ή ειδικές ανάγκες.
    Παράδειγμα: Υποστήριξη ανάγνωσης οθόνης και επιλογή υψηλής αντίθεσης για χρήστες με προβλήματα όρασης.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Τι ειναι Ασφάλεια; Δώσε 1-2 παραδείγματα

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Ποια ειναι τα υποχαρακτηστικά της ασφάλειας;

A
  1. Εμπιστευτικότητα (Confidentiality): Πρόσβαση στα δεδομένα μόνο από εξουσιοδοτημένους χρήστες
  2. Ακεραιότητα (Integrity): Προστασία από μη εξουσιοδοτημένη τροποποίηση ή διαγραφή
  3. Μη Αποποίηση Ευθύνης (Nonrepudiation): Απόδειξη ότι ενέργειες ή γεγονότα πραγματοποιήθηκαν
  4. Λογοδοσία (Accountability): Ιχνηλασιμότητα και καταγραφή ενεργειών χρηστών
  5. Γνησιότητα (Authenticity): Βεβαίωση της ταυτότητας χρηστών ή συστημάτων
  6. Ανθεκτικότητα (Resistance): Ικανότητα λειτουργίας του συστήματος υπό επίθεση
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Τι ειναι Αποδοτικότητα; Δώσε 1-2 παραδείγματα

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Τι είναι εσωτερική ποιότητα; δώσε παραδείγματα

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Τι είναι εξωτερική ποιότητα; δώσε παραδείγματα

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Τι είναι ποιότητα στη χρήση; δώσε παραδείγματα

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Ποια είναι η διαφορά μεταξύ εσωτερικής και εξωτερικής ποιότητας;

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Ανέπτυξε την επαλήθευση (verification). Τι είναι, πότε γίνεται και τι περιλαμβάνει. Δώσε παραδειγμα

A

Αφορά τον έλεγχο του πώς αναπτύσσεται το λογισμικό και αν ακολουθεί τις προκαθορισμένες προδιαγραφές.
Ερώτηση: Αναπτύσσουμε σωστά το προϊόν;
Χρονική στιγμή: Κατά τη διάρκεια του σχεδιασμού (planning).
Περιλαμβάνει:
o code reviews
o static analysis
o unit testing
o τεκμηρίωση και έλεγχος απαιτήσεων
Παράδειγμα: Σε ένα πληροφοριακό σύστημα διαχείρισης φοιτητών, η επαλήθευση εξετάζει εάν η φόρμα εισαγωγής βαθμολογίας υλοποιεί σωστά τη δομή και τους ελέγχους που ορίζονται στις προδιαγραφές (π.χ., τιμές από 0 έως 10, χρήση dropdown).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Ανέπτυξε την επιύρωση (validation). Τι είναι, πότε γίνεται και τι περιλαμβάνει. Δώσε παραδειγμα

A

Αφορά τον έλεγχο του αν το λογισμικό ανταποκρίνεται στις πραγματικές ανάγκες των χρηστών.
Ερώτηση: Αναπτύξαμε το σωστό προϊόν;
Περιλαμβάνει:
o usability testing
o acceptance testing
o beta testing
o συνεντεύξεις με χρήστες
Παράδειγμα: Στο ίδιο πληροφοριακό σύστημα, η επικύρωση εξετάζει αν η διαδικασία καταχώρησης βαθμολογίας είναι κατανοητή, γρήγορη και ικανοποιεί τις ανάγκες του διοικητικού υπαλλήλου που τη χρησιμοποιεί.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Ποια είναι η διαφορά μεταξύ επαλήθευσης (verification) και επικύρωσης (validation);

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Ποιοι είναι οι κανόνες του Nielsen; (ονομαστικά)

A
  1. Ενημέρωση για την κατάσταση του συστήματος
  2. Αντιστοίχιση συστήματος-πραγματικού κόσμου
  3. Ελευθερία και έλεγχος από το χρήστη
  4. Συνέπεια και συνέχεια και χρήση στάνταρ
  5. Αποφυγή λαθών
  6. Αναγνώριση αντί για ανάκληση
  7. Προσαρμοστικότητα και αποδοτικότητα χρήσης
  8. Καλαίσθητος και μινιμαλιστικός σχεδιασμός
  9. Αναγνώριση και ανάνηψη από λάθη
  10. Βοήθεια
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Εξήγησε τον κανόνα Nielsen: Ενημέρωση για την κατάσταση του συστήματος
Δώσε ένα παράδειγμα

A

Το σύστημα πρέπει να ενημερώνει τους χρήστες για το τι συμβαίνει, παρέχοντας κατάλληλη ανατροφοδότηση σε εύλογο χρονικό διάστημα.
Εφαρμογή στη Google:
a. Κατά την πληκτρολόγηση ενός ερωτήματος, η Google παρέχει άμεσες προτάσεις (autocomplete), υποδεικνύοντας ότι κατανοεί την είσοδο του χρήστη.
b. Κατά την αναζήτηση, εμφανίζεται γραμμή προόδου στο πάνω μέρος του παραθύρου, ή απλώς αλλαγή περιεχομένου στη σελίδα, δηλώνοντας ότι τα αποτελέσματα φορτώνονται.
c. Όταν δεν βρίσκονται αποτελέσματα ή υπάρχει πρόβλημα σύνδεσης, εμφανίζονται σαφή μηνύματα συστήματος, καθιστώντας κατανοητή την κατάσταση.

20
Q

Εξήγησε τον κανόνα Nielsen: Αντιστοίχιση συστήματος-πραγματικού κόσμου
Δώσε ένα παράδειγμα

A

Το σύστημα πρέπει να χρησιμοποιεί έννοιες, γλώσσα και οπτικά στοιχεία που είναι οικεία στους χρήστες από την καθημερινή τους ζωή. Διευκολύνει τη δημιουργία νοητικών μοντέλων, μειώνει την καμπύλη εκμάθησης και αυξάνει την ευχρηστία.
Διαχείριση αρχείων στους υπολογιστές
a. “Φάκελοι” (Folders) για την οργάνωση αρχείων, όπως και τα φυσικά ντοσιέ
b. “Επιφάνεια εργασίας” (Desktop) ως χώρος εργασίας
c. “Καλάθι ανακύκλωσης” (Recycle Bin/Trash) για διαγραφή αρχείων

21
Q

Εξήγησε τον κανόνα Nielsen: Ελευθερία και έλεγχος από το χρήστη
Δώσε ένα παράδειγμα

A

Οι χρήστες πρέπει να μπορούν να κάνουν και να αναιρούν ενέργειες εύκολα.
Gmail - Αναίρεση αποστολής email:
a. Το Gmail παρέχει την επιλογή “Αναίρεση αποστολής” για μερικά δευτερόλεπτα μετά την αποστολή ενός email
b. Αυτό επιτρέπει στους χρήστες να ανακτήσουν ένα μήνυμα σε περίπτωση λάθους

22
Q

Εξήγησε τον κανόνα Nielsen: Συνέπεια και συνέχεια και χρήση στάνταρ
Δώσε ένα παράδειγμα

A

Οι χρήστες δεν πρέπει να αναρωτιούνται αν διαφορετικές λέξεις, καταστάσεις ή ενέργειες σημαίνουν το ίδιο πράγμα.
Εφαρμογή στη Google:
a. Και στις δύο περιπτώσεις, ο τρόπος αναζήτησης παραμένει ίδιος:
i. Το κουμπί “Αναζήτηση Google” έχει την ίδια θέση και μορφή
ii. Η επιλογή “Αναζήτηση εικόνων” είναι επίσης συνεπής
b. Το λογότυπο της Google διατηρεί τα ίδια χρώματα και στιλ, προσαρμοσμένο μόνο με την ένδειξη “Ελλάς” για την ελληνική έκδοση
c. Η διάταξη των στοιχείων ακολουθεί το ίδιο μοτίβο:
i. Πλοήγηση στο πάνω μέρος
ii. Λογότυπο στο κέντρο

23
Q

Εξήγησε τον κανόνα Nielsen: Αποφυγή λαθών
Δώσε ένα παράδειγμα

A

Eπικεντρώνεται στην πρόληψη σφαλμάτων πριν αυτά συμβούν, αντί να εστιάζει απλώς στην αντιμετώπισή τους αφού εμφανιστούν. Ο σχεδιασμός που προλαμβάνει τα λάθη είναι πάντα καλύτερος από τα καλοσχεδιασμένα μηνύματα σφάλματος.
Πρόληψη απώλειας δεδομένων:
a. Αυτόματη αποθήκευση εγγράφων (Google Docs, Microsoft Office)
b. Προειδοποιήσεις αποχώρησης από σελίδες με μη αποθηκευμένο περιεχόμενο
c. Προστασία από κατά λάθος κλείσιμο εφαρμογών με μη αποθηκευμένες αλλαγές

24
Q

Εξήγησε τον κανόνα Nielsen: Αναγνώριση αντί για ανάκληση
Δώσε ένα παράδειγμα

A

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

25
Εξήγησε τον κανόνα Nielsen: Προσαρμοστικότητα και αποδοτικότητα χρήσης Δώσε ένα παράδειγμα
Οι συχνά χρησιμοποιούμενες ενέργειες πρέπει να είναι εύκολα προσβάσιμες . Αυτόματη συμπλήρωση: a. Οι μηχανές αναζήτησης προτείνουν συχνές αναζητήσεις b. Τα προγράμματα περιήγησης συμπληρώνουν αυτόματα διευθύνσεις ιστού και στοιχεία φορμών
26
Εξήγησε τον κανόνα Nielsen: Καλαίσθητος και μινιμαλιστικός σχεδιασμός Δώσε ένα παράδειγμα
Δεν πρέπει να υπάρχουν περιττές πληροφορίες. Μόνο η απολύτως σχετική πληροφορία με την εργασία πρέπει να είναι διαθέσιμη Amazon (κινητή εφαρμογή): a. Απλοποιημένη παρουσίαση προϊόντων παρά τον τεράστιο όγκο πληροφοριών b. Οργάνωση κριτικών και χαρακτηριστικών σε επεκτάσιμες ενότητες c. Προτεραιότητα στις κρίσιμες πληροφορίες (τιμή, διαθεσιμότητα, αξιολογήσεις)
27
Εξήγησε τον κανόνα Nielsen: Αναγνώριση και ανάνηψη από λάθη Δώσε ένα παράδειγμα
Τα μηνύματα σφάλματος πρέπει να είναι κατανοητά και να προτείνουν λύσεις. Μηνύματα σε απλή γλώσσα με ακριβή περιγραφή του προβλήματος και πρόταση ‘άρσης’ αδιεξόδου Google Forms: a. Επισημαίνει τα πεδία με σφάλματα με κόκκινο περίγραμμα b. Παρέχει συγκεκριμένα μηνύματα για κάθε τύπο σφάλματος (π.χ. "Παρακαλώ εισάγετε έγκυρη διεύθυνση email") c. Επιτρέπει την υποβολή μόνο όταν διορθωθούν όλα τα σφάλματα
28
Εξήγησε τον κανόνα Nielsen: Βοήθεια Δώσε ένα παράδειγμα
Πρέπει να παρέχεται βοήθεια και τεκμηρίωση, αν και το σύστημα πρέπει να μπορεί να χρησιμοποιηθεί χωρίς αυτά. Apple Support a. Ολοκληρωμένο σύστημα βοήθειας με πολλαπλά επίπεδα: b. Ενσωματωμένη βοήθεια στις συσκευές και εφαρμογές
29
Τι είναι ευρετική αξιολόγηση;
Η ευρετική αξιολόγηση είναι μια μέθοδος αξιολόγησης της ευχρηστίας ενός λογισμικού ή ιστότοπου, στην οποία 3-5 ειδικοί εξετάζουν τη διεπαφή με βάση καθορισμένες αρχές ευχρηστίας, όπως οι 10 ευρετικοί κανόνες του Nielsen. Είναι μια κόστος-αποτελεσματική διαδικασία που μπορεί να εντοπίσει το 70-80% των προβλημάτων χρηστικότητας.
30
Ποια είναι η διαδικασία της ευρετικής αξιολόγησης; (ονομαστικά)
1. Προετοιμασία 2. Εκτέλεση της αξιολόγησης 3. Συλλογή και κατηγοριοποίηση δεδομένων 4. Εφαρμογή βελτιώσεων 5. Επαναξιολόγηση
31
Εξήγησε το στάδιο "Προετοιμασία" της ευρετικής αξιολόγησης.
a. Επιλογή Ειδικών: Επιλέγονται 3-5 ειδικοί στην ευχρηστία, ώστε να διασφαλιστεί ποικιλία στην εντόπιση προβλημάτων. Ο αριθμός αυτός είναι κρίσιμος γιατί κάθε ειδικός μπορεί να εντοπίσει διαφορετικά ζητήματα. b. Εκπαίδευση και Ενημέρωση: Οι ειδικοί ενημερώνονται για το αντικείμενο και τις λειτουργίες της διεπαφής, καθώς και για τους ευρετικούς κανόνες που θα χρησιμοποιήσουν κατά την αξιολόγηση.
32
Εξήγησε το στάδιο "Εκτέλεση της Αξιολόγησης" της ευρετικής αξιολόγησης.
a. Ανεξάρτητη Αξιολόγηση: Οι ειδικοί εξετάζουν το σύστημα ανεξάρτητα και καταγράφουν προβλήματα βάσει των αρχών του Nielsen, χωρίς να επηρεάζονται από άλλους αξιολογητές b. Σενάρια Χρήσης: Οι ειδικοί χρησιμοποιούν ρεαλιστικά σενάρια για να αξιολογήσουν πώς η διεπαφή λειτουργεί σε καθημερινές καταστάσεις.
33
Εξήγησε το στάδιο "Συλλογή και Κατηγοριοποίηση Δεδομένων" της ευρετικής αξιολόγησης.
a. Καταγραφή Προβλημάτων: Καταγράφονται όλα τα προβλήματα που εντοπίζονται, περιλαμβάνοντας τη θέση, περιγραφή, σοβαρότητα (συνήθως από 0 έως 4) και προτάσεις βελτίωσης. b. Κατηγοριοποίηση: Τα προβλήματα ταξινομούνται ανάλογα με τη σοβαρότητα (χαμηλή, μεσαία, υψηλή) και τη φύση τους (π.χ. προβλήματα πλοήγησης ή κατανόησης).
34
Εξήγησε το στάδιο "Εφαρμογή Βελτιώσεων" της ευρετικής αξιολόγησης.
a. Προτεραιοποίηση Προβλημάτων: Τα προβλήματα ιεραρχούνται βάσει της σοβαρότητας και της επίδρασής τους στη συνολική εμπειρία χρήστη. b. Υλοποίηση Βελτιώσεων: Η ομάδα ανάπτυξης διορθώνει τα πιο κρίσιμα ζητήματα πρώτα, σύμφωνα με τις προτάσεις των ειδικών.
35
Εξήγησε το στάδιο "Επαναξιολόγηση" της ευρετικής αξιολόγησης.
a. Διεξαγωγή Νέας Αξιολόγησης: Μετά τις βελτιώσεις, πραγματοποιείται νέα ευρετική αξιολόγηση για να επιβεβαιωθεί ότι τα προβλήματα έχουν επιλυθεί και δεν έχουν δημιουργηθεί νέα.
36
Γιατί είναι σημαντικό να χρησιμοποιούνται ειδικοί ευχρηστίας στη διαδικασία ευρετικής αξιολόγησης;
1. Βαθιά γνώση των ευρετικών Οι ειδικοί γνωρίζουν σε βάθος κάθε κανόνα, την εφαρμογή του και τις παρερμηνείες που μπορεί να προκύψουν, αξιολογώντας τη διεπαφή με ακρίβεια. 2. Αντιμετώπιση συγκαλυμμένων προβλημάτων Εντοπίζουν προβλήματα που ένας συνηθισμένος χρήστης δεν θα εντόπιζε — π.χ., παραβίαση συνέπειας, υπερφόρτωση πληροφοριών ή μη προβλέψιμη συμπεριφορά. 3. Ολιστική προσέγγιση εμπειρίας χρήστη Λαμβάνουν υπόψη τεχνικά, αισθητικά και ψυχολογικά κριτήρια, προσφέροντας συστάσεις που βελτιώνουν συνολικά την εμπειρία χρήστη 4. Αξιοπιστία και τεκμηρίωση Παρέχουν τεκμηριωμένες, αξιόπιστες αναφορές με προτάσεις βελτίωσης, βάσει διεθνών προτύπων και βέλτιστων πρακτικών. 5. Εξοικονόμηση χρόνου και κόστους Η πρώιμη ανίχνευση σφαλμάτων ευχρηστίας μέσω ειδικών μειώνει τις επανασχεδιάσεις και τα κόστη στο τελικό στάδιο ανάπτυξης.
37
Ποιες τεχικές ελέγχου υπάρχουν;
* Λειτουργικός έλεγχος (Black-box testing) Δοκιμάζουμε το λογισμικό εντός και εκτός ορίων χωρίς να βλέπουμε τον κώδικα, ελέγχοντας πώς συμπεριφέρεται. Σχετίζεται άμεσα με το validation, αφού επικεντρώνεται στις λειτουργικές απαιτήσεις του χρήστη. * Δομικός έλεγχος (White-box testing) Εξετάζεται η εσωτερική δομή και λογική του κώδικα. Ο ελεγκτής έχει πλήρη πρόσβαση στον πηγαίο κώδικα και δημιουργεί τεστ για να καλύψει συγκεκριμένα μονοπάτια εκτέλεσης, συνθήκες και εντολές. * Έλεγχος διεπαφών (Interface testing) Αξιολογεί τη συμπεριφορά διαφορετικών τμημάτων του συστήματος όταν αλληλεπιδρούν μεταξύ τους.
38
Ποιες τεχνικές χρησιμοποιούμε στο black-box testing;
o Διαμέριση σε Κλάσεις Ισοδυναμίας: Χωρίζουμε τις τιμές εισόδου σε ομάδες που θεωρούνται ισοδύναμες ως προς τη συμπεριφορά του συστήματος. Αν μία τιμή της ομάδας είναι αποδεκτή (ή όχι), υποθέτουμε ότι και όλες οι άλλες θα έχουν το ίδιο αποτέλεσμα. Χρήση:  Μειώνει τον αριθμό των δοκιμών χωρίς να μειώνεται η κάλυψη  Αντιπροσωπεύει κάθε κλάση με μία μόνο δοκιμή o Ανάλυση Οριακών Τιμών: Εστιάζουμε στις οριακές τιμές των εισόδων (π.χ., τα ελάχιστα και μέγιστα επιτρεπτά όρια), όπου είναι πιο πιθανό να εντοπιστούν σφάλματα. Χρήση:  Περιλαμβάνει τιμές στο όριο, ακριβώς πριν και ακριβώς μετά.  Είναι εξαιρετικά αποτελεσματική σε αριθμητικά πεδία ή πεδία με περιορισμούς μήκους.
39
Ποια είναι τα βασικά χαρακτηριστικά του black-box testing;
o Ανεξάρτητη δοκιμή: Δοκιμές από άτομα εκτός της ομάδας ανάπτυξης. o Δοκιμές βάσει απαιτήσεων o Καμία γνώση εσωτερικού κώδικα: Οι δοκιμές γίνονται από τη διεπαφή χρήστη ή τα API
40
Που δεν χρησιμοποιείται το black box testing και γιατί;
Eλεγχος εσωτερικής λογικής και ροής ελέγχου. Το Black Box Testing δεν εξετάζει τον κώδικα ή τη ροή του προγράμματος. Δεν ανιχνεύει προβλήματα όπως: 1. Μη χρησιμοποιημένες μεταβλητές, 2. μη εκτελούμενος κώδικας, 3. λογικά σφάλματα σε υπολογισμούς που παράγουν ορθά εξωτερικά αποτελέσματα. Βελτιστοποίηση απόδοσης και μνήμης. Δεν μπορεί να ανιχνεύσει: 1. διαρροές μνήμης 2. αποδοτικότητα αλγορίθμων 3. σπατάλη πόρων. Ασφάλεια κώδικα (code security). Δεν εντοπίζει τρωτά σημεία όπως: 1. SQL injections, 2. buffer overflows 3. improper authentication.
41
Τι είναι κυκλωματική πολυπλοκότητα;
Η κυκλωματική πολυπλοκότητα είναι ένα μέτρο της λογικής πολυπλοκότητας ενός προγράμματος και εκφράζει τον αριθμό των ανεξάρτητων λογικών μονοπατιών στον κώδικα. Εισήχθη από τον Thomas McCabe το 1976 και χρησιμοποιείται για να εκτιμηθεί η δυσκολία κατανόησης, δοκιμής και συντήρησης του λογισμικού. Αποτελεί βασικό δείκτη ποιότητας, καθώς σχετίζεται με την πιθανότητα εμφάνισης σφαλμάτων και την ανάγκη για τεστ.
42
Πώς υπολογίζεται η κυκλωματική πολυπλοκότητα;
Υπολογίζεται μέσω του γράφου ελέγχου ροής (control flow graph) ενός προγράμματος. Σε αυτόν τον γράφο: * Ν είναι ο αριθμός των κόμβων (εντολές ή μπλοκ κώδικα), * E είναι ο αριθμός των ακμών (ροές μεταξύ εντολών), * P είναι ο αριθμός των συνδεδεμένων τμημάτων ή περιοχών (συνήθως P=1 για ένα απλό πρόγραμμα). Ο τύπος υπολογισμού είναι: Cyclomatic Complexity (CC) = E − N + 2P Ή CC = αριθμός αποφάσεων(if, while, for, case, etc) + 1
43
Ποια είναι τα επίπεδα κυκλωματικής πολυπλοκότητας και τι σημαίνει το καθένα;
* Χαμηλή πολυπλοκότητα (1–10): ο κώδικας είναι απλός, ευανάγνωστος, εύκολος στη συντήρηση και στον έλεγχο. * Μέση πολυπλοκότητα (11–20): πιθανή ανάγκη ανασχεδιασμού ή καλύτερης τεκμηρίωσης * Υψηλή πολυπλοκότητα (>20): ο κώδικας είναι δυσνόητος, δύσκολος στην επαλήθευση και δοκιμή, και ενδέχεται να κρύβει σφάλματα.
44
Τι είναι το ISO 25000 και τι το 25010;
Το ISO 25000 είναι οικογένεια προτύπων που καθορίζει χαρακτηριστικά ποιότητας και μεθόδους αξιολόγησης για λογισμικό, με στόχο τη βελτίωση της ποιότητάς του ενώ το 25010 είναι τμήμα του ISO 25000 που ορίζει τα βασικά ποιοτικά χαρακτηριστικά του λογισμικού
45
Ποια ποιοτικά χαρακτηριστικά περιλαμβάνει το ISO 25010
Λειτουργικότητα, αξιοπιστία, αποδοτικότητα, ευχρηστία, ασφάλεια και συντηρησιμότητα.
46
Γιατί είναι σημαντικά τα πρότυπα ποιότητας λογισμικού
Γιατί βοηθούν να διασφαλιστεί ότι το λογισμικό πληροί τις απαιτήσεις των χρηστών και λειτουργεί σωστά και αξιόπιστα.