El aseguramiento de calidad del software incluye actividades planificadas y sistemáticas para garantizar que el software cumple los requisitos de calidad, el cual se debe diseñar antes de comenzar el desarrollo. Involucra métodos y herramientas de análisis, diseño, programación y prueba, así como inspecciones técnicas formales en todas las etapas del proceso de desarrollo del software.