Вы находитесь на странице: 1из 26

Implementacin del RUP

en una Organizacin
- El enfoque de VOLVO IT

Goran V. Grahn & Boris Karlsonn


Volvo Information Technology

VOLVO IT White Paper


_____________________________________

Escrito por Volvo, este artculo describe la implementacin

del Rational
Unified Process (RUP) en Volvo IT y como los efectos de usar RUP son
evaluados a travs de cuestionarios y usando el framework SPICE (ISO
15504) para el diagnstico de la capacidad del proceso de software.

Tabla de Contenido
RESUMEN......................................................................................................................... 4
INTRODUCCIN ............................................................................................................ 5
VOLVO IT ...................................................................................................................... 5
CONTEXTO DE LAS MEJORAS AL PROCESO DE SOFTWARE EN VOLVO IT ......................... 5
CONTEXTO DEL NEGOCIO ........................................................................................ 7
OBJETIVOS Y DESAFOS DEL NEGOCIO ............................................................................. 7
EFECTOS ESPERADOS ....................................................................................................... 7
IMPLEMENTACIN DE UN NUEVO PROCESO DE DESARROLLO DE
APLICACIN................................................................................................................... 8
LA ESTRATEGIA DEL MTODO ......................................................................................... 8
CRITERIO DE EVALUACION ..................................................................................... 9
MAPS LA IMPLEMENTACIN DEL PROYECTO RUP .................................................... 10
EXPERIENCIA DE LOS PROYECTOS RUP............................................................ 15
CUESTIONARIOS ............................................................................................................. 15
HISTORIAS DE XITO...................................................................................................... 16
EVALUANDO EL EFECTO DE USAR RUP ............................................................. 17
COMO MEDIR LOS EFECTOS DE USAR RUP ................................................................... 17
EL FRAMEWORK SPICE................................................................................................. 17
ESTABLECIENDO PERFILES OBJETIVOS DE CAPACIDAD PARA EL RUP .......................... 18
PROGRAMA DE EVALUACIN ......................................................................................... 19
RESULTADO DE LA EVALUACIN ................................................................................... 20
COMO TRASLADAR EL CAPACIDAD DEL PROCESO A PRODUCTIVIDAD ........................... 22
CONCLUSIONES........................................................................................................... 23
HEMOS ALCANZADO LOS OBJETIVOS? ........................................................................... 23
RECOMENDACIONES GENERALES................................................................................... 23
NOTAS............................................................................................................................. 25

Resumen
_____________________________________________
El Rational Unified Process[1] o RUP es una estructura completa del proceso del
Desarrollo de Software creado por Rational Software. Es una metodologa de desarrollo
iterativo enfocada hacia los casos de uso, manejo de riesgos y el manejo de la
arquitectura. Para muchos desarrolladores de Software empezar a usar el RUP implica
nuevos conceptos, lo que significa que se requiere muchsima capacitacin y
aprendizaje en aquellos proyectos que usan el RUP por primera vez. Slo leer el libro
no es suficiente!
Este WhitePaper describe cmo el RUP es implementado en VOLVO Information
Technology, y como los efectos de usar el RUP se evalan a travs de cuestionarios y
usando el Framework SPICE (ISO 15504) para evaluar el mejoramiento y la capacidad
de los procesos de software de los equipos de desarrollo.

Introduccin
_____________________________________________
VOLVO IT
Volvo Information Technology (Volvo IT) es una filial propia de AB Volvo, uno de los
grupos industriales ms grandes de la Regin Nrdica. Volvo IT provee todo tipo de
soluciones industriales IT en una variedad de ambientes tcnicos. La compaa fue
fundada en 1998, a travs de una fusin de todos los recursos IT de diferentes
compaas del grupo Volvo. Volvo IT provee al Volvo Group, Volvo Cars(desde 1999 en
manos de la compaa Ford Motor) y otros clientes seleccionados con soluciones IT
efectivas como resultado de un largo perodo en el valor de los negocios.
Volvo IT es una compaa IT de cobertura mundial con cerca de 4300 empleados y
unas ventas anuales que supera los 5 billones de SEK1.
La organizacin de las tcnicas de Desarrollo de Aplicacin, las cuales estn
representadas en grandes sitios, es responsabilidad de los equipos de soporte a
aplicaciones de desarrollo y mantenimiento, con procesos de desarrollo, mtodos,
herramientas y aplicaciones del ambiente de desarrollo.

Contexto de las Mejoras al Proceso de Software en Volvo IT


Las mejoras al proceso de Software estn siempre ejecutadas en el contexto del
negocio. Ya que el Desarrollo de Aplicacin es uno de los procesos claves dentro de
Volvo IT, la implementacin de un nuevo proceso de Desarrollo de Aplicacin debe ser
vista como un mayor aumento de los procesos claves.
En nuestro esfuerzo por implementar el RUP hemos trabajado en tres capas:

El nivel de la Estrategia del Mtodo


El nivel de Desarrollo del Proceso/Mtodo
El nivel de Desarrollo de la Aplicacin.

SEK (Swedish Krona- Corona Sueca), Moneda de Suecia. 1 SEK= Aprox. 0,10782 USD

En el nivel de la Estrategia del Mtodo nosotros nos enfocamos en el desafo y objetivos


