Primo ingegnere del software | IEEE Computer Society
Potrebbe essere una sorpresa per la maggior parte degli ingegneri del software di oggi sapere che il fondatore della loro disciplina è una donna.
Infatti, Margaret Hamilton, rinomata matematica e pioniera dell’informatica, ha il merito di aver coniato il termine ingegneria del software mentre sviluppava il sistema di guida e navigazione per il veicolo spaziale Apollo come capo della Software Engineering Division del MIT Instrumentation Laboratory.
Hamilton spiega perché ha scelto di chiamarla ingegneria del software:
“Ho lottato per dare legittimità al software in modo che esso – e coloro che lo costruiscono – ricevessero il dovuto rispetto e così ho iniziato a usare il termine ‘ingegneria del software’ per distinguerlo dall’hardware e da altri tipi di ingegneria, pur trattando ogni tipo di ingegneria come parte del processo generale di ingegneria dei sistemi. Quando ho iniziato ad usare questa frase, era considerata abbastanza divertente. È stato uno scherzo continuo per molto tempo. Gli piaceva prendermi in giro per le mie idee radicali. Il software alla fine e necessariamente ha guadagnato lo stesso rispetto di qualsiasi altra disciplina”, ha detto in una recente intervista con il giornale spagnolo El Pais.
Recentemente, Hamilton è stata una relatrice principale alla 40a Conferenza Internazionale sull’Ingegneria del Software tenutasi a Goteborg, Svezia, dove il 31 maggio ha tenuto il suo discorso “Il linguaggio come ingegnere del software.”
Vedi il calendario completo delle conferenze della IEEE Computer Society
Nei primi tempi, secondo Hamilton, nessuno sapeva davvero cosa stava facendo. Il software era un deserto. Voleva che fosse rispettato come qualsiasi altro regno dell’ingegneria.
“Non c’era un campo per l’ingegneria del software”, ha detto Hamilton, “Eri da solo. La conoscenza, o la sua mancanza, veniva trasmessa da persona a persona”
Mentre il software non era una parte importante del programma Apollo all’inizio, divenne chiaro nel 1965, quando Hamilton salì a bordo, che il software sarebbe stato parte integrante nel portare un uomo sulla luna.
“Le simulazioni dei sistemi erano un mix di hardware e simulazioni digitali di tutti gli aspetti di una missione Apollo, incluse le simulazioni dell’uomo a bordo, per assicurarsi che una missione completa dall’inizio alla fine si comportasse esattamente come previsto”, ha detto Hamilton.
All’inizio, la NASA ha dato carta bianca a Hamilton e al suo team. Erano liberi di sviluppare i loro programmi software senza ostacoli. Ma poi le cose sono cambiate.
Vuoi altre notizie tecnologiche? Iscriviti oggi alla newsletter di ComputingEdge!
“Abbiamo evoluto le nostre regole di ‘ingegneria del software’ con ogni nuova scoperta rilevante”, ha detto Hamilton, “mentre le regole del top management della NASA andavano dalla completa libertà all’eccesso di burocrazia”. (Una volta le fu chiesto come i ricercatori potessero superare una burocrazia così soffocante. Hamilton disse: “Non ho una risposta a questo”)
Ma Hamilton era più severa con se stessa di quanto qualsiasi burocrate potesse essere.
“Il software della missione spaziale doveva essere valutato dall’uomo. Non solo doveva funzionare, ma doveva funzionare la prima volta. Non solo il software stesso doveva essere ultra-affidabile, ma doveva essere in grado di rilevare e recuperare gli errori in tempo reale. Le nostre lingue ci sfidavano a fare gli errori più sottili. Eravamo da soli a trovare delle regole per costruire il software. Quello che abbiamo imparato dagli errori era pieno di sorprese”, ha detto Hamilton.
Leggi il nostro articolo su “Il viaggio epico delle donne nell’informatica: Advances, Setbacks, and an Uncertain Future,” finalista per un premio
Il suo zelo ha dato i suoi frutti.
Poco prima che l’Apollo 11 stesse per atterrare sulla luna, il programma software scavalcò le normali operazioni per far sapere agli astronauti che qualcosa non andava.
I problemi iniziarono quando il computer fu sovraccaricato di comandi dal radar di rendez-vous e dal sistema di atterraggio, richiedendo più potenza di elaborazione di quanto il computer potesse gestire. Con il radar che funzionava al 13% e il sistema di atterraggio al 90%, qualcosa doveva cedere. Fortunatamente, Hamilton aveva programmato il computer per dare priorità ai compiti in base all’importanza e non alla sequenza. Quando i display di priorità posero agli astronauti una decisione go/no-go – atterrare o non atterrare sulla luna – gli astronauti dissero “Go”.
E il resto è storia.
Hamilton ha continuato a lavorare sulle restanti missioni Apollo della NASA e sullo SkyLab, la prima stazione spaziale americana. I suoi metodi di progettazione rigorosamente specificati sono diventati il fondamento di molte tecniche moderne di ingegneria del software di oggi.
Dai suoi primi giorni con la NASA alla sua attuale posizione di leggenda e luminare dell’ingegneria del software, Margaret Hamilton ha contribuito a spianare la strada a un’industria – che oggi vale ben oltre un trilione di dollari – per cambiare il mondo per sempre.
In seguito ha ricevuto il premio NASA Exceptional Space Act (2003) e la Medaglia presidenziale della libertà da Barack Obama (2016).
Al segno di 1 minuto e 20 secondi nel video qui sopra, il presidente Obama descrive il contributo di Hamilton al programma Apollo e al mondo della tecnologia.
Highlights di Margaret Hamilton all’ICSE 2018
Margaret Hamilton tiene il suo discorso programmatico alla 40esima Conferenza Internazionale sull’Ingegneria del Software tenutasi a Göteborg, Svezia.
Hamilton sul palco della 40esima Conferenza Internazionale sull’Ingegneria del Software.
Vuoi altre notizie tech? Subscribe to ComputingEdge Newsletter Today!
Hamilton risponde alle domande durante il Q&A. Un partecipante ha chiesto alla Hamilton come consiglierebbe ai ricercatori di combattere la burocrazia, al che lei ha risposto con un sorriso, “Non ho una risposta a questo.”
Nenad Medvidovic, un organizzatore della conferenza e professore di informatica alla University of Southern California, dà alla Hamilton un sacchetto di cioccolatini svedesi alla conclusione del suo discorso.
Ricerca di Margaret Hamilton nella Computer Society Digital Library: Linguaggio dei sistemi universali: Lezioni apprese da Apollo
.