1. Understand the expected functionality of designs;
2. Develop testing and regression plans;
3. Design and develop verification environment;
4. Run RTL and gate-level simulations / regression;
5. Code/functional coverage development, analysis and closure;
6. Release the documents during the verification flow. Such as verification plan, usage of the verification environment, simulation result of test cases, verification coverage report, etc.