Una release candidate è una versione di un programma software che di solito non è nella sua forma finale. Sebbene la versione sia funzionale, non è ancora pronta per essere offerta in vendita al pubblico in generale. Una versione precedente del programma potrebbe essere già sul mercato e questa nuova versione non è pronta per il rilascio, oppure potrebbe essere la primissima versione di un prodotto nuovo di zecca.
I termini “release candidate” e “versione beta” sono spesso usati in modo intercambiabile, ma tecnicamente non sono la stessa cosa. Entrambi si riferiscono a programmi funzionali non completamente testati. Una release candidate, nota anche come RC, ha meno problemi identificati che devono essere risolti prima che il programma possa essere testato sul mercato per un piccolo settore di consumatori. Al contrario, le versioni beta in genere hanno più bug che devono essere risolti prima di essere rilasciati ai consumatori per test più approfonditi. Questo, in sostanza, rende tecnicamente la versione beta un precursore di un RC.
Naturalmente, l’obiettivo finale della release candidate è quello di emergere come un prodotto finale che catturerà l’interesse dei consumatori e si tradurrà in un’ampia popolarità per la nuova offerta di software. Poiché i consumatori tendono ad avere poca o nessuna pazienza con il software che interagisce male con i programmi e i sistemi operativi esistenti, gli sviluppatori intraprendono una grande quantità di test e perfezionamento dei prodotti software prima che venga condotto il primo test del consumatore. Ciò includerà provare il software su molte piattaforme diverse ed eseguirlo insieme ad altri programmi popolari per determinare se ci sono conseguenze negative.
Quando vengono scoperti bug in una release candidate, il problema viene risolto e il test continua per garantire che la correzione non abbia creato nuovi problemi. Se vengono rilevati bug nella fase RC, di solito è necessaria solo una serie di correzioni. Se sono necessarie più di una serie di correzioni, è probabile che il prodotto sia passato alla fase RC prematuramente. Una volta che gli sviluppatori sono certi che la release candidate sia efficiente e non presenti grossi problemi, il programma può passare alla fase RTM. Ciò significa che il prodotto può essere rilasciato al marketing o alla produzione, il che significa che il prodotto può ora essere prodotto in serie.