Első szoftvermérnök | IEEE Computer Society
A legtöbb mai szoftvermérnök számára meglepő lehet, hogy tudományáguk alapítója nő.
Tény, hogy Margaret Hamiltont, a neves matematikust és a számítástechnika úttörőjét tartják a szoftverfejlesztés kifejezés megalkotójának, miközben az MIT Instrumentation Laboratory szoftverfejlesztési részlegének vezetőjeként az Apollo-űrhajók irányító és navigációs rendszerét fejlesztette.
Hamilton elmagyarázza, miért választotta a szoftvermérnökség elnevezést:
“Azért küzdöttem, hogy a szoftver legitimitást kapjon, hogy – és az azt készítők – megkapják a nekik járó tiszteletet, és ezért kezdtem el használni a “szoftvermérnökség” kifejezést, hogy megkülönböztessem a hardvertől és másfajta mérnöki tevékenységektől, ugyanakkor a mérnöki tevékenység minden típusát az átfogó rendszertechnikai folyamat részeként kezeljem. Amikor először kezdtem használni ezt a kifejezést, elég mulatságosnak tartották. Hosszú ideig folyamatos vicc volt. Szerettek viccelődni a radikális ötleteimmel. A szoftver végül és szükségszerűen ugyanolyan tiszteletet kapott, mint bármely más tudományág” – mondta az El Pais című spanyol lapnak adott nemrégiben megjelent interjújában.
A közelmúltban Hamilton a svédországi Göteborgban megrendezett 40. Nemzetközi Szoftverfejlesztési Konferencia egyik kiemelt előadója volt, ahol május 31-én előadást tartott “A nyelv mint szoftvermérnök.”
Lásd az IEEE Computer Society konferenciáinak teljes naptárát
A kezdeti időkben Hamilton szerint senki sem tudta igazán, mit csinál. A szoftver egy vadon volt. Azt akarta, hogy ugyanúgy tiszteljék, mint a mérnöki munka bármely más területét.
“Nem létezett a szoftvermérnöki pálya” – mondta Hamilton – “Magadra voltál utalva. A tudás, vagy annak hiánya, személyről személyre szállt.”
Míg kezdetben a szoftver nem volt fontos része az Apollo-programnak, 1965-re – amikor Hamilton a fedélzetre került – világossá vált, hogy a szoftver szerves része lesz az ember Holdra juttatásának.
“A rendszerszimulációk hardveres és digitális szimulációkat tartalmaztak az Apollo-küldetés minden aspektusáról, beleértve az ember a hurokban szimulációkat is, amelyekkel megbizonyosodhattunk arról, hogy a teljes küldetés az elejétől a végéig pontosan az elvárásoknak megfelelően viselkedik” – mondta Hamilton.
A kezdetekben a NASA szabad kezet adott Hamiltonnak és csapatának. Szabadon, akadálytalanul fejleszthették a szoftverprogramjaikat. De aztán a dolgok megváltoztak.
Kíván még több technológiai hírt? Iratkozzon fel a ComputingEdge hírlevélre még ma!
“Minden egyes új releváns felfedezéssel együtt fejlesztettük a ‘szoftverfejlesztés’ szabályait” – mondta Hamilton – “míg a NASA felsővezetői szabályai a teljes szabadságtól a bürokratikus túlkapásokig terjedtek”. (Egyszer megkérdezték tőle, hogyan tudják a kutatók legyőzni az ilyen fojtogató bürokráciát. Hamilton azt mondta: “Erre nincs válaszom.”)
De Hamilton keményebb volt önmagával, mint bármelyik bürokrata lehetett volna.
“Az űrmisszió szoftverét emberre kellett szabni. Nemcsak működnie kellett, hanem elsőre működnie is. Nemcsak magának a szoftvernek kellett rendkívül megbízhatónak lennie, hanem képesnek kellett lennie a hibák valós idejű felismerésére és helyreállítására is. A nyelvek a legfinomabb hibák elkövetésére is bíztattak bennünket. Magunkra voltunk utalva, hogy milyen szabályokat találjunk ki a szoftverépítésre. Amit a hibákból tanultunk, tele volt meglepetésekkel” – mondta Hamilton.
Olvassa el a “The Epic Journey of Women in Computing” című cikkünket: Advances, Setbacks, and an Uncertain Future” című, díjra esélyes cikkünket
A buzgósága kifizetődött.
Röviddel azelőtt, hogy az Apollo-11 leszállt volna a Holdra, a szoftverprogram felülírta a normál műveleteket, hogy tudassa az űrhajósokkal, valami nincs rendben.
A problémák akkor kezdődtek, amikor a számítógépet túlterhelték a randevúradar és a leszállórendszer parancsai, ami több feldolgozási teljesítményt igényelt, mint amennyit a számítógép kezelni tudott. Mivel a radar 13%-on, a leszállórendszer pedig 90%-on működött, valamit meg kellett adni. Szerencsére Hamilton úgy programozta a számítógépet, hogy a feladatokat fontosság és nem sorrend szerint rangsorolja. Amikor a prioritás kijelzői az űrhajósok elé állították a go/no-go döntést – leszállni vagy nem leszállni a Holdra – az űrhajósok azt mondták: “Go.”
A többi már történelem.
Hamilton tovább dolgozott a NASA fennmaradó Apollo-misszióin, valamint a SkyLabon, Amerika első űrállomásán. Szigorúan specifikált tervezési módszerei ma már számos modern szoftvermérnöki technika alapjává váltak.
A NASA-nál töltött kezdeti napjaitól a szoftvermérnök-legendaként és világsztárként való jelenlegi rangjáig Margaret Hamilton segített előkészíteni az utat egy olyan iparág számára – amely ma már jóval több mint egy billió dollárt ér -, amely örökre megváltoztatta a világot.
Később megkapta a NASA kivételes űrtevékenységéért járó díját (2003) és Barack Obama elnöki szabadságérmét (2016).
A fenti videó 1 perc 20 másodpercénél Obama elnök ismerteti Hamilton hozzájárulását az Apollo-programhoz és a technológia világához.
Highlights of Margaret Hamilton at ICSE 2018
Margaret Hamilton a svédországi Göteborgban megrendezett 40. Nemzetközi Szoftvertechnikai Konferencián tart előadást.
Hamilton a 40. Nemzetközi Szoftvertechnikai Konferencia színpadán.
Kíván még több technológiai hírt? Iratkozzon fel a ComputingEdge hírlevélre még ma!
Hamilton válaszol a kérdésekre a Q&A során. Az egyik résztvevő megkérdezte Hamiltont, hogy mit tanácsolna a kutatóknak a bürokrácia leküzdésére, mire ő vigyorogva válaszolt: “Erre nincs válaszom.”
Nenad Medvidovic, a konferencia egyik szervezője, a Dél-Kaliforniai Egyetem informatika professzora, előadása végén egy zacskó svéd csokoládét ad Hamiltonnak.
Margaret Hamilton kutatásai a Computer Society Digital Libraryben: Universal Systems Language: Lessons Learned from Apollo