Quality Assurance and its importance in software development