La ISO 9126 define un modelo de calidad para calidad tanto interna como externa. Categoriza los atributos de calidad del software en 6 caracterĂsticas: funcionalidad, fiabilidad, usabilidad, eficiencia, mantenibilidad y portabilidad. Estas caracterĂsticas están subdivididas en sub caracterĂsticas que pueden ser medidas por mĂ©tricas internas o externas.
La calidad interna es la totalidad de caracterĂsticas del producto software desde una visiĂłn interna (componentes/productos intermedios). La calidad interna es medida y evaluada contra los requisitos de calidad internos. Los detalles de calidad del producto software pueden ser mejorados durante la implementaciĂłn, revisiĂłn y pruebas del cĂłdigo, pero la naturaleza fundamental de la calidad del producto software representado por calidad interna permanece sin cambios a menos que se lleven a cabo actividades de re-diseño.
La calidad externa es la totalidad de caracterĂsticas del producto desde una visiĂłn externa (producto final). Es la calidad cuando el software es ejecutado, que es tĂpicamente medido y evaluado durante las pruebas en un entorno simulado con datos simulados utilizando mĂ©tricas externas. Durante las pruebas, la mayorĂa de los fallos deberĂan ser descubiertos y eliminados. Sin embargo, algunos fallos pueden permanecer despuĂ©s de las pruebas. Como es difĂcil corregir la arquitectura del software u otros aspectos fundamentales del diseño del software, el diseño fundamental normalmente permanece invariable durante las pruebas.
Funcionalidad
Capacidad del producto software de proporcionar funciones que cumplan las necesidades cuando el software es utilizado bajo condiciones especĂficas.
Fiabilidad
Capacidad del producto software para mantenerse a un nivel especifico de rendimiento cuando es utilizado bajo condiciones especĂficas.
Usabilidad
Capacidad del producto de ser entendido, utilizado y ser atractivo al usuario cuando es utilizado bajo condiciones especĂficas.
Eficiencia
Capacidad del producto para proporcionar un apropiado rendimiento, relativo al conjunto de recursos utilizados bajo condiciones establecidas.
Mantenibilidad
Capacidad del producto de ser modificado. Las modificaciones pueden incluir correcciones, mejoras o adaptaciĂłn del software a cambios en el entorno, en requisitos o en especificaciones funcionales.
Portabilidad
Capacidad del producto software de ser transferido desde un entorno a otro.