Middle
Ποιες φάσεις ελέγχου ποιότητας (Quality Gates) γνωρίζετε;
sobes.tech AI
Απάντηση από AI
Quality Gates — είναι σημεία ελέγχου στη διαδικασία ανάπτυξης λογισμικού, όπου η ομάδα λαμβάνει αποφάσεις σχετικά με τη μετάβαση στο επόμενο στάδιο, βασιζόμενη στην εκπλήρωση ορισμένων κριτηρίων ποιότητας.
Τα βασικά στάδια ελέγχου ποιότητας ή Quality Gates:
- Κριτήρια εισόδου (Entry Criteria): Έλεγχος ετοιμότητας για την έναρξη ενός συγκεκριμένου σταδίου (π.χ. δοκιμή). Περιλαμβάνει την ύπαρξη επικυρωμένων απαιτήσεων, τεκμηρίωσης δοκιμών, προετοιμασμένου περιβάλλοντος δοκιμών.
- Κριτήρια εξόδου (Exit Criteria): Ορισμός των συνθηκών για την ολοκλήρωση ενός σταδίου (π.χ. δοκιμές). Συχνά περιλαμβάνει:
- Κάλυψη δοκιμών (δομική και λειτουργική).
- Ποσοστό επιτυχίας κρίσιμων και προτεραιότητας δοκιμαστικών περιπτώσεων.
- Αποδεκτός αριθμός και σοβαρότητα ανοιχτών σφαλμάτων.
- Επιτυχία στην επαναληπτική δοκιμή.
- Ανάλυση στατικού κώδικα (Static Code Analysis): Έλεγχος του πηγαίου κώδικα για πιθανά σφάλματα, παραβάσεις προτύπων κωδικοποίησης και ευπάθειες με αυτοματοποιμένα εργαλεία (SonarQube, Checkstyle). Κριτήρια:
- Απουσία κρίσιμων προειδοποιήσεων.
- Αποδεκτό επίπεδο τεχνικού χρέους.
- Συμμόρφωση με κανόνες μορφοποίησης.
- Αποτελέσματα μονάδων δοκιμών (Unit Test Results): Έλεγχος κάλυψης κώδικα από μονάδες δοκιμών και επιτυχούς εκτέλεσής τους. Κριτήρια:
- Ορισμένο ποσοστό κάλυψης κώδικα (π.χ. 80%).
- Απουσία αποτυχημένων μονάδων δοκιμών.
- Αποτελέσματα ολοκληρωμένων και συστημικών δοκιμών (Integration and System Test Results): Αξιολόγηση της επιτυχίας των δοκιμών σε διαφορετικά επίπεδα ολοκλήρωσης. Κριτήρια παρόμοια με τα Exit Criteria, αλλά εφαρμόσιμα στο αντίστοιχο επίπεδο δοκιμών.
- Αποτελέσματα αποδοχής (Acceptance Test Results): Έλεγχος της συμμόρφωσης του προϊόντος με τις επιχειρηματικές απαιτήσεις από την οπτική γωνία του χρήστη ή του πελάτη. Κριτήρια:
- Επιτυχής ολοκλήρωση βασικών επιχειρηματικών σεναρίων.
- Έγκριση του προϊόντος από τον πελάτη ή εκπρόσωπο της επιχείρησης.
- Ανάλυση ευπάθειας ασφαλείας (Security Vulnerability Analysis): Έλεγχος του προϊόντος για γνωστές ευπάθειες με εργαλεία ανίχνευσης ασφαλείας (OWASP ZAP, Burp Suite). Κριτήρια:
- Απουσία κρίσιμων ευπαθειών.
- Αποδεκτό επίπεδο ευπαθειών μέσης και χαμηλής σοβαρότητας.
- Ανάλυση απόδοσης (Performance Analysis): Αξιολόγηση της συμμόρφωσης του προϊόντος με τις απαιτήσεις χρόνου απόκρισης, διαπερατότητας και σταθερότητας υπό φόρτο. Κριτήρια:
- Συμμόρφωση με τα μετρικά απόδοσης.
- Απουσία κρίσιμων προβλημάτων υπό τις καθορισμένες φορτίσεις.
- Έλεγχος τεκμηρίωσης (Documentation Check): Επιβεβαίωση της ύπαρξης και επικαιροποίησης της απαραίτητης τεκμηρίωσης (οδηγίες χρήσης, τεχνική τεκμηρίωση, αναφορές δοκιμών).
Παραδείγματα κριτηρίων για το Exit Gate testing:
| Κριτήριο | Τιμή / Κατάσταση | Σχόλιο |
|---|---|---|
| Ποσοστό επιτυχίας δοκιμαστικών περιπτώσεων | > 95% (υψηλή/μεσαία προτεραιότητα) | Εκτός δοκιμαστικών περιπτώσεων που μπλοκάρονται από γνωστά σφάλματα. |
| Ανοιχτά σφάλματα (Σοβαρότητα) | Κρίσιμα: 0<br> Υψηλά: <= 3<br> Μεσαία/Χαμηλά: Συμφωνημένο | Εξαρτάται από την πολιτική του έργου και τους κινδύνους. |
| Κάλυψη κώδικα (Unit Tests) | > 80% | Στόχος. |
| Αποτελέσματα regression | 100% κρίσιμων regression δοκιμών περασμένα | Έλεγχος σταθερότητας. |