MODULE 5 · SYLLABUS 5.13 · LEVEL 2

Chapter 10: Software Management Control

Why aircraft software is controlled as strictly as any structural part: how it is approved (DO-178C / ED-12C and the software levels A–E), part numbers and configuration control, field-loadable, option-selectable and user-modifiable software, databases, the loading procedure — and the catastrophic effects of unapproved changes.

8
Explainer slides
~30
Minutes reading
24
Flashcards
21
Quiz questions
Home › Courses › Module 5 › Chapter 10
🎬 Explainer video

Watch the 8-slide walkthrough

Narrated by your browser's text-to-speech voice — pick a voice and speed in the player bar. Press space to play/pause, arrow keys to change slide. No sound? It still plays with captions.

Read the full transcript
🎯 What you'll learn
  • Why software failures are different — design errors, not wear
  • How airborne software is approved: type design, DO-178C / ED-12C, software levels A to E
  • Software part numbers, hardware/software compatibility and configuration records
  • Field-loadable, option-selectable and user-modifiable software; navigation and other databases
  • Data loading (ARINC 615, 615A, 665) and the maintenance procedure
  • Restrictions, airworthiness requirements and the catastrophic effects of unapproved changes
📖 The lesson

Why software needs special control

Software now flies, navigates and controls the engines. A fly-by-wire computer, a FADEC or a flight management computer is only as safe as the program inside it. Software also fails differently from hardware:

  • It does not wear out. Software failures are design errors that were there from the start, waiting for the conditions that trigger them. Every copy contains the same error, so redundant computers running the same program can all fail together.
  • It cannot be fully tested. Even a modest program has more paths and input combinations than could ever be tried, so testing alone cannot show it is correct.
  • It is easy to change — a few seconds with a data loader — and a change cannot be seen by inspection.

For these reasons airborne software is part of the type design of the aircraft or equipment. It is approved with it, identified by part number, and changed only through the same approval process as any other design change.

How airborne software is approved

  • Software is approved as part of a type certificate, supplemental type certificate or ETSO authorisation. The authorities (EASA, the FAA and DGCA) accept RTCA DO-178C / EUROCAE ED-12C, "Software Considerations in Airborne Systems and Equipment Certification", as the means of compliance (EASA AMC 20-115D, FAA AC 20-115D).
  • DO-178C does not specify a programming language or method; it sets objectives for planning, requirements, design, coding, verification, configuration management and quality assurance, and requires evidence that each objective has been met.
  • Complex electronic hardware (programmable logic) is assured to DO-254 / ED-80, and aeronautical data such as navigation databases to DO-200.
Software levels (development assurance levels) — DO-178C / ED-12C Level Failure condition Effect if the software misbehaves Objectives Target A Catastrophic loss of the aircraft, multiple fatalities 71 < 10⁻⁹ /h B Hazardous large reduction in safety margins, serious injury 69 < 10⁻⁷ /h C Major significant reduction in safety margins 62 < 10⁻⁵ /h D Minor slight reduction in safety margins 26 — E No safety effect no effect on safety or crew workload 0 — level is set by the system safety assessment (CS-25.1309) — the worse the effect, the more rigorous the process
Software levels. Software cannot be proved fault-free by testing alone, so the process that produces it is controlled. The more serious the effect of a failure, the higher the level and the more objectives must be met — 71 for level A (for example fly-by-wire or FADEC software) down to none for level E.
  • The software level (development assurance level, DAL) is set by the worst effect a software error could have, found by the system safety assessment. Level A covers software whose failure could be catastrophic; level E software has no safety effect.
  • Higher levels need more objectives and more of them verified independently — by someone other than the developer.

Part numbers and configuration

LRU identification MFR AVIONICS CO. HW P/N 822-1234-002 SW P/N 831-5678-114 (label) S/N 7741 MOD 1 2 3 ■ ■ 6 hardware and software part numbers are separate — loaded software may differ from the label Ident page — what is actually loaded IDENT MODEL B7X7-300 OP PROGRAM PS4081234-07 NAV DATA AIRAC 2610 ACTIVE 08OCT–04NOV INACTIVE 05NOV–02DEC compare with the approved configuration before release
Knowing what is installed. The nameplate gives the hardware part number and modification status; loadable software has its own part number, shown on a label and — more reliably — on the unit's ident or configuration page. The FMS ident page also shows which navigation database cycle is active.
  • Every approved software version has its own part number, separate from the hardware part number of the LRU. Many LRUs show their hardware part number and modification status on the nameplate, and their loadable software part number on a separate label and on an ident page displayed through the MCDU or maintenance terminal.
  • Only certain hardware/software combinations are approved. The illustrated parts catalogue (IPC), service bulletins and the AMM define which software may be installed in which hardware on which aircraft, and any intermix rules — for example whether the left and right engine controls or flight management computers may run different versions.
  • The operator's continuing-airworthiness management records the configuration of every aircraft. After any software change, the records must match exactly what is installed.

