Nancy Leveson, in Communications of the ACM di giugno 2013, racconta la storia dello sviluppo software alla NASA, dal programma Gemini degli anni 1960-1966 al successivo programma Apollo, fino allo Shuttle.
Secondo Leveson, alla base dei successi del programma astronautico degli USA vi era un processo di sviluppo software che favoriva una qualità elevata, basato su alcuni punti validi ancora adesso: cultura professionale, pianificazione sistematica, specifiche dettagliate, miglioramento continuo, canali di comunicazione e controllo chiari, testing e revisioni del codice, governo efficace dei rapporti di outsourcing con le software house.
Purtroppo, sostiene l’autrice, queste lezioni vengono spesso dimenticate nella tendenza attuale a sviluppare software in modo indisciplinato: “Learning from the Past to Face the Risks of Today”