Android

Πώς να αποφύγετε προβλήματα λογισμικού

40 полезных автотоваров с алиэкспресс, которые упростят жизнь любому автовладельцу #8

40 полезных автотоваров с алиэкспресс, которые упростят жизнь любому автовладельцу #8

Πίνακας περιεχομένων:

Anonim

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

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

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

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

Επίσης, διαβάστε: 10 λόγοι για να μην βιάσετε να αγοράσετε ένα iPhone X

1. Αμερικανική πολυεπίπεδη διακοπή 911

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

Ως εκ τούτου, ήταν η καταστροφή όταν στις 9 Απριλίου 2014, η δρομολόγηση 911 κλήσεων απέτυχε σε επτά κράτη των ΗΠΑ, όπως η Καλιφόρνια, η Φλόριντα, η Μινεσότα, η Βόρεια Καρολίνα, η Πενσυλβανία, η Νότια Καρολίνα και η Ουάσινγκτον.

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

2. Γείωση του στόλου των Ηνωμένων Αερογραμμών

Τον Ιούλιο του 2015, η United Airlines αναγκάστηκε να εγκαταστήσει ολόκληρο τον στόλο αεροσκαφών λόγω προβλήματος λογισμικού. Το γεγονός αυτό επηρέασε πάνω από 4.900 πτήσεις παγκοσμίως και άφησε πολλούς επιβάτες να χαλαρώσουν στα αεροδρόμια και προφανώς απογοητευμένοι.

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

3. Δυσλειτουργία του πεντάλ γκαζιού Toyota Camry

Τον Σεπτέμβριο του 2007, ο Jean Bookout ταξίδευε με την εθνική οδό Interstate 69 στην Οκλαχόμα με την επιβάτη Barbara Schwarz, όταν αντιμετώπισε δυσκολίες στον έλεγχο της Toyota Camry.

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

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

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

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

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

Ωστόσο, το ατύχημα του Bookout έφερε αυτό το θέμα στο φως και τόνισε τα ελαττώματα της Toyota στη διαδικασία λογισμικού. Διαπιστώθηκε ακόμη ότι υπήρχαν περισσότεροι από 10 εκατομμύρια τρόποι για την πιθανή εμφάνιση ανεπιθύμητης επιτάχυνσης, με βάση τον τρόπο δομής του κώδικα της Toyota.

Αποτυχία θερμοστάτη φώκιας

Η Nest είναι μια εταιρεία, που ανήκει στο Αλφάβητο, που παράγει έξυπνα θερμοστάτες. Αυτοί οι θερμοστάτες είναι αρκετά έξυπνοι και επιτρέπουν στους χρήστες να ελέγχουν τη θερμοκρασία στα σπίτια τους από τα smartphones τους.

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

Δείτε Επόμενο: Οι Selfies δεν είναι τόσο ασήμαντες όσο τα κοινωνικά μέσα τους έχουν κάνει αργά

Σύντομη ανάλυση των ζητημάτων λογισμικού

Προσεγγίσεις όπως ο σχεδιασμός με βάση το μοντέλο και το TLA +, επιτρέπουν στους προγραμματιστές να αποκτήσουν μια πιο ολοκληρωμένη εικόνα της λειτουργίας του λογισμικού τους.

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

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

Ωστόσο, υπάρχει ελπίδα. Προσεγγίσεις όπως ο σχεδιασμός με βάση το μοντέλο και το TLA +, επιτρέπουν στους προγραμματιστές να αποκτήσουν μια πιο ολοκληρωμένη εικόνα της λειτουργίας του λογισμικού τους.

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

Και ο σχεδιασμός με βάση το μοντέλο και ο TLA + έχουν ήδη αποδείξει το αλάτι τους. Οι τεχνολογίες Esterel, μια εταιρεία ανάπτυξης λογισμικού, χρησιμοποιούν σχεδιασμό βασισμένο σε μοντέλα για την κατασκευή κρίσιμης σημασίας λογισμικού, ενώ το TLA + έχει χρησιμοποιηθεί από την Microsoft για να διορθώσει ένα πιθανό καταστροφικό σφάλμα Xbox και από την Ευρωπαϊκή Υπηρεσία Διαστήματος να ξαναγράψει κώδικες για έναν ανιχνευτή προσγειώθηκε σε έναν κομήτη.

Η διαδικασία της γραφής κώδικα κρατιέται σε μεγάλη εκτίμηση από τους προγραμματιστές. Πολλοί απ 'αυτούς απλά ενδιαφέρονται για τη διαδικασία της σύνταξης κωδίκων. Είναι επομένως μια πρόκληση να πάρουμε ορισμένους προγραμματιστές να αποδεχτούν προσεγγίσεις όπως ο σχεδιασμός με βάση το μοντέλο και ο TLA +. Αυτές οι προσεγγίσεις συχνά θεωρούνται αυστηρά ακαδημαϊκές και δεν έχουν πραγματική βιωσιμότητα. Ωστόσο, η αλλαγή της άποψης πρέπει να γίνει όσο το δυνατόν νωρίτερα.

Επίσης, διαβάστε: Σπρώχνουμε τα παιδιά μας προς την τύφλωση

Τελικές σκέψεις

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

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

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

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

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

Δείτε Επόμενο: Τεχνητή Νοημοσύνη: Τύποι και το μέλλον που κρατάει για τους ανθρώπους