SCOPE
Although the scope of IV&V can range along a continuum, it is convenient to identify three levels: comprehensive, focused, and limited. The most effective implementation of IV&V involves in-depth, technical analysis and an integrated view across all areas of software and hardware functions. This comprehensive approach includes a close interaction among all members of the software and system development and review teams that continually provides feedback and recommendations into the development process to improve both the process and the product.
Due to limited resources or other constraints, a comprehensive IV &V may not be feasible. A focused IV&V considers only a small set of software and/or system functions using a process-oriented or product-oriented approach. In-depth technical analysis is performed on those functions that are deemed to be the most critical for safety, reliability, or some other important aspect of the software.
When resources are extremely limited, a cursory monitoring of the process or limited testing that the software meets some minimal standards may be all that is implemented. Such a limited scope does not provide much assurance against errors resulting from the design of the process, nor does it provide assurance that the software will continue to perform correctly in off-nominal situations.
Ideally, the scope of IV&V should be determined by what is needed to ensure a quality product and not based strictly on the available resources. However, in the real world, the scope of coverage is often a function of the available funds, the consequences of missing scheduled launches or program milestones, and the consequences and likelihood of latent errors. If the cost of an undiscovered error is high (as measured by safety, mission effectiveness, or financial considerations), and especially when the magnitude of software changes is large and deadlines are critical, the scope of coverage should be increased, regardless of the cost, to provide adequate assurance that as many potential problems as possible are addressed prior to putting the software into use. Unfortunately, critical deadlines, in combination with budget constraints, can pressure management into reducing, rather than enhancing, IV &V.
INDEPENDENCE
Independence is the third, and most misunderstood, distinguishing characteristic of IV&V. Independence concerns the freedom of the IV&V team to operate without interference or restraint and can be evaluated along three dimensions: technical, managerial, and financial.
Technical independence requires that the IV&V team utilize personnel who are not involved in the development of the software and system. An effective IV&V team has members with knowledge of the system or with related experience and engineering background that gives them the ability to quickly learn about it. To maintain technical independence, the IV&V team must, in all instances, formulate their understanding of the problem and their proposed solution without influence from the development team. This technical independence (or fresh viewpoint) is critical to the team's ability to detect the subtle requirements, design, and coding errors that escape detection, for example, by development testing and quality-assurance reviews.