SlideShare a Scribd company logo
1 of 13
Challenge to Endeavour Discovery of Atlantis in Columbia
On hardware and software used in NASA Space Shuttle Program
HP Service Virtualization, Prague, September 23rd 2015, Martin Dvorak
Change of the motivation, value and complexity
Why?
• NASA survival and funding
• Space Task Group
• 1969: Space Transportation System Program (STS)
– Permanent space station: 6 > 120 men at the top of LEO
– LEO shuttle
– Inter orbit space tug
– LEO to solar system NERVA engine shuttle
• 1972: Space Shuttle Program
– STS program de-scope and cost reduction
– NASA & DoD
– Reusability, cost, … and much more promises
– Use cases for the shuttle
James Fletcher & Richard Nixon
Space Shuttle Program approval
1972
Shuttle concepts - early 1970s
VP Spiro Agnew
Space Task Group
1969
1972 - 2011 (+ DoD)
Space Shuttle Program
• Space shuttle purpose
– LEO van (satellites, telescopes, Earth atmosphere research, …)
– Hubble (559km): service missions (STS-31, STS-61, STS-125, …)
• Space shuttle = orbiter + external tank + solid rocket boosters
– 7 astronauts, 1-2 week missions
– 135* missions (1981 - 2011)
– 2.000t full w/ 32t payload capacity to LEO
• Orbiter
– 4-6 millions parts; 90 days check
– $1.700.000.000 base price + $450.000.000/mission
– 5 orbiters: Atlantis, Challenger, Columbia, Discovery, Endeavour
• Enterprise prototype
GPCs redundancy, IOPs, Data Buses (24) and MMUs > engines, boosters, tank, …
Onboard Hardware
B. J. Thomas
Manager Apollo/Saturn and
Shuttle HW
IBM
Lynn Killingbeck
Senior System Analyst
(HW redundancy)
IBM
GPC = CPU + IOP
Hardware
General Purpose Computer
5x GPC + 2x MMU located below the cockpit
Main engine controller
From AGC/PGNCS to GPC
Hardware
• IBM AP-101
– IBM mainframe architecture w/ unique IOP & bus system
– 2x8 32b registers, 154 instructions 550W, 29kg, MTBS 10.000h
– US Army: B-52, B-1B (8 units), F-15 … (JOVIAL/Ada)
– Advanced self HW/SW test
• Integrity: 95% of HW failures detected; 5% of SW failures via redundancy
– No HDD - tape cartridges instead (MMU) as SW didn’t fit
• GPCs for the shuttle: IBM AP-101B/S (IOP+bus)
– 1st generation (1981-1989): 424kB of magnetic core
memory (Apollo AGC), 400.000 instructions/s
– 2nd generation (1990-2011): 1MB, 1.200.000
instructions/s (3x space & time); semiconductor
memory w/ backup battery
• Onboard: 5x GPC = 4x PASS @ lockstep + 1x BFS
IBM AP-101B 1st … generationIBM AP-101S … 2nd generation
Core memory page Semiconductor memory board
RAM
Software: Space Shuttle Mission Sequence
SW driven mission sequence
PASS, HAL/S and OPS
Onboard Software
• PASS: Primary Avionics Software System
– System Software
• Flight Computer OS (FCOS) w/ redundancy ctrl
• UI
• System Control Programs
– Application Software
• Guidance & Navigation & Control
• (Orbit) Systems Management
• Payload & Checkout
• PASS Functions ~ Mission Sequence
– Pre-flight > Ascent > On-orbit > Descent
• PASS Development
– 420.000 lines in HAL/S (IBM Federal Systems…)
– 700kB (didn’t fit to GPC RAM > split to OPS)
• HAL/S (High-order Assembly Language/Shuttle)
– Intermetrics: language (spec) and compiler
• Apollo veterans + Arra Avakian (linker, HP OpenView)
– Reliability + real-time environments support
– Free form language: modules, functions, vector arithmetic,
multilines, …
• Operation Sequences (OPS)
– OPSs implement PASS functions
– OPS = SPECs (ctrl by human) + DISPs (UI)
– OPS code loaded from MMU (data kept: vectors, …)
OPS overview: mission sequence like structure
Reliability via Redundancy and Quality
Software: Redundancy
• Hardware/Software redundancy (deployment)
• PASS running on 4 GPCs in lockstep
– On PASS GPC inconsistency/failure: GPCs vote to deselect failed one
– FCOS driven redundancy scheme solved by
NASA/Rockwell/IBM in 1975
– Lockstep synced GPCs every 3-4ms on I/Os
– OS redesigned to priority driven two level (40ms & 960ms) task
scheduler
- remind Margaret Hamilton’s PGNCS software and Moon
landing overload
– On PASS GPCs total failure BFC takes control
• Backup Flight Computer runs independently w/ different SW
• Never used
Annunciator (warning panel) Display Unit
Process and statistical analysis driven software development
Software: Development & Quality
• PASS development
– Started ’74 (Apollo + new hires), 1st flight in ’81, released every 6 - 9 months
– 2.000 requirements
– 420.000 lines of code
• … and 1.400.000 lines of code to build/test/develop/simulate/configure
– 275 people (‘95)
• Strategy to achieve high quality
– Process
• manage+control+measure+analyze software via (meta)data collected to
perform (statistical) analysis (30+ years of statistics, process
improvements, experience and lessons learned… 25 year old bugs ;)
– Resources
• enough people - highly skilled peers cooperate on small portion of code
• enough time
• infrequent/tiny changes
• heavy weight (7 level) testing
• relatively small amount of code in contrast to commercial avionics SW
James Orr
Chief Engineer
(PASS)
United Space Alliance
Tony Macina
Manager Flight Operations
(Test Team)
IBM
Small things make huge difference
Lessons Learned
• Quality (Meta)data Creation
– Commit messages, bug tracking system descriptions, review reports, …
– Analytics, metrics, statistics, …
• Incremental Process Improvement
– Chronicle of systematic incremental improvements w/ analytics
– Defect elimination process (+ analogous process improvement)
• Core Features Investment
– Key parts/components of software to be built according to well known quality
principles w/ enough resources
– People, time, reviews, changes, testing, code…
Anyone who sits on top of the largest hydrogen-oxygen fueled system
in the world; knowing they're going to light the bottom — and doesn't
get a little worried — does not fully understand the situation.
— John Young, after making the first Space Shuttle flight.

