sábado, 7 de noviembre de 2009

ISO/IEC 15504

En enero de 1993 la comisión ISO/IEC JTC1 aprobó un programa de trabajo para el desarrollo de un modelo que fuera la base de un futuro estándar internacional para la evaluación de los procesos del ciclo de vida del software. Este trabajo recibió el nombre de proyecto SPICE (Software Process Improvement and Capability dEtermination), y en junio de 1995, con la publicación de su primer borrador, desde ISO fueron invitadas diferentes organizaciones para aplicarlo y valorar sus resultados.
En 1998, pasada la fase de proyecto, y tras las primeras evaluaciones, el trabajo pasó a la fase de informe técnico con la denominación ISO/IEC TR 15504. La instrucción técnica consta de 9 apartados, recogidos en volúmenes independientes que se han ido publicando como redacción definitiva del estándar internacional ISO/IEC 15504 durante el periodo 2003 - 2005.

Establece un marco para métodos de evaluación, no es un método o modelo en sí.
Comprende: evaluación de procesos, mejora de procesos, determinación de capacidad.
Está alineado con el estándar
ISO/IEC 12207 que define los procesos del ciclo de vida del desarrollo, mantenimiento y operación de los sistemas de software.
Equivalencia y compatibilidad con
CMMI. ISO forma parte del panel elaborador del modelo CMMI y SEI mantiene la compatibilidad y equivalencia de ésta última con 15504. Sin embargo CMMi aún no es conforme a SPICE - ISO 15504.

Normas ISO/IEC 12207


La implementación de NTP ISO/IEC 12207 se basa en dos premisas fundamentales: 1)Tomar un Modelo Referencial de Procesos Software – MRPS y 2) un Modelo de Capacidad de Software – Procesos MCPS.

El modelo de capacidad permitirá que ISO 12207 se implemente de manera natural y de acuerdo a la madurez de la organización, de manera coherente a su realidad y contexto. Finalmente, manifestar que llevar a cabo la implementación de NTP ISO/IEC 12207 es llevar a cabo un proyecto de mejora de proceso y como tal necesitamos de un marco/modelo apropiado para este tipo de proyecto. El modelo más usado es el modelo IDEAL(*). En la siguiente figura podemos apreciar las fases y etapas que contempla dicho modelo.

Normas ISO/IEC 9126

El estándar ISO 9126, ahora englobado en el proyecto SQuaRE para el desarrollo de la norma ISO 25000, establece un modelo de calidad en el que se recogen las investigaciones de multitud de modelos de calidad propuestos por los investigadores durante los últimos 30 años para la caracterización de la calidad del producto software.Este estándar propone un modelo de calidad que se divide en tres vistas: interior, exterior y en uso.Estas vistas están compuestas por características, que se dividen en subcaracterísticas, y que estas a su vez se componen de atributos.Los atributos obtienen sus valores tras realizar mediciones sobre el software. Estas mediciones dan como resultado una serie de métricas que se pueden clasificar en tres categorías según sea su naturaleza:
Métricas básicas, que se obtienen correctamente de analizar el código o la ejecución del software.
Métricas de agregación, que consisten en la composición de una métrica a partir de un conjunto definido de métricas básicas, generalmente mediante una suma ponderada.
Métricas derivadas, que son una función matemática que utiliza como entrada el valor de otras métricas.
El modelo establece diez características, seis que son comunes a las vistas interna y externa y cuatro que son propias de la vista en uso. Las características que definen las vistas interna y externa, se muestran a continuación en la Figura 1 y son:

Funcionalidad, capacidad del software de proveer los servicios necesarios para cumplir con los requisitos funcionales.
Fiabilidad, capacidad del software de mantener las prestaciones requeridas del sistema, durante un tiempo establecido y bajo un conjunto de condiciones definidas.
Usabilidad, esfuerzo requerido por el usuario para utilizar el producto satisfactoriamente.
Eficiencia, relación entre las prestaciones del software y los requisitos necesarios para su
utilizNegritaación.
Mantenibilidad, esfuerzo necesario para adaptarse a las nuevas especificaciones y requisitos del software.
Portabilidad, capacidad del software ser transferido de un entorno a otro.

que las características propias de la vista en uso, se muestran a continuación




Efectividad, capacidad del software de facilitar al usuario alcanzar objetivos con precisión y completitud.
Productividad, capacidad del software de permitir a los usuarios gastar la cantidad apropiada de recursos en relación a la efectividad obtenida.
Seguridad, capacidad del software para cumplir con los niveles de riesgo permitidos tanto para posibles daños físicos como para posibles riesgos de datos.
Satisfacción, capacidad del software de cumplir con las expectativas de los usuarios en un contexto determinado.