PDF de programación - Convivencia de metodologías: Scrum y RUP en un proyecto de gran escala

Imágen de pdf Convivencia de metodologías: Scrum y RUP en un proyecto de gran escala

Convivencia de metodologías: Scrum y RUP en un proyecto de gran escalagráfica de visualizaciones

Publicado el 14 de Enero del 2017
1.099 visualizaciones desde el 14 de Enero del 2017
556,6 KB
14 paginas
Creado hace 8a (14/09/2015)
Convivencia de metodologías: Scrum y RUP en un

proyecto de gran escala

Sebastian Cadelli Juan Manuel Fernández

Orientador: Claudia Pons (Facultad de Informática UNLP, CIC y UAI)

Facultad de Informática, Universidad Nacional de La Plata

Buenos Aires, Argentina

[email protected]

[email protected]

Resumen. Hoy en día existen diversas alternativas a la hora de elegir una me-
todología para desarrollar software. Años atrás imperaban las metodologías rí-
gidas, también conocidas como las metodologías tradicionales, en las cuales
abunda la documentación, los modelados, las actividades, actores y/o roles. A
partir del 2001, surge un punto de inflexión, con el surgimiento de otro tipo de
metodologías conocidas como las metodologías ágiles para el desarrollo de
software. Estas fueron creadas para ser aplicadas en proyectos peque-
ños/medianos y que tienen requerimientos volátiles o que cambian con frecuen-
cia; mientras que las metodologías tradicionales, suelen ser más apropiadas para
grandes proyectos y donde sus requerimientos son más resistentes a los cam-
bios. A partir de estos conceptos, queremos explicar en esta tesis [1], que si bien
no existen recetas magistrales para aplicar metodologías a un determinado pro-
yecto, es posible detectar buenas prácticas y otros patrones que hacen posible
decidir acerca de los métodos a utilizar. En particular, a partir de nuestra expe-
riencia de varios años en un proyecto de gran escala vamos a explicar cómo
pueden convivir dos tipos de metodologías (Scrum y RUP). Esto es, tomando lo
que se sea necesario de cada metodología y adaptándola al proyecto en cues-
tión.

Keywords. Metodologías de desarrollo de software, -Metodologías tradiciona-
les, Metodologías ágiles, Scrum, RUP, Scrum de Scrum.

1

Planteo del problema

1.1

La crisis del software: necesidad de una metodología

En los inicios de la Informática, el proceso de desarrollo de software era prácticamen-
te artesanal. Luego, debido a la fuerte necesidad de mejorarlo, tuvieron que incorpo-

EST 2015, 18º Concurso de Trabajos Estudiantiles. 44 JAIIO - EST 2015 - ISSN: 2451-761177 rarse conceptos y fundamentos de metodologías existentes en otras disciplinas inge-
nieriles. Así surgieron las metodologías pesadas o tradicionales, las cuales enfatizan la
documentación, la planificación y el seguimiento riguroso de las actividades. De esta
forma permiten que el desarrollo de software sea más predecible y ordenado. Aunque
los modelos generalmente son realistas y están pensados para avanzar de una manera
iterativa e incremental, algunas de las características negativas dentro de estos enfo-
ques son los altos costos de implementar cambios y el no ofrecer una buena solución
para proyectos que operan en un entorno incierto.

Entre las metodologías tradicionales más populares se encuentran el Rational Unified
Process (RUP) [2] o también Microsoft Solutions Framework (MSF), que centran su
atención en mantener una documentación exhaustiva del proyecto y cumplir con el
plan previsto y definido con precisión en la fase inicial del proyecto.

A partir del año 2001, tras una reunión realizada en los EE.UU., surgió el concepto de
ágil. En dicha reunión, (de la cual formaron parte varios expertos de la industria del
software) se comenzó a proyectar una alternativa a las metodologías tradicionales de
software. El primer avance significativo fue la creación de una organización sin fines
de lucro, dedicada a promover conceptos relacionados con el desarrollo ágil, denomi-
nada “The Agil Alliance”, la cual creó un documento en donde se sientan las bases, o
la “filosofía” que persigue este tipo de metodologías alternativas, es decir, las meto-
dologías ágiles. En contraposición a las tradicionales, las metodologías ágiles se cen-
tran en el equipo de desarrollo y sus interacciones, y en la implementación del softwa-
re por sobre la documentación del mismo.

Entre las metodologías ágiles más aplicadas se encuentran Scrum y eXtreme Progra-
mming [3].

1.2

El dilema actual: ¿formalidad o agilidad?

A partir de aquí, surge entonces el debate: ¿bajo qué condiciones es más adecuado
utilizar un tipo de metodología u otro? Es decir, en qué tipo de proyecto vamos a ob-
tener resultados más eficientes utilizando una metodología tradicional y en cual va a
funcionar de mejor manera una metodología ágil.

Ambos tipos de metodologías atacan el problema de mantener el conocimiento dentro
de la organización, pero la más pesada pone el énfasis en la documentación y en los
procesos, y la más ágil, en el software funcionando y en las personas.

