This document is a thesis submitted to Dublin City University titled "Best Software Test & Quality Assurance Practices in the project Life-cycle". It examines improving testing and quality assurance practices in a small to medium Irish software company. The thesis aims to investigate best practices, design and evaluate a process for implementing improvements over successive projects, and develop the improved practices into a framework. It begins by outlining software testing principles and methods. It then evaluates factors affecting software quality and how quality assurance can be applied throughout the project lifecycle. The thesis documents applying the improved practices to projects at the company and developing the lessons into a quality assurance framework, which is then evaluated at another company.