Posted by Alex Seibulescu on July 12th, 2011
These days it seems that you need to have a plan for everything. You need short, medium and long-term plans, you need backup and alternative plans, you need business and execution plans, you need a plan to eat (“I already have a dinner plan”), you need a plan to relax (“I’m working on my vacation plan”), and you even need a plan if you don’t want to do anything (“I plan to do nothing this afternoon”). Clearly, without plans, the world as we know it will cease to exist so I had to ask my friend Coverage, what his thoughts were on the whole planning business. To my surprise he got very agitated. “Planning and Coverage go hand in hand”, he said, “but they are not synonymous and yet people often use them interchangeably”. “Verification needs a plan, to do proper verification, you need coverage, to do proper coverage, you need to plan for it, and once you have the plan, you need to make sure you cover it, but coverage and the plan are not one and the same”. With that, he grumbled away, leaving me dazed and confused. I made a plan to revisit the topic once the dust of excessive wisdom crashing on my head settled.
Come to think of it, it makes perfect sense. Coverage is an important (if not the most important) part of the Verification Plan but the plan can, and most of the time does contain other metrics (bug rate for instance) or tasks (set of directed tests for example) that are tracked for some particular items of the plan. On the other hand, mapping back coverage results to their corresponding item in the plan raises the level of abstraction of the generated coverage data thereby providing better insight into the quality of verification achieved by hitting (or not hitting) the respective coverage targets.
Separately, coming up with a good plan for the coverage model and a good plan on how to close coverage on it are equally important. Combining the right coverage methodology with the right tools can make a significant difference in verification efficiency without any sacrifice in verification quality.
Finally, even the best Verification Plan is meaningless if one does not make sure that all its items are properly covered.
I plan to go back to my friend and tell him I eventually figured out what he was trying to tell me. Just to make sure I got everything covered.