Vad är felsökning?
Med felsökning avses en process inom mjukvaruutveckling där programanalytiker kamrar igenom datorkod och letar efter "buggar" - källan till fel, brister eller säkerhetshål i de interna programinstruktionerna. Maskinvaruutveckling genomgår också felsökning för att säkerställa kompatibilitet med gällande hårdvarunormer och interoperabilitet mellan komponenter som följer samma protokoll. Dessutom garanterar felsökning att hårdvara och programvara är bakåtkompatibla, eller kommer att existera tillsammans med befintliga standarder som fortfarande kan användas.
Felsökning av programvara sker i två faser. Den första fasen kallas ”alfatestning” och utförs internt innan programvaran offentliggörs. Den andra fasen genomförs genom en offentlig process som kallas ”beta-testning.” Betatestare är frivilliga datorentusiaster som använder beta-programvara på egen risk under överenskommelse om att fel eller problem kommer att rapporteras till utvecklare.
Eftersom buggar måste isoleras och identifieras innan de kan lappas är det första steget att testa programvaran under olika förhållanden. När ett fel avslöjar sig noterar felsökaren de exakta förhållandena under vilka felet visades, inklusive den aktuella körfunktionen, operativsystemtyp och -version och andra program- eller hårdvarukomponenter som kan vara relevanta. Offentliga betatestare skickar in detaljerade rapporter online som visar relevanta detaljer i enlighet därmed, vanligtvis genom att fylla i ett förutformat formulär.
När båda felsökningsfaserna är avslutade är programvaran redo för en allmän version som en stabil version. Debugging fortsätter dock som ett underhållsprotokoll för produktens livslängd, vilket intensifieras med stora uppgraderingar.
Maskinvara felsöks innan den når marknaden och genomgår inte själva betatest i sig, eftersom detta skulle vara för dyrt och problematiskt av ett antal ganska uppenbara skäl. Istället tillhandahåller de flesta hårdvarutillverkare ett online-gränssnitt där användare kan få teknisk support eller rapportera problem med hårdvara. I många fall visar sig dessa problem vara användarfel, men processen tjänar också till att avslöja buggar som inte fångades i den inledande felsökningsfasen. Debuggers kan gå tillbaka till instruktionerna som är kodade i kontrollchips och göra ändringar för att bli av med maskinvaran i buggarna. Tillverkaren kan sedan tillhandahålla en firmwareuppgradering som användare kan ladda ner online för att uppdatera sin hårdvara.
Även om internfelsökning säkert kan avlägsna programvara och hårdvara för många buggar, ersätter ingenting testning i verkligheten. Det är praktiskt taget omöjligt för en författare eller tillverkare att replikera alla tänkbara villkor och system under vilka hårdvaran eller programvaran kommer att användas. Många erfarna IBM-PC-användare väntar i en period på 12-36 månader innan de migrerar till ett nytt operativsystem av detta skäl, som att göra övergången från Windows ™ XP ™ till Windows Vista ™. Detta ger samhället tid att identifiera alla större säkerhetsproblem, buggar eller andra initiala problem som kan kräva felsökning och lappning.