Προγραμματισμός

Πώς να επικυρώσετε δεδομένα, αναλυτικά στοιχεία και οπτικοποιήσεις δεδομένων

Η δοκιμή εφαρμογών είναι μια πειθαρχημένη πειθαρχία με εργαλεία που βοηθούν τις ομάδες διασφάλισης ποιότητας να αναπτύξουν και να αυτοματοποιήσουν λειτουργικές δοκιμές, να εκτελέσουν δοκιμές φορτίου και απόδοσης, να εκτελέσουν ανάλυση στατικού κώδικα, να τυλίξουν API με δοκιμές μονάδας και να επικυρώσουν εφαρμογές έναντι γνωστών ζητημάτων ασφαλείας. Οι ομάδες που ασκούν devops μπορούν να εφαρμόσουν συνεχείς δοκιμές συμπεριλαμβάνοντας όλα ή ένα υποσύνολο των αυτοματοποιημένων δοκιμών τους στους αγωγούς CI / CD και χρησιμοποιούν τα αποτελέσματα για να καθορίσουν εάν μια κατασκευή πρέπει να παραδοθεί στο περιβάλλον προορισμού.

Αλλά όλες αυτές οι δυνατότητες δοκιμών μπορούν εύκολα να αγνοήσουν ένα κρίσιμο σύνολο δοκιμών που είναι κρίσιμο για οποιαδήποτε επεξεργασία εφαρμογών ή παρουσίαση δεδομένων, αναλυτικών στοιχείων ή οπτικοποιήσεων δεδομένων.

Είναι τα δεδομένα ακριβή και είναι έγκυρα τα αναλυτικά στοιχεία; Οι απεικονίσεις δεδομένων δείχνουν αποτελέσματα που έχουν νόημα για τους ειδικούς σε θέματα; Επιπλέον, καθώς μια ομάδα κάνει βελτιώσεις στους αγωγούς δεδομένων και τις βάσεις δεδομένων, πώς θα πρέπει να διασφαλίσουν ότι οι αλλαγές δεν θα βλάψουν μια μεταγενέστερη εφαρμογή ή έναν πίνακα ελέγχου;

Σύμφωνα με την εμπειρία μου στην ανάπτυξη εφαρμογών πλούσιων σε δεδομένα και αναλυτικά στοιχεία, αυτός ο τύπος δοκιμών και επικύρωσης είναι συχνά μια δεύτερη σκέψη σε σύγκριση με τον έλεγχο μονάδας, λειτουργικότητας, απόδοσης και ασφάλειας. Είναι επίσης ένα πιο δύσκολο σύνολο κριτηρίων δοκιμών για πολλούς λόγους:

  • Η επικύρωση δεδομένων και αναλυτικών στοιχείων είναι δύσκολη για προγραμματιστές, υπεύθυνους δοκιμών και επιστήμονες δεδομένων που συνήθως δεν είναι ειδικοί σε θέματα, ειδικά για το πώς χρησιμοποιούνται οι πίνακες ελέγχου και οι εφαρμογές για την ανάπτυξη πληροφοριών ή για τη λήψη αποφάσεων.
  • Τα δεδομένα από μόνα τους είναι ατελή, με γνωστά και συχνά άγνωστα ζητήματα ποιότητας δεδομένων.
  • Η προσπάθεια λήψης κανόνων επικύρωσης δεν είναι ασήμαντη, επειδή υπάρχουν συχνά κοινοί κανόνες που ισχύουν για τα περισσότερα δεδομένα και ακολουθούν κανόνες για διαφορετικούς τύπους ακραίων τιμών. Η προσπάθεια λήψης και κωδικοποίησης αυτών των κανόνων μπορεί να είναι μια δύσκολη και περίπλοκη πρόταση για εφαρμογές και οπτικοποιήσεις δεδομένων που επεξεργάζονται μεγάλους όγκους σύνθετων συνόλων δεδομένων.
  • Οι ενεργοί οργανισμοί που βασίζονται σε δεδομένα φορτώνουν νέα σύνολα δεδομένων και εξελίσσονται αγωγούς δεδομένων για τη βελτίωση της ανάλυσης και της λήψης αποφάσεων.
  • Τα συστήματα επεξεργασίας δεδομένων είναι συχνά περίπλοκα, με διαφορετικά εργαλεία για ενοποίηση, διαχείριση, επεξεργασία, μοντελοποίηση και παράδοση αποτελεσμάτων.

