Aseguramiento de Calidad del Software (SQA) 💎
En el estándar ISO/IEC/IEEE 12207, la calidad no es una prueba de última hora antes de entregar, sino una disciplina sistemática gobernada de forma integral junto con el estándar IEEE Std 730-2014 (Standard for Software Quality Assurance Processes).
⚖️ Tres pilares irrenunciables de SQA (IEEE 730)
- Independencia Organizacional: El equipo o responsable de SQA debe poseer autoridad y libertad jerárquica para evaluar los productos de trabajo sin presiones de cronogramas o jefaturas de desarrollo. Si un release no cumple los criterios de calidad, SQA tiene la potestad formal de detener el despliegue.
- Aseguramiento de Procesos y Productos: Verifica que los artefactos (especificaciones, código, diagramas y suites de pruebas) cumplan los estándares técnicos, y que los ingenieros sigan efectivamente los procesos acordados.
- Gestión de No Conformidades: Cada desviación técnica detectada se registra, clasifica por severidad y se rastrea mediante análisis de causa raíz (RCA) hasta su resolución definitiva y prevención futura.
- Supervisión de Verificación y Validación (V&V): SQA audita que la Verificación técnica (pruebas unitarias, escaneos SAST, cobertura de código) y la Validación operativa (pruebas UAT con usuarios reales) se ejecuten con evidencias objetivas antes de autorizar el paso por cada Portón de Decisión (Gate).
📐 El Modelo de Calidad del Producto (ISO/IEC 25010)
¿Cómo sabemos si un software es realmente "bueno"? La norma ISO/IEC 25010 (parte de la serie Software product Quality Requirements and Evaluation - SQuaRE) descompone la calidad en 8 características fundamentales y 31 subcaracterísticas objetivamente medibles.
1. Adecuación Funcional
¿Hace lo que el usuario necesita?Grado en que el software proporciona funciones que satisfacen las necesidades declaradas e implícitas.
2. Eficiencia de Desempeño
Velocidad y uso de recursosRendimiento del software en relación con la cantidad de recursos consumidos bajo condiciones de carga.
3. Compatibilidad
Intercambio y convivenciaCapacidad de intercambiar información con otros sistemas y convivir en el mismo entorno de hardware/OS.
4. Usabilidad
Experiencia de usuario (UX)Facilidad con la que los usuarios pueden aprender, operar y lograr sus objetivos con agrado y eficacia.
5. Fiabilidad (Reliability)
Disponibilidad y resistenciaCapacidad del sistema de mantener su nivel de operación bajo condiciones adversas o caídas de red.
6. Seguridad
Protección de datos y accesosGrado en que protege la información para que terceros no autorizados no puedan leerla ni alterarla.
7. Mantenibilidad
Facilidad para evolucionar y corregirEficacia con la que los desarrolladores pueden modificar el código, refactorizarlo o probarlo sin romperlo.
8. Portabilidad
Traslado entre entornosFacilidad para migrar el software de una nube a otra (ej: de Docker local a Kubernetes o AWS).
📊 Radar de Calidad del Producto (Simulador SQuaRE)
Ajusta los controles deslizantes de cada dimensión de calidad para visualizar en tiempo real el polígono de cobertura del software y recibir la recomendación técnica normativa:
📋 Lista de Chequeo de Auditabilidad & Conformidad (IEEE 730)
Evalúa el cumplimiento de tu proyecto marcando cada uno de los ítems de verificación exigidos por la norma. El medidor calculará en tiempo real tu nivel de conformidad técnica:
🎬 Buenas Prácticas de Calidad & Trazabilidad
Integrar ISO 12207, IEEE 730 y SQuaRE 25010 asegura que el software sea robusto, sostenible y seguro. En el siguiente paso aprenderás a adaptar estos procesos formalmente mediante la técnica de Tailoring.
💡 Conclusión Pedagógica
"La calidad nunca es un accidente; siempre es el resultado de un esfuerzo inteligente y de procesos consistentes". Al medir objetivamente las 8 características de ISO 25010 evitas el sesgo de opiniones y garantizas valor real a los usuarios.