Este documento describe los estándares y modelos de calidad de software más importantes a nivel internacional. Explica que los estándares agrupan las mejores prácticas para el desarrollo de software de alta calidad y proporcionan un marco teórico-práctico para asegurar la calidad. Luego detalla los principales organismos de estandarización como ISO, SEI e IEEE y los estándares más relevantes que han desarrollado, incluyendo ISO/IEC 12207, ISO/IEC 15504 y modelos del SEI.
3. ¿ porque son útiles los estándares?
• Agrupan lo mejor y más apropiado de las buenas prácticas
y usos del desarrollo del software, lo cual permite crear
software de alta calidad.
• Proporcionan un marco (teórico – practico-)para
implementar procedimientos de aseguramiento de la
calidad.
• Proporcionan continuidad y entendimiento entre el trabajo
de personas y organizaciones distintas.
4. PRINCIPALES ORGANIZACIONES DE ESTANDARIZACIÓN:
( ISO) – ( SEI ) – ( IEEE )
• ISO: organización internacional para la estandarización.
En 1987 la ( ISO ) y al comisión internacional de electrónica ( IEC ), establecieron un
comité internacional
( JTC1 ) para las tecnologías de la información. La misión del JTC1 es « la estandarización
en el campo de los sistemas de tecnologías de la información, incluyendo
microprocesadores y equipos.
• los estándares mas importantes para las ISO son:
ISO/ IEC 12207: Es el estándar para los procesos de ciclo de
vida del software de la organización ISO.
5. Estructura ISO/ IEC 12207:
La estructura del estándar ha sido concebida de manera
que pueda ser adaptada a las necesidades de cualquiera
que lo use. Para conseguirlo, el estándar se basa en dos
principios fundamentales: Modularidad y responsabilidad.
Con la modularidad se pretende conseguir procesos con
un mínimo acoplamiento y una máxima cohesión. En
cuanto a la responsabilidad, se busca establecer un
responsable para cada proceso, facilitando la aplicación
del estándar en proyectos en los que pueden existir
distintas personas u organizaciones involucradas, no
importando el uso que se le dé a este.
6. Procesos ISO /IEC 12207:
Los procesos se clasifican en tres tipos: Procesos principales, procesos de
soporte y procesos de la organización. Los procesos de soporte y de
organización deben existir independientemente de la organización y del proyecto
ejecutado. Los procesos principales se instancian de acuerdo con la situación
particular.
* Procesos principales *Procesos de soporte
Adquisición.
Suministro.
Desarrollo.
Operación.
Mantenimiento.
Documentación
Gestión de la configuración.
Aseguramiento de calidad.
Verificación.
Validación.
Revisión conjunta.
Auditoría.
Resolución de problemas.
*Procesos de la organización
Gestión.
Infraestructura.
Mejora.
Recursos Humanos.
7. ISO / IEC TR 15504:
El ISO/IEC 15504, también conocido como Software Process
Improvement Capability Determination, abreviado SPICE, en español,
«Determinación de la Capacidad de Mejora del Proceso de Software» es
un modelo para la mejora, evaluación de los procesos de desarrollo,
mantenimiento de sistemas de información y productos de software.
El proyecto SPICE tenía tres objetivos principales:
• Desarrollar un borrador de trabajo para un estándar de evaluación de
procesos de software.
• Llevar a cabo los ensayos de la industria de la norma emergente.
• Promover la transferencia de tecnología de la evaluación de procesos
de software a la industria del software a nivel mundial.
8. Dimensiones ISO/ IEC 15504:
Tiene una arquitectura basada en dos dimensiones: de proceso y de
capacidad de proceso. Define que todo modelo de evaluación de procesos
debe definir: - la dimensión de procesos: el modelo de procesos de
referencia (dimensión de las abscisas) - la dimensión de la capacidad:
niveles de capacidad y atributos de los procesos.
Nivel 0: Incompleto
Nivel 1: Realizado
Nivel 2: Gestionado
Nivel 3: Establecido
Nivel 4: Predecible
Nivel 5: En optimización
Para cada nivel existen unos atributos de procesos estándar que ayudan a
evaluar los niveles de capacidad.
9. Dimensión procesos:
Procesos Primarios:
ACQ: Procesos de Cliente
SPL: Procesos de Proveedor
ENG: Ingeniería
OPE: Procesos de operación
Procesos de soporte
SUP: Soporte
Procesos de soporte
SUP: Soport
Procesos de organización
MAN: Procesos de Gestión
REU: Procesos de Recursos humanos
RIN: Procesos de Infraestructura
PIM: Procesos de mejora de procesos
Dimensión de la capacidad
La dimensión de capacidad del modelo
de evaluación de procesos de software
de la Parte 5 define un conjunto
completo de indicadores para todos los
atributos de procesos correspondientes a
la escala de los 6 niveles de capacidad
de la Parte 2 de la norma.
10. SEI:
INSTITUTO DE INGENIERIA DEL SOFTWARE ( SEI ): es un instituto
federal estadounidense de investigación y desarrollo, fundado
por Congreso de los Estados Unidos en 1984 para desarrollar modelos
de evaluación y mejora en el desarrollo de software, que dieran respuesta
a los problemas que generaba al ejército estadounidense la programación
e integración de los sub-sistemas de software en la construcción de
complejos sistemas militares. Financiado por el Departamento de
Defensa de los Estados Unidos y administrado por la Universidad
Carnegie Mellon.
11. IEEE
El Instituto de Ingeniería Eléctrica y Electrónica ( IEEE ): es una
asociación mundial de técnicos e ingenieros dedicada a
la estandarización el desarrollo en áreas técnicas. Con cerca de 425 000
miembros y voluntarios en 160 países, es la mayor asociación
internacional sin ánimo de lucro formada por profesionales de las nuevas
tecnologías, como ingenieros eléctricos, ingenieros en
electrónica, científicos de la computación, ingenieros en computación,
matemáticos aplicados, ingenieros en biomedicina, ingenieros en
telecomunicación, ingenieros en meca trónica, etc.
12. Según el mismo IEEE, su trabajo es promover la creatividad, el desarrollo y la integración,
compartir y aplicar los avances en las tecnologías de la información, electrónica y ciencias
en general para beneficio de la humanidad y de los mismos profesionales. Algunos de sus
estándares son:
VHDL
POSIX
IEEE 1394
IEEE 488
IEEE 802
IEEE 802.11
IEEE 754