Kinds of software and data

TypeWhat it isWho may change it
Field-loadable software (FLS)Software that can be loaded into an LRU while it is installed on the aircraft, using a data loaderMaintenance staff, only with the approved part number and per approved data
Option-selectable software (OSS)Approved options built into the software, selected by program pins or a configuration file (for example engine thrust rating or equipment fitted)Only the options approved for that aircraft
User-modifiable software (UMS)Parts of the software the approval lets the operator modify within defined limits, without re-certification — for example ACARS company message formats or condition-monitoring reportsThe operator, under its own controlled procedures, without affecting the certified functions
DatabasesNavigation database (updated every 28-day AIRAC cycle), terrain and obstacle databases, magnetic variation tables, airport maps, performance dataLoaded on schedule from approved data suppliers; the correct cycle must be active
Navigation database

The FMS holds two navigation database cycles: the active one and the next one, which becomes active on its effective date. Loading the wrong cycle, or flying with an expired database, can lead to wrong routes, procedures or approaches — and therefore to controlled flight into terrain. The FMS ident page shows the active cycle and its dates.

Loading software

Older: ARINC 615 portable data loader Portable data loader disks or memory card Target LRU front-panel or rack connector ARINC 429 one unit at a time, at the unit Newer: ARINC 615A over Ethernet Maintenance laptop or onboard data loader Network / switch Ethernet · AFDX FMC EEC DMC ADIRU many LRUs from one place, fast, with status reporting ARINC 665 load = header + data files + CRC the loadable software part number (LSAP) identifies exactly what is loaded
Data loading. Software is loaded into an LRU's flash memory on the aircraft. Older aircraft use a portable data loader (ARINC 615) plugged into each unit; newer ones load many units over the aircraft network from a maintenance laptop or onboard loader (ARINC 615A). ARINC 665 defines the load files, their part numbers and the integrity checks.
  1. Confirm that approved data (a service bulletin, engineering order or AMM task) calls for the change, and identify the exact software part number required.
  2. Use only media or files from an approved source, kept under control — write-protected, virus-checked, and today often distributed electronically with digital signatures.
  3. Load with the specified equipment — portable data loader (ARINC 615), onboard or laptop network loader (ARINC 615A) — following the AMM. Do not interrupt power during the load.
  4. Verify: the loader checks the files' integrity (CRC or digital signature); then confirm the loaded part number on the ident or configuration page and check any intermix requirement.
  5. Test as the AMM requires — BITE or an operational test.
  6. Record the change (old and new part numbers) in the aircraft records and issue the certificate of release to service.
Software configuration control on the aircraft Approved data SB, EO, IPC, AMM Exact part number from an approved source Load per AMM, data loader Verify integrity + ident page Test BITE / operational test Record & certify records, CRS the aircraft's recorded configuration must always match what is actually loaded
Configuration control. Software is changed only when approved data says so, using the exact part number specified. After loading, the result is verified, tested and recorded, so that the configuration records always describe exactly what is installed.

Restrictions and airworthiness requirements

  • Install only approved software, of the exact part number specified, from an approved source. Never load software that is merely "newer", from another aircraft, or from an unofficial copy.
  • Maintenance staff must not modify software, or use unapproved tools or laptops on aircraft networks.
  • Software loading is a maintenance task that must be performed and certified by authorised staff, and recorded like any part change.
  • Respect intermix rules between redundant units, and check that the hardware is compatible with the software.
  • Protect the integrity of software and data: controlled storage of media, access control to loaders and networks, and the newer information-security (cyber-security) requirements.

Possible catastrophic effects of unapproved changes

  • An unapproved or wrong version can disable or corrupt a function the crew depends on — engine control, flight controls, navigation, warnings — in ways that are not visible until the conditions arise in flight.
  • Mismatched versions in redundant computers can cause disagreements, nuisance disconnections or loss of both channels.
  • Wrong configuration or calibration data can make a correctly working program command the wrong thing. In 2015 an Airbus A400M crashed shortly after take-off on a test flight after engine-control calibration data had been inadvertently erased during software installation, so that three engines did not respond correctly to the throttle levers.
  • Latent design errors exist even in approved software: in 2015 the FAA required Boeing 787 generator control units to be powered down periodically, because an internal software counter would overflow after 248 days of continuous power and could cause loss of all AC electrical power. Strict configuration control is what allows such problems to be found and fixed across the whole fleet.
Remember

Software is a part: it has a part number, it must be approved for that aircraft, and changing it is a maintenance action that must be verified, tested, recorded and certified. "It loaded successfully" is not the same as "it is the approved configuration".

🧠 Mind map

See the whole chapter at a glance

🃏 Flashcards

Test your recall — tap a card to flip it

✅ Chapter quiz

21 exam-style questions

📚 Further reading

Free references

Chapter progress

Next chapter →