Bug (inginerie)

În domeniul ingineriei, un bug este un defect de proiectare al unui sistem care provoacă un rezultat nedorit.
Deși este utilizat pentru a descrie o problemă tehnică, bug este un termen informal, care poate fi aplicat fără o înțelegere detaliată a sistemului.
Termenul „bug” se aplică exclusiv sistemelor create de om, nu celor naturale, și implică faptul că problema se află sub control uman. De exemplu, oamenii pot avea defecte, dar nu „bug-uri”, iar o cădere a unui server cauzată de un dezastru natural nu este considerată un bug.
Pe lângă termenul defect, se mai folosesc și: eroare, defecțiune sau defecțiune.
Sistemele inginerești formează o categorie largă care include, dar nu se limitează la: software, hardware, electronice, circuite(d) și mașini.
Rezultatul nedorit poate fi descris în mai multe moduri, inclusiv: intermitent, tranzitoriu, glitch, crash(d) sau blocaj(d).
Deoarece caracterul dezirabil este subiectiv, ceea ce este considerat nedorit pentru un utilizator poate fi considerat acceptabil sau chiar util pentru altul.
Istoric
[modificare | modificare sursă]Cuvântul din engleza medie „bugge” stă la baza termenilor „bugbear” și „bugaboo”, utilizați pentru a desemna un monstru.[1]
Termenul „bug” pentru a descrie un defect a fost folosit în jargonul ingineriei cel puțin din anii 1870, cu mult înainte de apariția calculatoarelor electronice. De exemplu, Thomas Edison a scris într-o scrisoare din 1878:
„Așa a fost în toate invențiile mele. Primul pas este o intuiție și vine cu o izbucnire, apoi apar dificultățile — acesta este momentul în care „bugs”, așa cum sunt numite aceste mici defecte și dificultăți, își fac apariția, iar luni întregi de observație, studiu și muncă sunt necesare înainte de a se ajunge cu siguranță la succes comercial sau la eșec.[2]”
Într-o bandă desenată publicată într-o revistă a industriei telefonice în 1924, un personaj interpretă literal expresia „vânător de bug-uri” și oferă un cadou nepotrivit unui tehnician.[3]
Baffle Ball(d), primul joc de pinball mecanic, a fost promovat în 1931 ca fiind „lipsit de erori”.[4]
În timpul Al Doilea Război Mondial, problemele echipamentelor militare erau denumite bug-uri sau glitches.
În filmul din 1940, Flight Command(d), un defect al unui dispozitiv este denumit bug.
În 1942, Louise Dickinson Rich(d) a folosit termenul într-un context non-informatic pentru a descrie defecte mecanice.[5]
Isaac Asimov a utilizat termenul bug în 1944 pentru a descrie problemele unui robot în povestirea „Catch That Rabbit(d)”.

Grace Hopper a popularizat celebra poveste a unei molii găsite într-un releu al calculatorului Mark II(d).[6] Deși termenul era deja în uz, incidentul a contribuit la popularizarea sa în informatică.[7]
Termenul debugging(d) este, de asemenea, anterior informaticii, fiind atestat în 1945 în contextul motoarelor de avion.[8]
„Nu este un bug, este o caracteristică”
[modificare | modificare sursă]Deoarece un bug implică un comportament nedorit, clasificarea unui comportament ca fiind bug este uneori subiectivă. Un comportament considerat problematic de unii poate fi interpretat de alții ca o caracteristică utilă.
Această idee este reflectată în expresia „Nu este un bug, este o caracteristică” (INABIAF), consemnată în The Jargon File(d) din 1975. Originea sa este atribuită anului 1971, când programatoarea Sandra Lee Harris de la Digital Equipment Corporation a făcut distincția între problemele care necesitau corectare și cele care trebuiau documentate.[9]
Un astfel de comportament poate fi sau nu documentat explicit ca caracteristică nedocumentată(d).
Vezi și
[modificare | modificare sursă]Note
[modificare | modificare sursă]- ↑ Computerworld staff (). „Moth in the machine: Debugging the origins of 'bug'”. Computerworld. Arhivat din original la .
- ↑ Edison to Puskas, 13 November 1878...
- ↑ Cy Meyn...
- ↑ „Baffle Ball”. Internet Pinball Database.
- ↑ Dickinson Rich, Louise, We Took to the Woods, p. 93
- ↑ FCAT NRT Test,
- ↑ http://ei.cs.vt.edu/~history/Hopper.Danis.html. Lipsește sau este vid:
|title=(ajutor) - ↑ Journal of the Royal Aeronautical Society...
- ↑ FOCAL Programming Manual..