Effective QA and testing for the entire product life-cycle