Software fejl

Softwarefejl  ( jargon - fejl ) - betyder en fejl i programmet eller i systemet, på grund af hvilken programmet producerer uventet adfærd og som følge heraf resultatet. De fleste softwarefejl opstår som følge af fejl lavet af udviklerne af programmet i dets kildekode eller i dets design. Nogle fejl opstår også på grund af den forkerte drift af udviklerværktøjer, for eksempel på grund af en compiler , der genererer forkert kode.

Begrebet "softwarefejl" bruges normalt til at henvise til fejl, der viser sig i programmets drift, i modsætning til for eksempel designfejl eller syntaksfejl. En rapport, der indeholder information om en fejl , kaldes også en fejlrapport  . En rapport om et kritisk problem ( eng. crash ), der får programmet til at crashe, kaldes en crash-rapport ( eng. crash report ).   

Softwarefejl lokaliseres og elimineres i processen med at teste og fejlfinde programmet.

Etymologien af ​​udtrykket "bug"

I betydningen " undvigende teknisk fejl " blev ordet "bug" ( eng.  bug ) brugt længe før computernes fremkomst af telegraf- og telefonselskabets personale i forhold til problemer med elektrisk udstyr og radioteknik. I 1878 skrev Thomas Edison [1] :

”Sådan var det med alle mine opfindelser. Det første trin er intuitionen, der kommer som et glimt, så opstår der vanskeligheder – apparatet nægter at virke, og det er her “bugs” dukker op – som disse små fejl og vanskeligheder kaldes – og det kræver måneders tæt observation, research og indsats, før det kommer til kommerciel succes eller fiasko."

Originaltekst  (engelsk)[ Visskjule] Sådan har det været i alle mine opfindelser. Det første skridt er en intuition, og kommer med et udbrud, så opstår der vanskeligheder - denne ting giver ud, og [det er] derefter, at "Bugs" - som sådanne små fejl og vanskeligheder kaldes - viser sig selv og måneders intens iagttagelse, studier og arbejdskraft er påkrævet, før kommerciel succes eller fiasko med sikkerhed nås.

Under Anden Verdenskrig blev fejl brugt til at henvise til problemer med radarelektronik.

Ifølge en version blev dette udtryk først anvendt på en softwarefejl den 9. september 1947 [2] af Grace Hopper , som arbejdede på Harvard University med en Harvard Mark II -computer .. Efter at have sporet fejlen i programmet til maskinens elektromekaniske relæ , fandt hun et brændt møl mellem de lukkede kontakter. Det hentede insekt blev tapet ind i en teknisk dagbog med en tilhørende ironisk inskription: " Første faktiske tilfælde af fejl blev fundet " [3] . 

Betydning og klassificering af softwarefejl

Afhængigt af softwareudviklingsstadiet , hvor fejlen opdages, er der:

Efter vigtighed:

Efter optræden:

Efter sted og destination:

Afhængigt af arten af ​​fejlen, programmet og udførelsesmiljøet, kan fejlen opstå med det samme eller omvendt - gå ubemærket hen i lang tid (for eksempel Problem 2038 ).

Fejlen kan også manifestere sig som en sårbarhed , der tillader uautoriseret adgang til systemet eller et DoS-angreb .

Sorter

Finde og rette fejl

For at debugge et program ( eng.  debugging ) bruger softwareudviklere specielle debugger-programmer ( eng.  debugger ). På et Windows -operativsystem kan du f.eks. bruge programmet WinDbg fra Microsoft Debugging Tools for Windows-pakken. Til GNU/Linux og en række andre UNIX-lignende operativsystemer er der GDB -debuggeren (GNU Debugger).

Fejlrapporter

Størstedelen af ​​fejl bliver normalt fejlrettet på tidspunktet for kompilering og test af programmet. Nogle af fejlene kommer dog stadig ind i den offentliggjorte version og vises på slutbrugernes computere under driften af ​​softwaren. For at forbedre kvaliteten af ​​softwaren bruges specielle programmer, hvis formål er at fange en fejl i målapplikationen, indsamle de nødvendige oplysninger om dens symptomer og sende en rapport via internettet til udviklerne af denne software.

For eksempel er Dr. Watson , som som standard fanger fejl i brugerapplikationer og sender en rapport til en speciel Microsoft Server . Som et eksempel kan vi også nævne de lignende biblioteker Breakpad [4] og CrashRpt [5] .

Konsekvenser

Se også

Noter

  1. Kilde: Edison til Puskas, 13. november 1878, Edison-papirer, Edison National Laboratory, US National Park Service, West Orange, NJ, citeret i Thomas P. Hughes, American Genesis: A History of the American Genius for Invention, Penguin Books , 1989, s.
  2. Logbog med  computerfejl . National Museum of American History. Hentet 26. juli 2019. Arkiveret fra originalen 1. juni 2019.
  3. Danis, Sharron Ann: "Kontreadmiral Grace Murray Hopper" . ei.cs.vt.edu (16, 1997-02-16). Hentet 20. januar 2015. Arkiveret fra originalen 15. juni 2010.
  4. Breakpad . Google. Hentet 11. august 2009. Arkiveret fra originalen 3. februar 2012.
  5. CrashRpt . Arkiveret fra originalen den 3. februar 2012.
  6. Popper, Nathaniel . Knight Capital siger, at handelsglitch kostede det 440 millioner dollars  (engelsk) , New York Times  (2. august 2012). Arkiveret fra originalen den 5. oktober 2017. Hentet 13. november 2017.

Links