More Related Content

What's hot (6)

Real-Time Satellite Tracking and Orbit Prediction with GPREDICT
Real-Time Satellite Tracking and Orbit Prediction with GPREDICTReal-Time Satellite Tracking and Orbit Prediction with GPREDICT
Real-Time Satellite Tracking and Orbit Prediction with GPREDICT
 
The Rise of Small Satellites
The Rise of Small SatellitesThe Rise of Small Satellites
The Rise of Small Satellites
 
Bruce Damer's presentation of Digital Spaces, an open source 3D simulation pl...
Bruce Damer's presentation of Digital Spaces, an open source 3D simulation pl...Bruce Damer's presentation of Digital Spaces, an open source 3D simulation pl...
Bruce Damer's presentation of Digital Spaces, an open source 3D simulation pl...
 
Gps satellite tracking
Gps satellite trackingGps satellite tracking
Gps satellite tracking
 
Geo_DC Meetup talk: Mapping a marathon
Geo_DC Meetup talk: Mapping a marathonGeo_DC Meetup talk: Mapping a marathon
Geo_DC Meetup talk: Mapping a marathon
 
Gpu implementation of satellite image filtering
Gpu implementation of satellite image filteringGpu implementation of satellite image filtering
Gpu implementation of satellite image filtering
 

Viewers also liked

Dvorak.dan
Dvorak.danDvorak.dan
Dvorak.dan
NASAPMC
 
Crumbley.tim
Crumbley.timCrumbley.tim
Crumbley.tim
NASAPMC
 
