hazards in accordance with the SMS and, if appropriate, (2) developed and verified in accordance with RTCA DO-278A. 6 

Unaffected portions of NAS baseline software do not need to comply with the RTCA DO-278A objectives. Unaffected portions are those that are neither changed nor affected by changes, as determined by control flow, data flow, memory usage, or timing analysis. The safety analysis should determine the affected and unaffected portions. 

Software development and verification tools used for the baseline software may need to be qualified in accordance with RTCA DO-278A. 

## 6.4 Reuse of Previously Approved Software in a CNS/ATM System 

RTCA DO-278A, Section 12.1.2, Reuse of Previously Approved Software in a CNS/ATM System , addresses CNS/ATM systems or equipment containing legacy software that has been previously approved. The system safety assessment process evaluates the new CNS/ATM system and determines the required AL. 

The following describe the circumstances addressed in RTCA DO-278A with respect to previously developed software and reuse: 

• If the previously approved software complies with the RTCA DO-278A objectives, there are no changes to the software, and the AL is the same for the new system, then no additional effort is required. 

• If modifications are to be made to the previously approved software, the guidance established in RTCA DO-278A, Section 12.1.1, Modifications to Previously Developed Software , must be satisfied. 

• If the software lifecycle data from a previous application are inadequate or do not satisfy the objectives for the new application, the guidance in RTCA DO-278A, Section 12.1.4, Upgrading a Development Baseline , must be satisfied. 

## 6.5 Software Tool Qualification 

Qualification of a software tool is necessary when RTCA DO-278A software processes are being eliminated, reduced, or automated by use of the tool without the tool’s output being verified as specified in RTCA DO-278A, Section 6,  Software Verification . RTCA DO-278A defines a software tool as “a computer program used to help develop, test, analyze, produce, or modify another program or its documentation.” Examples of some software tools include, but are not limited to, the automatic source code generator, structural coverage analysis, and software standards checkers. 

RTCA DO-278A, Section 12.2, Tool Qualification , provides guidance on applying development assurance to software tools and on how to determine the Tool Qualification Level (TQL). In addition, RTCA DO-330 provides objectives, activities, guidance, and lifecycle data required for each TQL. 

## 6.6 Service Experience 

RTCA DO-278A, Section 12.3.4, Service Experience , provides guidance for determining whether equivalent safety for software can be demonstrated by the software’s product service 

