Quali sono gli errori? Cos'è un errore e come risolverlo in ingegneria informatica - Punto informatico (2023)

Spesso sentiamo parlare di bug, forse perché è stato appena scoperto un grosso difetto in un software popolare o perché un malintenzionato ne ha sfruttato uno per eseguire una sorta di attacco informatico. Ma cosa sono gli errori? Cos'è un errore del computer e come risolverlo? Perché alcuni bug a volte non vengono mai risolti?

Continua a leggere e scopriremo questo e molto altro sul mondo degli insetti!

Indice

  • Cos'è un errore?
  • Storia ed emersione degli errori: il primo errore
  • Come si risolve un errore del computer?
  • Qual è la differenza tra un errore e un errore?
  • Perché il bug che ho trovato/segnalato non è stato risolto?
  • Conclusioni

Cos'è un errore?

Per capire cos'è un errore, possiamo leggere la definizione di Wikipedia, che è abbastanza completa e concisa:

Il bug (pronuncia inglese /bʌg/; italiano /ˈbaɡ/), anche baco in italiano, nel campo della programmazione informatica, è un problema che fa sì che il software non funzioni correttamente, come dare un risultato imprevisto o sbagliato, un errore di scrittura il codice sorgente di un programma.

Un programma che contiene un gran numero di errori che influiscono sulla sua funzionalità è chiamato bug, mentre la correzione degli errori è chiamata bugfixing.

Errori - Wikipedia, l'enciclopedia libera

Quindi, in sostanza, un bug è un problema che fa sì che un programma non funzioni come previsto.

Durante la scrittura del software, un programmatore può generalmente commettere due tipi di errori: errori di sintassi ed errori di logica.

I primi sono solitamente i più facili da trovare e riparare. Il compilatore, che si occupa di convertire il codice sorgente nel programma stesso, richiede che venga rispettata la corretta sintassi del linguaggio di programmazione utilizzato. Se questo viene ignorato (confrontalo con un errore grammaticale o tipografico durante la digitazione del testo), il compilatore non può interpretare il codice e quindi genera immediatamente un errore.

Questi ultimi sono i più insidiosi, al compilatore in realtà non interessa interpretare il significato logico di ciò che scriviamo, solo la sua sintassi. Il programma è quindi compilato e pronto per essere eseguito, riconosciamo l'errore logico solo quando ci rendiamo conto che il programma non si sta comportando come vorremmo. In questo caso possiamo paragonare questo tipo di errore ad un errore nel significato logico di una frase grammaticalmente corretta.

Storia ed emersione degli errori: il primo errore

Il primo errore della storia risale al 1947, il 9 settembre per la precisione. Quel giorno all'Università di Harvard, il tenente Crace Hopper e il suo team stavano cercando la causa di un malfunzionamento nel computer Mark II. Dopo approfondite ricerche, hanno finalmente trovato la causa: una piccola falena era rimasta intrappolata tra i relè del computer, impedendogli di funzionare correttamente.

Rimossa la povera falena, scritta nel registro del computer e aggiunta l'annotazione "Prima effettiva istanza di bug trovata". In inglese, la parola bug può essere tradotta come insetto, quindi si va dagli insetti fisici trovati nei computer per fare "danni" alla generalizzazione del termine bug come errore generico che impedisce a un computer di funzionare correttamente.

Quali sono gli errori? Cos'è un errore e come risolverlo in ingegneria informatica - Punto informatico (1)
Courtesy Naval Surface Warfare Center, Dahlgren, VA., 1988. – Fotografia dalla biblioteca online del Centro Storico Navale degli Stati Uniti.NH96566-KNIl link sopra non è più valido il 13/04/2017, l'immagine è disponibilequi., dominio pubblico,connessione

Ci sono diverse indicazioni che prima di questo evento, il termine guasto è stato utilizzato per descrivere un circuito elettrico malfunzionante in generale. Tuttavia, questo documento è considerato la prima (e più ovvia) documentazione scritta di un errore informatico.

Come si risolve un errore del computer?

Con il progresso della tecnologia dell'informazione negli ultimi anni, le risorse di calcolo disponibili nei dispositivi moderni consentono l'esecuzione di programmi sempre più complessi e ricchi di risorse. Tuttavia, questo porta inevitabilmente ad un aumento della quantità di codice sorgente che i programmatori devono scrivere per fornire tutte queste funzioni. In aritmetica si dice che non esiste codice senza errori. Questo perché il codice è solitamente così complesso ei possibili scenari applicativi sono così numerosi che a volte è impossibile (anche a causa di vincoli di tempo, risorse disponibili e costi di sviluppo) prevedere tutte le situazioni che possono verificarsi. Basti pensare al mondo di gioco, dove il giocatore può muoversi liberamente attraverso gli stage, compiere azioni in qualsiasi ordine ed eventualmente premere una qualsiasi combinazione di tasti.

Se viene scoperto un bug e l'autore del programma decide di correggerlo, deve modificare la parte del codice sorgente che sta causando il malfunzionamento e rilasciare una nuova versione del programma o una cosiddetta patch, solitamente un programmino . , che non fa altro che sostituire la parte difettosa dell'applicazione con la versione aggiornata.

Il tempo necessario per correggere un errore dipende da molti fattori. Naturalmente, i più importanti sono la sua complessità, il numero di sviluppatori che possono essere coinvolti nella soluzione e quanto tempo devono dedicare allo sviluppo della soluzione.

Se trovi un bug in un programma, la soluzione migliore è contattare il produttore del software per risolverlo. In questo caso cercheremo di fornire quanti più dettagli possibili sull'errore. Potrebbero essere utili una descrizione del bug, eventuali procedure o sequenze di azioni che consentano allo sviluppatore di riprodurre il bug sul proprio computer, foto o trascrizioni delle schermate del bug trovate.

