Spesso gli utenti non riescono a comprendere la complessità del software. Pensano che, poiché un problema è facile da descrivere, è facile da risolvere. Voglio equiparare la complessità di un "programma semplice" che ho costruito con la complessità di un processo con un risultato tangibile.
Esiste un sistema in grado di prendere processi tangibili e assegnare loro una complessità come:
Costruire un capannone = 5
Costruire una casa = 50
Costruire l'empire state building = 5000
che posso quindi equiparare al software in modo significativo:
thisProject = 5
Forse il peso del progetto è determinato dalla complessità del Cylcomatic. Qualunque cosa sia non è così importante. Ciò che è importante è che un tale sistema esista. Esiste un sistema simile?
Aggiorna
Sto cercando un modo per confrontare la complessità di due sistemi completi. Non sto cercando metodi di stima. La limitazione che vedo nell'usare "soldi e ore uomo" è che i laici (o forse anche un po 'tecnici) possono attribuire la ragione per cui il progetto ha impiegato così tanto tempo e costare così tanti soldi perché gli sviluppatori non erano semplicemente bravi a il loro lavoro.
Pensare a una possibilità ...
Immagino che una soluzione a questo problema potrebbe essere simile a l'algoritmo di Dijkstra . Creare un diagramma di flusso per System1 e un altro per System2. Assegna a ciascuna decisione un peso in base a quanti percorsi contiene la decisione. Dai anche a ciascuna azione un peso. Il peso cumulativo di ciascun grafico può quindi essere utilizzato per confrontare i due processi.
-
Per il "processo tangibile": Se qualche ingegnere ha mappato un diagramma di flusso per "costruire un capannone", allora potremmo usare un tale algoritmo per ottenere un "peso totale" per il processo.
-
Per il "processo intangibile": Supponendo che l'intero programma possa essere mappato su una macchina a stati finiti, può essere descritto come un diagramma di flusso e assegnato anche un peso.
Quindi il processo di outhouse è ponderato a 50 e "il mio programma" è ponderato a 60. Quindi è complesso come costruire un capannone.