Structural Coverage Analysis Methods

Structural Coverage Analysis Methods

Parnasi Retasbhai Patel, Chintan M. Bhatt
Copyright: © 2019 |Pages: 28
DOI: 10.4018/978-1-5225-7455-2.ch002
(Individual Chapters)
No Current Special Offers


Structural coverage analysis for any code is a very common approach to measure the quality of any test suit. Structural coverage determines which structure of the software or which portion is not exercised. This chapter describes two different phases to achieve structural coverage analysis using DO-178B/C standards. Statement coverage is the very basic coverage criteria which involves execution of all the executable statements in the source code at least once. Analysis of structural coverage can be done by capturing the amount of code that is covered by the airborne software. The first phase contains the instrumentation procedure which instruments the source code at execution time, and the second phase is generating a report that specifies which portion of source code is executed and which one is not in the form of a percentage.
Chapter Preview

1. Introduction

Software is the crucial thing which is used everywhere in our society from education to medical and business. Some of the devices are operatable on basis of softwares. In order to increase the quality, software testing is important. Testing is one of the most important phase of software life cycle. Software testing is a process of finding errors to reduce the damage and improve the reliability, dependency and quality of software (Zander, Schieferdecker, & Mosterman, 2011). Different standards are provided to check the criticality of software.

From the last few decades, control and coverage have been employed in most of functional areas of aerospace industries including navigation, flight control and other avionics softwares. Testing of developed code is core part of software development to protect civil aviation safety and reliability of software for airborne equipments. It is most important to check the correctness and accuracy of code for any software to avoid software failures and accidents. Each requirement contains one or more test-cases to prove its correctness.

DO-178B/C and DO-278 are used to assure safety of avionics software and control systems. DO-178B/C provides guidance and standards for software development, verification, configuration management and the interface to approval authorities. It prescribes a procedure which is being followed in the software development of airborne systems by developers. Based on a safety criteria DO-178B provides different levels which are shown in Table 1.

Table 1.
Levels according to failure conditions
LevelFailure ConditionsCoverage Criteria
ACatastrophic failure condition or cascading system failureMC/DC, Branch & Statement Coverage
BHazardous failure conditionBranch & Statement Coverage
CMajor system failureStatement Coverage
DMinor system failureNone
ENo effect on system

2. Testing Techniques

Testing involves mainly two techniques such as black box testing and white box testing.

2.1 Black Box Testing

In this type of testing only functional specifications are required. Internal software structure is not required in this kind of software testing strategy.

Complete Chapter List

Search this Book: