digital flight / solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_d… ·...

21
SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCE Cheryl A. Dorsey Digital Flight / Solutions [email protected] DIGITAL FLIGHT SOLUTIONS /

Upload: others

Post on 21-Aug-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS:

BUILDING ON THE DO-178 EXPERIENCE

Cheryl A. DorseyDigital Flight / Solutions

[email protected]

DIGITAL FLIGHTSOLUTIONS/

DIGITAL FLIGHTSOLUTIONS/

Page 2: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

DO-178 Overview What vs. How Standard System Safety Process (begins prior to software development) Software Tie to System Safety Requirements Traceability Standards Verification Quality Assurance Good Practices Conclusion

Presentation Outline

Page 3: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

DO-178 International Standard for Assurance of Software Used in Civil Airborne

Systems Also used in other Mission Critical Industries

Current Status Latest Version is DO-178C (2012) Same Overall Concept as DO-178B (fixes mistakes, adds tribal knowledge) Four New Supplements (Tool Qualification, Formal Methods, OO, Model

Based Development)

Presentation Context Relevance to Space Community What v. How Standard Strengths and Weaknesses Best Practices

DO-178 OverviewPresentation Context

SOFTWARE CONSIDERATIONS IN

AIRBORNE SYSTEMS

AND EQUIPMENT CERTIFICATION

RTCA

DOCUMENT NO. RTCA/DO-178B

December 1, 1992

Prepared by: SC-167

“Requirements and Technical Concepts for Aviation”

Page 4: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Objective Based Approach

Qualitative

Requires some “tribal knowledge”

What vs. How Standard

Objectives and Reference

ObjectiveSW Level

OutputControl Categoryby SW level

Description Ref A B C D Description Ref A B C D

1 Test procedures are correct.

6.3.6b

Verification Results 11.14 2 2 2

Page 5: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

• PSAC

• SDP

• SVP

• CMP

• SQAP

• Standards

• High-Level Reqs

• Derived High-

Level Reqs

• Trace data

• Verification

Results

Design

Architecture

• Low-Level Reqs

• Derived Reqs

• Trace Data

• Verification

Results

• Source Code

• Trace data

• Executable Object

Code

• Verification

Results

• Test Cases and

Procedures

• Test Results

• Trace Data

• Verification Results

Planning

Requirements

Code/Integration

Design

Integration/Test

Table A-6

Table A-2

Verification of Development and TestTable A-3 Table A-4 Table A-5 Table A-7

Four Annex Tables for Verification of Development and Test Processes

Slide 2.5

Page 6: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

DO-178 attributes of requirements:

High level requirements conform to system requirements

High level requirements are accurate and consistent

High level requirements are compatible with target computer

High Level Requirements are Verifiable

High level requirements conform to standards

High level requirements are traceable to system requirements

Algorithms are accurate

An Example of WhatTaken From Annex A Table 3

Page 7: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

SAFETY ASSESSMENT SYSTEM DEVELOPMENT

(Taken from ARP 4754)06/04/98

Failure Conditions,

Effects

CCASeparationRqmts.

Certification

SeparationVerification

Items Rqmts, Analyses Required

System ImplementationAnalysis Results

SSA

Items Rqmts, Safety Objectives Analyses

Failure Conditions, Effects, Classification, Safety Objectives

Development of

System ArchitectureSystem Architecture

Architecture Rqmts.PSSA

Failure Conditions, Effects, Classification

System FunctionsAllocation of

Rqmts. To SystemsSystem FHA

Aircraft Rqmts.Aircraft FHA Aircraft Functions

System Safety Process

Page 8: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

SOFTWARE LIFE-CYCLE PROCESSESIntroduction to DO-178B

Airworthiness Requirements

System Operational Requirements

System Safety Assessment Process

SYSTEM LIFE-CYCLE PROCESSES

Slide 2.8

Systems Software Tie

Fault Containment

Boundaries

Error Sources

Identified and

Eliminated

Software Requirements

and Architecture

System Requirements

Allocated to Software

Software Level(s)

Design Constraints

Hardware Definition

Taken from DO-178B

Page 9: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

DO-178 References System and Safety Standard (ARP4754) Section 2 of DO-178 - Informative Section (no

objectives)

Safety is really a systems property in civil airborne

DO-178b “Safety” Processes Assumes “safe” requirements as an entry point

Extensive Verification (assures requirements are met)

