3.1.2. Value of Static Testing
Static testing can detect defects in the earliest phases of the SDLC, fulfilling the principle of early testing
(see section 1.3). It can also identify defects which cannot be detected by dynamic testing (e.g.,
unreachable code, design patterns not implemented as desired, defects in non-executable work
products).
Static testing provides the ability to evaluate the quality of, and to build confidence in work products. By
verifying the documented requirements, the stakeholders can also make sure that these requirements
describe their actual needs. Since static testing can be performed early in the SDLC, a shared
understanding can be created among the involved stakeholders. Communication will also be improved
between the involved stakeholders. For this reason, it is recommended to involve a wide variety of
stakeholders in static testing.
Even though reviews can be costly to implement, the overall project costs are usually much lower than
when no reviews are performed because less time and effort needs to be spent on fixing defects later in
the project.
Code defects can be detected using static analysis more efficiently than in dynamic testing, usually
resulting in both fewer code defects and a lower overall development effort.