Nasa Space Shuttle Challenger disaster: Remembering the tragedy on its 30th a...
Nasa Space Shuttle Challenger disaster: Remembering the tragedy on its 30th a...Nasa Space Shuttle Challenger disaster: Remembering the tragedy on its 30th a...
Nasa Space Shuttle Challenger disaster: Remembering the tragedy on its 30th a...
guimera
 

Viewers also liked (17)

Assessment vs evaluation
Assessment vs evaluationAssessment vs evaluation
Assessment vs evaluation
 
Dvorak.dan
Dvorak.danDvorak.dan
Dvorak.dan
 
Image Processing and Cartography with the NASA Vision Workbench
Image Processing and Cartography with the NASA Vision WorkbenchImage Processing and Cartography with the NASA Vision Workbench
Image Processing and Cartography with the NASA Vision Workbench
 
New Technologies
New TechnologiesNew Technologies
New Technologies
 
NASA Spinoff 2012 (PT)
NASA Spinoff 2012 (PT)NASA Spinoff 2012 (PT)
NASA Spinoff 2012 (PT)
 
NASA Spinoff 2012
NASA Spinoff 2012NASA Spinoff 2012
NASA Spinoff 2012
 
Investments in the Future: NASA's Technology Programs
Investments in the Future: NASA's Technology ProgramsInvestments in the Future: NASA's Technology Programs
Investments in the Future: NASA's Technology Programs
 
NASA Spinoff 2010 - Presentation
NASA Spinoff 2010 - PresentationNASA Spinoff 2010 - Presentation
NASA Spinoff 2010 - Presentation
 
NASA Spinoff 2015 Presentation
NASA Spinoff 2015 PresentationNASA Spinoff 2015 Presentation
NASA Spinoff 2015 Presentation
 
學校現況與教師甄試
學校現況與教師甄試學校現況與教師甄試
學校現況與教師甄試
 
User Centered Agile Development at NASA - One Groups Path to Better Software
User Centered Agile Development at NASA - One Groups Path to Better SoftwareUser Centered Agile Development at NASA - One Groups Path to Better Software
User Centered Agile Development at NASA - One Groups Path to Better Software
 
Agile Leadership – Is a Servant Leader always the Right Approach?
Agile Leadership – Is a Servant Leader always the Right Approach?Agile Leadership – Is a Servant Leader always the Right Approach?
Agile Leadership – Is a Servant Leader always the Right Approach?
 
Thirty months of microservices. Stairway to heaven or highway to hell
Thirty months of microservices. Stairway to heaven or highway to hellThirty months of microservices. Stairway to heaven or highway to hell
Thirty months of microservices. Stairway to heaven or highway to hell
 
Building Better Software Faster
Building Better Software FasterBuilding Better Software Faster
Building Better Software Faster
 
Crumbley.tim
Crumbley.timCrumbley.tim
Crumbley.tim
 
2011 NASA Open Source Summit - Terry Fong
2011 NASA Open Source Summit - Terry Fong2011 NASA Open Source Summit - Terry Fong
2011 NASA Open Source Summit - Terry Fong
 
Nasa Space Shuttle Challenger disaster: Remembering the tragedy on its 30th a...
Nasa Space Shuttle Challenger disaster: Remembering the tragedy on its 30th a...Nasa Space Shuttle Challenger disaster: Remembering the tragedy on its 30th a...
Nasa Space Shuttle Challenger disaster: Remembering the tragedy on its 30th a...
 

Similar to On NASA Space Shuttle Program Hardware and Software

Mitchell.michael
Mitchell.michaelMitchell.michael
Mitchell.michael
NASAPMC
 
K ingoldsby
K ingoldsbyK ingoldsby
K ingoldsby
NASAPMC
 
Big Data Everywhere Chicago: High Performance Computing - Contributions Towar...
Big Data Everywhere Chicago: High Performance Computing - Contributions Towar...Big Data Everywhere Chicago: High Performance Computing - Contributions Towar...
Big Data Everywhere Chicago: High Performance Computing - Contributions Towar...
BigDataEverywhere
 
