This document discusses software quality assurance. It defines software as computer programs, procedures, and documentation related to operating a computer system. Software quality is defined as meeting requirements and user needs/expectations. Quality factors include correctness, reliability, efficiency, integrity, usability, maintainability, flexibility, testability, portability, reusability, and interoperability. Software quality assurance is a planned set of actions to provide confidence that software development/maintenance conforms to requirements and schedules/budgets. The objectives of SQA are to assure acceptable confidence in conforming to functional/managerial requirements during development and maintenance. Three principles of QA are to know what is being done, know what should be done, and know how to