del negocio, y qu efectos esperamos mejorando los proceso del Software dentro de
Volvo IT. Esto se discute en el capitulo Contexto del Negocio.
Para cumplir los objetivos de la Estrategia del Mtodo nosotros necesitamos Procesos y
Mtodos, por ejemplo, Desarrollo de una Aplicacin. En el capitulo Implementacin de
un nuevo proceso de Desarrollo de una Aplicacin, se discute la estrategia para
evaluar, seleccionar e implementar tales procesos y mtodos. Tambin en ese captulo
se discuten los Objetivos de Implementacin y los resultados para verificar los efectos
esperados en el nivel de Mejorar los Procesos de Software en ese capitulo.
La base para evaluar los resultados de la implementacin del RUP es el resultado de los
proyectos que usan el RUP. En el capitulo Experiencia de los proyectos RUP nosotros
presentamos varios feedback y lecciones aprendidas de clientes y desarrolladores.
En el captulo Evaluando el Efecto de Usar RUP se discuten cmo hemos usado la
experiencia de los proyectos RUP junto con las evaluaciones de SPICE para verificar a
que grado hemos llegado en cuanto a los efectos esperados en la mejora de los
procesos de Software de Volvo IT.

Contexto del Negocio


_____________________________________________
Objetivos y Desafos del Negocio
Como muchas otras compaas en el negocio de las Tecnologas de Informacin IT,
Volvo IT enfrenta nuevos desafos que requieren cambios en la manera en que
desarrollamos, liberamos y le damos mantenimiento a las aplicaciones software. Algunos
de estos desafos son:
Las aplicaciones llegan a ser ms y ms integradas con el negocio. Por
consiguiente el proceso de desarrollo de aplicaciones debe estar integrado
con el proceso de Ingeniera del Negocio.
El ritmo del cambio del negocio est aumentando. Por consiguiente, Volvo IT
debe mejorar la productividad para poder responder a los nuevos y
requerimientos cambiantes.
Los clientes desean soluciones globales. Este hecho se traduce en un
incremento en el nmero de proyectos donde los equipos del proyecto se
distribuyen en diferentes ciudades y continentes.
La conclusin es que necesitamos un proceso de Desarrollo de Aplicaciones, el cual
junto con nuestros procesos existentes para Administracin de Proyectos e Ingeniera de
Negocios establecen un framework para satisfacer los desafos y cumplir los objetivos.

Efectos Esperados
A largo plazo los efectos esperados de usar el nuevo framework de procesos son:
Requerimientos bien definidos del negocio como entrada al proyecto de
desarrollo de Aplicaciones
Mejor producto ajustado a las necesidades presentes en el momento de
entrega.
Reduccin del tiempo requerido hasta la liberacin de la primera versin de
la aplicacin.
Ms proyectos en el tiempo estimado y dentro del presupuesto.
Reduccin de costos/tiempo de correccin.
Mejor mantenimiento del producto.
Un proceso comn para el Desarrollo de Aplicaciones.

Implementacin de un Nuevo Proceso de Desarrollo de


Aplicacin
_____________________________________________

Gartner Group afirma que:


Para implementar totalmente una metodologa AD 2 en una Organizacin AD
con 100 a 200 desarrolladores podra fcilmente requerirse de 2 a 3 aos
Puesto que Volvo IT es una compaa mucho ms grande que el ejemplo de la cita de
Gartner, fue importante entender que este tipo de esfuerzo tomara tiempo, y
necesitara una administracin apropiada. Volvo IT inici un proyecto a mediados de
1998 a fin de establecer una estrategia de cmo administrar asuntos metodolgicos y
encontrar candidatos adecuados para los procesos de Desarrollo de Aplicaciones.

La Estrategia del Mtodo


La implementacin o cambios en el proceso de desarrollo de una aplicacin en un
negocio, es una tarea con muchas trampas. En la Estrategia del Mtodo se reconocen
factores crticos en el xito de nuestro trabajo para el establecimiento de un proceso
comn en el desarrollo de una aplicacin en la compaa. Los factores de xito se
basaron en lo que el grupo Gartner Group y otros han encontrado. Algunos de los ms
importantes factores de xito son:
Participacin de la Administracin.
Estamos convencidos que es absolutamente necesario tener una
participacin activa de la alta gerencia, y que la administracin
entienda el alcance del cambio cuando una compaa est cerca de
implementar un nuevo y comn proceso.
Proceso interno en las habilidades de ingeniera.
El proceso de desarrollo de aplicaciones(incluyendo sus diferentes
variantes) es una parte central de los negocios de Volvo IT, y por
consiguiente, es importante que nosotros tengamos control del
contenido y configuracin de los diferentes procesos variantes dentro de
la compaa.
Integracin entre el proceso de desarrollo de aplicaciones, sus mtodos
y herramientas.
Precisamente un proceso(describe que hacer) para el desarrollo de
aplicaciones no es suficiente, tampoco es precisamente el mtodo
(describe como hacerlo)- se necesitan ambos, y es importante que los
diferentes mtodos y herramientas sean consistentes con el proceso.
2

AD: Application Development Desarrollo de Aplicaciones

El proceso debe ser fcil de liberar.


Puesto que comprendemos que el proceso seleccionado contina
evolucionando, debe ser fcil distribuir nuevas versiones y
configuraciones del mismo. Muchos procesos y mtodos buenos han
quedado olvidados, lo que no significa implementados.