Space Shuttle Flight Software (PASS) Loss Of Crew Errors J.K. Orr 2015-08-27
Space Shuttle Flight Software (PASS) Loss Of Crew Errors J.K. Orr  2015-08-27Space Shuttle Flight Software (PASS) Loss Of Crew Errors J.K. Orr  2015-08-27
Space Shuttle Flight Software (PASS) Loss Of Crew Errors J.K. Orr 2015-08-27
James Orr
 
Kurator: Towards Data Curation for Mere Mortals
Kurator: Towards Data Curation for Mere MortalsKurator: Towards Data Curation for Mere Mortals
Kurator: Towards Data Curation for Mere Mortals
Bertram Ludäscher
 
Barth simpkins
Barth simpkinsBarth simpkins
Barth simpkins
NASAPMC
 
Barth simpkins
Barth simpkinsBarth simpkins
Barth simpkins
NASAPMC
 
IGARSS 2011 - RCM, The Making of (AC) (Short).ppt
IGARSS 2011 - RCM, The Making of (AC) (Short).pptIGARSS 2011 - RCM, The Making of (AC) (Short).ppt
IGARSS 2011 - RCM, The Making of (AC) (Short).ppt
grssieee
 

Similar to On NASA Space Shuttle Program Hardware and Software (20)

Mitchell.michael
Mitchell.michaelMitchell.michael
Mitchell.michael
 
Multibeam Advisory Committee - 2016 UNOLS FIC Meeting
Multibeam Advisory Committee - 2016 UNOLS FIC MeetingMultibeam Advisory Committee - 2016 UNOLS FIC Meeting
Multibeam Advisory Committee - 2016 UNOLS FIC Meeting
 
Airport Taxi/Departure Simulation
Airport Taxi/Departure SimulationAirport Taxi/Departure Simulation
Airport Taxi/Departure Simulation
 
Srr Payload Team Consept 2
Srr Payload Team Consept 2Srr Payload Team Consept 2
Srr Payload Team Consept 2
 
Dynamic Schedule Management
Dynamic Schedule ManagementDynamic Schedule Management
Dynamic Schedule Management
 
K ingoldsby
K ingoldsbyK ingoldsby
K ingoldsby
 
Big Data Everywhere Chicago: High Performance Computing - Contributions Towar...
Big Data Everywhere Chicago: High Performance Computing - Contributions Towar...Big Data Everywhere Chicago: High Performance Computing - Contributions Towar...
Big Data Everywhere Chicago: High Performance Computing - Contributions Towar...
 
Barcelona Supercomputing Center, Generador de Riqueza
Barcelona Supercomputing Center, Generador de RiquezaBarcelona Supercomputing Center, Generador de Riqueza
Barcelona Supercomputing Center, Generador de Riqueza
 
Priority Inversion on Mars
Priority Inversion on MarsPriority Inversion on Mars
Priority Inversion on Mars
 
Overview of NASA JSC White Sands Test Facility (WSTF)
Overview of NASA JSC White Sands Test Facility (WSTF)Overview of NASA JSC White Sands Test Facility (WSTF)
Overview of NASA JSC White Sands Test Facility (WSTF)
 
Portofolio Control Version SN
Portofolio Control Version SNPortofolio Control Version SN
Portofolio Control Version SN
 
Space Shuttle Flight Software (PASS) Loss Of Crew Errors J.K. Orr 2015-08-27
Space Shuttle Flight Software (PASS) Loss Of Crew Errors J.K. Orr  2015-08-27Space Shuttle Flight Software (PASS) Loss Of Crew Errors J.K. Orr  2015-08-27
Space Shuttle Flight Software (PASS) Loss Of Crew Errors J.K. Orr 2015-08-27
 
Kurator: Towards Data Curation for Mere Mortals
Kurator: Towards Data Curation for Mere MortalsKurator: Towards Data Curation for Mere Mortals
Kurator: Towards Data Curation for Mere Mortals
 
Barth simpkins
Barth simpkinsBarth simpkins
Barth simpkins
 
Barth simpkins
Barth simpkinsBarth simpkins
Barth simpkins
 
Strel streaming
Strel streamingStrel streaming
Strel streaming
 
