Software-ul ad-hoc este un software care este testat, creat sau utilizat în alt mod fără planificare sau premeditare specifică. Acest termen general este cel mai adesea folosit pentru a descrie testarea produselor software, unde contrastează cu alte metode de testare mai strict planificate. Software-ul ad-hoc este, de asemenea, un nume de afaceri în unele zone ale lumii. Unii îl cunosc și ca acronim pentru un tip francez de software de observare.
Diferitele comunități tehnice pot avea definiții ușor diferite ale software-ului ad-hoc. Majoritatea identifică software-ul ad-hoc ca fiind aplicații care apar mai degrabă în mod natural sau aproape aleatoriu, fără multe modele sau prototipuri și parametri planificați specifici etapelor. După cum am menționat, testarea ad-hoc este o abordare pe care unii dezvoltatori o adoptă pentru a testa rapid și eficient software-ul. Alții sfătuiesc împotriva acestui proces de testare mai informal.
Unii profesioniști din IT explică testarea software ad-hoc ca un test „o singură dată”; un astfel de test ar fi rulat o singură dată, cu excepția cazului în care, pe parcursul testului, dezvoltatorii văd o eroare critică. Aceste erori în tehnologie sunt adesea numite „bug-uri” în limbajul profesional. Găsirea unuia sau mai multor dintre acestea într-un test ad-hoc ar obliga, în general, programatorii să se întoarcă și să revizuiască părți semnificative ale codării unui program sau să testeze în moduri mai planificate sau riguroase.
Alternativele la testarea software ad-hoc includ testarea de acceptare și testarea de regresie. Aceste tipuri de testare presupun reexecutarea unui test pentru o eficacitate suplimentară. Unii dezvoltatori văd motive pentru a folosi întotdeauna aceste metode de testare mai formale. De exemplu, atunci când software-ul oferă o protecție eficientă a sănătății sau siguranței, poate fi necesară testarea redundantă. Acest lucru este valabil și atunci când testarea software-ului se referă la ingineria proiectelor de transport sau a altor proiecte de care depinde viața oamenilor.
Pentru software-ul care nu este „critic pentru viață”, dezvoltatorii diferă dacă metodele de testare ad-hoc sunt suficiente. Ideea „testării exploratorii” sau a unei abordări mai informale sau randomizate capătă amploare în unele cercuri ale comunității IT. Deși standardele generale pentru testarea redundantă predomină adesea la firmele de top, există o controversă generală cu privire la metodele de testare care sunt cele mai de dorit.
Unii profesioniști IT consideră că titlul „software ad-hoc” este uneori aplicat greșit. Sintagma pare să caracterizeze unele produse software și testarea într-un mod excesiv. Utilizarea etichetelor mai complexe ar putea ajuta utilizatorii finali și alții să înțeleagă mai pe deplin cum sunt dezvoltate produsele software individuale.