CRITERIO DE EVALUACION
Basado en la Estrategia del Mtodo, Volvo IT decidi iniciar la investigacin del
mercado de candidatos aptos para los procesos de desarrollo de aplicaciones. Fue un
objetivo de Volvo IT usar un proceso estndar conocido, ensayado y probado de un
proveedor en el mercado que soporte practicas modernas en el Desarrollo de
aplicaciones.
Para este propsito se estableci un conjunto de criterios, los cuales fueron usados en la
evaluacin de los diferentes candidatos, con nfasis en el proceso mismo asi como
posibles relaciones con el proveedor. Los criterios que se determinaron fueron:

Proceso Iterativo.
Para responder de forma efectiva a los requerimientos del negocio que
varan constantemente, es importante que el proceso soporte desarrollo
iterativo

El proceso debe ser parametrizable.


Cada proyecto es nico, y un proceso es una descripcin genrica,
normativa de una situacin ideal. Por consiguiente el proceso debe ser
configurable a las necesidades del proyecto especfico. Sin embargo,
incluso si cada proyecto es nico, es posible clasificar los proyectos en
"Tipos de Proyectos". Por consiguiente tambin se tiene la necesidad de
configurar el proceso, no solamente para un proyecto especfico sino
tambin para algunas "variantes del proceso"
Entrenamiento Global y Soporte.
Es importante que los desarrolladores de Volvo IT puedan obtener
entrenamiento y soporte equivalente al de nuestras sedes principales.
Buen proveedor establecido.
Dado que es una inversin a largo plazo, es importante seleccionar un
proveedor que sobreviva en el mercado. Tambin es importante que
tenga una estrategia para continuar desarrollando el proceso
influenciado por las necesidades de los clientes.

Basado en los anteriores criterios, Volvo IT evalu posibles procesos y proveedores


diferentes, y el resultado fue que se selecciono el Rational Unified Process como el
Proceso comn para el Desarrollo de Aplicaciones.

MAPS La Implementacin del Proyecto RUP


Basado en la Estrategia de Implementacin, Volvo IT decidi establecer un proyecto
para la implementacin del RUP. El proyecto tomo el nombre de MAPS (Methods And
Process for System development).

Un enfoque por Etapas


Cambiar el Proceso de Produccin de un negocio siempre significa estrs para el
negocio afectado. Cuando el proceso del negocio cambia, y por consiguiente el
procedimiento en el negocio, esto significa un cambio cultural de grandes
proporciones. Este cambio cultural significa que la gente dentro del negocio necesita
cambiar su manera de mirar y pensar el negocio.
A fin de facilitar este cambio cultural debemos empezar a incrementar la experiencia
con el nuevo proceso para el desarrollo de aplicaciones. Ya que nos dimos cuenta que
sera imposible para nuestra compaa empezar a usar un enfoque de implementacin
por etapas.
El primer paso, de acuerdo con este enfoque, fue arrancar con unos pocos proyectos
pilotos, y basados en la experiencia de estos proyectos continuar con ms proyectos en
diferentes pasos de implementacin.

Los resultados que se esperaban del proyecto MAPS fueron:


Un suficiente nmero de desarrolladores entrenados en RUP, el uso de
UML y Racional Suite, que han ganado experiencia en al menos un
proyecto en cmo el proceso, mtodos y herramientas encajan entre s.

10

Un nmero suficiente de personal interno para hacer de Volvo IT


autosuficiente en cuanto a entrenadores del RUP y especialistas del RUP.
Material de soporte adaptado a las especificas necesidades de Volvo IT
para permitir dar un soporte a los proyectos RUP.

El proyecto MAPS continuar hasta que se alcance una masa crtica de


desarrolladores, entrenadores y especialistas.

Cmo Empezar?
Se empieza definiendo criterios de seleccin de proyectos apropiados durante el primer
paso de la implementacin. La razn de los criterios fue darnos cuenta que no
podramos permitir fallar en los primer proyectos del RUP en ningn aspecto, as que
tuvimos que ser muy selectivos cuando decidimos cuales proyectos deberan ser los
primeros en usar el RUP. Los criterios fueron:
Tamao del Proyecto: Proyectos con equipos de 3 -10 personas,
Duracin de 3 9 meses, 2000 5000 horas de esfuerzo.
Tiempo de Aprendizaje: La entrega no debe tener una fecha lmite
crtica. Tambin esperbamos baja productividad en las fases
iniciales de los primeros proyectos: Nosotros estimamos que por lo
menos 4 semanas extras eran necesarias para aprender el nuevo
proceso, los mtodos y las herramientas.
Inters en el aprendizaje: El administrador del proyecto y el equipo
deberan estar interesados en aprender el RUP.

