Visitando le pagine dei progetti open source non è raro imbattersi in alcuni poco comprensibili; questi molto spesso non riescono a coinvolgere i membri della comunità e sono destinati a fallire. Considerata l'importanza di tale problematica
The Open Source Way, un wiki di supporto alla costruzione di comunità Open Source, ha definito
un metro di valutazione per
stimare le probabilità di fallimento di un progetto a codice aperto.
La valutazione consiste nell'
assegnare dei punti al progetto se non soddisfa determinati requisiti: quanti più punti il progetto accumula tanto più aumentano le sue probabilità di fallimento. Nonostante il sistema non appaia molto scientifico, mette tuttavia in luce le motivazioni - divise in categorie - che possono portare far naufragare un progetto open source.
I parametri di riferimento non sono pochi: la
dimensione del codice sorgente del progetto, se oltrepassa i 100 MB, rischia di scoraggiare nuovi sviluppatori, e quindi aumentare le probabilità di fallimento;
sistemi di versioning e di build del codice, unitamente alla documentazione relativa, devono essere ben conosciuti per evitare l'insuccesso del progetto; l'utilizzo di librerie statiche può contribuire al fallimento del progetto; l'installazione deve essere semplice, perché essa è il primo impatto dell'utente con l'applicazione.
Vi sono poi le caratteristiche specifiche: l'
utilizzo di strumenti specifici (ad esempio un formato disponibile solo su un sistema operativo) limita la dimensione del team di sviluppo non considerando la sua eterogeneità; la comunicazione all'interno del team è un fattore importante: l'assenza di una maling list, di un bug tracker o di un sito web non fornisce a chi vuole collaborare degli strumenti di comunicazione adeguati.
Sono altrettanto importanti le
modalità di rilascio dell'applicazione: avere release senza versioni compromette la comprensibilità delle release mentre il rilascio solo in determinati formati non tiene conto della eterogeneità della comunità; la storia del progetto: un fork, l'assenza degli sviluppatori iniziali e un passato da
closed source può indurre il progetto al fallimento.
Ci sono poi le
licenze adottate e la
documentazione: la scarsa informazione sulle licenze o incompatibilità tra le licenze adottate, l'assenza di un
changelog, di documentazione all'interno dei sorgenti e nel sito ufficiale del progetto aumentano la probabilità di fallimento. Per ulteriori informazioni sull'argomento si consiglia di consultare il
sito di riferimento.