Οι ομάδες που παρουσιάζουν για πρώτη φορά κακά δεδομένα ή μη έγκυρα αναλυτικά στοιχεία στους ενδιαφερόμενους είναι συνήθως η πρώτη κλήση αφύπνισης ότι οι πρακτικές και τα εργαλεία τους ενδέχεται να απαιτούνται για τη δοκιμή, τη διάγνωση και την επίλυση αυτών των ζητημάτων δεδομένων προληπτικά.

Κατανόηση της γενεαλογίας δεδομένων και της ποιότητας των δεδομένων

Τα προβλήματα δεδομένων αντιμετωπίζονται καλύτερα στις πηγές τους και μέσω των διαφόρων μετασχηματισμών δεδομένων που πραγματοποιούνται κατά τη φόρτωση και την επεξεργασία των δεδομένων. Εάν τα δεδομένα προέλευσης έχουν νέα ζητήματα ποιότητας δεδομένων ή αν υπάρχουν ελαττώματα που εισάγονται στον αγωγό δεδομένων, είναι πολύ πιο αποτελεσματικό να τα εντοπίσετε και να τα επιλύσετε νωρίς στον αγωγό επεξεργασίας δεδομένων.

Δύο πρακτικές και σχετικά εργαλεία βοηθούν σε αυτά τα ζητήματα. Και οι δύο επιτρέπουν στις ομάδες ανάπτυξης και δεδομένων να εντοπίζουν ζητήματα δεδομένων πριν φτάσουν σε μεταγενέστερες οπτικοποιήσεις δεδομένων και εφαρμογές.

Η πρώτη πρακτική περιλαμβάνει εργαλεία ποιότητας δεδομένων που είναι συχνά πρόσθετες δυνατότητες εξαγωγής, μετατροπής και φόρτωσης (ETL), καθώς και ορισμένα εργαλεία προετοιμασίας δεδομένων. Τα εργαλεία ποιότητας δεδομένων εξυπηρετούν πολλαπλούς σκοπούς, αλλά ένα πράγμα που μπορούν να κάνουν είναι να εντοπίσουν και να διορθώσουν γνωστά ζητήματα δεδομένων. Ορισμένες διορθώσεις μπορούν να αυτοματοποιηθούν, ενώ άλλες μπορούν να επισημανθούν ως εξαιρέσεις και να σταλούν σε υπεύθυνους δεδομένων για διόρθωση χειροκίνητα ή για ενημέρωση των κανόνων καθαρισμού.

Οι Informatica, Talend, IBM, Oracle, Microsoft και πολλοί άλλοι προσφέρουν εργαλεία ποιότητας δεδομένων που συνδέονται στις πλατφόρμες ETL τους, ενώ τα εργαλεία προετοιμασίας δεδομένων από τα Tableau, Alteryx, Paxata, Trifacta και άλλα έχουν δυνατότητες ποιότητας δεδομένων.

Η δεύτερη πρακτική είναι η γενεαλογία δεδομένων. Ενώ η ποιότητα των δεδομένων βοηθά στον εντοπισμό ζητημάτων δεδομένων, η γενεαλογία δεδομένων είναι ένα σύνολο πρακτικών και εργαλείων που παρακολουθούν τις αλλαγές στα δεδομένα και τις υποκείμενες εφαρμογές. Βοηθούν τους χρήστες να κατανοήσουν πού στον κύκλο ζωής των δεδομένων πραγματοποιείται μετασχηματισμός, υπολογισμός ή άλλος χειρισμός δεδομένων. Τα εργαλεία, οι αναφορές και η τεκμηρίωση της γραμμής δεδομένων μπορούν στη συνέχεια να χρησιμοποιηθούν για τον εντοπισμό ενός αγωγού δεδομένων και να βοηθήσουν στον εντοπισμό της ροής δεδομένων όπου παρουσιάστηκε ένα ελάττωμα ή άλλο πρόβλημα.

Χρήση χρυσών συνόλων δεδομένων για την επικύρωση οπτικοποιήσεων δεδομένων

Το Analytics, οι πίνακες ελέγχου και οι οπτικοποιήσεις δεδομένων δεν λειτουργούν σε στατικές πηγές δεδομένων. Τα δεδομένα αλλάζουν με κάποια ταχύτητα και ταυτόχρονα προγραμματιστές και επιστήμονες δεδομένων ενδέχεται να τροποποιούν τις υποκείμενες ροές δεδομένων, αλγόριθμους και οπτικοποιήσεις. Όταν βλέπετε έναν πίνακα ελέγχου, είναι δύσκολο να διαχωρίσετε εάν ένα απροσδόκητο ζήτημα δεδομένων οφείλεται σε μια αλλαγή μέσω προγραμματισμού ή εάν σχετίζεται με αλλαγές δεδομένων ή ποιότητας δεδομένων.

