Να γίνει συζήτηση για τις αιτίες που οδηγούν στην κατασκευή προβληματικού λογισμικού.
Σκέψη / Μεθοδολογία: Συνδέουμε τις κατηγορίες λαθών του §13.1 με τους παράγοντες της διαδικασίας ανάπτυξης λογισμικού που περιγράφονται στο §13.2, ώστε να εντοπίσουμε τις βαθύτερες αιτίες προβληματικού λογισμικού.
Λύση:
Εντοπίζουμε παράγοντες που σχετίζονται με τον σχεδιασμό, την υλοποίηση και τον έλεγχο ενός προγράμματος.
Απάντηση: Ένα λογισμικό καταλήγει προβληματικό όταν συνδυάζονται παράγοντες όπως: ανεπαρκής ανάλυση/σχεδιασμός του προβλήματος πριν την υλοποίηση (πηγή λογικών λαθών)· βιαστική ή απρόσεκτη συγγραφή κώδικα (πηγή λαθών υλοποίησης)· ελλιπής πρόβλεψη ακραίων ή απρόβλεπτων καταστάσεων κατά την εκτέλεση (πηγή λαθών εκτέλεσης, όπως διαίρεση με το μηδέν ή δυσλειτουργία υλικού)· και ανεπαρκής έλεγχος (testing) πριν την παράδοση του προγράμματος, ο οποίος είναι ο μόνος τρόπος να ανιχνευτούν τα λογικά λάθη. Η απουσία σχολιασμού και περιγραφικών ονομάτων μεταβλητών δυσκολεύει επιπλέον τον εντοπισμό λαθών σε μεταγενέστερο στάδιο εκσφαλμάτωσης.
Πρόσεξε:
