Quality Assurance ensures that software products meet technical and market requirements. What are the types of QA, and which one is best for your project?