Cmo Organizarse?
Est comprobado que el ms eficiente mtodo para aprender nuevos temas(ej. RUP,
UML y las herramientas) es combinando la teora con la prctica. Para ser capaz de
usar el RUP y las herramientas por primera vez, y para que al mismo tiempo se construya
un producto de alta calidad, el equipo del proyecto necesita mucho soporte. Es
responsabilidad de los Entrenadores del RUP ofrecer dicho soporte. El material de
soporte es desarrollado por Especialistas del RUP. Ellos tambin prestan ayuda a los
entrenadores del RUP y soporte a los desarrolladores. En el comienzo necesitbamos
experiencias externas puesto que no contbamos con personal interno listo dentro de
Volvo IT que pudiera actuar como Entrenadores o Especialistas.
Nos dimos cuenta que sera imposible para el proyecto MAPS ingresar el RUP dentro
de la organizacin necesitbamos sacar la organizacin. Para lograrlo, nosotros
establecimos Coordinadores locales
para cada sitio de desarrollo de Volvo IT. Los
coordinadores pueden ser vistos como administrador del sub-proyecto, con la
responsabilidad de coordinar todas las actividades de la implementacin del RUP
dentro de sus sitios. De hecho, los coordinadores son el equipo del proyecto MAPS.
Este enfoque ha demostrado funcionar muy bien. Hoy tenemos personal en Volvo IT
actuando como Entrenadores y Especialistas del RUP.

11

Implementacin de Roles Claves


En Volvo IT es responsabilidad de la organizacin usar RUP. Recursos tales como
entrenamiento, licencias, herramientas y capacitacin son suministrados por el proyecto
MAPS.
Entrenador RUP
El propsito a largo plazo del Entrenador del RUP es apoyar el uso del RUP en su sitio,
dando asistencia practica a los miembros del proyecto, e informando a las partes de
inters acerca de nuevos desarrollos, planes y resultados.
El objetivo a corto plazo es aprender a entrenar; llegar a ser hbil en el proceso,
mtodos y herramientas participando en proyectos RUP e intercambiando experiencias
con otros entrenadores participando en la red de entrenamiento.
EL entrenador necesita entender los artefactos producido en cada flujo de trabajo y el
nivel de acometimiento apropiado en cada fase e iteracin dependiendo de las
caractersticas del Proyecto.
Para ser capaz de actuar como un entrenador del RUP, se requiere experiencia en el
desarrollo del sistema y tambin un entendimiento de los roles del desarrollo y sus partes
en el proceso. El entrenador debe ser capaz de juzgar cuales herramientas son
apropiadas, teniendo en cuenta el tipo de proyecto y las experiencias previas de los
miembros del proyecto. El entrenador tambin necesita buenas cualidades personales
tales como habilidades de lder (hacer que las cosas funcionen y enfocarse en
resultados), habilidades comunicativas (ser capaz de escuchar, ganarse la confianza,
motivacin y persuasin), y habilidades educativas (ser capaz de poner la teora dentro
de la prctica).

12

Especialista RUP
Las responsabilidades de un Especialista en RUP incluyen desarrollo y mejoramiento del
material de soporte, ej. Configuracin del RUP en Volvo IT y sus plantillas, guas, etc. El
Especialista es tambin responsable de asistir al Entrenador del RUP en el soporte a
proyectos.
Para actuar como un Especialista del RUP, la persona debera tener amplia experiencia
en soporte de proyectos RUP (ej. trabajar como un Entrenador del RUP), a travs del
conocimiento del RUP, configuracin del proceso y revisiones.
Normalmente un Especialista en RUP se enfoca en uno o pocos flujos de trabajo del RUP.
Coordinador
Las responsabilidades de un coordinador son planear, administrar y monitorear el uso del
proceso, mtodos y herramientas en su sitio. El trabajo del coordinador conlleva
planeacin y monitoreo del uso del RUP, asistir la administracin del sitio para encontrar
adecuados proyectos RUP, coordinacin del entrenamiento e informacin de personal,
clientes y otras partes interesadas en el RUP.
El Coordinador tambin debera participar como miembro del Comit de Seguimiento
de los proyectos que usan RUP, para monitorear el uso y efectos del mismo.
Para actuar como Coordinador, la persona debe tener un entendimiento general del
RUP y sus implicaciones para los proyectos. La persona debe tambin ser vista como
representante del sitio, tanto desde el punto de vista de la administracin como de los
desarrolladores.

Principales Actividades del Proyecto


La parte principal de las actividades del MAPS se ejecutan desempeadas localmente
en los diferentes proyectos RUP. La mayor responsabilidad de MAPS es coordinar todas
estas actividades. Las diferentes actividades pueden ser clasificadas en los siguientes
grupos:
Entrenamiento:
El Entrenamiento en RUP, mtodos y herramientas es necesario y es un prerrequisito para
el xito! Pero el entrenamiento solo brinda un conocimiento terico del RUP, los mtodos
y las herramientas. Estamos convencidos de que este conocimiento terico no es
suficiente y por consiguiente las sesiones de entrenamiento son seguidas por ms
soporte durante los primeros proyectos del RUP (ver siguiente grfica).
Dependiendo del rol(es) que tiene una persona en el proyecto, se le recomienda tomar
diferentes cursos de entrenamiento acorde a la tabla siguiente. La mayora de los cursos
de entrenamiento son cursos estndar de Rational, pero nosotros tambin tenemos un
entrenamiento corto introductorio para aquellos que necesiten entender las
caractersticas de un proyecto RUP y las diferencias entre un proyecto RUP y un
proyecto tradicional . Ejemplo de personas en ese grupo objetivo, los clientes, usuarios
y administradores de Volvo IT, quienes usualmente estn involucrados en los Comits de
Seguimiento.

13

Soporte a los Proyectos RUP:


Como se describe arriba, el enfoque de aprendizaje del RUP es la combinacin del
conocimiento terico con el trabajo prctico. Basados en la experiencia de los
Proyectos RUP hemos clasificado el soporte en tres tipos: Talleres, Actividades de
entrenamiento y revisiones.

