So, we’ve completed the first two critical steps of the overall V&V effort, Requirements V&V and Design V&V. Through those two sequential V&V efforts we have identified errors early, which has saved on the total cost of developing the system (early error discoveries are less expensive to fix than later error detections). But, by far, the Code V&V portion of the V&V effort offers significant variations in V&V investment that deliver different ROI results. In this blog we explore the various code V&V strategies, their impact on program cost, and their impact on the target program’s development cost and schedule.
Code V&V efforts range from an oversight activity up to the actual execution of developed code within a V&V simulated environment. The former code V&V strategy is relatively inexpensive and is consistent with the effort put into requirements and design V&V efforts. The latter is significantly more expensive, as will be seen below, and is performed for those systems where critical mission performance challenges are identified early without impact to the actual target system. A good example of target systems for detailed code V&V are mission critical systems that, if they fail, can cause significant loss of life. So, the investment in detailed code V&V creates a Return On Investment (ROI) that is measured in both dollars and safety/performance considerations.
OVERSIGHT CODE V&V
For oversight code V&V, the V&V engineer reviews code artifacts (flat files, tool-enhanced code representations, etc.) and performs trace analysis to design specifications to ensure what was planned to be developed is actually what is developed. This top-level assessment is critical to maintain traceability, assuring delivered code addresses all of the program requirements. However, this effort does not address the actual performance attributes of the developed code.
DETAILED CODE V&V
To dig deeper into the code and provide meaningful performance assessments, the V&V engineer must assemble a working model of the target system’s environment. The simulated environment development must start early in the V&V lifecycle (Requirements V&V) so the decision to perform the deeper Code V&V must be part of the overall V&V plan, created at the start of the V&V program.
For code performance analysis, the V&V engineer executes actual code segments or complete code modules in a controlled manner so that problems can be identified, executions can be halted at specific points, and artifacts can be collected that provide the developer with in-depth anomaly information. The V&V environment also provides for code execution repeatability so that the exact test, with all the same test parameters, can be repeated for subsequent correction assessments. The ultimate goal of detailed code V&V is the identification of performance issues prior to actual execution of the target system. A good example of this would be missile flight software where it is for more desirable (for cost and safety reasons) to identify code errors in a simulated environment as compared to during an actual missile flight test.
Regardless of the level of code V&V effort performed, this step is critical to maintain the overall on-schedule system delivery.
GreenDart has experience performing all levels of Code V&V. How can we help you?
Author: Bedjanian
Comments