Component Based Systems: A Quality Assurance Framework