Talleres:
Muy rpidamente nos dimos cuenta de que todos los proyectos tienen casi los mismo
problemas cuando enfrentan ciertas actividades por primera vez. Para hacer el
entrenamiento ms efectivo y proactivo, nosotros creamos un conjunto configurable de
talleres. Cada Taller:
Refresca el conocimiento terico, obtenido en los cursos de
entrenamiento.
Aplica el conocimiento terico a los problemas especficos del proyecto
RUP, artefactos, etc.
Puesto que RUP, UML y las herramientas son nuevas para la mayora de los
desarrolladores, es importante enfocar los talleres lo ms temprano posible en el
proyecto. En la prctica esto significa que existe normalmente un enfoque fuerte en
este tipo de soporte en las fases de Concepcin y Elaboracin.

14

Entrenamiento:
El Entrenamiento es el soporte diario a los diferentes roles del equipo del Proyecto RUP a
travs de los talleres. Las actividades de entrenamiento son normalmente de una
naturaleza muy prctica y tangible. Tiene que ver con interpretar las actividades o
artefactos del RUP, crear un modelo especfico UML en una situacin especfica o
cmo usar ciertas herramientas en una situacin especfica.
Revisiones:
Las Revisiones son decisivas! Adems de las revisiones normales que garantizan la
calidad del producto construido dentro del proyecto, tambin se evalan los efectos
del soporte entregado al proyecto. Esta evaluacin extra es importante para nosotros
dado que la implementacin del RUP ser evaluada basada en el xito del soporte a
los proyectos RUP.
Las revisiones son realizadas por lo menos al final de cada fase, pero ellas pueden
tambin ser usadas como diagnstico del estado al final de las iteraciones.

Experiencia de los Proyectos RUP


_____________________________________________

Implementar y empezar a usar un nuevo proceso comn para el desarrollo de


aplicaciones implica una gran inversin para una compaa como Volvo IT. Por
consiguiente fue muy importante para nosotros recibir feedback, de cmo el RUP en s y
el soporte fueron recibidos por los miembros del equipo del proyecto RUP y los clientes.

Cuestionarios
Una manera de evaluar el RUP y el soporte del RUP es travs de cuestionarios. La
evaluacin se hace con clientes representativos, el administrador del proyecto y el
equipo del proyecto cuando el Proyecto RUP termina. El cuestionario se centra en 5
diferentes reas:
RUP vs. La forma tradicional de trabajar.
Desarrollo del proceso.
Entrenamiento.
Acompaamiento y soporte.
El enfoque iterativo.
Por cada rea usamos diversas preguntas a fin de encontrar las opiniones de todos los
involucrados.

15

El resultado es compilado y presentado al equipo del proyecto y al comit de


seguimiento del proyecto MAPS. Nuestro objetivo general es tener por lo menos el 80%
de los encuestados satisfechos (nivel 3 4 en una escala de 1 a 4). Los resultados
mostraron que nosotros por lejos excedimos esta objetivo- en algunos casos por encima
del 95%!
Si resumimos las lecciones aprendidas basados en preguntas especficas del
cuestionario y comentarios adicionales dados por los encuestados, los mensajes ms
importantes son:

El foco en los requerimientos y los riesgos durante el proyecto se estima


especialmente.
Se espera que el costo de mantenimiento de la aplicacin sea ms bajo
en comparacin con mantener una aplicacin desarrollada de la
manera tradicional.
Implementar un nuevo proceso de Desarrollo de Aplicacin es una
inversin en competencia, y debe ser considerada como una mejora a
largo plazo.

Historias de xito
La prueba ms valiosa se da cuando los clientes de los proyectos RUP dicen querer la
nueva forma de trabajar. Tenemos varios ejemplos de esto. A continuacin se
presentan citas del cliente de uno de los proyectos RUP, presentadas en una revista
interna de Volvo IT:
Ha sido fantstico. Hemos sido invitados a tomar parte de una discusin y hemos
aportado una solucin lista para ser puesta en operacin.
Hemos encontrado que las diferentes fases han trado a discusin temas que
probablemente nunca hubiramos pensado. Como encontramos la arquitectura a
buena hora, no fuimos afectados por sorpresas desagradables de ltima hora.
Realmente ellos han estado trabajando para encontrar ejemplos de la manera en que
soluciones diferentes funcionan y han explicado cosas de una forma que todos
entiendan. Todos han estado involucrados e influenciados del proceso, desde los lderes
de produccin y trabajadores de ensamblaje. Siempre han estado muy receptivos a
nuestras necesidades y deseos. Como si pudieran entender lo importante. Trabajando
de esta forma nos han hecho mejores definiendo solicitudes.

16

Evaluando el Efecto de usar RUP


