Il software ad hoc è un software che viene testato, creato o utilizzato in altro modo senza una pianificazione o una premeditazione specifica. Questo termine generico è più spesso usato per descrivere il test dei prodotti software, dove contrasta con altri metodi di test più strettamente pianificati. Il software ad hoc è anche un nome commerciale in alcune aree del mondo. Alcuni lo conoscono anche come acronimo di un tipo francese di software di osservazione.
Diverse comunità tecniche potrebbero avere definizioni leggermente diverse di cosa sia il software ad hoc. La maggior parte identifica software ad hoc come applicazioni che sorgono in modo piuttosto naturale, o quasi casuale, senza un sacco di progetti o prototipi e parametri pianificati specifici per fase. Come indicato, il test ad hoc è un approccio adottato da alcuni sviluppatori per testare il software in modo rapido ed efficace. Altri sconsigliano questo processo di test più informale.
Alcuni professionisti dell’IT spiegano il test del software ad hoc come un test “una tantum”; tale test verrebbe eseguito solo una volta, a meno che, nel corso del test, gli sviluppatori non vedano un errore critico. Questi errori nella tecnologia sono spesso chiamati “bug” nel gergo professionale. Trovare uno o più di questi in un test ad hoc costringerebbe generalmente i programmatori a tornare indietro e rivedere parti significative della codifica per un programma, o testare in modi più pianificati o rigorosi.
Le alternative ai test del software ad hoc includono test di accettazione e test di regressione. Questi tipi di test comportano la riesecuzione di un test per una maggiore efficacia. Alcuni sviluppatori vedono ragioni per utilizzare sempre questi metodi di test più formali. Ad esempio, quando il software fornisce un’efficace protezione della salute o della sicurezza, potrebbero essere necessari test ridondanti. Questo è vero anche quando i test del software riguardano l’ingegneria di progetti di trasporto o altri progetti da cui dipende la vita delle persone.
Per il software che non è “critico per la vita”, gli sviluppatori differiscono sul fatto che i metodi di test ad hoc siano sufficienti. L’idea di “test esplorativi” o di un approccio più informale o randomizzato sta guadagnando slancio in alcuni ambienti della comunità IT. Sebbene gli standard generali per i test ridondanti spesso prevalgano nelle migliori aziende, esiste una controversia generale su quali metodi di test siano più desiderabili.
Alcuni professionisti IT ritengono che a volte il titolo “software ad hoc” venga applicato in modo errato. La frase sembra caratterizzare in modo eccessivo alcuni prodotti software e test. L’utilizzo di etichette più complesse potrebbe aiutare gli utenti finali e altri a comprendere più a fondo come vengono sviluppati i singoli prodotti software.