Ένας τρόπος για να απομονώσετε τις αλλαγές είναι να διαχωρίσετε ένα γνωστό χρυσαφένιοςσύνολο δεδομένων για την επικύρωση των αλλαγών ροής δεδομένων, εφαρμογής και οπτικοποίησης δεδομένων. Χρησιμοποιώντας ένα χρυσό σύνολο δεδομένων, μια ομάδα δοκιμών μπορεί να ορίσει μονάδες, λειτουργικές και δοκιμές απόδοσης για την επικύρωση και τη σύγκριση των αποτελεσμάτων. Οι δοκιμαστές μπορούν να εκτελέσουν δοκιμές A / B, όπου το A είναι το αποτέλεσμα πριν από την εισαγωγή των αλλαγών εφαρμογής και το B είναι το αποτέλεσμα μετά την πραγματοποίηση των αλλαγών. Η δοκιμή θα πρέπει να δείχνει μόνο διαφορές στην παραγωγή σε αναμενόμενες περιοχές όπου άλλαξαν οι ροές δεδομένων, μοντέλα, αναλυτικά στοιχεία, επιχειρηματική λογική ή οπτικοποιήσεις.

Ενώ αυτή είναι μια σχετικά απλή ιδέα, δεν είναι ασήμαντο να εφαρμοστεί.

Κατ 'αρχάς, οι ομάδες πρέπει να δημιουργήσουν τα χρυσά σύνολα δεδομένων και να αποφασίσουν ποιος όγκος και ποικιλία δεδομένων αποτελεί ένα ολοκληρωμένο σύνολο δειγμάτων για δοκιμή. Μπορεί επίσης να απαιτεί πολλαπλά σύνολα δεδομένων για την επικύρωση διαφορετικών τμημάτων δεδομένων, οριακών συνθηκών ή αναλυτικών μοντέλων. Ένα εργαλείο που μπορεί να βοηθήσει τις ομάδες να διαχειριστούν τα δεδομένα δοκιμών είναι το Delphix για τη διαχείριση δεδομένων δοκιμών. άλλοι προμηθευτές προσφέρουν επίσης αυτή τη δυνατότητα.

Δεύτερον, μόλις δημιουργηθούν χρυσά σύνολα δεδομένων, οι ομάδες δοκιμών ενδέχεται να απαιτούν πρόσθετα περιβάλλοντα ή εργαλεία για να αλλάξουν τις υποκείμενες πηγές δεδομένων στα περιβάλλοντά τους. Για παράδειγμα, οι υπεύθυνοι δοκιμών μπορεί να θέλουν να δοκιμάσουν τα χρυσά σύνολα δεδομένων και, στη συνέχεια, να εκτελέσουν μια δεύτερη φορά σε δεδομένα που είναι αντίγραφο των δεδομένων παραγωγής. Οι ομάδες που λειτουργούν σε περιβάλλοντα cloud και χρησιμοποιούν εργαλεία υποδομής ως κώδικα όπως οι Puppet, Chef και Ansible μπορούν να κατασκευάσουν και να καταρρίψουν πολλαπλά περιβάλλοντα δοκιμών για αυτούς τους διαφορετικούς σκοπούς.

Τέλος, οι ομάδες δοκιμών χρειάζονται εργαλεία για την εφαρμογή δοκιμών δεδομένων και αποτελεσμάτων A / B. Πολλές ομάδες που γνωρίζω το κάνουν χειροκίνητα γράφοντας ερωτήματα SQL και στη συνέχεια συγκρίνοντας τα αποτελέσματα. Εάν τα σύνολα δεδομένων και οι δοκιμές είναι απλές, αυτή η προσέγγιση μπορεί να είναι επαρκής. Ωστόσο, εάν πρέπει να δοκιμαστούν πολλά σημεία στη ροή δεδομένων, πιθανότατα χρειάζεστε ειδικά εργαλεία για τη συγκέντρωση των ερωτημάτων δοκιμής, την αυτοματοποίηση τους και τη χρήση αναφορών για την επικύρωση των αλλαγών. Ένα εργαλείο, το QuerySurge, έχει σχεδιαστεί ειδικά για την εφαρμογή δοκιμών A / B έναντι ροών δεδομένων, βάσεων δεδομένων και ορισμένων εργαλείων επιχειρησιακής νοημοσύνης.

