Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Επισκοπήσεις – Reviews - Inspections Η διαδικασία των επισκοπήσεων ξεκίνησε από την IBM το 1972 Στόχος είναι η βελτίωση της ποιότητας και η αύξηση της.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Επισκοπήσεις – Reviews - Inspections Η διαδικασία των επισκοπήσεων ξεκίνησε από την IBM το 1972 Στόχος είναι η βελτίωση της ποιότητας και η αύξηση της."— Μεταγράφημα παρουσίασης:

1 Επισκοπήσεις – Reviews - Inspections Η διαδικασία των επισκοπήσεων ξεκίνησε από την IBM το 1972 Στόχος είναι η βελτίωση της ποιότητας και η αύξηση της παραγωγικότητας Μέχρι τότε, επισκοπήσεις πραγματοποιούνταν μόνο στον κώδικα Ορισμός επισκόπησης κατά IEEE: Τυπική διαδικασία κατά την οποία οι απαιτήσεις, το σχέδιο ή ο κώδικας εξετάζονται λεπτομερώς από ένα ή περισσότερα άτομα με σκοπό την ανίχνευση σφαλμάτων, παραβιάσεων προτύπων και άλλων προβλημάτων Σε αντίθεση, οι περιηγήσεις (walkthroughs) είναι εν γένει άτυπες και έχουν περισσότερο το χαρακτήρα της πληροφόρησης Στις επισκοπήσεις μία ομάδα εποπτών εξετάζει το προϊόν ιδιωτικά, και στη συνέχεια πραγματοποιείται σύσκεψη

2 Επισκοπήσεις - Reviews Υπάρχουν αρκετοί λόγοι για την πραγματοποίηση των reviews ή inspections: εντοπισμός και απομάκρυνση σφαλμάτων αύξηση της παραγωγικότητας συλλογή πληροφοριών για παρακολούθηση του έργου βελτίωση της τεχνογνωσίας βελτίωση ηθικού προγραμματιστών Παρόλο που τα σφάλματα εμφανίζονται μόνο στο τελικό προϊόν, εισάγονται σε όλες τις φάσεις ανάπτυξης. Το κόστος διόρθωσης ενός σφάλματος αυξάνει δραματικά με την εξέλιξη του έργου. Για το λόγο αυτό σκοπός των επισκοπήσεων είναι ο εντοπισμός των σφαλμάτων όσο το δυνατόν πιο πρώιμα, στο τέλος κάθε φάσης Άμεση συνέπεια είναι η αύξηση της παραγωγικότητας (λιγότερος χρόνος για testing και διόρθωση) και η μείωση του κόστους

3 Επισκοπήσεις - Reviews Οι επισκοπήσεις αυξάνουν το κόστος των αρχικών φάσεων αλλά μειώνουν το κόστος του ελέγχου και της συντήρησης Συνήθη προϊόντα που εξετάζονται είναι το ΕΠΑΛ, Σχέδιο Λογισμικού, κώδικας, και πλάνο ελέγχου Επιπρόσθετες πληροφορίες: συλλογή στατιστικών (σφάλματα ανά φάση, σφάλματα που ξεφεύγουν κτλ) ΠΡΟΣΟΧΗ: Στις επισκοπήσεις δεν αξιολογούνται οι άνθρωποι αλλά τα προϊόντα. Τα δεδομένα που προκύπτουν δεν θα πρέπει να χρησιμοποιούνται για αξιολογήσεις και ο συγγραφέας του προϊόντος δεν θα πρέπει σε καμία περίπτωση να νιώθει αμυνόμενος

4 Review Process Τυπική Σύνθεση ομάδας επισκόπησης: Πρόεδρος ή Συντονιστής (Moderator) Συγγραφέας (Author) Ελεγκτές (Reviewers – Inspectors) Γραμματέας (Record keeper)

5 Review Process Όπως κάθε οργανωμένη δραστηριότητα, η επισκόπηση περιλαμβάνει προγραμματισμό, εκτέλεση και ενέργειες μετά. Μόλις ο συγγραφέας του προϊόντος ολοκληρώσει την εργασία του, απευθύνεται μέσω του project manager στον πρόεδρο που καθορίζεται (η παράδοση του προϊόντος θα πρέπει να πληροί ορισμένα entry criteria, π.χ. επιτυχής μεταγλώττιση)