_____________________________________________
Como Medir los Efectos de Usar RUP
El nmero total de desarrolladores para ser entrenados en RUP se estima en 1000
personas. Esto es equivalente a una inversin en el rango de 5 10 millones de SEK,
equivalente a 5 10 Millones de USD. As la pregunta de la alta gerencia no fue una
sorpresa: Puede usted probar que el RUP es una buena inversin? A menos que los
efectos positivos de usar el RUP en la primera ronda del proyecto pudieran ser
documentados, porque deberamos continuar?
Ahora bien, que podramos medir?
El cuestionario diseado para proporcionar un feedback de los proyectos
RUP pilotos evidentemente no sera considerado una prueba objetiva. Es
normal ser positivo cuando se est entre los primeros que trabajan con un
nuevo proceso y usando nuevas herramientas.
Slo mirando la precisin de entrega (Tiempo Actual y Costo comparado
con estimaciones iniciales) de los proyectos usando RUP no sera
suficiente para juzgar los efectos del RUP. Por el contrario, el enfoque
iterativo permite al cliente y el proveedor estar de acuerdo con cambios
en el alcance y las prioridades, a medida que el conocimiento del
problema y la solucin aumenta.
Luego nos encontramos con el Framework SPICE (Software Process
Improvement and Capability dEtermination) para evaluar la Capacidad
del Proceso. Evaluando la manera tradicional de trabajo de un
equipo involucrado en un proyecto, y luego comparando estos datos
con los resultados de una evaluacin del mismo equipo trabajando con
RUP, esperaramos ser capaces de documentar cmo la capacidad del
Proceso de Software del equipo fue mejorada.

El Framework SPICE
SPICE2 (ISO/IEC TR 15504) suministra un modelo bidimensional de procesos y capacidad
de procesos que forma la base para la evaluacin de procesos. Los procesos se
agrupan en cinco categoras:
Procesos Cliente Proveedor, ej. Recoleccin de Requerimientos
Procesos de Ingeniera, ej. Construccin del Software
Procesos de Soporte, ej. Administracin de la Configuracin
Procesos Administrativos, ej. Administracin de Proyectos
Procesos Organizacionales, ej. Administracin de Recursos Humanos
Dentro de cada categora, los procesos se describen por un enunciado del propsito
del proceso, el cual incluye una descripcin de los resultados deseados del proceso de
implementacin.

17

Para cada proceso, la capacidad del mismo es evaluada usando nueve atributos,
examinando el desempeo del proceso, cmo es administrado, qu productos del
trabajo se producen, como se administran los cambios, etc. La calificacin de estos
atributos se usa para obtener el nivel de capacidad del proceso. Cada proceso recibe
una evaluacin separada del nivel de capacidad.

SPICE tiene mucho en comn con el modelo de Capacidad y Madurez (Capability


Maturity Model3 - CMM ) del instituto de Ingeniera de Software (Software Engineering
Institute (SEI)) de la Universidad Carnegie Mellon, US. La principal diferencia es que SPICE
permite seleccionar cuales procesos usted desea evaluar, y cada proceso es calificado
por si mismo, mientras que CMM tiene un paquete de procesos que deben ser
ejecutados de acuerdo a ciertos requerimientos para que la organizacin alcance un
determinado nivel de madurez. El nuevo CMM integrado (CMMI) ofrece un enfoque
similar al SPICE.

Estableciendo Perfiles Objetivos de Capacidad para el RUP


As, debe ser posible establecer un "Perfil Objetivo de Capacidad" que una organizacin
puede lograr si se sigue el RUP de manera idealista. En realidad dicho perfil objetivo
existi dentro de Rational Software4 como resultado de un estudio interno en 1998 por
John Smith de Rational Software. Este estudio evalu una versin anterior de RUP usando
una versin anterior de SPICE.
En la primavera del 2000 un "perfil objetivo de capacidad" para el RUP versin 5.5 fue
determinado usando la versin actual de SPICE en la Universidad de Boras, Suecia5. El

18

resultado de este estudio muestra que se espera un nivel de capacidad 3 para un


conjunto de procesos seleccionados en una situacin idealista cuando se sigue la
metodologia del RUP. Sin embargo, se espera alcanzarlo en un lapso de 2 - 3 aos en
un equipo trabajando con RUP. No podemos esperar que los equipos de proyectos
alcancen el nivel 3 en sus primeros proyectos usando el RUP, si estos parten del nivel 1 o
2.

Programa de Evaluacin
Se configur un programa de evaluacin para determinar el "Antes/Despus de" los
perfiles de capacidad para tres de los diez equipos del proyecto RUP en el paso 1 de
nuestra implementacin del RUP. Los proyectos fueron escogidos para representar
diferentes reas de aplicacin, diferentes situaciones y diferentes ambientes tcnicos.
Se contrato un consultor externo para entrenar algunos asesores internos y dirigir el
equipo de evaluacin, y planeamos nuestro programa de evaluacin con las siguientes
fases, de acuerdo con los requerimientos de SPICE:

Cuestionarios Pre-evaluacin, con recoleccin de documentos claves


Plan de evaluacin y cronograma
Reuniones informativas de 1 con el equipo del proyecto (una semana antes de
las entrevistas)
1 da de entrevistas al equipo del proyecto
Validacin y Evaluacin

19

Feedback de conclusiones al equipo del proyecto (un da despus de las


entrevistas)
Reporte de Evaluacin (Una semana despus de las entrevistas)

El alcance de la evaluacin en trminos de los procesos evaluados, se muestra en la


Fig8. Para todos estos procesos el nivel esperado de capacidad es igual a 3 usando
RUP 5.5 de una manera ideal.
Para cada proyecto evaluado:

La "Evaluacin del antes" o 'La forma tradicional de trabajo" fue ejecutada al


