Abstract-Software Quality Assurance (QA) is a key area in the development and maintenance of scientific software systems in order to ensure the reliability of the output generated by such systems. Approaches taken in implementing QA within the lifecycle include manual techniques, which require developer intervention, and automated techniques, which can be completed by analysis toolsets. Manual QA techniques are labour intensive and time-consuming to complete. This paper highlights the main areas of software quality assurance and assesses the area in terms of tools that exist to automate these techniques. These tools are evaluated at a high level to allow general statements to be made and the key issue of non-generic tools that are applied across multiple language paradigms. Reviewing the background of automated software quality assurance and general software quality assurance. A framework is then proposed to fill the gap in automated software quality assurance, with the proposal to develop this framework.