ISO 12207 Texto
ISO 12207 Texto
INTRODUCCIN
Cada vez ms, las organizaciones ven la necesidad de controlar y mejorar la calidad del software
debido al impacto que sta tiene en los costes finales. En este sentido, las organizaciones estn
implantando modelos de mejora de procesos software, siendo los de mayor uso CMMI-DEV e ISO/IEC
15504 ISO/IEC 12207. Sin embargo, numerosos estudios confirman que la aplicacin de estos
modelos resulta costosa en pymes y pequeos equipos de desarrollo. Y por otro lado, se suma la
difcil integracin de las metodologas giles, paradigma ms utilizado por pymes y pequeos equipos
de desarrollo con estos modelos.
Normalmente, en la mejora de la calidad de los procesos participan dos tipos de modelos, el modelo
de procesos y el modelo de evaluacin. El modelo de procesos define un catlogo o coleccin
estructurada de buenas prcticas que describen las caractersticas de un proceso efectivo, mientras
que el modelo de evaluacin proporciona los principios para realizar una evaluacin de la calidad, e
implantacin, de dicho modelo de procesos en una organizacin.
En el desarrollo software, el qu hacer y el cmo hacerlo han sido siempre aspectos bsicos en la
mejora de procesos. Los modelos de procesos, como ISO/IEC 12207, definen buenas prcticas
(outcomes) y lo qu se espera encontrar en los procesos, pero en ningn momento indican cmo
realizarlo; esto ltimo se describe en las metodologas. Por lo tanto, el uso de modelos de procesos y
metodologas giles no debe considerarse un aspecto contradictorio sino complementario.
Un problema que sucede en muchas ocasiones cuando se implantan metodologas giles es la falta
de documentacin. En el contexto de metodologa gil normalmente se sugiere que no debera
existir una documentacin exhaustiva, lo cual es correcto, pero el problema aparece cuando no se
documenta. La ausencia completa de documentacin en cualquier soporte no es una buena prctica,
ya que no ayuda al personal no directamente involucrado en el desarrollo, como son nuevos
desarrolladores o el equipo de mantenimiento. En ningn caso el modelo ISO/IEC 12207:2008 obliga
a documentar exhaustivamente, el objetivo que persigue es que las actividades sean repetibles.
Asimismo indicar que en las auditoras ISO/IEC 15504 ISO/IEC 12207:2008 no se evala la aplicacin
directa de los resultados de los procesos, sino que se estudia y analiza la implementacin y
adaptacin de los mismos a una organizacin concreta. La tarea de un equipo auditor es alinear las
actividades de mejora definidas en la organizacin y las evidencias objetivas de su implantacin con
las buenas prcticas del modelo de procesos.
La norma ISO/IEC 12207 establece una arquitectura para gestionar el ciclo de vida del software. La a
arquitectura se determina mediante un conjunto de procesos e interrelaciones entre estos.
Cada proceso se define en funcin de sus propias actividades, cada una de las cuales est
determinada, adems, en funcin de las tareas que las componen.
El estndar aplica los principios de gestin de calidad total. Es decir, trata todas las actividades,
incluidas las relacionadas con la calidad, como una parte integral del ciclo de vida del software.
Los procesos de la norma forman un conjunto completo que puede ser aplicado a diversas
organizaciones. Se puede seleccionar un subconjunto adecuado de procesos, as como sus
correspondientes actividades y tareas asociadas, para adaptarlo a las necesidades de la empresa y el
producto gestionado.
Limitaciones
Pg. 2
PROCESOS DEL CICLO DE VIDA DEL SOFTWARE
PRINCIPALES (o PRIMARIOS)
SOPORTE
ORGANIZACIN
Procesos de adquisicin
Este proceso define las actividades y tareas del cliente que adquiere un producto de software o que
contrata un servicio.
Este proceso define las actividades y tareas del adquiriente. En este proceso se identifica la
necesidad de adquirir, desarrollar o adaptar un sistema, producto o servicio software, preparar una
solicitud y seleccionar un proveedor.
Inicio
Planificar los hitos a lo largo del proyecto en el que se va a supervisar la actividad del
proveedor de acuerdo con el procedimiento de revisin conjunta y el proceso de
auditora.
Aceptacin y Finalizacin
Pg. 4
Proceso de suministro
Este proceso contiene las actividades y tareas del proveedor. Se compone de las siguientes
actividades: Iniciacin, preparacin de la respuesta, contrato, planificacin, ejecucin y control,
revisin y evaluacin y, entrega y terminacin.
Puede ser iniciado por la decisin de preparar una propuesta para responder a la peticin de un
cliente o mediante la firma de un acuerdo con el comprador para proporcionar un servicio. El servicio
puede ser el desarrollo de un producto de software, la operacin de un sistema con un software o el
mantenimiento de un producto.
Este proceso contiene las actividades y tareas del proveedor. Tiene tareas para determinar los
procedimientos y recursos necesarios para gestionar el proyecto.
Inicio
Preparacin de la Respuesta
Contrato
Planificacin
Ejecucin y Control
Revisin y Evaluacin
Entrega y Finalizacin
Pg. 5
Entregar el producto o servicio software tal cual est especificado en el contrato.
Proceso de desarrollo
Este proceso del ciclo de vida contiene las actividades y tareas del desarrollador de software. El
desarrollo a largo plazo denota tanto el desarrollo de nuevo software y modificacin de un software
existente. El proceso de desarrollo puede ser utilizado, al menos, de dos formas:
(1) Como una metodologa para el desarrollo de prototipos o para el estudio de los requisitos
y el diseo de un producto.
Las actividades y tareas de este proceso son responsabilidad del desarrollador. Contiene las
actividades de ingeniera de software para el producto software.
Refinar el diseo de alto nivel hasta los elementos software que puedan ser
codificados, compilados y probados.
Diseo detallado para las interfaces externas.
Pg. 6
Definir requisitos de pruebas y planificar las pruebas de las unidades.
Evaluar el diseo detallado y los requisitos de prueba.
Nota 2: pruebas de calificacin son las pruebas llevadas a cabo por el desarrollador y
presenciadas por el adquiriente para demostrar que el producto software cumple sus
especificaciones y est listo para ser usado en su entorno de destino.
Proceso de operacin/explotacin
Engloba las actividades y tareas del operador de un sistema de software. El proceso comprende el
funcionamiento del software y de apoyo operativo a los usuarios.
Pruebas de Operacin
Soporte al Usuario
Proceso de mantenimiento
Contiene las actividades y tareas de la organizacin encargada del mantenimiento. Este proceso se
activa cuando un sistema se somete a modificaciones en el cdigo y la documentacin asociada
debido a un error, una deficiencia, un problema, o la necesidad de una mejora o adaptacin. El
objetivo es modificar un sistema existente preservando al mismo tiempo su integridad. Cada vez que
un producto de software necesita modificaciones, el proceso de desarrollo se invoca para efectuar y
completar las modificaciones correctamente.
Migracin
Retirada de Software
Pg. 9
2. PROCESOS DE SOPORTE
El estndar ISO/IEC 12207 contiene un conjunto de ocho procesos de soporte. El estndar contiene
un grupo de 8 procesos de soporte, cuyo objetivo es, valga la redundancia, brindar soporte y apoyar
a los procesos primarios, con el objetivo de contribuir a la calidad y xito del proyecto. Estos
procesos pueden ser invocados tanto por procesos primarios, como por otro proceso de soporte.
Proceso de documentacin
Este es un proceso para registrar la informacin producida por un proceso de ciclo de vida del
software. El proceso define las actividades para planificar, disear, desarrollar, editar, distribuir y
mantener los documentos necesarios por todos los interesados: gerentes, ingenieros, usuarios del
sistema, etc.
El cometido de este proceso consiste en identificar, definir y asignar diferentes versiones a los
distintos elementos del sistema. El proceso se apoya en el control de las modificaciones y
liberaciones de los distintos elementos, y se ocupa de mantener y reportar el estado de estos
elementos a lo largo del tiempo.
Identificacin de la configuracin
Esta actividad est compuesta por una nica tarea, que dice que deber establecerse
un esquema para la identificacin de los elementos que van a ser controlados por el
proyecto. Para cada elemento se deber identificar: la documentacin que establece
la lnea de referencia, las referencias a las versiones y otros detalles de identificacin.
Control de la configuracin
Pg. 10
Esta actividad cuenta con una nica tarea en la cual deben identificarse y registrarse
las peticiones de cambio, analizar y evaluar los cambios, aprobar o rechazar la
peticin, implementar y verificar los cambios. Deber existir un rastro auditable
mediante el cual se pueda rastrear cada modificacin, las razones para la
modificacin y la autorizacin de la modificacin.
Evaluacin de la configuracin
Uno de los requerimientos para el aseguramiento de la calidad es que esta rea no est ligada
organizacionalmente a los responsables de proveer los servicios o desarrollar el producto.
Los objetivos del proceso de aseguramiento de la calidad debern ser el asegurar que los
productos de software y los procesos empleados para proporcionar dichos productos de
software cumplen sus requisitos establecidos y se adhieren a sus planes establecidos.
Pg. 11
Conviene que el proceso de aseguramiento de la calidad se coordine con los procesos
relacionados de verificacin, validacin, revisin conjunta y auditora.
Se deber preparar, documentar, implementar y mantener durante la vida del contrato un
plan para llevar a cabo las actividades y tareas del proceso de aseguramiento de la calidad.
El plan entre otras cosas debe incluir lo siguiente: normas de calidad, metodologa,
procedimientos y herramientas, procedimientos para la revisin del contrato y posterior
coordinacin, recursos, plazos y responsabilidades.
Se deber asegurar que las personas responsables de asegurar el cumplimiento de los
requisitos del contrato tienen la libertad desde el punto de vista organizativo, recursos y
autoridad necesarios para permitir evaluaciones objetivas.
En esta actividad, se dice que se deber asegurar que los productos de software y la
documentacin relacionada cumplen con el contrato y se adhieren a los planes.
Proceso de verificacin
Este proceso provee las evaluaciones referentes a la verificacin de un producto o servicio de una
actividad dada.
Las actividades de este proceso son: verificacin del proceso, requerimientos, diseo, cdigo,
integracin y documentacin. La verificacin no reemplaza las evaluaciones asignadas a un proceso,
sino que las complementa.
Pg. 12
En esta actividad se indica que se deben seleccionar las tareas de verificacin que
sern llevadas a cabo y en base a ellas preparar y documentar un plan de verificacin.
Dicho plan deber tener en cuenta las actividades del ciclo de vida y productos de
software sujetos a verificacin. El plan deber tener en cuenta procedimientos para
hacer llegar los informes de la verificacin al adquiriente y a otras organizaciones
involucradas.
Verificacin
Proceso de validacin
Verificacin y validacin pueden ser llevados a cabo tanto por el proveedor como por el cliente, o por
una tercera parte independiente.
Para realizar un proceso de validacin, se debe preparar y documentar un plan de validacin, que
debe incluir lo siguiente:
Pg. 13
Proceso para evaluar el estado y los productos de una actividad de un proyecto. Las revisiones
conjuntas se realizan tanto a nivel tcnico como a nivel de la gestin del proyecto, y se mantienen a
lo largo de la vida del contrato.
Consta de 6 tareas:
Proceso de auditora
Pg. 14
Implementacin del Proceso
Esta actividad cuenta con una lista variada de tareas donde se especifica que se
requiere para la correcta implementacin de la auditora.
Auditora
El propsito de este proceso es proporcionar mecanismos para la creacin de procesos que permitan
resolver problemas y aplicar acciones correctivas con el objetivo de solucionar y prever nuevos
problemas. Es un proceso de soporte nato ya que su ejecucin surge cuando se detecta un problema,
de cualquier naturaleza (incluyendo no conformidades), en cualquier otro proceso (primario o de
soporte) que ya se est ejecutando.
Pg. 15
El resultado esperado de la correcta implementacin de este proceso es el desarrollo de una
estrategia de resolucin de problemas que asegure que todos los problemas descubiertos sean
analizados, documentados y resueltos. La identificacin y ejecucin de soluciones aceptables a los
problemas y la forma de poder prevenirlos en el futuro.
Solucin de problemas
Esta actividad cuenta con una nica tarea en la indica que se debe contar con el proceso de
solucin de problemas establece los requisitos que debe cumplir dicho proceso. El proceso
consiste en un bucle cerrado al que se incorporan los problemas, se analizan y se informa a
las partes implicadas de la existencia de la anomala, se identifican sus causas y se
solucionan.
Solucin de Problemas
Esta actividad tambin cuenta con una nica tarea en la que cual se especifica la ejecucin
del proceso. Una vez detectado el problema, se deber preparar un informe donde se
describa el mismo.
Pg. 16
3. LOS PROCESOS DE LA ORGANIZACIN
Los procesos de la organizacin tienen como propsito establecer, controlar y mejorar otros
procesos. Generalmente abarcan a varios procesos juntos y tienen un carcter genrico. Cada
proceso los implementa y ajusta de acuerdo a sus necesidades.
Proceso de Gestin.
Proceso de Infraestructura.
Proceso de Mejora.
Proceso de Formacin.
Proceso de gestin
El propsito de este proceso es proveer actividades y tareas genricas que pueden emplearse y
ajustarse para gestionar otros procesos. La norma pone al gerente como rol responsable de dicho
proceso.
Cualquier proceso que requiera gestin implementar y ejecutar el proceso de gestin, el mismo se
adapta a procesos primarios como actividades, por ejemplo gestin del proyecto, proceso de
adquisicin, proceso de mantenimiento. Todos estos procesos implementan una instancia particular
del proceso de gestin, tan compleja como sea necesario.
Proceso de infraestructura
El propsito de este proceso es definir las actividades necesarias para establecer y mantener la
infraestructura necesaria para poder ejecutar correctamente cualquier proceso del sistema, ya sea
primario o de soporte. Dentro de infraestructura entran elementos como software, hardware,
estndares, herramientas, tcnicas, y utilidades.
Este proceso est presente en todos los procesos de la organizacin y cuenta con tres actividades:
Establecimiento de la infraestructura
Mantenimiento de la infraestructura
Implementacin de la Infraestructura
Pg. 17
Esta actividad cuenta con dos tareas que especifican qu elementos se deben considerar
para el establecimiento de la infraestructura. Primeramente se debe planificar y documentar
la configuracin de la misma, considerando aspectos de funcionalidad, prestaciones,
seguridad fsica y de acceso, disponibilidad, requisitos de espacio, costes y limitaciones de
tiempo. Por ltimo, se indica que se deber instalar la misma para la ejecucin del proceso.
Mantenimiento de la infraestructura
Proceso de mejora
Este proceso tambin est presente en todos los procesos de la organizacin y su propsito es
proporcionar actividades bsicas y de alto nivel para establecer, evaluar, medir y mejorar un proceso
de ciclo de vida del software.
Estas actividades se establecen a nivel de la organizacin, de forma que la mejora sea global a todos
los proyectos.
Esta actividad cuenta con una nica tarea en la que se especifica que la organizacin
deber establecer un conjunto de procesos de carcter organizativo para todos sus
procesos. Tambin se indica que se debern establecer mecanismos de control,
evaluacin y seguimiento para mejorarlos.
Por ltimo, se cuenta con la actividad mejora del proceso, que cuenta con tres
tareas:
Indicacin de las mejoras que se consideren necesarias relativas a todos los procesos
de la organizacin.
Pg. 18
Recopilacin de datos histricos para obtener una base de conocimiento amplia y
consistente.
Este proceso se utiliza para identificar y realizar el aprovisionamiento necesario para adquirir o
desarrollar los recursos y habilidades del personal en los niveles de gestin y tcnicos. El proceso
requiere que se elabore un plan de formacin, se genere material de capacitacin y se imparta al
personal de forma adecuada.
El propsito de este proceso es proporcionar la formacin necesaria del personal. Gran parte de la
operativa de una organizacin, as como la ejecucin de las diferentes tareas depende de un personal
bien formado y capacitado, tanto en aptitud, como tcnicamente.
Para lograr esto, existe el proceso de Recursos Humanos, que cuenta con tres actividades:
implementacin del proceso, desarrollo del material e implementacin del plan. La norma hace
nfasis en una buena planificacin e implementacin de la formacin.
Esta actividad tiene como propsito llevar a cabo una revisin de los requerimientos
de formacin que existen en la organizacin ante un proyecto determinado y prever
con tiempo la adquisicin de materiales e infraestructura necesaria. Cuenta con una
nica tarea, en la que se incluyen los requerimientos de preparacin y
documentacin del plan de formacin.
Esta actividad cuenta con una tarea en la que se requiere que se desarrollen los
manuales de formacin y el material de presentacin adecuados, de acuerdo a lo
planificado en la actividad anterior.
Esta actividad cuenta con dos tareas. En una de ellas se indica que la implementacin
del plan de formacin del personal debe mantener registros de sus diferentes
actividades. Tambin se indica que se debe asegurar que el personal sea
adecuadamente formado en los plazos establecidos.
Pg. 19
PROPUESTA DE CLASIFICACIN DE PROCESOS
En la siguiente tabla se indican las categoras y subcategoras de procesos segn ISO/IEC 12207.
PROCESOS
CATEGORA SUBCATEGORA
ADQUISICIN
SUMINISTRO
PRINCIPAL DESARROLLO
EXPLOTACIN
MANTENIMIENTO
DOCUMENTACIN
GESTIN DE CONFIGURACIN
ASEGURAMIENTO DE CALIDAD
VERIFICACIN
SOPORTE
VALIDACIN
REVISIN CONJUNTA
AUDITORA
RESOLUCIN DE PROBLEMAS
GESTIN
INFRAESTRUCTURA
ORGANIZACIN
MEJORA
FORMACIN
Nosotros utilizaremos una seleccin de estos, tal como se describe en el siguiente apartado.
Pg. 20
PROPUESTA. DENOMINAR PROCESOS CON TERMINOLOGA SCRUM
Para simplificar, utilizamos slo algunos procesos de ISO/IEC 12207 y los nombramos con
terminologa habitual de metodologas giles basadas en Scrum. Ver procesos resaltados en rojo en
la siguiente tabla.
PROCESOS
CATEGORA SUBCATEGORA
ADQUISICIN
SUMINISTRO = ANLISIS
PRINCIPAL DESARROLLO = DESARROLLO
EXPLOTACIN = PRODUCCIN
MANTENIMIENTO = CORRECTIVO
DOCUMENTACIN
GESTIN DE CONFIGURACIN
ASEGURAMIENTO DE CALIDAD
VERIFICACIN
SOPORTE
VALIDACIN
REVISIN CONJUNTA
AUDITORA
RESOLUCIN DE PROBLEMAS = INCIDENCIA
GESTIN
INFRAESTRUCTURA
ORGANIZACIN
MEJORA
FORMACIN = FORMACIN
SUBCATEGORA DE PROCESOS
ANLISIS
DESARROLLO
PRODUCCIN
CORRECTIVO
INCIDENCIA
FORMACIN
Pg. 21
AADIR UNA COLUMNA EN LA HOJA DE CLCULO PARA INCLUIR LA
SUBCATEGORA DE PROCESOS
Con objeto de simplificar la codificacin y el anlisis de las tablas, se propone indicar en columnas
separadas el tipo de trabajo (Requerimiento y Tarea) y en una segunda columna adicional la
subcategora del tipo de proceso, en el documento de Excel de tareas semanales.
1 Columna: Requerimiento/Tarea
Requerimiento
Tarea
Anlisis
Desarrollo
Produccin
Correctivos
Incidencias
Formacin
Ejemplo:
Pg. 22