inicio del proyecto, observando como el proyecto probablemente se ejecutara
si no hubiese sido seleccionado como uno de nuestros proyectos RUP.

La "Evaluacin del despus", evaluando la manera de trabajar con el RUP fue


realizada en la fase de construccin del RUP.

Las entrevistas fueron delimitadas para ajustarlas en un da, para interrumpir lo menos
posible al equipo del proyecto mientras al mismo tiempo se recolectaba suficiente
informacin para ser capaz de dar una correcta evaluacin. En un caso, un da fue muy
corto para evaluar todos los procesos que tenamos planeados evaluar. Tambin
descubrimos que en algunos casos fue muy prematuro evaluar el proceso de
Integracin y Pruebas dado que estos no haban sido realizados en la primera iteracin,
para el alcance que una satisfactoria evaluacin tuviera.

Resultado de la Evaluacin
Abajo se muestra los resultados de la evaluacin de uno de los proyectos. Para cada
proceso, la barra de arriba representa la Forma Tradicional de trabajo y la de abajo
representa El Trabajo con RUP.

20

El diagrama muestra que la capacidad increment de nivel 1 a nivel 2 en los procesos


de Requerimientos, Anlisis, Diseo y Administracin del Proyecto. Los procesos de
Verificacin y Administracin de Riesgos no fueron ejecutados del todo de la forma
tradicional de trabajo. Trabajando con RUP , estos fueron clasificados en el nivel 1.
En todos los tres proyectos que evaluamos, los procesos de Requerimientos, Anlisis,
Diseo, Construccin y Administracin del Proyecto fueron clasificados en el nivel 2 al
Trabajar con RUP (con una excepcin). Estos son los procesos en los que se ha
centrado la capacitacin de estos primeros proyectos RUP. Es claro que el enfoque
cuando se empieza a usar RUP est en conseguir primero el producto final correcto, lo
que significa que el proceso de ingeniera, las tcnicas de Modelamiento y las nuevas
herramientas se les da la mayor atencin. En dos de estos proyectos el ambiente
Windows DNA se uso por primera vez, adicionando ms necesidades al entrenamiento y
acompaamiento en temas tcnicos.
El resultado de la evaluacin claramente indica que la implementacin del RUP est
teniendo efectos. Sin embargo, hay un gran potencial para mejoras adicionales a la
capacidad del proceso con la experiencia ganada en RUP. Las acciones de mejoras en
el proceso fueron sugeridas a los equipos del proyecto en las sesiones de feedback en
donde los resultados de cada evaluacin fueron presentados y discutidos. Existe
tambin un potencial para incrementar el soporte dado a los proyectos RUP en los
procesos de Administracin y Soporte. Las acciones sugeridas concernientes tanto al

21

contenido del soporte as como a la manera en que se brinda, fueron documentadas


durante las evaluaciones. As, adems de
suministrar pruebas de que la
implementacin del RUP tenia efectos positivos, las evaluaciones dieron un valioso
entendimiento de las fortalezas y debilidades de cmo se estaba ejecutando la
implementacin.

Cmo Trasladar la Capacidad del Proceso a Productividad


Cuando se report lo que habamos determinado a la alta gerencia, ellos estuvieron
bastante satisfechos pero no pudieron contener la pregunta: Puede decirnos cuanto
dinero ahorraremos?
Bien, una pregunta difcil de contestar... Sin embargo, la edicin de abril de 2001 de IT
Metrics Strategies6 contiene un articulo, que discute que tan rpido, econmico y mejor
un equipo que trabaja en CMM nivel 2 comparado con un equipo trabajando en CMM
nivel 1. El articulo se basa en estadsticas de evaluacin CMM en una gran base de
datos ejecutada por Quantitative Software Managment (QSM), que contiene medidas
de productividad aproximadamente de 2500 proyectos. Al mismo tiempo que este
artculo
discute algunos grandes proyectos, tambin hace referencia a datos
presentados por QSM7 que muestran que pasar de CMM nivel 1 a CMM nivel 2 cuando
se codifica y prueba una aplicacin de negocios de aproximadamente 50000 lneas de
cdigo.
Reducir el cronograma en un 17%
Reducir el esfuerzo en un 46%
Reducir los defectos en un 51%
Y, pasar de CMM nivel 2 a CMM nivel 3 reducir nuevamente los esfuerzos y defectos
en aproximadamente un 50%!
Ahora, los niveles de madurez del CMM no son exactamente los mismos niveles de
capacidad del SPICE, pero el mensaje esta claro: Las Mejoras al Proceso de Software
tendrn un efecto muy positivo tanto en Tiempo para Comercializarlo y Costo, as como
en calidad del producto.
Implementando RUP, estaremos en capacidad de alcanzar nivel de capacidad 3 para
procesos seleccionados en un lapso de 2 3 aos para equipos trabajando con RUP. As
que, an cuando la inversin necesaria para implementar RUP conforme a La
Metodologia de Volvo IT es considerable, nuestro potencial de ahorro es mucho mayor.
La alta gerencia acept esta serie de evidencias circunstanciales, y nos dio la
aprobacin para seguir con el siguiente paso en el plan de implementacin.

22