6 Review Process Στη συνέχεια ο πρόεδρος επιλέγει τους ελεγκτές και μοιράζει το υλικό (προϊόν προς έλεγχο, υποστηρικτικά έγγραφα, φόρμες, checklists) και καθορίζει χώρο και ημερομηνία επισκόπησης

7 Review Process Ο κάθε ελεγκτής εξετάζει ανεξάρτητα το προϊόν, σημειώνοντας πιθανά λάθη, ερωτήσεις προς διευκρίνιση, χρόνο που κατανάλωσε, συμπληρώνει checklists Faults

8 Checklists (για Κώδικα) από (http://www.processimpact.com/pr_goodies.shtml) Τεκμηρίωση: Είναι τα σχόλια συνεπή με τον κώδικα ? Έχουν όλα τα τμήματα κώδικα (συναρτήσεις) περιγραφή ? Μεταβλητές: Είναι όλες οι μεταβλητές ορισμένες με συνεπή και ξεκάθαρα ονόματα ? Υπάρχουν περιττές ή μη χρησιμοποιούμενες μεταβλητές ? Αριθμητικές Λειτουργίες: Υπάρχουν έλεγχοι ισότητας μεταξύ αριθμών κινητής υποδιαστολής ? Ελέγχονται οι διαιρέτες αν λαμβάνουν ποτέ την τιμή 0 ? Βρόχοι και Διακλαδώσεις: Ελέγχονται οι πιο συνήθεις περιπτώσεις πρώτες σε δομές if_else ? Καλύπτονται όλες οι περιπτώσεις στις δομές if_else και switch ? Αρχικοποιούνται οι δείκτες σωστά ? Υπάρχουν εκφράσεις μέσα σε βρόχους που δεν τροποποιούνται ?

9 Checklists (για Κώδικα) Βρόχοι και Διακλαδώσεις: Οι συνθήκες τερματισμού είναι προφανείς ? Έχει κάθε έκφραση switch μία εξ’ορισμού περίπτωση ? Αμυντικός Προγραμματισμός: Εξασφαλίζεται ότι οι δείκτες δεν βγαίνουν εκτός ορίων πίνακα, record ή αρχείου ? Ελέγχονται εισαγόμενες παράμετροι για ορθότητα και πληρότητα ? Πραγματοποιείται απελευθέρωση κάθε δεσμευόμενης θέσης μνήμης ? Υπάρχουν χρονόμετρα για την πρόσβαση εξωτερικών διατάξεων ? Ελέγχονται τα αρχεία για ύπαρξη πριν την πρόσβαση σε αυτά ? Μένουν όλα τα αρχεία σε σωστή κατάσταση μετά το πέρας της εκτέλεσης ?

10 Review Process Επισκόπηση: Χώρος – Χρόνος Διαθέσιμος, Μετράται ως χρόνος εργασίας Διάρκεια: Μέχρι 2 ώρες Ο συγγραφέας διατρέχει το κείμενο ή τον κώδικα. Σε κάθε σημείο που επιθυμεί αναφέρει το λάθος ο ελεγκτής. Ο συγγραφέας είτε αποδέχεται το λάθος είτε αποσαφηνίζει γιατί δεν είναι λάθος. Προσοχή: Δεν γίνεται ιδιαίτερη συζήτηση για κάθε σημείο. Μέγιστη συζήτηση για ένα σημείο 1-2 λεπτά Τα λάθη καταγράφονται από τον γραμματέα, καθώς και τα στοιχεία από τον κάθε ελεγκτή (χρόνος που καταναλώθηκε, κατηγοριοποίηση σφαλμάτων).

11 Review Process Στο τέλος της επισκόπησης ο πρόεδρος αποφασίζει αν θα απαιτηθεί και νέα επισκόπηση. Μετά το rework ο συγγραφέας παρουσιάζει το προϊόν στον πρόεδρο για να επικυρώσει το προϊόν. Προτετοιμασία υλικού προς επισκόπηση Μοίρασμα υλικού στους ελεγκτές Σύσκεψη επισκόπησης Διόρθωση σφαλμάτων Νέο review? Go Stop Yes No

12 Αποτελεσματικότητα των Inspections Κατά τη διάρκεια των επισκοπήσεων εντοπίζεται μέχρι και το 90% των σφαλμάτων καθ'όλη τη διάρκεια ενός έργου λογισμικού [Laitenberger 2000] To Jet Propulsion Laboratory (προμηθευτής της NASA σε software) υπολόγισε εξοικονόμηση $7.5 million σε 300 επισκοπήσεις : εξοικονόμηση $25.000 ανά επισκόπηση Ποσοστό των σφαλμάτων που εξαλείφεται κατά τις επισκοπήσεις : παραπάνω από 70% (ΑΤ&Τ 1994). Μείωση του κόστους σε σχέση με άλλες τεχνικές ελέγχου: κατά 300% Σχέση κόστους-απόδοσης των επισκοπήσεων : τουλάχιστον 1 προς 10 [Grady & Slack, 1994, HP] [Bull 1992]: 2823 επισκοπήσεις κώδικα, 348 επισκοπήσεις άλλων εγγράφων: εντοπισμός και απομάκρυνση 5649 σφαλμάτων

13 Τυπική Μορφή Inspection Record Εξώφυλλο (Συγγραφέας, Approved by, Ημερομηνία, Revision) Συμμετέχοντες στην επισκόπηση, ρόλοι Τίτλος προϊόντος/προϊόντων που επισκοπήθηκαν Περιεχόμενα

14 Τυπική Μορφή Inspection Record 1.Πληροφορίες σύσκεψης επισκόπησης Ημερομηνία υποβολής πακέτου Ημερομηνία Σύσκεψης Ημερομηνία ολοκλήρωσης διόρθωσης Είδος και Αριθμός εγγράφων που ελέγχθηκαν Αποτελεσματικότητα συσκέψεως (1..5) Διάρκεια συσκέψεως Συμμετέχοντες / Ρόλοι / Χρόνος που καταναλώθηκε

15 Τυπική Μορφή Inspection Record 2. Στοιχεία εγγράφων που ελέγχθηκαν 3. Αποτελέσματα επισκόπησης για κάθε έγγραφο 4. Έγγραφα Εισόδου (Input documents) 5. Σχόλια

16 Τυπική Μορφή Inspection Record Αποτελέσματα επισκόπησης 3.1 Έγγραφο Προσδιορισμού Απαιτήσεων Λογισμικού του προσομοιωτή ATSiM Κωδικός εγγράφου: Αποτέλεσμα επισκόπησης: Έγκριση, με διορθώσεις Συνολική διάρκεια επισκόπησης (ώρες) : 1 Αριθμός Σελίδων / Γραμμών Κώδικα: 17 σελίδες Κύρια ή επανεπισκόπηση: Κύρια Αριθμός Παρατηρήσεων Μείζονος Σημασίας: 4 ( θα προκύψουν και σε άλλες φάσεις ) Αριθμός Παρατηρήσεων Ήσσονος Σημασίας: 16 Αριθμός Γενικών Παρατηρήσεων: 3 Έλεγχος διόρθωσης σφαλμάτων από: IXG/GTSO (G. Tsoumpelis) Εξειδίκευση Ελεγκτών : 3 (Μέση τιμή από 0..5 για κάθε ελεγκτή)

17 Τυπική Μορφή Inspection Record ΣΧΟΛΙΑ Όνομα Εγγράφου: ΕΠΑΛ E: Έλλειψη, Λ: Λάθος, Π: Πλεονασμός, Β: Βελτίωση Με: Μείζον, Ελ: Ελλάσσον ΘέσηΤύπος Σημ ασία ΕλεγκτήςΕνέργειαΤοπικόΠεριγραφή line: 127 ΛΜεΒΜΟΥNAI Σάρωμα του πίνακα από θέση 1 και μετά line: 302 BEλEλΚΟUSNAIOXI Διόρθωση Σχολίου ως: …….. 5/ 3.3.2 ΛΜεJNTINAIOXI Διόρθωση λειτ. απαίτησης σύμφωνα με το ΕΠΑΛ


Κατέβασμα ppt "Επισκοπήσεις – Reviews - Inspections Η διαδικασία των επισκοπήσεων ξεκίνησε από την IBM το 1972 Στόχος είναι η βελτίωση της ποιότητας και η αύξηση της."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google