{"id":8969,"date":"2026-03-16T23:02:05","date_gmt":"2026-03-16T22:02:05","guid":{"rendered":"https:\/\/lorit-consultancy.com\/en\/?p=8969"},"modified":"2026-03-16T23:20:25","modified_gmt":"2026-03-16T22:20:25","slug":"development-assurance-in-aviation","status":"publish","type":"post","link":"https:\/\/lorit-consultancy.com\/en\/2026\/03\/development-assurance-in-aviation\/","title":{"rendered":"Beyond Hardware Faults: Traditional Safety Tools Don\u2019t Get Software"},"content":{"rendered":"<p>In safety, what worked for wires and circuits doesn\u2019t always work for lines of code &#8211; analyzing software is a whole different challenge compared to hardware or physical systems. Traditional methods like Functional Hazard Assessment (FHA), Failure Modes and Effects Analysis (FMEA), and Fault Tree Analysis (FTA) (for aviation purposes described and prescribed by <a class=\"_ymio1r31 _ypr0glyw _zcxs1o36 _mizu1v1w _1ah3dkaa _ra3xnqa1 _128mdkaa _1cvmnqa1 _4davt94y _4bfu1r31 _1hms8stv _ajmmnqa1 _vchhusvi _kqswh2mm _ect4ttxp _syaz13af _1a3b1r31 _4fpr8stv _5goinqa1 _f8pj13af _9oik1r31 _1bnxglyw _jf4cnqa1 _30l313af _1nrm1r31 _c2waglyw _1iohnqa1 _9h8h12zz _10531ra0 _1ien1ra0 _n0fx1ra0 _1vhv17z1\" title=\"https:\/\/lorit-consultancy.com\/de\/2025\/10\/arp4761a-aviation-safety-assessment\/\" href=\"https:\/\/lorit-consultancy.com\/de\/2025\/10\/arp4761a-aviation-safety-assessment\/\" data-renderer-mark=\"true\">ARP 4761<\/a>) have proven successful for spotting physical component failures. But when it comes to software, <span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\">it\u2019s<\/span><\/span> like trying to fix a broken code with a wrench- not the right fit for decoding the quirks and complexities of software behaviour.<\/p>\n<h2><strong data-renderer-mark=\"true\">Hardware vs Software Failure Characteristics<\/strong><\/h2>\n<p>Hardware tends to misbehave for the classic reasons: due to component degradation, environmental stress, manufacturing defects or just plain bad luck. <span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\">Examples include a<\/span><\/span> sensor that stops sending signals, a chip that overheats, or a wire that frays. Such failures are typically random in nature, but can be predicted with statistics \u2013 like reading the future through failure rates.<\/p>\n<p>Software, on the other hand, does not experience physical degradation. It executes exactly as specified by its code, which is both its strength and its weakness. When software \u201cfails,\u201d it\u2019s not random<span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\">,<\/span><\/span> it\u2019s because of <strong data-renderer-mark=\"true\">systematic faults<\/strong>, such as incorrect or incomplete requirements, design mistakes or implementation bugs, unexpected interactions between software components.<\/p>\n<p>Note that systematic faults are not exclusive to software; hardware can also suffer from design or manufacturing defects. In software, however, faults are inherently systematic.<\/p>\n<figure id=\"attachment_8972\" aria-describedby=\"caption-attachment-8972\" style=\"width: 668px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-8972\" src=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T122302.864-1024x512.jpeg\" alt=\"\" width=\"668\" height=\"334\" srcset=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T122302.864-1024x512.jpeg 1024w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T122302.864-1920x960.jpeg 1920w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T122302.864-768x384.jpeg 768w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T122302.864-1536x768.jpeg 1536w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T122302.864-2048x1024.jpeg 2048w\" sizes=\"auto, (max-width: 668px) 100vw, 668px\" \/><figcaption id=\"caption-attachment-8972\" class=\"wp-caption-text\">Source: Adobe Stock<\/figcaption><\/figure>\n<h2><strong data-renderer-mark=\"true\">State Space Complexity<\/strong><\/h2>\n<p data-renderer-start-pos=\"7585\" data-local-id=\"e058fde7c6fb\">Quite a tricky part of software safety is just how many things software can do, or think it should do. The challenge arises from the potentially large <strong data-renderer-mark=\"true\">state space<\/strong> of software systems. Its behavior depends on multiple factors, such as input data values, internal system states, execution timing, or interactions with other system components.<\/p>\n<p data-renderer-start-pos=\"7927\" data-local-id=\"3d04f1dc69c7\">Pulling all of this together leads to a combinatorial explosion of possible execution paths. As a result, applying methods such as FMEA or FTA directly to software becomes a dizzying task. It might be technically possible, but it is overwhelmingly complicated and difficult to manage due to the huge number of potential conditions that must be considered.<\/p>\n<p data-renderer-start-pos=\"7927\" data-local-id=\"3d04f1dc69c7\"><\/div><\/div><\/div><div class=\"content_section blue_bg blog_trenner_section\"><div class=\"row align-center medium-align-spaced\"><div class=\"columns border_solid_square post_thumbnail small-10 medium-5 large-3\"><div  data-ratio=\"1.133412042503\" class=\"\"><picture><source media=\"(min-width:1024px)\" srcset=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2025\/03\/Natasa-Simanic-John_3X4_v1-scaled-e1773692194282-1694x1920.jpg\" width=\"1694\" height=\"1920\" type=\"image\/webp\" ><source media=\"(min-width:640px)\" srcset=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2025\/03\/Natasa-Simanic-John_3X4_v1-scaled-e1773692194282-904x1024.jpg\" width=\"904\" height=\"1024\" type=\"image\/webp\" ><img decoding=\"async\" src=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2025\/03\/Natasa-Simanic-John_3X4_v1-scaled-e1773692194282-640x640.jpg\" alt=\"Nata\u0161a Simani\u0107 John - Lorit Consultancy FuSa Consultant\" loading=\"lazy\" width=\"640\" height=\"640\" type=\"image\/webp\" ><\/picture><svg version=\"1.1\" id=\"svg_border_solid_square\" class=\"svg_border_solid_square\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 337 411.2\" style=\"enable-background:new 0 0 337 411.2;\" xml:space=\"preserve\">\n<polygon id=\"bg\" class=\"bg\" points=\"65,332.6 337,332.6 336.9,411.2 3.6,411.2 \"\/>\n<path id=\"border\" class=\"border\" d=\"M334,329.6V5.9c0-1.6-1.3-2.9-2.9-2.9l0,0L5.9,3.1C4.3,3.1,3,4.3,3,6v400.8c0,1.6,0.8,1.9,1.8,0.6\n\tl59.6-74.7l266.6-0.1C332.7,332.5,333.9,331.2,334,329.6z\"\/>\n<\/svg><\/div><div class=\"image_bottom_content\"><p>Nata\u0161a Simani\u0107 John, Functional Safety Consultant<\/p>\n<\/div><\/div><div class=\"columns post_content small-12 medium-6 large-7\"><p>Working on safety-critical software systems? <a href=\"https:\/\/lorit-consultancy.com\/en\/contact-us\/#wpcf7-f4221-p4082-o1\">Contact our experts<\/a> to learn how to apply effective safety and development assurance practices in your projects.<\/p>\n<a class=\"add_logo_border\" target=\"_blank\" href=\"\"><span>Learn more<\/span><\/a><\/div><\/div><\/div><\/div><div class=\"single_content_section single_post_section content_section\"><div class=\"row\"><div class=\"post_content columns\"><\/p>\n<h2 data-renderer-start-pos=\"7927\" data-local-id=\"3d04f1dc69c7\"><strong data-renderer-mark=\"true\">Absence of Classical Failure Modes<\/strong><\/h2>\n<p data-renderer-start-pos=\"8320\" data-local-id=\"6a380dc29477\">Methods like FMEA rely on identifying <strong data-renderer-mark=\"true\">specific and predictable component failure modes<\/strong>, such as \u201cstuck open,\u201d \u201cshort circuit,\u201d or \u201closs of signal.\u201d These failure modes are tangible and associated with physical components whose behaviours under failure conditions are well understood.<\/p>\n<p data-renderer-start-pos=\"8605\" data-local-id=\"17d603dc7b99\">Software, however, does not fail in such obvious ways, exhibiting discrete failure modes. Instead, software errors are more like logic puzzles gone wrong and they may manifest as incorrect calculations or logical conditions, improper timing or sequencing, unexpected responses to certain inputs.<\/p>\n<p data-renderer-start-pos=\"8605\" data-local-id=\"17d603dc7b99\">Since the complex logic and multiple interacting states dictate the software behavior, it is difficult to enumerate all possible \u201cfailure modes\u201d in the same way as hardware components. It is almost like trying to predict all the ways a chess game might go wrong before the first move.<\/p>\n<figure id=\"attachment_8974\" aria-describedby=\"caption-attachment-8974\" style=\"width: 683px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-8974\" src=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T130930.204-1024x683.jpeg\" alt=\"\" width=\"683\" height=\"455\" srcset=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T130930.204-1024x683.jpeg 1024w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T130930.204-1920x1280.jpeg 1920w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T130930.204-768x512.jpeg 768w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T130930.204-1536x1024.jpeg 1536w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Unbenannt-2026-03-16T130930.204-2048x1365.jpeg 2048w\" sizes=\"auto, (max-width: 683px) 100vw, 683px\" \/><figcaption id=\"caption-attachment-8974\" class=\"wp-caption-text\">Source: Adobe Stock<\/figcaption><\/figure>\n<h2><strong data-renderer-mark=\"true\">Lack of Meaningful Failure Probabilities<\/strong><\/h2>\n<p data-local-id=\"e915e5d492d5\" data-prosemirror-content-type=\"node\" data-prosemirror-node-name=\"paragraph\" data-prosemirror-node-block=\"true\" data-pm-slice=\"1 1 [&quot;layoutSection&quot;,{&quot;columnRuleStyle&quot;:null,&quot;localId&quot;:&quot;e411699d5c3a&quot;},&quot;layoutColumn&quot;,{&quot;width&quot;:50,&quot;localId&quot;:&quot;7ed8d9f44962&quot;}]\"><span class=\"fabric-background-color-mark\" data-background-custom-color=\"#d3f1a7\" data-prosemirror-content-type=\"mark\" data-prosemirror-mark-name=\"backgroundColor\">Besides qualitative approaches,<\/span> <span class=\"fabric-background-color-mark\" data-background-custom-color=\"#d3f1a7\" data-prosemirror-content-type=\"mark\" data-prosemirror-mark-name=\"backgroundColor\">safety assessment methods such as FTA also employ probabilities to quantify system reliability. <\/span>This works well for hardware components, as they do typically have measurable failure rates (e.g., failures per flight hour) derived from historical data or reliability testing. You can measure, predict, and plan for them.<\/p>\n<p>Software, on the other hand, does not have a meaningful probabilistic failure rate. If a software defect\/bug exists, the problem will pop up <strong data-renderer-mark=\"true\">deterministically<\/strong>, every time when the triggering condition is met. In other words, in terms of failure probabilities, software is digital by nature.<span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\"> If <\/span><\/span>a bug exists, it will trigger under right conditions with probability 1; if no bug exists, it won\u2019t ever trigger, so the probability is 0.<\/p>\n<h2><strong data-renderer-mark=\"true\">The Role of Development Assurance in Aviation<\/strong><\/h2>\n<p data-renderer-start-pos=\"10030\" data-local-id=\"d3dbd183b894\">Because of all the discussed limitations, addressing software safety requires taking a different approach<span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\">. R<\/span><\/span>ather than looking into analysis with probabilistic quantities and failure modes, aviation safety standards are handling it through <strong data-renderer-mark=\"true\">process assurance<\/strong>.<\/p>\n<p data-renderer-start-pos=\"10291\" data-local-id=\"e9fa5a4ff964\">The primary standard governing airborne software development is RTCA\u2018s <em data-renderer-mark=\"true\">Software Considerations in Airborne Systems and Equipment Certifications<\/em>, widely known as <strong data-renderer-mark=\"true\">DO-178C<span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\">. <\/span><\/span><\/strong><span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\">This<\/span><\/span> rulebook <span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\">provides<\/span><\/span> a \u201crecipe\u201d of sorts for airborne software, that makes sure the code is produced with a level of confidence compliant to airworthiness requirements, and that it behaves exactly as it should, every single time.<\/p>\n<p data-renderer-start-pos=\"10694\" data-local-id=\"ca2d7f72483f\">To support safety, DO 178C employs rigorous processes, addressing:<\/p>\n<ul class=\"ak-ul\" data-local-id=\"f20904dd-672f-4c84-88bd-41d29fed9e32\" data-indent-level=\"1\">\n<li>\n<p data-renderer-start-pos=\"10763\" data-local-id=\"a1d7f3b92d9a\">System aspects relating to software development<\/p>\n<\/li>\n<li>\n<p data-renderer-start-pos=\"10814\" data-local-id=\"a1ea4de2aa17\">Software lifecycle<\/p>\n<\/li>\n<li>\n<p data-renderer-start-pos=\"10836\" data-local-id=\"8505a35f8d07\">Software planning<\/p>\n<\/li>\n<li>\n<p data-renderer-start-pos=\"10857\" data-local-id=\"2d323a330da7\">Software development \u2013 requirements, design, coding and integration<\/p>\n<\/li>\n<li>\n<p data-renderer-start-pos=\"10928\" data-local-id=\"9e1940df6bc4\">Integral processes \u2013 software verification, configuration management, quality assurance, certification liaison.<\/p>\n<\/li>\n<\/ul>\n<p>The level of rigor applied depends on the assigned software level, or <strong data-renderer-mark=\"true\">Item Design Assurance Level (IDAL)<\/strong>, which is determined based on the severity of potential system hazards\/failures, identified during system-level safety assessments. DAL A gets the most scrutiny and it is reserved for the hazards that could put lives at risk, like autopilot software. DAL E is for software that has no safety relevance at all, so the process is much <span class=\"fabric-background-color-mark\" data-renderer-mark=\"true\" data-background-custom-color=\"#d3f1a7\"><span class=\"background-color-padding-left background-color-padding-right\">simpler.<\/span><\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-8978 aligncenter\" src=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-16-222859-1024x548.png\" alt=\"\" width=\"772\" height=\"413\" srcset=\"https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-16-222859-1024x548.png 1024w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-16-222859-768x411.png 768w, https:\/\/lorit-consultancy.com\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-16-222859.png 1309w\" sizes=\"auto, (max-width: 772px) 100vw, 772px\" \/><\/p>\n<p>By <a href=\"https:\/\/lorit-consultancy.com\/en\/about-us\/\">Nata\u0161a Simani\u0107 John<\/a>, Functional Safety Consultant<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In safety, what worked for wires and circuits doesn\u2019t always work for lines of code &#8211; analyzing software is a whole different challenge compared to hardware or physical systems. Traditional methods like Functional Hazard Assessment (FHA), Failure Modes and Effects Analysis (FMEA), and Fault Tree Analysis (FTA) (for aviation purposes described and prescribed by ARP [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":8970,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[],"class_list":["post-8969","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"acf":[],"_links":{"self":[{"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/posts\/8969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/comments?post=8969"}],"version-history":[{"count":3,"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/posts\/8969\/revisions"}],"predecessor-version":[{"id":8982,"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/posts\/8969\/revisions\/8982"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/media\/8970"}],"wp:attachment":[{"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/media?parent=8969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/categories?post=8969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lorit-consultancy.com\/en\/wp-json\/wp\/v2\/tags?post=8969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}