Conclusiones
_____________________________________________
Hemos alcanzado los Objetivos?
Basados en el feedback de los cuestionarios y testimonios de los clientes, la conclusin
es que nosotros estamos movindonos en la direccin correcta. Clientes as como
desarrolladores apoyan la nueva forma de trabajo y dicen que los requerimientos son
de mejor calidad los cuales conducen a una ms slida arquitectura. Las posibilidades
de administrar los cambiantes requerimientos y tener una primera versin del producto
montado y funcionando ms pronto en el proyecto se aprecia especialmente. Ellos
tambin anticipan que el producto construido acorde al RUP debe ser fcil y ms
barato de mantener.
El diagnstico de SPICE resulta evidentemente indicando que la implementacin del
RUP incrementa la capacidad del Desarrollo de Aplicaciones. Sin embargo, hay un gran
potencial para fomentar mejoras a la capacidad del proceso con crecimiento en la
experiencia en RUP.
Cuando este viene deUn proceso comn de Desarrollo de Aplicaciones sabemos que
tomar tiempo para alcanzar el objetivo. Probablemente esto tomar otros cinco aos,
pero hoy nosotros estamos confiados que este puede y debe ser hecho.

Recomendaciones Generales
Basados en nuestra experiencia y diagnstico nosotros pensamos que este enfoque de
implementacin del RUP, tambin funcionara adecuadamente en otras organizaciones.
Algunas de nuestros factores claves de xito han sido:

Participacin de la Gerencia. Asegurarse que la administracin brinda un


soporte activo para la implementacin del RUP desde el comienzo y
durante todo el proyecto de implementacin.
Establecer un proyecto de implementacin. Es importante separar este
tipo de gran esfuerzo de las actividades normales en el campo de la
organizacin. Establecer un proyecto separado hace posible dar al
esfuerzo el foco y la atencin necesarios.
o Ejecutar la Metodologa. No implementar todas las partes del RUP
en todas las partes de la compaa de inmediato. Implementar
un nuevo proceso de desarrollo de aplicaciones es implementar
una nueva forma de pensamiento y de trabajo en la compaa.
Mucha competencia se ha construido a partir de diferentes roles y
que toman tiempo.
o Roles bien definidos Y Responsabilidades. No intentar imponer
el RUP dentro de la organizacin. Usar una organizacin
corresponsabilidades bien definidas y distribuidas para coordinar
la implementacin y acompaamiento a los miembros del
proyecto.

23

Paquetes de Talleres (incluyendo material de soporte), para ser


adaptado a las necesidades especificas del proyecto. Asegurar que
usted puede soportar los proyectos RUP preparando buen material de
soporte.

Sin embargo... para implementar nuevos procesos de desarrollo de aplicaciones como


el RUP es an un desafio para el equipo de mejoramiento del proceso de software y
para la compaa. Algunas de las lecciones aprendidas son:
Inversin Inicial. Toma tiempo y cuesta mucho dinero la implementacin
de un nuevo proceso de desarrollo. Por consiguiente el esfuerzo debera
ser contemplado como una inversin en competencia. En cuanto a
cada inversin usted debera estimar la rentabilidad.
No menos preciar el factor humano. Para cambiar la forma de pensar y
actuar de las personas toma tiempo. Es importante ser paciente.
A pesar de todo - Es posible!

24

Notas
_____________________________________________
[ 1 ] Philipe Krutchen, The Rational Unified Process, An Introduction, Secon Edition,
[ 2 ] Information about the SPICE Framework is available on the official homepage of SPICE
at www.sqi.gu.edu.au/spice
[ 3 ] Paulk M. C. et al. The Capability Maturity Model Guidelines for improving the

Software Process, Addison-Wesley, 1995.


[ 4 ] The assessment of RUP 5.0 against an older version of SPICE is available at
www.rational.com/products/rup/resource_center/media/RUP15504final.pdf
[ 5 ] Jakobsson Marie, Predicting software quality with ISO/IEC TR 15504 Capability

determination of the Rational Unified Process, Master Thesis of Informatics 2000:M17,


Department of Computer Science and Business Administration, University of Bors,
Sweden.
[ 6 ] Rifkin Stan., Climbing the SEI CMM Makes a Difference on Software Projects, in: IT

Metrics Strategies, April 2001, The Cutter Consortium


[ 7 ] Putnam Lawrence H., Linking the QSM Productivity Index with the SEI Maturity Level,

available at: www.qsm.com select Resources, look under White Papers

25

EL SECRETO DETRS
DE LA TECNOLOGIA DE
INFORMACIN
INDUSTRIAL EXITOSA

Un problema, casi solucionado, an es un problema no resuelto. Una solucin que


funcione en la teora an no es una solucin. Un problema no esta resuelto hasta que la
solucin ha demostrado funcionar en la prctica.( y no ha se ha creado un nuevo
problema). As es como nosotros hemos aprendido a considerar estos problemas
despus de muchos aos en medio de la realidad de la industria.
Alcanzar el xito no slo requiere un completo conocimiento de las Tecnologas de la
Informacin. Tambin es necesario tener unas bases slidas de los procesos industriales
y las altas demandas de una compaa industrial interesada en alcanzar el xito en el
mercado actual.
En Volvo IT usted tiene un socio que ha hecho de volvo el usuario lder de las
Tecnologas de Informacin en la industria automotriz. Nosotros estamos complacidos
de compartir nuestro conocimiento y experiencia con usted. Y lo que es ms importante,
nosotros no tememos asumir compromisos y estamos confiados del trabajo realizado.

26

Вам также может понравиться