Συνεργασία αποτελεσματικά με ειδικούς σε θέματα

Σε κάποιο σημείο, πρέπει να εμπλέξετε εμπειρογνώμονες για να χρησιμοποιήσετε νέες και ενημερωμένες οπτικοποιήσεις δεδομένων και να δώσετε σχόλια. Πρέπει να βοηθήσουν να απαντήσουν σε ερωτήσεις σχετικά με το αν το analytics είναι έγκυρο και χρήσιμο για την ανάπτυξη πληροφοριών ή βοήθειας στη λήψη αποφάσεων βάσει δεδομένων.

Το πρόβλημα που αντιμετωπίζουν πολλές ομάδες παίρνει αρκετό χρόνο από ειδικούς σε θέματα για να συμμετάσχουν σε αυτό το τεστ. Αυτό μπορεί να είναι μια σημαντική πρόκληση όταν προσπαθείτε να δοκιμάζετε και να αναπτύσσετε συχνά αλλαγές.

Για να αξιοποιήσετε αποτελεσματικά το χρόνο τους, προτείνω τρεις ξεχωριστές δραστηριότητες:

  • Εφαρμόστε όσο το δυνατόν περισσότερη ποιότητα δεδομένων, γενεαλογία δεδομένων και δοκιμές A / B σε χρυσά σύνολα δεδομένων. Πριν εμπλακείτε εμπειρογνώμονες σε θέματα, καταβάλλετε εύλογες προσπάθειες για να επιβεβαιώσετε ότι τα ακατέργαστα και υπολογισμένα δεδομένα είναι σωστά. Αυτό πρέπει να γίνει με αυτοπεποίθηση, ώστε να μπορείτε να εξηγήσετε και να παρουσιάσετε ιδανικά στους ειδικούς του αντικειμένου ότι τα υποκείμενα δεδομένα, οι μετασχηματισμοί και οι υπολογισμοί είναι ακριβείς - οπότε μπορείτε να είστε σίγουροι ότι δεν χρειάζεται να επενδύσετε σημαντικό χρόνο για να το δοκιμάσετε χειροκίνητα.
  • Σχεδιάστε οπτικοποιήσεις δεδομένων για να βοηθήσετε τους ειδικούς να εξετάσουν και να επικυρώσουν τα δεδομένα και τα αναλυτικά στοιχεία. Ορισμένες απεικονίσεις μπορεί να είναι έξοδοι από τις δοκιμές A / B, ενώ άλλες πρέπει να είναι οπτικοποιήσεις που εκθέτουν δεδομένα χαμηλού επιπέδου. Κατά την εφαρμογή αλλαγών δεδομένων, αλγορίθμου, μοντέλου ή οπτικοποίησης μεγαλύτερης κλίμακας, βοηθά συχνά να δημιουργηθούν αυτές οι οπτικοποιήσεις δεδομένων ελέγχου ποιότητας για να βοηθήσουν τους ειδικούς του αντικειμένου να πραγματοποιήσουν γρήγορες επικυρώσεις.
  • Θέλετε οι ειδικοί θεμάτων να εκτελέσουν δοκιμές αποδοχής χρηστών (UAT) στις οριστικοποιημένες εφαρμογές και οπτικοποιήσεις δεδομένων. Μέχρι να φτάσουν σε αυτό το βήμα, θα πρέπει να έχουν πλήρη εμπιστοσύνη ότι τα δεδομένα και τα αναλυτικά στοιχεία είναι έγκυρα.

Αυτό το τελευταίο βήμα είναι απαραίτητο για να καθοριστεί εάν οι οπτικοποιήσεις είναι αποτελεσματικές στην εξερεύνηση των δεδομένων και την απάντηση σε ερωτήσεις: Είναι εύκολο να χρησιμοποιηθεί η οπτικοποίηση; Διατίθενται οι σωστές διαστάσεις για τη διερεύνηση των δεδομένων; Βοηθάει η απεικόνιση να απαντήσει επιτυχώς στις ερωτήσεις που σχεδιάστηκε να απαντήσει;

Σε αυτό το σημείο της διαδικασίας, δοκιμάζετε την εμπειρία χρήστη και διασφαλίζετε τη βελτιστοποίηση των ταμπλό και των εφαρμογών. Αυτό το κρίσιμο βήμα μπορεί να γίνει πολύ πιο αποτελεσματικά όταν υπάρχει κατανόηση και εμπιστοσύνη στα υποκείμενα δεδομένα και αναλυτικά στοιχεία.