Laforge nov99
Laforge nov99Laforge nov99
Laforge nov99
 
Embry Riddle Final
Embry Riddle FinalEmbry Riddle Final
Embry Riddle Final
 
UAVs and FME: Powering Your Drone and Its Data with FME
UAVs and FME: Powering Your Drone and Its Data with FMEUAVs and FME: Powering Your Drone and Its Data with FME
UAVs and FME: Powering Your Drone and Its Data with FME
 
IGARSS 2011 - RCM, The Making of (AC) (Short).ppt
IGARSS 2011 - RCM, The Making of (AC) (Short).pptIGARSS 2011 - RCM, The Making of (AC) (Short).ppt
IGARSS 2011 - RCM, The Making of (AC) (Short).ppt
 

Recently uploaded

Final DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manualFinal DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manual
BalamuruganV28
 
ALCOHOL PRODUCTION- Beer Brewing Process.pdf
ALCOHOL PRODUCTION- Beer Brewing Process.pdfALCOHOL PRODUCTION- Beer Brewing Process.pdf
ALCOHOL PRODUCTION- Beer Brewing Process.pdf
Madan Karki
 
Microkernel in Operating System | Operating System
Microkernel in Operating System | Operating SystemMicrokernel in Operating System | Operating System
Microkernel in Operating System | Operating System
Sampad Kar
 
Tembisa Central Terminating Pills +27838792658 PHOMOLONG Top Abortion Pills F...
Tembisa Central Terminating Pills +27838792658 PHOMOLONG Top Abortion Pills F...Tembisa Central Terminating Pills +27838792658 PHOMOLONG Top Abortion Pills F...
Tembisa Central Terminating Pills +27838792658 PHOMOLONG Top Abortion Pills F...
drjose256
 

Recently uploaded (20)

Fabrication Of Automatic Star Delta Starter Using Relay And GSM Module By Utk...
Fabrication Of Automatic Star Delta Starter Using Relay And GSM Module By Utk...Fabrication Of Automatic Star Delta Starter Using Relay And GSM Module By Utk...
Fabrication Of Automatic Star Delta Starter Using Relay And GSM Module By Utk...
 
Module-III Varried Flow.pptx GVF Definition, Water Surface Profile Dynamic Eq...
Module-III Varried Flow.pptx GVF Definition, Water Surface Profile Dynamic Eq...Module-III Varried Flow.pptx GVF Definition, Water Surface Profile Dynamic Eq...
Module-III Varried Flow.pptx GVF Definition, Water Surface Profile Dynamic Eq...
 
Final DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manualFinal DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manual
 
SLIDESHARE PPT-DECISION MAKING METHODS.pptx
SLIDESHARE PPT-DECISION MAKING METHODS.pptxSLIDESHARE PPT-DECISION MAKING METHODS.pptx
SLIDESHARE PPT-DECISION MAKING METHODS.pptx
 
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
 
Supermarket billing system project report..pdf
Supermarket billing system project report..pdfSupermarket billing system project report..pdf
Supermarket billing system project report..pdf
 
AI in Healthcare Innovative use cases and applications.pdf
AI in Healthcare Innovative use cases and applications.pdfAI in Healthcare Innovative use cases and applications.pdf
AI in Healthcare Innovative use cases and applications.pdf
 
Multivibrator and its types defination and usges.pptx
Multivibrator and its types defination and usges.pptxMultivibrator and its types defination and usges.pptx
Multivibrator and its types defination and usges.pptx
 
Electrical shop management system project report.pdf
Electrical shop management system project report.pdfElectrical shop management system project report.pdf
Electrical shop management system project report.pdf
 
Software Engineering - Modelling Concepts + Class Modelling + Building the An...
Software Engineering - Modelling Concepts + Class Modelling + Building the An...Software Engineering - Modelling Concepts + Class Modelling + Building the An...
Software Engineering - Modelling Concepts + Class Modelling + Building the An...
 
Online book store management system project.pdf
Online book store management system project.pdfOnline book store management system project.pdf
Online book store management system project.pdf
 