El uso de metodologías tradicionales ha sido fundamental durante muchos años en la
historia del desarrollo de software. Todavía hoy siguen teniendo sentido para sistemas
grandes y complejos, especialmente en organizaciones con un alto número de perso-
nas involucradas en estos proyectos. Sin embargo hay que tener muy presente que en
contextos como el actual, donde hay mucha variabilidad de plataformas, modelos de
negocio e incertidumbre en general, es importante ser flexibles y ágiles para llegar
adecuadamente con nuestros productos al cada vez más complejo mercado del softwa-
re.

EST 2015, 18º Concurso de Trabajos Estudiantiles. 44 JAIIO - EST 2015 - ISSN: 2451-761178 En base al estudio del estado del arte y en base a nuestra propia experiencia como
desarrolladores de software, consideramos que no existe una “receta” magistral que
nos indique específicamente cuando se debe utilizar una u otra metodología. Es más,
en un mismo proyecto podemos utilizar una combinación de ambas, aprovechando las
diferentes ventajas de cada una. Es decir, no son excluyentes. He aquí el motivo de
nuestra tesis, de cómo se pueden aplicar conjunta y coherentemente dos metodologías
en un mismo proyecto.

2

Objetivos de nuestra tesis

A partir de nuestra participación y experiencia en un proyecto de gran escala, deno-
minado eSidif, nuestra tesis tuvo como objetivo explicar la convivencia de dos tipos
de metodologías que tienen distinto enfoque pero que pueden convivir dentro de un
proyecto.

Inicialmente el proyecto se regía bajo los principios de la metodología RUP, con el
advenimiento del nuevo concepto ágil en el desarrollo de software comenzamos a
analizar los beneficios de la inclusión de dicho concepto como parte del proceso.
Aquí nos surgió la inquietud de poder consumir las características más beneficiosas
de ambas metodologías y adaptarlas en un nuevo proceso de desarrollo donde convi-
van dichas metodologías con enfoques dispares. Este proceso de fusionar ambas me-
todologías que parecen opuestas, es lo que se va a explicar en el desarrollo de este
documento.

Como consecuencia de la evolución y el crecimiento de nuestro proyecto, la cantidad
de recursos fue aumentando paulatinamente dificultando la organización del mismo.
Para disminuir esta dificultad decidimos implementar la alternativa “Scrum de
Scrum”, la cual vamos a explicar de forma detallada, indicando su estructura, organi-
zación y comunicación adaptadas a las necesidades de nuestro proyecto.

A través de nuestra tesis realizamos una documentación formal de la adaptación y
convivencia de las metodologías identificando las ventajas y/o desventajas de cada
una, como así también la ventaja de la utilización de "scrum de scrum" en proyectos
de gran tamaño.

Este trabajo formaliza y enriquece a la metodología utilizada en nuestro proyecto
laboral, ya que, si bien esta metodología está siendo utilizada de manera eficiente y
exitosa, nuestra tesis se encargó de:

 Analizar sus dos visiones complementarias. Es decir, la visión tradicional (como es
el caso de RUP), y la visión ágil ( como es el caso de Scrum y/o Scrum de Scrum);

 Describir detalladamente cada una de sus componentes, interacciones y comunica-

ciones;

 Analizar sus ventajas y desventajas;

 Plantear mejoras y trabajos futuros;

EST 2015, 18º Concurso de Trabajos Estudiantiles. 44 JAIIO - EST 2015 - ISSN: 2451-761179  Documentarla de manera formal, fundamentándola en base a la teoría de RUP y

Scrum.

3

Nuestro proyecto de referencia: eSidif

El proyecto en cuestión es denominado “eSidif” [4] y su objetivo es la formulación
del presupuesto nacional y registro de la ejecución presupuestaria. Este proyecto se
realiza en colaboración entre la Universidad Nacional de La Plata (UNLP) y el Estado
Nacional. En este contexto, el Laboratorio de Investigación y Formación de Informá-
tica Avanzada (LIFIA) se encuentra brindando soporte a la Secretaría de Hacienda del
Ministerio de Economía de La Nación.

El 30 de septiembre del año 1992 se sancionó la Ley N°24.156 de Administración
Financiera y de los Sistemas de Control del Sector Público Nacional. A partir de allí,
se inició el camino en la implementación del proyecto (eSidif) desde sus inicios y
variando a través de sus diversas transformaciones, hasta lo que es en la actualidad.

En su versión inicial, el S.I.D.I.F (Sistema Integrado de Información Financiera)
fue adoptado como un sistema integrado, que estaba compuesto por varios subsiste-
mas y/o módulos dentro de una visión funcional, que contemplaba la distribución de
la base de datos lógica, en una base de datos central y tantas bases institucionales
como Servicios de Administración Financiera (SAF) existieran. Esta estructura física
era soportada por arquitecturas abiertas y redes locales trabajando en la modalidad
“Cliente/Servidor” (C/S).

Bajo este e
  • Links de descarga
http://lwp-l.com/pdf1688

Comentarios de: Convivencia de metodologías: Scrum y RUP en un proyecto de gran escala (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad