¿Por qué norma me decanto?Existen diversos modelos de calidad en el ámbito del software. Podríamos agruparlos ensistemas de gestión, calidad en el producto software y calidad en los procesos software. Normalmente las normativas de son conjuntos de buenas practicas que se aplican sobre el ciclo de vida de proyectos informáticos y que contribuyen a mejorar los factores de la calidad del software que se han expuesto con anterioridad. Existen multitud de modelos para la gestión de la calidad del software y otros sistemas y normas de gestión que se han aplicadosobre estos procesos, muchas de ellas con apéndices (normas específicas) para uno de los conceptos más importante en el software: la evaluación. Además el mundo del software englobado en los servicios TI puede ser evaluado en calidad según otros sistemas de gestión sobre TI. En este sentido algunas empresas de desarrollo de software han implantado sistemas de gestión basados en ISO 9001, ISO 27001 o ISO 20000 con alcances en los procesos de desarrollo y entrega, pero éstos quizás no son la mejor opción en el caso de que el corazón productivo de la organización se únicamente el software.
[info_box]Actualmente existen en el mercado “normativo” diversas opciones de las que destacamos:[/info_box]
[list_with_icons icon=»green_check»]
- ISO 9001 en el alcance sobre el software y sobre los procesos productivos de la organización. No siempre sobre el desarrollo, puede ser en la identificación de requisitos, en el propio desarrollo y por ejemplo en la entrega y mantenimiento.
- ISO/IEC 9003 Ingeniería del software. Guía de aplicación de la ISO 9001:2000 al software (NO es CERTIFICABLE. Es una norma de buenas prácticas para definir con más detalle los conceptos de software sobre los procesos de la organización).
- ISO/IEC 12207 Information Technology / Software Life Cycle Processes, es el estándar para los procesos de ciclo de vida del software de la organización. Es la base para ISO 15504-SPICE.
- ISO/IEC 15504 (conocida como SPICE – Software Process Improvement And Assurance Standards Capability Determination). Un conjunto de 7 normas para establecer y mejorar la capacidad y madurez de los procesos de las organizaciones, proporcionando los principios requeridos para realizar una evaluación de la calidad de los procesos. La definición de los procesos se realiza sobre ISO/IEC 12207. La familia de normas 15504 espera que la nuevaISO 29110 sea publicada para crear definitivamente el esquema internacional de certificación, que actualmente está creado con procesos de calidad en las entidades de certificación (realizando evaluaciones externas sobre ISO/IEC 15504-2 e ISO/IEC TR 15504-7:2008.
- Capability Maturity Model Integration (CMMI)
CMMI se ha convertido mundialmente en un requisito para acceder a la exportación de servicios de software. La norma provee una guía para implementar una estrategia de calidad y mejorar los procesos de una organización que se dedica al desarrollo y/o mantenimiento de software. Dispone de un esquema de certificación creado sobre organismos privados. (no normas ISO) - ISO/IEC 9126. Desarrolladas entre 1991 y 2001. Software engineering – Product qualityconsta de 4 partes. La serie de normas ISO/IEC 9126 define las características de calidad delproducto de software (parte 1), las métricas internas y externas (partes 2 y 3), y la calidad en uso, que explica cómo la calidad del producto está sujeta a las condiciones particulares de uso (parte 4).
- ISO/IEC 14598. Desarrolladas entre 1999 y 2001. Software product evaluation, Evaluación del producto de software, la familia consta de 6 partes. Directamente relacionada con ISO 9126.
- ISO 25000. La familia de normas 25000 establecen un modelo de calidad para el producto software además de definir la evaluación de la calidad del producto. Tiene 5 partes publicadas, y se encuentra en desarrollo. Pretenden sustituir a ISO 9126 e ISO 14598 ya que desde 2001 no se publicaron nuevas versiones.
- SCRUM. Un método sencillo y práctico para empezar a practicar calidad. Fabricar y gestiona el desarrollo en tres fases fundamentales: una breve fase de planificación, en la cual se realizan las labores básicas de una planificación breve: visión general del proyecto (estimación muy general, viabilidad del sistema) y construcción del Backlog. por un lado y por otro el desarrollo de la arquitectura al detalle; otra de desarrollo, en la cual tienen lugar los famosos Sprints, y otra final de entrega y balance de los éxitos y fracasos logrados.
[/list_with_icons]
Evaluación por niveles de capacidad y de madurez
En los modelos de evaluación y mejora de la calidad de los procesos software se pueden encontrar principalmente dos maneras de hacer las evaluaciones: por niveles de madurez, donde se obtiene una “puntuación” cuyo alcance es la organización (departamento, o proyecto, etc.) y por niveles de capacidad, o de manera continua, donde la organización obtiene puntuación para un proceso concreto (por ejemplo para la gestión de requisitos, o la planificación de proyectos, gestión de la configuración, etc.). De entre los modelos de calidad de procesos software de mayor uso en la industria del software, CMMI e ISO/IEC 15504 ofrecen ambos modelos.
ISO 15504 SPICE
CMMi
Este artículo ha sido elaborado a partir de diversas fuentes. INTECO, Portal ISO 155404 en español, grupo Linkedin Spice España y latinoamerica, Página oficial de Spice, PathFinder Scheme, Entreprise Spice