To achieve statement coverage, it is necessary for each statement in the source code to have been executed by at least one test in the test suite. If a particular statement cannot be covered it is important to identify why. This may reveal dead code, for example, or it may be code that cannot be traced to a requirement or architectural structure. Statement coverage is particularly useful for dealing with loops and returns.