Τι είναι το Recovery Testing; με Παράδειγμα
⚡ Έξυπνη Σύνοψη
Οι δοκιμές αποκατάστασης επαληθεύουν ότι το λογισμικό μπορεί να επαναφέρει την κανονική λειτουργία μετά από μια διακοπή λειτουργίας, μια διακοπή δικτύου ή μια βλάβη υλικού, επαναφέροντας το σύστημα σε ένα γνωστό καλό σημείο και επεξεργάζοντας ξανά τις συναλλαγές μέχρι την αποτυχία.
Τι είναι το Recovery Testing;
Δοκιμή ανάκτησης είναι μια τεχνική δοκιμής λογισμικού που επαληθεύει την ικανότητα του λογισμικού να ανακάμπτει από βλάβες, όπως κολλήματα λογισμικού ή υλικού και βλάβες δικτύου. Ο σκοπός των δοκιμών αποκατάστασης είναι να προσδιοριστεί εάν οι λειτουργίες του λογισμικού μπορούν να συνεχιστούν μετά από μια καταστροφή ή απώλεια ακεραιότητας. Οι δοκιμές αποκατάστασης περιλαμβάνουν την επαναφορά του λογισμικού στο σημείο όπου ήταν γνωστή η ακεραιότητα και την επανεπεξεργασία των συναλλαγών μέχρι το σημείο αποτυχίας.
Στη μηχανική λογισμικού, ο έλεγχος ανακτησιμότητας είναι ένας τύπος μη λειτουργικές δοκιμές — καλύπτει πτυχές που δεν συνδέονται με συγκεκριμένη λειτουργία ή ενέργεια χρήστη, όπως η επεκτασιμότητα ή η ασφάλεια. Πραγματοποιείται από επαγγελματίες δοκιμαστές και φυλάσσονται εκ των προτέρων επαρκή αντίγραφα ασφαλείας των δεδομένων σε ασφαλείς τοποθεσίες.
Παράδειγμα δοκιμής ανάκτησης
Δύο σενάρια παρουσιάζουν την τεχνική στην απλούστερη μορφή της. Σε κάθε ένα από αυτά, μια αποτυχία επιβάλλεται σκόπιμα και στη συνέχεια η εφαρμογή παρακολουθείται καθώς συνεχίζει.
- Διακοπή δικτύου: Ενώ μια εφαρμογή λαμβάνει δεδομένα από το δίκτυο, αποσυνδέστε το καλώδιο σύνδεσης. Μετά από λίγο, συνδέστε το ξανά και αναλύστε την ικανότητα της εφαρμογής να συνεχίσει να λαμβάνει δεδομένα από το σημείο στο οποίο διακόπηκε η σύνδεση.
- Επαναφορά συνεδρίας: Επανεκκινήστε το σύστημα ενώ ένα πρόγραμμα περιήγησης έχει ανοιχτό έναν ορισμένο αριθμό συνεδριών και ελέγξτε αν το πρόγραμμα περιήγησης τις ανακτά όλες.
Η παρακάτω εικόνα παρουσιάζει την ίδια ιδέα σε οπτική μορφή.
Ο χρόνος που απαιτείται για την αποκατάσταση εξαρτάται από:
- Ο αριθμός των σημείων επανεκκίνησης
- Ο όγκος δεδομένων που διατηρεί η εφαρμογή
- Εκπαίδευση και δεξιότητες των ατόμων που διεξάγουν δραστηριότητες αποκατάστασης, καθώς και τα διαθέσιμα εργαλεία για την αποκατάσταση
Όταν υπάρχουν αρκετές αποτυχίες, οι δοκιμές αποκατάστασης θα πρέπει να γίνονται με δομημένο τρόπο και όχι όλες μαζί — να διεξάγονται για ένα τμήμα και μετά για ένα άλλο.
Κύκλος ζωής της διαδικασίας ανάκτησης
Πριν από τον σχεδιασμό περιπτώσεων δοκιμών, είναι χρήσιμο να δούμε πού παρεμβαίνει μια δοκιμή ανάκτησης. Ο κύκλος ζωής της διαδικασίας ανάκτησης έχει πέντε βήματα:
- Κανονική λειτουργία
- Συμβάν καταστροφής
- Διακοπή και αποτυχία της λειτουργίας
- Εκκαθάριση καταστροφών μέσω της διαδικασίας ανάκαμψης
- Ανασυγκρότηση όλων των διαδικασιών και πληροφοριών, επαναφέροντας ολόκληρο το σύστημα σε κανονική λειτουργία
Το παρακάτω διάγραμμα ροής δείχνει αυτά τα πέντε στάδια με τη σειρά.
Ας συζητήσουμε αυτά τα πέντε βήματα λεπτομερώς:
- Κανονική λειτουργία. Ένα σύστημα υλικού, λογισμικού και υλικολογισμικού, ενσωματωμένο για την επίτευξη ενός κοινού στόχου, εκτελεί την σχεδιασμένη εργασία του χωρίς διακοπή εντός μιας καθορισμένης χρονικής περιόδου.
- Επέλευση καταστροφής. Μπορεί να προκύψει διακοπή λόγω δυσλειτουργίας του λογισμικού, από αιτίες όπως δυσλειτουργία που προκαλείται από είσοδο, σφάλμα που προκαλείται από βλάβη υλικού ή ζημιά από πυρκαγιά, κλοπή ή απεργία.
- Διαταραχή και αποτυχία. Αυτή είναι η πιο επώδυνη φάση, που οδηγεί σε επιχειρηματικές απώλειες, διαλυμένες σχέσεις, χαμένες ευκαιρίες, χαμένες εργατοώρες και, αναπόφευκτα, οικονομικές απώλειες και απώλειες καλής θέλησης. Ένα σχέδιο ανάκαμψης από καταστροφές διατηρεί αυτή τη φάση στο ελάχιστο δυνατό.
- Εκκαθάριση από καταστροφές. Εάν υπάρχει ήδη ένα εφεδρικό σχέδιο και διαδικασίες μετριασμού κινδύνου, η ανάκαμψη κοστίζει πολύ λιγότερο χρόνο και προσπάθεια. Μια καθορισμένη ομάδα, με τον ρόλο κάθε ατόμου να έχει καθοριστεί εκ των προτέρων, καθορίζει την ευθύνη και αποτρέπει μια μακρά περίοδο διακοπής.
- Ανοικοδόμηση. Αυτό μπορεί να περιλαμβάνει πολλαπλές συνεδρίες λειτουργίας για την αναδημιουργία όλων των φακέλων μαζί με τα αρχεία διαμόρφωσης. Για τη σωστή ανάκτηση απαιτείται η κατάλληλη τεκμηρίωση και μια καθορισμένη διαδικασία αναδημιουργίας.
Στρατηγική Αποκατάστασης
Η ομάδα ανάκτησης θα πρέπει να έχει τη δική της στρατηγική για την ανάκτηση σημαντικού κώδικα και δεδομένων, ώστε να επαναφέρει τις λειτουργίες στην κανονικότητα. Αυτή η στρατηγική είναι μοναδική για κάθε οργανισμό, με βάση την κρισιμότητα των συστημάτων που χειρίζεται, και για τα κρίσιμα συστήματα καταλήγει σε ένα σύνολο επιλογών:
- Ένα μόνο αντίγραφο ασφαλείας ή περισσότερα από ένα
- Πολλαπλά αντίγραφα ασφαλείας σε ένα μέρος ή σε διαφορετικά μέρη
- Αντίγραφα ασφαλείας online ή αντίγραφα ασφαλείας εκτός σύνδεσης
- Τα αντίγραφα ασφαλείας εκτελούνται αυτόματα βάσει πολιτικής ή ενεργοποιούνται χειροκίνητα
- Μια ανεξάρτητη ομάδα αποκατάστασης ή η ομάδα ανάπτυξης που εκτελεί την εργασία
Κάθε επιλογή έχει έναν παράγοντα κόστους και τα πολλαπλά αντίγραφα ασφαλείας ενδέχεται να καταναλώνουν περισσότερους φυσικούς πόρους ή να χρειάζονται μια ανεξάρτητη ομάδα. Η εξάρτηση έχει επίσης σημασία: οι εταιρείες εκτίθενται μέσω του κώδικα και των δεδομένων που διατηρούν σε έναν μόνο πάροχο και σε μια μεγάλης κλίμακας AWS Η διακοπή ρεύματος έχει επανειλημμένα θέσει εκτός λειτουργίας γνωστές υπηρεσίες καταναλωτών την ίδια στιγμή. Η δυνατότητα ανεξάρτητης αποκατάστασης είναι ζωτικής σημασίας σε τέτοιες περιπτώσεις.
Πώς να κάνετε τη δοκιμή ανάκτησης
Αφού καθοριστεί η στρατηγική, το επόμενο ερώτημα είναι πώς έχει ρυθμιστεί η ίδια η δοκιμή. Τα ακόλουθα σημεία θα πρέπει να ληφθούν υπόψη κατά την εκτέλεση δοκιμών ανάκτησης.
- Δημιουργήστε ένα δοκιμαστικό πεδίο όσο το δυνατόν πιο κοντά στις πραγματικές συνθήκες ανάπτυξης: η διασύνδεση, το πρωτόκολλο, το υλικολογισμικό, το υλικό και το λογισμικό θα πρέπει να ταιριάζουν με την παραγωγή.
- Παρόλο που οι εξαντλητικές δοκιμές μπορεί να είναι χρονοβόρες και δαπανηρές, θα πρέπει να εκτελεστεί μια πανομοιότυπη διαμόρφωση και ένας πλήρης έλεγχος.
- Εάν είναι δυνατόν, δοκιμάστε το υλικό στο οποίο θα γίνει τελικά η επαναφορά — ειδικά κατά την επαναφορά σε διαφορετικό μηχάνημα από αυτόν που δημιούργησε το αντίγραφο ασφαλείας.
- Ορισμένα συστήματα δημιουργίας αντιγράφων ασφαλείας αναμένουν ότι ο σκληρός δίσκος θα έχει ακριβώς το ίδιο μέγεθος με αυτόν από τον οποίο ελήφθη το αντίγραφο ασφαλείας.
- Διαχείριση απαξίωσης: η τεχνολογία των μονάδων δίσκου εξελίσσεται γρήγορα και μια παλιά μονάδα δίσκου ενδέχεται να μην είναι συμβατή με μια καινούργια. Επαναφορά σε εικονική μηχανή βοηθάει, καθώς το λογισμικό εικονικοποίησης μπορεί να μιμηθεί το υπάρχον υλικό, συμπεριλαμβανομένων των μεγεθών δίσκων.
- Τα συστήματα online δημιουργίας αντιγράφων ασφαλείας δεν αποτελούν εξαίρεση στις δοκιμές. Οι περισσότεροι πάροχοι προστατεύουν τους χρήστες από προβλήματα πολυμέσων μέσω αποθήκευσης ανεκτικού σε σφάλματα, επομένως οι βλάβες εμφανίζονται αργά.
- Παρόλο που τα συστήματα δημιουργίας αντιγράφων ασφαλείας στο διαδίκτυο είναι εξαιρετικά αξιόπιστα, η πλευρά επαναφοράς πρέπει να δοκιμαστεί για να επιβεβαιωθεί ότι δεν υπάρχουν προβλήματα με την ανάκτηση, την ασφάλεια ή την κρυπτογράφηση.
Επειδή η αποκατάσταση ασκείται από άκρο σε άκρο, αυτές οι διαδρομές συνήθως προγραμματίζονται παράλληλα δοκιμή συστήματος παρά σε επίπεδο μονάδας.
Διαδικασία δοκιμής μετά την αποκατάσταση
Η επαναφορά των δεδομένων είναι μόνο η μισή διαδικασία. Το αποκατεστημένο αντίγραφο πρέπει ακόμη να αποδειχθεί ότι είναι χρησιμοποιήσιμο. Οι περισσότερες μεγάλες εταιρείες διαθέτουν ανεξάρτητους ελεγκτές που εκτελούν περιοδικά ασκήσεις αποκατάστασης. Ένα ολοκληρωμένο σχέδιο αποκατάστασης από καταστροφή είναι δαπανηρό στη συντήρηση και τη δοκιμή, επομένως οι μικρότεροι οργανισμοί συχνά βασίζονται σε αντίγραφα ασφαλείας και αποθήκευση εκτός εγκαταστάσεων.
Μετά την επαναφορά των φακέλων και των αρχείων, οι ακόλουθοι έλεγχοι επιβεβαιώνουν ότι ανακτήθηκαν σωστά:
- Μετονομάστε τον φάκελο του κατεστραμμένου εγγράφου, ώστε το αποκατεστημένο αντίγραφο να μην μπορεί να συγχέεται με αυτόν.
- Μετρήστε τα αρχεία στους ανακτημένους φακέλους και αντιστοιχίστε αυτόν τον αριθμό με τον αρχικό φάκελο.
- Ανοίξτε μερικά αρχεία με την εφαρμογή που τα χρησιμοποιεί κανονικά και επιβεβαιώστε ότι τα δεδομένα μπορούν να περιηγηθούν και να ενημερωθούν ως συνήθως.
- Ανοίξτε πολλά αρχεία διαφορετικών τύπων — εικόνες, MP3και έγγραφα, άλλα μεγάλα και άλλα μικρά.
- Χρησιμοποιήστε τα βοηθητικά προγράμματα σύγκρισης αρχείων και καταλόγων που τα περισσότερα λειτουργικά συστήματα προμηθεύω.