Qual è la differenza tra un errore e un errore?

La differenza tra un errore e un errore è essenzialmente linguistica. Un errore è ciò che l'utente finale generalmente vede come risultato di un errore. Quando qualcosa va storto in un programma, l'utente vede spesso un errore che lo avvisa di un malfunzionamento e talvolta riporta alcuni dettagli che possono essere utili agli sviluppatori per capire cosa ha causato l'errore.

Un noto esempio di messaggio di errore è la famosa schermata blu di Windows. Questa schermata viene visualizzata quando si verifica un malfunzionamento e il sistema operativo non può continuare a funzionare normalmente. Lo schermo stesso di solito mostra alcuni dati che possono aiutare sia l'utente che lo sviluppatore a capire cosa ha causato il crash.

Come accennato, un bug è un errore nel codice sorgente e di solito è la causa di un errore.

Perché il bug che ho trovato/segnalato non è stato risolto?

Se troviamo o segnaliamo un bug, potrebbe non essere risolto immediatamente o affatto.

Come accennato in precedenza, la correzione dei bug implica il lavoro di uno o più programmatori per esaminare il codice sorgente del problema, risolvere il problema e distribuire la versione corretta del codice.

Potrebbero esserci diversi motivi per cui l'errore che hai segnalato non è ancora stato risolto:

  • Il bug riguarda solo un piccolo gruppo di persone e ha una priorità molto bassa. A volte un errore si verifica solo in determinati casi e senza conseguenze importanti. In questo caso, può essere uno spreco per l'azienda spendere molte risorse per risolverlo.
  • L'errore non può essere replicato o trovato. Nella maggior parte dei casi, gli sviluppatori devono replicare il bug per trovare la sezione di codice che causa il bug. Pertanto è necessario ricreare il problema in un ambiente controllato che consenta al tecnico di analizzare con i propri occhi e strumenti il ​​malfunzionamento e cercare di determinarne la causa. In alcuni casi può accadere che per qualche motivo l'errore non possa essere riprodotto e quindi non sia possibile risalire alla sua causa.
  • La correzione verrà rilasciata in una versione futura. Se ancora non vediamo il nostro bug risolto, la correzione potrebbe essere stata trovata, ma il produttore prevede di spedirlo con una nuova versione programmata per una data successiva.
  • Il programma è sviluppato e gestito da un piccolo gruppo di persone che non hanno le risorse per risolverlo. I programmi non sono sempre sviluppati da grandi aziende con molte risorse. Esistono molti programmi sviluppati da piccole aziende o spesso da piccoli gruppi di volontari che potrebbero essere a corto di risorse e avere molte altre cose da fare per quanto riguarda i nuovi sviluppi e le correzioni dei bug segnalati. In questo caso puoi provare a capire contattando gli sviluppatori se intendono risolvere il tuo problema oppure no.
  • La soluzione è troppo complicata o richiederebbe troppe risorse. Questo caso può essere una somma del punto precedente con il primo. Potrebbe trattarsi di un piccolo gruppo di sviluppatori che hanno già grossi bug da correggere, oppure potrebbe trattarsi di un bug molto complicato o che richiede tempo che deve essere risolto. Ricordiamoci sempre che quando vogliamo risolvere un problema con un'applicazione, spesso cerchiamo di capire il rapporto costi-benefici. Un errore complicato che si verifica in alcuni casi ha una priorità inferiore rispetto ad uno altrettanto complicato che si verifica in un numero maggiore di utenti o con conseguenze più gravi.
  • Il programma in cui abbiamo trovato un bug non è più supportato dal produttore. Immaginiamo che oggi abbiamo trovato un bug nel funzionamento di Windows XP. In questo caso, molto probabilmente, non verrà risolto, poiché diversi anni fa Microsoft ha annunciato la fine del supporto per questo sistema operativo. Il software, come ogni cosa, ha un suo ciclo di vita, si sviluppa, poi si usa, si migliora, si manutiene, e se il produttore ha magari rilasciato nuove versioni (nell'esempio nuove versioni di Windows) il software di solito scade Periodo in cui non viene più migliorato, ma solo mantenuto per correggere gli errori più critici, e quindi viene dichiarato un cosiddetto "EOL" (End Of Life), ovvero il momento in cui il produttore interrompe ogni tipo di supporto .
  • La comunità aziendale o di sviluppatori non esiste più. In questo caso, l'azienda che ha creato il software in questione potrebbe essere fallita, oppure il gruppo che lo ha sviluppato potrebbe non essere più attivo e aver interrotto il programma.

Come abbiamo visto, ci sono molte ragioni per cui il nostro errore potrebbe non essere stato risolto. In alcuni casi è questione di tempo prima che esca la soluzione, in altri dobbiamo sistemare le nostre anime e convivere con il nostro errore.

Conclusioni

Ora dovresti sapere tutto su cosa sono gli errori del computer, come risolverli e perché a volte, anche se sono noti, non vengono corretti.

Top Articles
Latest Posts
Article information

Author: Rubie Ullrich

Last Updated: 03/09/2023

Views: 6136

Rating: 4.1 / 5 (52 voted)

Reviews: 91% of readers found this page helpful

Author information

Name: Rubie Ullrich

Birthday: 1998-02-02

Address: 743 Stoltenberg Center, Genovevaville, NJ 59925-3119

Phone: +2202978377583

Job: Administration Engineer

Hobby: Surfing, Sailing, Listening to music, Web surfing, Kitesurfing, Geocaching, Backpacking

Introduction: My name is Rubie Ullrich, I am a enthusiastic, perfect, tender, vivacious, talented, famous, delightful person who loves writing and wants to share my knowledge and understanding with you.