Operating System chapter 9 (Virtual Memory)
Operating System chapter 9 (Virtual Memory)Operating System chapter 9 (Virtual Memory)
Operating System chapter 9 (Virtual Memory)
 
Raashid final report on Embedded Systems
Raashid final report on Embedded SystemsRaashid final report on Embedded Systems
Raashid final report on Embedded Systems
 
ALCOHOL PRODUCTION- Beer Brewing Process.pdf
ALCOHOL PRODUCTION- Beer Brewing Process.pdfALCOHOL PRODUCTION- Beer Brewing Process.pdf
ALCOHOL PRODUCTION- Beer Brewing Process.pdf
 
Lesson no16 application of Induction Generator in Wind.ppsx
Lesson no16 application of Induction Generator in Wind.ppsxLesson no16 application of Induction Generator in Wind.ppsx
Lesson no16 application of Induction Generator in Wind.ppsx
 
Insurance management system project report.pdf
Insurance management system project report.pdfInsurance management system project report.pdf
Insurance management system project report.pdf
 
Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2
 
Microkernel in Operating System | Operating System
Microkernel in Operating System | Operating SystemMicrokernel in Operating System | Operating System
Microkernel in Operating System | Operating System
 
How to Design and spec harmonic filter.pdf
How to Design and spec harmonic filter.pdfHow to Design and spec harmonic filter.pdf
How to Design and spec harmonic filter.pdf
 
Tembisa Central Terminating Pills +27838792658 PHOMOLONG Top Abortion Pills F...
Tembisa Central Terminating Pills +27838792658 PHOMOLONG Top Abortion Pills F...Tembisa Central Terminating Pills +27838792658 PHOMOLONG Top Abortion Pills F...
Tembisa Central Terminating Pills +27838792658 PHOMOLONG Top Abortion Pills F...
 