Safety Review of Derived Requirements (may not be enough)

Best Practices Safety Review of All Requirements (criticality)

Safety Tie To Software

Page 10: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Use of non-standard requirements terminology High level requirements vs. Low level requirements

Derived requirements definition and understanding

Leads to problematic non-standard practices

Combined low and high level requirements

Derived requirements not tagged as derived

Pseudo-code as low-level requirements

Implementation not requirements/testability

Maintenance issue after original development

Requirements

Page 11: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Best practices for requirements

Assure clear criteria is established for DO-178 requirement review

Independently develop requirements based tests in parallel to assure the requirements are testable

Provide clear definition and criteria for derived requirements

Requirements

Page 12: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Traceability is a clear strength of DO-178

One way trace upward to system requirements allocated to sw

Two way trace between high level requirements and low level requirements

Two way trace between low-level and code

Trace between tests and requirements

Forward trace assures all requirements are implemented

Backward trace assures nothing but requirements implemented (no unintended function on the aircraft)

Traceability

Page 13: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Review of requirements traceability

After each phase during verification

Again during requirements coverage analysis (requirement completely tested (normal and robust), structure covered

Best practices

Clear guidance (review criteria) for tracing

Nothing but the requirements are implemented (unless derived)

Independent trace review in each direction and compare the results for high criticality

Traceability

Page 14: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Three development standards

Requirements, Design, Code

Standards in DO-178 do not assure good practices

Often minimal and add little toward design assurance

Best practice

Use a strong standard like (MISRA or a subset of it) for DAL A and B

Although not required by DO-178, use a testing standard to assure all requirements are fully tested (normal and robustly) with observable results (you don’t want to find problems at the certification reviews)

Standards

Page 15: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Reviews

Requirements review

Design Review (low level requirements and architecture)

Code Review

Test Review

Testing

Normal and robustness

Structural Coverage of the code via requirements based testing

MCDC (catastrophic), Decision (hazardous), statement (major)

Verification

Page 16: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Analyses

Data Coupling

Control Coupling

Requirements Coverage

Stack Depth

Memory Margin

Worst Case Timing

Analyses lack clear guidance and objectives, therefore often do not meet the intent

Verification

Page 17: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Verification is a strength of DO-178

DO-178 is an assurance standard and verification intensive (measuring stick put over development).

When done correctly, assurance is gained through a series of reviews, analysis and tests

DO-178 could benefit in clearer guidance with respect to:

Review criteria

Clear objective criteria for each analysis

Strong criteria for robustness testing commensurate with safety classification

Verification

Page 18: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

DO-178 Quality Assurance is really process assurance

Main concept - say what you do (planning), do what you say (follow the plans), prove it (records)

If Quality is not built into the process, than quality is not assured

Quality is often not involved at key points as prescribed by DO-178 transition criteria (between each life cycle phase)

Quality assurance often does not review the CM of development and verification artifacts

To work QA should be fully engaged throughout

DO-178 does require dated records for each QA activity (check the checker)

Quality Assurance

Page 19: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Required four certification reviews called SOIs

Planning, development, verification, final

Support for reviews found in FAA Order 8110.49

Good news FAA Software Job Aid provides a more detailed set of evaluation criteria at the SOI audits to mitigate weaknesses of DO-178

Bad news is many companies do not know of this or use it during their development.

Good Practicesin the Airborne Community

Page 20: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Strength of DO-178 is when understood and implemented correctly provides an excellent mechanism to assure software is bug free

To be effective it requires good knowledge of software engineering and process

Strength and weakness is that it is not prescriptive

Not tied to any specific lifecycle or methodology

Requires a key knowledge of “good” SW Engineering processes and implementation

Could benefit by clear examples and more “How” guidance

Conclusions

Page 21: Digital Flight / Solutionsiaass.space-safety.org/wp-content/uploads/sites/26/2013/06/0940_D… · DO-178 Overview Presentation Context SOFTWARE CONSIDERATIONS IN AIRBORNE SYSTEMS

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCECheryl A Dorsey, Digital Flight Solutions

Needs a stronger tie to systems and safety

architectural mitigations (e.g. monitors) are implemented correctly and tested robustly

Stronger tie, with feedback to systems and safety when requirements are not understood, missing, or too weak to implement

ECSS has a safety process built in to the software process (this would benefit DO-178)

Conclusions (con’t)