Professional Documents
Culture Documents
PRESENTA:
JOS ANTONIO SANDOVAL ACOSTA
Asesor de Metodologa
Catedrticos Revisores
AGRADECIMIENTOS
A dios por permitirme llegar a este punto en mi desarrollo profesional y acadmico.
Agradezco especialmente a las personas que colaboraron con este trabajo,
asesorndome, respondiendo mis preguntas, y contribuyendo con un poco de su
conocimiento para enriquecer el mo.
DEDICATORIA
Dedico este trabajo a aquellas personas que han colaborado con mi formacin
acadmica y mi desarrollo profesional, ya que con este trabajo, obtengo un logro
muy importante en mi vida profesional y en mis aspiraciones personales.
ii
RESUMEN
Objetivo: Describir el uso de metodologas giles en una empresa de desarrollo de
software en Ciudad Jurez, Chihuahua.
Metodologa: La investigacin fue de carcter no experimental ya que no se
manipul la variable. La poblacin de inters fueron todos los equipos de desarrollo
que pertenecientes a la empresa de desarrollo de software. El marco muestral
comprendi 3 equipos de desarrollo de software de dicha empresa, conformados por
4 personas cada uno La unidad de anlisis estuvo enfocada a aquellos equipos de
desarrollo de la empresa que lleven proyectos manejados (con gerencia). La variable
evaluada fue el uso de metodologas giles en el proceso de desarrollo de software.
Los indicadores fueron: Tiempo de Respuesta al cliente; Resultados de la revisin de
producto; Resultados de los mtricos de calidad. El tipo de muestreo aplicado fue
total, toda la poblacin. La recoleccin de los datos se llev a cabo a travs del
cuestionario, el cual se envi por correo electrnico a cada uno de los integrantes de
los equipos de desarrollo de software. Resultados: Los principales resultados
indican que el uso de una metodologa gil para el desarrollo de software mejora los
tiempos de entrega as como la productividad, y ayuda a reducir costos en el proceso
de desarrollo de software.
Palabras clave (Metodologas giles, desarrollo de software).
iii
NDICE GENERAL
Agradecimientos
Dedicatoria
Resumen
ndice de Cuadros
ndice de Grficas
ndice de Figuras
Introduccin
Antecedentes
Marco Terico
Breve Introduccin a las Metodologas de Desarrollo
El Manifiesto gil
Programacin Extrema (XP)
Metodologa Scrum
Otras Metodologas giles
Metodologas Tradicionales
La metodologa RUP
Codificar y corregir (Code-and-Fix)
Microsoft Solution Framework (MSF)
Modelo en cascada
Desarrollo evolutivo
Desarrollo incremental
Desarrollo en espiral
Cuando Usar Metodologas giles
Ventajas de las Metodologas giles
Problemas Comunes a los Mtodos giles
Justificacin
Objetivo
Metodologa
1.- Lugar y tiempo
2.- Carcter
3.- Diseo
4.- Poblacin de inters
5.- Unidad de anlisis
6.- Variable
7.- Indicadores
8.- Recoleccin de datos
9.- Anlisis de la informacin
10.- Interpretacin de resultados
Resultados y Discusin
Conclusiones y Recomendaciones
Literatura citada
Anexos
Pgina
I
ii
Iii
v
vi
vii
1
2
4
4
6
11
14
17
18
18
20
21
22
24
26
28
32
33
34
36
37
38
38
38
38
38
38
38
39
39
39
39
40
55
56
58
iv
NDICE DE CUADROS
Cuadro
nmero
1
2
3
Ttulo
Pgina
9
29
31
NDICE DE GRFICAS
Ttulo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Grfica nmero
Pgina
Nivel de Participacin
Roles desempeados por los encuestados
Nivel de conocimiento/participacin
Tiempo de uso de Metodologas giles
Tamao del rea de trabajo
Conocimientos sobre la empresa
Porcentaje de proyectos con metodologas giles
Tiempo de uso de Metodologas giles por la empresa
Localidades que usan Metodologas giles
Razones para adoptar Metodologas giles
Metodologas giles ms conocidas
Barreras para adoptar las Metodologas giles
Porcentaje de proyectos exitosos usando Metodologas giles
Estimacin de beneficios obtenidos
41
42
43
44
45
46
47
48
49
50
51
52
53
54
vi
NDICE DE FIGURAS
Figura
nmero
1
2
3
4
5
6
7
8
9
Ttulo
Pgina
11
13
16
19
21
24
25
27
29
vii
INTRODUCCIN
Actualmente existen dos enfoques para realizar el desarrollo de software dentro de la
industria de tecnologas de informacin, las metodologas tradicionales y las
metodologas giles para el desarrollo de software. En la empresa de desarrollo
de software en Ciudad Jurez se utilizan ambos enfoques en sus equipos de
trabajo y desarrollo de software.
Existen 3 equipos de desarrollo de software, dos de ellos hacen uso de una
metodologa de software gil, mientras que el tercer equipo utiliza una
metodologa ms rgida y estricta que requiere de autorizaciones adicionales,
revisiones tanto en diseo como en cambios realizados y tiene una estructura de
desarrollo que toma ms tiempo llevar los cambios al usuario final.
La intencin de esta investigacin es describir el uso de metodologas giles para el
desarrollo de software dentro de dicha empresa y realizar una redaccin
explicativa de los beneficios obtenidos con su uso. No se pretende modificar los
actuales mtodos de trabajo ya que estos han demostrado tener gran eficacia
para la empresa.
ANTECEDENTES
La empresa de desarrollo de software de ciudad Jurez, Chihuahua con la que se
trabaj, es una empresa de Servicios de Tesorera y Seguridad de Valores (TSS
Treasury & Securities Services) genera ms de $ 8 mil millones en ingresos anuales
y es un lder mundial en custodia, prstamo de valores, fondos y administracin, as
como en servicios de tesorera. Servicios de Tesorera y de Valores apoya las
necesidades de los clientes institucionales en todo el mundo y es uno de los tres
principales proveedores en sus dos negocios: Servicios de Tesorera (TS Treasury
Services) y el Mundo Servicios de Valores (WSS Worldwide Securities Services).
En 2005, dicha empresa adquiri a otra, lder mundial en el comercio proveedor de
soluciones de gestin de ayudar a los clientes reducir el riesgo, mejorar el
cumplimiento y racionalizar el flujo de los envos internacionales. Ahora conocido
como Global Trade Services, la entidad combinada se integra la informacin utilizada
para la gestin financiera y la actividad fsica la cadena de suministro.
La empresa, ayuda a los clientes a gestionar mejor su integridad fsica y financiera
con las cadenas de suministro de una completa gama integrada de soluciones de
comercio y logstica. Como el nico banco con el de extremo a extremo la capacidad
de la cadena de suministro, que agregan valor tanto al importador y exportador de
partes de las transacciones. Dicha empresa ayuda a facilitar la financiacin, reducir
el riesgo comercial, gestin de relaciones de la cadena de suministro, mejorar el
cumplimiento y racionalizar los flujos comerciales.
La empresa proporciona el servicio administrado de las operaciones (GTS Global
Trade Services), garantizando la
operaciones en tiempo;
departamentos: direccin
desarrollo de software para Mxico, cuenta con una amplia cartera de clientes que
hacen uso de sus productos.
La empresa ofrece 3 principales productos de software a sus clientes, estos son
Sistema de Trmite Aduanero (STA), Sistema Automatizado Aduanero Integral (SAAI
M3) y Deposito Fiscal (DF). Cuenta con 3 equipos de desarrollo en ciudad Jurez,
cada uno encabezado por un lder.
Actualmente la empresa hace uso de diferentes mtodos de desarrollo, estos
dependen del equipo de desarrollo y el producto que desarrollan, siendo uno de los
equipos el que utiliza una metodologa rgida para el desarrollo y dos equipos mas
hacen uso de mtodos ms giles y menos documentacin.
MARCO TERICO
Breve Introduccin a las Metodologas de Desarrollo
Dentro del desarrollo de software y la altiva necesidad de que los proyectos lleguen
al xito y obtener un producto de gran valor para nuestros clientes, generan grandes
cambios en las metodologas adaptadas por los equipos para cumplir sus objetivos,
puesto que, unas se adaptan mejor que otras, al contexto del proyecto brindando
mejores ventajas.
Es por eso de la importancia de una metodologa robusta que ajustada en un equipo
cumpla con sus metas, y satisfaga mas all de la las necesidades definidas al inicio
del proyecto.
El xito del producto depende en gran parte de la metodologa escogida por el
equipo, ya sea tradicional o gil, donde los equipos maximicen su potencial
Una vez que se llega a la fase de desarrollo es muy difcil para el equipo el
entender un sistema tan complejo al ser tan amplia el rea que se abarca.
En el otro lado estn las metodologas giles, las cuales se han incorporado muy
bien a un mundo de requerimientos cambiantes, y estas nos muestran ciertas
ventajas sobre los mtodos tradicionales, tales como:
Las metodologas giles presentan un nuevo enfoque que nace como respuesta a los
problemas de las metodologas tradicionales y se basa en aspectos puntuales, el
retrasar las decisiones y la planificacin adaptativa; permitiendo potencia an ms en
el desarrollo de software a gran escala. El resultado es un Manifiesto gil cuyas
principales ideas son:
Los individuos y las iteraciones entre ellos son ms importantes que las
herramientas y los procesos empelados.
El Manifiesto gil
En febrero 11 13 de 2001 en las montaas Wasatch en Utah, 17 personas se
reunieron para platicar, esquiar y relajarse. Lo que surgi de esa reunin fue la
Alianza de Desarrollo de Software gil, todos los miembros de la alianza firmaron el
llamado Manifiesto gil el cual tiene como texto: Estamos poniendo al descubierto
nuevas y mejores maneras de desarrollar software, hacindolo y ayudando a otros a
que lo hagan. A travs de este trabajo hemos llegado a valorar: Los individuos y la
interaccin sobre los procesos y herramientas; El software que funciona sobre la
documentacin abarcadora; la colaboracin con el cliente sobre negociacin de
contratos; Responder al cambio sobre seguir un plan; Eso es, aunque hay valor en
las partes de la derecha, nosotros valoramos mas los de la izquierda.
Dar la bienvenida a los cambios. Se capturan los cambios para que el cliente
tenga una ventaja competitiva.
La simplicidad es esencial.
Metodologa
Creacin
Tipo de Modelo
Caracterstica
Highsmith 2000
Adaptative Software
(ASD)
Agile Modeling (AM)
Practicas + Ciclo de
vida
Inspirado en Sistemas
adaptativos complejos
Ambler 2002
Cockburn 1998
Agile RUP
(dX)
Dynamic Solutions
Delivery Model
(DSDM)
Evolutionary Project
Management
(Evo)
Extreme
Programming
(Xp)
Feature-driven
development
(FDD)
Lean Development
(LD)
Booch, Martin,
Newkirk 1998
Stapleton 1997
Metodologa basada
en la prctica
Familia de
Metodologas
Framework
/ Disciplina
Framework / Modelo
de ciclo de vida
Gilb 1976
Framework adaptativo
Beck 1999
Disciplina en prcticas
de Ingeniera
Metodologa
Forma de Pensar
Modelo logstico
Metodologa basada en
procesos productivos
Lineamientos,
Disciplinas, prcticas
Framework de desarrollo de
soluciones
McConnell 1996
Survey de tcnicas y
modelos
Proceso Unificado
Seleccin de mejores
prcticas, no mtodos
mtodo (gil?) con
modelado
Proceso (Software de
management)
Complemento de otros
mtodo, giles o no
Microsoft Solutions
Framework
(MSF)
Rapid Development
(RAD)
Racional Unified
Process
(RUP)
Scrum
Krutchen 1996
Sutherland 1994
Schwaber 1995
Fuente (Reynoso, 2005)
10
11
12
13
Metodologa Scrum
Esta es, despus de la metodologa XP, la metodologa gil mejor conocida y la que
otros mtodos giles recomiendan como complemento, aunque su porcin del
mercado (3% segn el Cutter Consortium) es ms modesta que el ruido que hace.
Scrum es una metodologa para el desarrollo gil de productos, expuesta, en el
artculo The New Product Development Game [Harvard Business Review Ene-Feb
1986 en el que ponen de manifiesto que:
14
Una vez elegida una tarea, no se agrega trabajo extra. En caso que se
agregue algo, se recomienda quitar alguna otra cosa.
El nombre de los miembros del equipo y los externos se deriva de una tpica fbula
agilista: un cerdo y una gallina discutan qu nombre ponerle a un nuevo restaurant;
la gallina propuso Jamn y Huevos. No, gracias, respondi el cerdo, Yo estar
comprometido, pero t slo involucrada.
La metodologa Scrum define seis roles:
1. El Scrum Master: Interacta con el cliente y el equipo. Es responsable de
asegurarse que el proyecto se lleve a cabo de acuerdo con las prcticas,
valores y reglas de Scrum y que progrese segn lo previsto. Coordina los
encuentros diarios, formula las tres preguntas cannicas y se encarga de
eliminar eventuales obstculos. Debe ser miembro del equipo y trabajar a la
par.
2. Propietario del Proyecto: Es el responsable oficial del proyecto, gestin,
control y visibilidad de la lista de acumulacin o lista de retraso del producto
(product backlog). Es elegido por el Scrum Master, el cliente y los ejecutivos a
cargo. Toma las decisiones finales de las tareas asignadas al registro y
convierte sus elementos en rasgos a desarrollar.
3. Equipo de Scrum: Tiene autoridad para reorganizarse y definir las acciones
necesarias o sugerir remocin de impedimentos.
4. Cliente: Participa en las tareas relacionadas con los elementos del registro.
15
Especific.
Requerim.
Diseo
Cdigo
Prueba de
Unidad
Prueba de
Integracin
Prueba del
Sistema
Pre-Juego
Prueba de
Aceptacin
Post-Juego
Juego
Planteamiento
Lista de
retraso
de
product
o
Producto
final,
documentos
Lista de
retraso
de
Srpint
Integracin,
prueba de
sistema
Sprint
Anlisis &
Diseo
Diseo de Alto
Nivel/Arquitectura
Codificacin
Prueba
Entrega
Release
Intermedi
o
16
de
crear
una
metodologa
RAD
unificada.
Sus
principales
Las
tres
ltimas
son
iterativas,
adems
de
existir
17
software ms que a las tareas y tolerante a los cambios. El ciclo de vida que
propone tiene tres fases esenciales: especulacin, colaboracin y aprendizaje.
En la primera de ellas se inicia el proyecto y se planifican las caractersticas
del software; en la segunda desarrollan las caractersticas y finalmente en la
tercera se revisa su calidad, y se entrega al cliente. La revisin de los
componentes sirve para aprender de los errores y volver a iniciar el ciclo de
desarrollo (Highsmith y Orr, 2000).
Metodologas Tradicionales
Las
metodologas
tradicionales
(formales)
se
focalizan
en
documentacin,
18
Fases: Las cuatro fases del ciclo de vida de la metodologa RUP son:
Concepcin
Elaboracin
Construccin
Transicin
Estamos poniendo a nuestro cliente en una situacin que puede ser muy
incmoda para l.
Escribir cdigo.
20
21
Cada fase tiene como resultado documentos que deben ser aprobados por el
usuario. Una fase no comienza hasta que termine la fase anterior y generalmente se
incluye la correccin de los problemas encontrados en fases previas.
En la prctica, este modelo no es lineal, e involucra varias iteraciones e interaccin
entre las distintas fases de desarrollo. Algunos problemas que se observan en el
modelo de cascada son:
23
Los problemas se dejan para su posterior resolucin, lo que lleva a que estos
sean ignorados o corregidos de una forma poco elegante.
Existe una alta probabilidad de que el software no cumpla con los requisitos
del usuario por el largo tiempo de entrega del producto.
Este modelo slo debe usarse si se entienden a plenitud los requisitos. An se utiliza
como parte de proyectos grandes.
Desarrollo evolutivo
24
25
para
la
estructura
del
software
haciendo
costoso
el
mantenimiento.
Desarrollo incremental
Mills sugiri el enfoque incremental de desarrollo como una forma de reducir la
repeticin del trabajo en el proceso de desarrollo y dar oportunidad de retrasar la
toma de decisiones en los requisitos hasta adquirir experiencia con el sistema. Es
una combinacin del Modelo de Cascada y Modelo Evolutivo.
26
Los clientes no esperan hasta el fin del desarrollo para utilizar el sistema.
Pueden empezar a usarlo desde el primer incremento.
Los clientes pueden aclarar los requisitos que no tengan claros conforme ven
las entregas del sistema.
Las partes ms importantes del sistema son entregadas primero, por lo cual
se realizan ms pruebas en estos mdulos y se disminuye el riesgo de fallos.
Cada incremento debe ser pequeo para limitar el riesgo (menos de 20.000
lneas).
Desarrollo en espiral
El modelo de desarrollo en espiral es actualmente uno de los ms conocidos y fue
propuesto por Boehm. El ciclo de desarrollo se representa como una espiral, en lugar
de una serie de actividades sucesivas con retrospectiva de una actividad a otra.
Cada ciclo de desarrollo se divide en cuatro fases:
1. Definicin de objetivos: Se definen los objetivos. Se definen las restricciones
del proceso y del producto. Se realiza un diseo detallado del plan
administrativo. Se identifican los riesgos y se elaboran estrategias alternativas
dependiendo de estos.
2. Evaluacin y reduccin de riesgos: Se realiza un anlisis detallado de cada
riesgo identificado. Pueden desarrollarse prototipos para disminuir el riesgo de
requisitos dudosos. Se llevan a cabo los pasos para reducir los riesgos.
3. Desarrollo y validacin: Se escoge el modelo de desarrollo despus de la
evaluacin del riesgo. El modelo que se utilizar (cascada, sistemas formales,
evolutivo, etc.) depende del riesgo identificado para esa fase.
4. Planificacin: Se determina si continuar con otro ciclo. Se planea la siguiente
fase del proyecto.
Este modelo a diferencia de los otros toma en consideracin explcitamente el riesgo,
esta es una actividad importante en la administracin del proyecto.
El ciclo de vida inicia con la definicin de los objetivos. De acuerdo a las restricciones
se determinan distintas alternativas. Se identifican los riesgos al sopesar los objetivos
28
contra las alternativas. Se evalan los riesgos con actividades como anlisis
detallado, simulacin, prototipos, etc. Se desarrolla un poco el sistema. Se planifica
la siguiente fase (Boehm, 1988).
Metodologas Tradicionales
Basados en normas provenientes de
estndares seguidos por el entorno de
desarrollo. Cierta resistencia a los cambios
Impuestas externamente. Proceso mucho
Metodologas giles
Basada en heursticas provenientes de
prcticas de produccin de cdigo.
Especialmente preparadas para cambios
durante el proyecto.
Impuestas internamente (por el propio
29
30
En el cuadro 3 se hace una comparativa entre cada una de las etapas ms comunes
en el desarrollo de software y los enfoques que hay entre las metodologas
tradicionales y giles.
Modelos Rigurosos
Etapa
Anlisis de requerimientos
Planificacin predictiva y
aislada
Diseo flexible y extensible +
modelos + documentacin
exhaustiva
Desarrollo individual con
roles y responsabilidades
estrictas
Actividades de control:
orientado a los hitos +
gestin miniproyectos
Modelos giles
Planificacin adaptativa:
entregas frecuentes +
colaboracin del cliente
Diseo simple: documentacin
mnima + focalizado en la
comunicacin
Transferencia de
conocimiento: programacin
en pares + conocimiento
colectivo
Liderazgo-colaboracin:
empoderamiento + autoorganizacin
Planificacin
Diseo
Codificacin
Pruebas
Puesta en produccin
generalmente
implican
altos
costos,
demanda
de
tiempo
la
reestructuracin total del proyecto que se est llevando; en contraparte, los mtodos
giles permiten un desarrollo iterativo y adaptable que permite la integracin de
nuevas funcionalidades a lo largo del desarrollo del proyecto; para que tanto el
cliente como el desarrollador queden satisfechos porque el producto final tiene una
calidad adecuada.
Un proceso es gil cuando el desarrollo de software es:
31
Poca documentacin
Simplicidad
Diseo evolutivo
Integraciones
32
Las propias prcticas de los mtodos giles limitan o descartan su uso en algunos
proyectos. A continuacin se detallan algunos casos donde no conviene usar
mtodos giles.
33
Falta de procesos de revisin del cdigo. Con mtodos como el PSP o TSP se
han conseguido reducciones de errores que oscilan entre el 60 y el 80%. La
programacin en parejas tiene resultados del 20 al 40%, que no es mucho
frente al 10 y el 25% de un programador.
34
Rigidez. Algunos mtodos giles son muy rgidos: deben cumplirse muchas
reglas de una forma estricta para garantizar el xito del proyecto. Por ejemplo
XP exige en realidad mucho esfuerzo, concentracin y orden.
35
JUSTIFICACIN
La metodologa que actualmente usa la empresa le ha dado buenos resultados, pero
se usa de manera muy estricta a todos los proyectos. Aunque hay algunos grupos
que ya han adoptado practicas de metodologas giles, adems, requiere de un gran
nmero de formatos y documentos que deben ser llenados, documentados y
aprobados por muchos niveles, esto ha hecho que en algunos proyectos la respuesta
al cambio sea lenta, y requiera de bastante tiempo para que un cambio pueda ser
aprobado. Tambin, es cada vez ms comn un atraso significativo en las fases de
desarrollo.
Las metodologas giles proponen una solucin ligera al problema del exceso de
pasos para llevar a cabo una tarea, aunque se ha denominado que es aplicable por
lo regular para equipos pequeos, esta se puede llevar a la prctica sin problema en
desarrollo de sistemas grandes
36
OBJETIVO
Describir el uso de metodologas giles en una empresa de desarrollo de software en
Ciudad Jurez, Chihuahua.
37
METODOLOGA
1. Lugar y Tiempo
El trabajo se llev a cabo entre los meses de enero y abril de 2009 en una
empresa de desarrollo de software de Ciudad Jurez.
2. Carcter
La investigacin fue de carcter no experimental ya que no se manipul la
variable.
3. Diseo
El diseo de la investigacin fue de tipo transeccional descriptivo, ya que la
recoleccin de los datos se realiz en un momento nico en el tiempo y se incluy
una sola variable.
4. Poblacin de Inters
Todos los equipos de desarrollo que pertenezcan a la empresa de desarrollo de
software en Ciudad Jurez.
5. Unidad de anlisis.
La unidad de anlisis estuvo orientada hacia aquellos equipos de desarrollo de la
empresa que sean proyectos manejados (con gerencia) y estn usando mtricas
en sus entregas.
6. Variable
La variable que se midi en el proceso fue el uso de metodologas giles en el
proceso de desarrollo de software.
38
7. Indicadores
Variable: Uso de las metodologas giles.
Indicadores: Tiempo de Respuesta al cliente; Resultados de la revisin de
producto; Resultados de los mtricas de calidad.
8. Recoleccin de datos
El instrumento que se utilizo para la recoleccin de datos fue un cuestionario que
se realiz al gerente del rea de desarrollo de software relacionada, as como al
personal de cada uno de los equipos de desarrollo. Dicho cuestionario se agrega
como anexo 1.
9. Anlisis de la informacin
La informacin obtenida en la entrevista se comparo con la obtenida en
cuestionarios y de esta manera se determin el uso de
la metodologa gil
39
RESULTADOS
Se realiz un cuestionario al personal de la empresa de desarrollo de software en
Ciudad Jurez, el cual est dividido en tres secciones, que son, preguntas sobre los
participantes, preguntas sobre la organizacin y preguntas sobre la transicin e
implementacin de las metodologas giles. Las primeras 4 grficas del cuestionario
son acerca del acercamiento que los encuestados han tenido hacia las metodologas
giles, las grficas 5, 6, 7, 8 y 9 son acerca de la organizacin donde labora el
personal encuestado, y las ltimas 5 (10, 11, 12 ,13 y 14) son acerca de la transicin
e implementacin de las metodologas giles en la organizacin.
En las primeras 4 grficas podemos ver que el personal ha participado muy poco en
este tipo de encuestas, han usado muy poco las metodologas giles aun cuando la
mayora de los encuestados son desarrolladores de software.
En las grficas 5, 6, 7, 8 y 9 podemos ver que el personal labora en grupos de
tamao medio, considerando un mximo 20 personas, el personal tiene poco
conocimiento acerca de quienes usan metodologas giles dentro de la empresa, as
mismo de la cantidad de proyectos que se estn usando bajo el esquema de
metodologas giles. La mayor parte del personal desconoce por cuanto tiempo han
usado metodologas giles en esta empresa, adems no tienen la certeza de cuantas
localidades de la empresa utilizan metodologas giles.
En las ltimas 5 grficas (10, 11, 12, 13 y 14) podemos ver que el personal desea el
cambio a las metodologas giles entre otras cosas para mejorar, calidad,
productividad y el proceso de mantenimiento del software. Las principales barreras
que el personal ve para la implementacin de una metodologa gil son la falta de
experiencia y la cultura organizacional. A pesar de este desconocimiento el personal
piensa que un alto porcentaje de proyectos usando estas metodologas es exitoso y
ha ayudado a reducir los defectos en el desarrollo de software y al incremento de la
productividad
40
41
En este cuadro podemos ver los roles que desempea el personal encuestado en la
empresa de desarrollo de software de Ciudad Jurez. Esta pregunta no se
representa con grfica de pastel ya que los encuestados podan contestar ms de
una opcin (o todas si as aplicaba su caso) por lo que se representa con una grfica
en barras y porcentajes.
42
43
44
45
46
47
48
49
50
51
52
Porcentaje de proyectos que el personal encuestado considera que han sido exitosos
usando metodologas giles en la empresa de desarrollo de software de Ciudad
Jurez.
53
Estimacin en porcentaje sobre cules son los beneficios que se han obtenido en la
organizacin con el uso de metodologas giles en la empresa de desarrollo de
software de Ciudad Jurez. En este recuadro se toman en cuenta los porcentajes de
aquellos encuestados que respondieron esta pregunta, los que no respondieron
fueron excluidos.
Beneficio
Incremento en productividad
Mejora en tiempos de entrega
Reduccin de defectos en el software
Reduccin de costos
Porcentaje estimado
42%
36%
52%
28%
54
CONCLUSIONES Y RECOMENDACIONES
CONCLUSIONES
El uso de una metodologa gil permite a la empresa de desarrollo de software de
Ciudad Jurez desarrollar software de manera ms rpida y segura, y a la vez
reducir el costo de desarrollo.
Existe el conocimiento bsico sobre metodologas giles de desarrollo de software
an cuando no se ha identificado una metodologa en particular. La empresa tiene
implementado un mtodo que facilita atender las necesidades inmediatas de clientes
demandantes de cambios en sus sistemas.
RECOMENDACIONES
Aunque la empresa cuenta con experiencia en el desarrollo de software utilizando
una metodologa gil, el personal tiene poco conocimiento de esto y no identifica a
ciencia cierta la metodologa utilizada, se recomienda lo siguiente:
1. Identificar la metodologa utilizada e informar al personal de la empresa cual
es la metodologa as como los pasos y procesos que esta implica.
2. Capacitar al personal de desarrollo que forma parte de los dos equipos que
utilizan metodologa gil en el desarrollo de software para que tengan mejor
conocimiento del tema, eso permitir madurar el proceso de desarrollo
mediante metodologas giles.
3. Definir adecuadamente los roles que se requieren en el modelo seleccionado
4. Dar mayor importancia al desarrollo de software por medio del uso de una
metodologa gil y formalizar su uso.
55
LITERATURA CITADA
Abrahamsson, P., Ronkainen, J. 2002. Agile software development methods
Review and analysis.. VTT Publications.
Beck, K. 1999. Extreme programming explained: Embrace Change. Reading, Mass.,
Addison-Wesley.
Boehm, B. 2002. Get Ready For the Agile Methods, With Care. Computer.
Boehm, B. 1988. A Spiral Model of Software Development and Enhancement.
Bennington, B. 1956. Agile Requirements Methods.
http://www.therationaledge.com/content/agilerequirements.
Cans, J., Letelier, P. 2006. Metodologas giles para el Desarrollo de Softaware.
Universidad Politcnica de Valencia.
http://www.willydev.net/descargas/prev/TodoAgil.pdf
Cockburn, A. 2001. Agile Software Development.. Addison-Wesley.
Cockburn, A. 2001. Agile software development: the people factor, Computer,
November 2001, IEEE.
Figueroa, G., Solis, C. 2008. Metodologas Tradicionales vs. Metodologas giles.
Universidad Tcnica Particular de Loja
Fowler, M. 2001. Planning Extreme Programming, Addison-Wesley Professional, 1st
edition.
Fowler, M., Beck, K. 1999. Refactoring: Improving the Design of Existing Code..
Addison-Wesley.
Highsmith, J. 2002. Agile software development ecosystems, Addison-Wesley,
Boston.
Highsmith, J., Orr, K. 2000. Adaptive Software Development: A Collaborative
Approach to Managing Complex Systems. Dorset House.
Microsoft, 2004. Microsoft Solution Framewordk Ver. 3.0.
http://www.microsoft.com/DownLoads/details.aspx?FamilyID=a71ac8961d28-45a4-880c-8b0cc8265c63&displaylang=en
Mills, H., ONeill, D. 1980. The Management of Software Engineering, IBM Systems
Pires, Donald. 2001. Manifiesto gil, Uniersidad de California en Los ngeles UCLA,
(en lnea), disponible en http://www.manifiestoagile.com
56
57
ANEXOS
Anexo 1: Cuestionario aplicado al personal y gerentes de JPMorgan Chase.
La siguiente encuesta tiene como objetivo determinar en nivel de uso de las
metodologas giles para el desarrollo de software dentro de la empresa. A
continuacin se describe brevemente las metodologas giles as como las
tradicionales.
Las metodologas tradicionales concentran su atencin en llevar una documentacin
exhaustiva de todo proyecto y centran su atencin en cumplir en un plan de proyecto,
definido todo esto, en la fase inicial del desarrollo del proyecto. Otra de las
caractersticas importantes dentro de este enfoque tenemos los altos costos al
implementar y al no ofrecer una buena solucin para proyectos donde el entorno es
voltil. Las metodologas tradicionales o formales se enfocan en documentacin,
planificacin y procesos (plantillas tcnicas de administracin, revisiones, etc.)
Las metodologas tradicionales presentan ciertos problemas tales como:
Fases de obtencin de requerimientos, anlisis y diseo muy costosas en cuanto a
tiempo y recursos.
Muchos niveles de aprobacin, lo cual lleva comnmente al retraso en las fechas
de entrega.
Una vez que se llega a la fase de desarrollo es muy difcil para el equipo el
entender un sistema tan complejo al ser tan amplia el rea que se abarca.
En el otro lado estn las metodologas giles, las cuales se han incorporado muy
bien a un mundo de requerimientos cambiantes, y estas nos muestran ciertas
ventajas sobre los mtodos tradicionales, tales como:
Buena respuesta a los cambios durante la fase de desarrollo, lo cual es cada vez
ms comn en los proyectos.
Entrega continua y rpida de secciones funcionales del sistema.
Involucramiento del cliente.
Eliminacin del trabajo innecesario.
58
Empresa:
Si
Primera vez
No
No recuerdo
59
Administrador de proyectos
Desarrollador/programador
Jefe de desarrollo
Consultor
Arquitecto de software
QA/pruebas/tester
IT Staff/soporte
giles
He escuchado acerca de las metodologas giles, conozco muy poco al
respecto
4 Por cunto tiempo has hecho uso personalmente de las metodologas giles sin
importar si en el orden personal o laboral?
a)
b)
c)
d)
e)
f)
Nunca
6 meses
Hasta 1 ao
Entre 1 y 2 aos
Entre 2 y 5 aos
Ms de 5 aos
60
c) Entre 21 y 50 personas
d) Ms de 50 personas
<20%
Entre 20 y 40%
Entre 40 y 60%
Entre 60 y 80%
Entre 80 y 100%
Nunca
6 meses
Hasta 1 ao
Entre 1 y 2 aos
Entre 2 y 5 aos
Ms de 5 aos
1
2
3
Ms de 3
Desconozco
61
Scrum
XP
RUP
Otras: Cules?
Cultura organizacional
Resistencia al cambio en la organizacin
Falta de experiencia con metodologas giles entre el personal
Apoyo de los niveles ms altos de la organizacin
Proyectos demasiado complejos
Falta de colaboracin por parte de los clientes
Desconfianza en los resultados de las metodologas giles
Tiempo de transicin muy largo
Limitantes en presupuestos financieros
b)
c)
d)
e)
f)
Entre 10 y 30%
Entre 30 y 60%
Entre 60 y 90%
Cercano al 100%
100%
14 Por favor intente estimar cuales son los beneficios que ha obtenido la
organizacin con el uso de metodologas giles (responder todos los incisos).
Beneficio
Incremento en productividad
Mejora en tiempos de entrega
Reduccin de defectos en el software
Reduccin de costos
Porcentaje estimado
63
Anexo 3: Flujo del proceso de control de cambios para los equipos que trabajan
usando la metodologa gil de desarrollo.
64
Anexo 4: Flujo del proceso de desarrollo de sistemas para los equipos que utilizan
metodologas giles.
65
66
67
68