Σχετικά με αυτήν την καταχώριση
Αυτή η υπηρεσία επικεντρώνεται αυστηρά σε εργασίες επισκευής και όχι σε πλήρη ανακατασκευή. Εάν η εφαρμογή σας αντιμετωπίζει πρόβλημα με μια σελίδα που εμφανίζει σφάλματα, μια φόρμα που χάνει δεδομένα ή ένα υπερβολικά αργό αίτημα, εντοπίζουμε τη βασική αιτία και τη διορθώνουμε χωρίς να ξαναγράψουμε το προϊόν σας.
Ξεκινάμε αναπαράγοντας με ακρίβεια το ζήτημα χρησιμοποιώντας τα ίδια δεδομένα εισόδου και το ίδιο περιβάλλον, ώστε να επιβεβαιώσουμε άμεσα την αποτυχία. Εάν ένα σφάλμα δεν μπορεί να αναπαραχθεί, δεν ισχυριζόμαστε ότι το έχουμε επιλύσει.
Στη συνέχεια, περιορίζουμε το πρόβλημα εξετάζοντας αρχεία καταγραφής, ίχνη δικτύου και εφαρμόζοντας διχοτόμηση (bisect) στο ιστορικό των commit. Για προβλήματα απόδοσης, προχωράμε σε ανάλυση προφίλ (profiling) αντί να υποθέτουμε, καθώς ένα αργό ερώτημα βάσης δεδομένων διαφέρει σημαντικά από μια αργή απόδοση προτύπου. Τα διακοπτόμενα σφάλματα διερευνώνται μέσω κοινόχρηστων πόρων, όπως σύνολα συνδέσεων (connection pools), κλειδώματα ή συγκρουόμενα κλειδιά προσωρινής μνήμης.
Η επισκευή περιορίζεται στη μικρότερη δυνατή αλλαγή που εξαλείφει τη βασική αιτία. Εάν το ζήτημα είναι αρχιτεκτονικό, το εξηγούμε με σαφήνεια και προσφέρουμε έναν προσωρινό μετριασμό παράλληλα με μια σωστή επιδιόρθωση καθορισμένη ξεχωριστά, παρέχοντάς σας πραγματικά στοιχεία για να λάβετε την απόφασή σας.
Τι λαμβάνετε
- Μια γραπτή διάγνωση που καλύπτει το τι ήταν λάθος, γιατί, καθώς και τα αποδεικτικά στοιχεία.
- Την εφαρμοσμένη και δοκιμασμένη διόρθωση (patch), με την περίπτωση αναπαραγωγής μετατραμμένη σε δοκιμή παλινδρόμησης (regression test).
- Ένα σύντομο σημείωμα που επισημαίνει τυχόν σχετικούς κινδύνους σε παραπλήσια σημεία, ταξινομημένους κατά σειρά επείγοντος.
Τι χρειαζόμαστε από εσάς
Πρόσβαση στο αποθετήριο (repository), έναν αξιόπιστο τρόπο αναπαραγωγής του προβλήματος μέσω βημάτων, μια καταγραφή οθόνης ή έναν χρησιμοποιήσιμο λογαριασμό, καθώς και οποιοδήποτε διαθέσιμο κείμενο σφάλματος ή έξοδο αρχείου καταγραφής. Για ζητήματα απόδοσης, ένας γενικός οδηγός σχετικά με ένα αποδεκτό αποτέλεσμα είναι χρήσιμος.
Χρονοδιάγραμμα και επικοινωνία
Η διάγνωση παραδίδεται συνήθως την ίδια ημέρα μαζί με τα σχετικά στοιχεία, και ακολουθεί η διόρθωση μόλις εγκρίνετε την προσέγγιση. Καμία αλλαγή δεν πραγματοποιείται χωρίς τη γνώση σας· λαμβάνετε το diff, τη δοκιμή παλινδρόμησης και μια εξήγηση του σφάλματος. Εάν μια επιδιόρθωση απαιτεί περισσότερη εργασία από ό,τι υποδείκνυε το σύμπτωμα, θα ενημερωθείτε πριν ξεκινήσει οποιαδήποτε εργασία.