On NASA Space Shuttle Program Hardware and Software

  • 1. Challenge to Endeavour Discovery of Atlantis in Columbia On hardware and software used in NASA Space Shuttle Program HP Service Virtualization, Prague, September 23rd 2015, Martin Dvorak
  • 2. Change of the motivation, value and complexity Why? • NASA survival and funding • Space Task Group • 1969: Space Transportation System Program (STS) – Permanent space station: 6 > 120 men at the top of LEO – LEO shuttle – Inter orbit space tug – LEO to solar system NERVA engine shuttle • 1972: Space Shuttle Program – STS program de-scope and cost reduction – NASA & DoD – Reusability, cost, … and much more promises – Use cases for the shuttle James Fletcher & Richard Nixon Space Shuttle Program approval 1972 Shuttle concepts - early 1970s VP Spiro Agnew Space Task Group 1969
  • 3. 1972 - 2011 (+ DoD) Space Shuttle Program • Space shuttle purpose – LEO van (satellites, telescopes, Earth atmosphere research, …) – Hubble (559km): service missions (STS-31, STS-61, STS-125, …) • Space shuttle = orbiter + external tank + solid rocket boosters – 7 astronauts, 1-2 week missions – 135* missions (1981 - 2011) – 2.000t full w/ 32t payload capacity to LEO • Orbiter – 4-6 millions parts; 90 days check – $1.700.000.000 base price + $450.000.000/mission – 5 orbiters: Atlantis, Challenger, Columbia, Discovery, Endeavour • Enterprise prototype
  • 4. GPCs redundancy, IOPs, Data Buses (24) and MMUs > engines, boosters, tank, … Onboard Hardware B. J. Thomas Manager Apollo/Saturn and Shuttle HW IBM Lynn Killingbeck Senior System Analyst (HW redundancy) IBM
  • 5. GPC = CPU + IOP Hardware General Purpose Computer 5x GPC + 2x MMU located below the cockpit Main engine controller
  • 6. From AGC/PGNCS to GPC Hardware • IBM AP-101 – IBM mainframe architecture w/ unique IOP & bus system – 2x8 32b registers, 154 instructions 550W, 29kg, MTBS 10.000h – US Army: B-52, B-1B (8 units), F-15 … (JOVIAL/Ada) – Advanced self HW/SW test • Integrity: 95% of HW failures detected; 5% of SW failures via redundancy – No HDD - tape cartridges instead (MMU) as SW didn’t fit • GPCs for the shuttle: IBM AP-101B/S (IOP+bus) – 1st generation (1981-1989): 424kB of magnetic core memory (Apollo AGC), 400.000 instructions/s – 2nd generation (1990-2011): 1MB, 1.200.000 instructions/s (3x space & time); semiconductor memory w/ backup battery • Onboard: 5x GPC = 4x PASS @ lockstep + 1x BFS IBM AP-101B 1st … generationIBM AP-101S … 2nd generation Core memory page Semiconductor memory board RAM
  • 7. Software: Space Shuttle Mission Sequence SW driven mission sequence
  • 8. PASS, HAL/S and OPS Onboard Software • PASS: Primary Avionics Software System – System Software • Flight Computer OS (FCOS) w/ redundancy ctrl • UI • System Control Programs – Application Software • Guidance & Navigation & Control • (Orbit) Systems Management • Payload & Checkout • PASS Functions ~ Mission Sequence – Pre-flight > Ascent > On-orbit > Descent • PASS Development – 420.000 lines in HAL/S (IBM Federal Systems…) – 700kB (didn’t fit to GPC RAM > split to OPS) • HAL/S (High-order Assembly Language/Shuttle) – Intermetrics: language (spec) and compiler • Apollo veterans + Arra Avakian (linker, HP OpenView) – Reliability + real-time environments support – Free form language: modules, functions, vector arithmetic, multilines, … • Operation Sequences (OPS) – OPSs implement PASS functions – OPS = SPECs (ctrl by human) + DISPs (UI) – OPS code loaded from MMU (data kept: vectors, …)
  • 9. OPS overview: mission sequence like structure
  • 10. Reliability via Redundancy and Quality Software: Redundancy • Hardware/Software redundancy (deployment) • PASS running on 4 GPCs in lockstep – On PASS GPC inconsistency/failure: GPCs vote to deselect failed one – FCOS driven redundancy scheme solved by NASA/Rockwell/IBM in 1975 – Lockstep synced GPCs every 3-4ms on I/Os – OS redesigned to priority driven two level (40ms & 960ms) task scheduler - remind Margaret Hamilton’s PGNCS software and Moon landing overload – On PASS GPCs total failure BFC takes control • Backup Flight Computer runs independently w/ different SW • Never used Annunciator (warning panel) Display Unit
  • 11. Process and statistical analysis driven software development Software: Development & Quality • PASS development – Started ’74 (Apollo + new hires), 1st flight in ’81, released every 6 - 9 months – 2.000 requirements – 420.000 lines of code • … and 1.400.000 lines of code to build/test/develop/simulate/configure – 275 people (‘95) • Strategy to achieve high quality – Process • manage+control+measure+analyze software via (meta)data collected to perform (statistical) analysis (30+ years of statistics, process improvements, experience and lessons learned… 25 year old bugs ;) – Resources • enough people - highly skilled peers cooperate on small portion of code • enough time • infrequent/tiny changes • heavy weight (7 level) testing • relatively small amount of code in contrast to commercial avionics SW James Orr Chief Engineer (PASS) United Space Alliance Tony Macina Manager Flight Operations (Test Team) IBM
  • 12. Small things make huge difference Lessons Learned • Quality (Meta)data Creation – Commit messages, bug tracking system descriptions, review reports, … – Analytics, metrics, statistics, … • Incremental Process Improvement – Chronicle of systematic incremental improvements w/ analytics – Defect elimination process (+ analogous process improvement) • Core Features Investment – Key parts/components of software to be built according to well known quality principles w/ enough resources – People, time, reviews, changes, testing, code…
  • 13. Anyone who sits on top of the largest hydrogen-oxygen fueled system in the world; knowing they're going to light the bottom — and doesn't get a little worried — does not fully understand the situation. — John Young, after making the first Space Shuttle flight.