Está en la página 1de 6

XX Workshop de Investigadores en Ciencias de la Computación 531

Bases de Datos de Proyectos de Software Ágiles para


ser Utilizadas en Simulación de Proyectos.
Santiago Hernán Bareiroa, Diego Alberto Godoy b, Eduardo O. Sosac, Edgardo A.
Bellonid, Juan de Dios Beníteze, Sergio Fidelis f , Fabián Favretg

Centro de Investigación en Tecnologías de la Información y Comunicaciones (C.I.T.I.C.)


Departamento de Ingeniería y Ciencias de la Producción-Universidad Gastón Dachary
Av. López y Planes 6519- Posadas, Misiones, Argentina. Teléfono: +54-376-4438677
a
hbareiro@citic.ugd.edu.ar, bdiegodoy@citic.ugd.edu.ar , ceduardo.sosa@citic.edu.ar,
d
ebelloni@ugd.edu.ar, ejuan.benitez@citic.ugd.edu.ar, fsfidelis@citic.ugd.edu.ar,
g
fabianfavret@citic.ugd.edu.ar

Resumen Dachary (UGD) con el número Código


IP A07003 y radicado en el Centro de
En este trabajo se presenta un proyecto Investigación en Tecnologías de la
de investigación denominado Información y Comunicaciones de
“Simulación en las Tics: Diseño de dicha universidad.
Simuladores de Procesos de Desarrollo El mismo fue incorporado como
de Software Agiles y Redes De proyecto aprobado en el llamado a
Sensores Inalámbricos para la Industria presentación interna de la UGD de
y la Academia”, cuyo objetivo es proyectos de investigación N°7
diseñar simuladores de procesos de mediante la Resolución Rectoral
desarrollo de software ágiles y de redes 07/A/17 y es una continuidad del
de Sensores Inalámbricos para la Proyecto Simulación como herramienta
Industria y la academia. para la mejora de los procesos de
Particularmente en este artículo se software desarrollados con
presentan los avances realizados en metodologías ágiles utilizando
relación a construcción de un Sistema dinámica de sistemas, R.R. UGD N°
de Gestión de Datos Postmortem de 18/A/14 y R.R. UGD N° 24/A/15.
Proyectos de Desarrollo de Software
Que Utilizan Metodología Scrum. Entre las líneas con mayores resultados
dentro del proyecto referido, se
Palabras claves:
Simulación; encuentran las de: (i) “Modelo de
Proyectos de Desarrollo de Software; Simulación Dinámico de Gestión de
Base de datos. Proyectos de Desarrollo de Software
que utilizan Programación Extrema”,
Contexto (ii) “Modelo de Simulación Dinámico
de Gestión de Proyectos de Desarrollo
El trabajo presentado en este artículo de Software Bajo Scrum” y (ii)
tiene como contexto marco el proyecto “Modelo de Simulación Dinámico de
de investigación denominado Gestión de Proyectos de Desarrollo de
“Simulación en las Tics: Diseño de Software desarrollados con Crystal”.
Simuladores de Procesos de Desarrollo Este artículo se enfoca en la
de Software Ágiles y Redes De presentación de un línea para estudiar
Sensores Inalámbricos para la Industria la calendarización de proyectos
y la Academia”, registrado actualmente llevados a cabo Utilizando XP [1] y
en la Secretaría de Investigación y diseñar un prototipo de herramienta de
Desarrollo de la Universidad Gastón

26 y 27 de Abril de 2018 RedUNCI - UNNE - ISBN 978-987-3619-27-4


XX Workshop de Investigadores en Ciencias de la Computación 532

calendarización de liberaciones e interferir en el desarrollo real del


iteraciones en proyectos con XP. proyecto.
1. Introducción Los modelos de simulación de procesos
de desarrollo de software permiten a
Generalmente, en el proceso de los administradores de proyectos
desarrollo de software se hace énfasis realizar cambios en variables críticas
sobre el control de procesos mediante del proyecto como ser la cantidad de
una rigurosa definición de roles, requerimientos a desarrollar en cada
actividades y artefactos incluyendo iteración, el tiempo de entrega de las
modelado y documentación muy mismas, la cantidad de programadores,
detallada. Como se explica en [2], este las horas de trabajo por día, etc. De esta
esquema tradicional para llevar a cabo forma se puede evaluar el impacto de
el desarrollo de proyectos de software las decisiones de gestión, compararlas
ha demostrado ser efectivo y necesario entre si y escoger la que mejor se ajusta
en proyectos de gran tamaño respecto a al proyecto real.
tiempo y recursos, donde en general, se
exige un alto nivel de burocracia en el Para poder aprovechar los beneficios
proceso. Sin embargo, este enfoque no de la simulación enunciados en el
resulta ser el más adecuado para párrafo anterior con respecto a la
proyectos actuales donde el contexto gestión de proyectos de software
del sistema es muy cambiante y se mediante Scrum, hay que tener en
exige reducir drásticamente los tiempos cuenta que, todo modelo de simulación
de desarrollo manteniendo una alta debe ser validado antes de poder ser
calidad en el producto. Como aplicado en un experimento, como bien
alternativa a los métodos tradicionales, se explica en las etapas de la
con el objetivo de poder adaptarnos a simulación propuestas en [4]. Para
ese ámbito cambiante, de poder validar un modelo de simulación
mantenimiento de alta calidad del es necesario contar con información
producto y reducción en los tiempos de previa del sistema sobre el cual se
desarrollo surgen las llamadas requiere estudiar su comportamiento,
metodologías ágiles. Según un estudio con el fin de asegurar que dicho
realizado por la Scrum Alliance [3] modelo es representativo del sistema
[podría referencia al estudio acá], que se modela. Como se menciona en
Scrum, es una delas metodologías [5], la falta de datos es un problema
ágiles más utilizadas actualmente, conocido en la simulación de la
cerca del 95% de los encuestados ingeniería de software, tanto [6] y [7]
utilizan prácticas de Scrum en la resaltan que resulta difícil encontrar
gestión de proyectos de software ágiles. información referida a datos de
proyectos de software que hayan sido
Scrum posee muchas características, llevados a cabo mediante metodologías
como ser sus valores, principios y ágiles, por lo tanto, esto dificulta la
prácticas que hacen que la validación de los modelos de
administración de proyectos de simulación centrados en estudiar la
software usando esta metodología se gestión de este tipo de proyectos.
torne compleja e impredecible debido a
la gran cantidad de variables que el Dentro de la gestión de proyectos de
administrador del proyecto debe desarrollo ágiles y sobre todo en Scrum,
manejar. Ante estas circunstancias es los datos más importantes, relacionados
posible utilizar modelos de simulación con la gestión del proyecto son [9] [10],
que permitan evaluar los resultados de los referidos a los costos, el esfuerzo, el
diferentes decisiones de gestión sin tamaño del producto y la duración de

26 y 27 de Abril de 2018 RedUNCI - UNNE - ISBN 978-987-3619-27-4


XX Workshop de Investigadores en Ciencias de la Computación 533

los sprints o iteraciones, los cuales son Con la existencia de una herramienta
muy importantes porque están que permita extraer información de
implicados en tareas de estimaciones. sistemas de gestión de proyectos que
Donde la precisión de dichas tareas es contribuya con generación de una base
fundamental para el éxito del proyecto, de datos histórica de proyectos
de lo contrario se podrían producir anteriores ya desarrollados, sería
ciertos efectos negativos como ser [9] mucho más sencillo validar los
excesos de presupuestos, entregas que modelos de simulación que se
no se realizan a tiempo, mala calidad y enfoquen en estudiar el
baja aceptación del producto por parte comportamiento de la gestión de
del cliente. proyectos de software agiles que
utilicen Scrum como metodología.
Actualmente, existen herramientas que
si bien son utilizadas para realizar 2. Línea de Investigación
estimaciones, no se centran
específicamente en recopilar Como objetivo general se propone:
información histórica para validaciones Diseñar una aplicación que interprete
de modelos de simulación basados en un tipo de formato para el intercambio
procesos de desarrollo de software de datos manejado por herramientas de
ágiles. Solo permiten almacenar datos gestión de proyectos de desarrollo de
de proyectos ya desarrollados, con el software basados en Scrum, con el fin
fin de ir mejorando y precisando las de obtener información destinada a la
estimaciones realizadas. Dentro de validación de modelos de simulación
estas herramientas tenemos a Agile de este tipo de proyectos.
Cost Management Tool [11], CostEs Como objetivos específicos se
[12] y Estimador de Proyectos realizarán los siguientes:
Informáticos [13]. La desventaja de las
 Analizar cuáles son las variables de
tres herramientas mencionadas es que
todo proyecto de desarrollo de
los datos de los proyectos deben ser
software que utilice Scrum.
ingresados manualmente por el usuario.
Ninguna de estas herramientas permite  Determinar cómo los modelos de
que los datos necesarios para realizar simulación capturan los datos que
las estimaciones, sean almacenarlos se utilizan en el modelo.
como datos históricos o puedan ser  Estudiar tres de las herramientas
importados por otro software. Dentro más utilizadas para la gestión de
de estas herramientas tenemos una gran proyectos Scrum.
variedad de software, entre las más  Diseñar la arquitectura de la
utilizadas están, Atlassian [14] Jira, Ice aplicación.
Scrum [15] y Trello [16]. Las cuales  Validar el comportamiento de la
permiten compartir información de los aplicación conforme a cada una de
proyectos que se gestionen a través de las herramientas de gestión para las
éstas, mediante archivos de formatos que se desarrolle.
libres para el intercambio de datos 3. Resultados
XML [14] (Atlassian Jira), CSV [15] Esta sección tiene como propósito
(Ice Scrum) y JSON [17] (Trello). Esta definir cuáles son las variables
característica de intercambio permite presentes en un proceso de desarrollo
procesar los archivos de manera de software que utilice Scrum como
automática, extraer información metodología. Es importante conocer la
relevante de los mismos y almacenarlos identidad de estas variables para que se
en una base de datos. puedan tomar como referencia al

26 y 27 de Abril de 2018 RedUNCI - UNNE - ISBN 978-987-3619-27-4


XX Workshop de Investigadores en Ciencias de la Computación 534

momento de determinar cuáles son las estudios, tomando como referencia las
más utilizadas por los trabajos de variables ya identificadas en la sección
simulación que se centren en el estudio anterior. Las variables que se
de procesos Scrum y que, se vean presentaron con mayor frecuencia son
reflejadas en el software propuesto en las que se consideran para el desarrollo
este trabajo. En base al análisis teórico de este trabsjo. Los trabajos de
realizado, se definen a continuación, investigación utilizados fueron [8], [18],
qué variables intervienen en cada uno [19], [20], [21], las variables presentes
de estos elementos en la Tabla 1. se ven en la Tabla 2:
Tabla 1. Resumen de las variables principales Tabla 2. Variables en estudios de simulación.
Pila del producto Variable Frec. de aparición
Cantidad de sprints 3
Identificador
Duración de la reunión de
Prioridad 2
planificación
Descripción Duración de la reunión de
2
Estimación del esfuerzo retrospectiva
Duración de los scrum diarios 2
Observaciones
Duración del sprint 5
Criterios de validación Esfuerzo estimado de las tareas 1
Persona Asignada Prioridad de las tareas 1
Número de sprint en el que se realiza Puntos de las historias de usuario
1
Módulo del sistema al que pertenece por sprint
Tiempo empleado en la
Tamaño de la pila del producto elaboración de la pila del 2
Tiempo empleado en la elaboración de la pila del producto producto
Pila del sprint Tamaño de la pila del producto 4
Elemento de la pila del producto al que pertenece Tamaño de la pila del sprint 3
Tamaño del equipo 4
Persona responsable de cada tarea Velocidad 3
Estado en el que se encuentra cada tarea
Esfuerzo estimado De las cuales, se calculó el porcentaje
Sprint de aparición, considerándose como más
Tamaño de la pila del sprint importantes, a aquellas variables que
Rendimiento del equipo en el último sprint (Velocidad)
tuvieran una presencia mayor o igual al
Duración del sprint
Cantidad de sprints
50% en las investigaciones analizadas.
Reunión de planificación La siguiente tabla muestra cuáles son
Duración de la reunión de planificación las variables con una mayor tasa de
Fecha de la reunión ocurrencia:
Objetivo del sprint
Fecha de la reunión de revisión del sprint
Tabla 3. Variables con mayor ocurrencia.
Scrum diario Variable Porcentaje de aparición
Duración del scrum diario Cantidad de sprints 50%
Reunión de revisión del sprint Duración del sprint 83,33%
Fecha para la reunión de planificación del siguiente sprint Tamaño de la pila del
66,67%
Equipo de desarrollo producto
Tamaño de la pila del
Tamaño del equipo 50%
sprint
Estimación ágil Tamaño del equipo 66,67%
Velocidad Velocidad 50%

Luego de haber identificado las En base a la información reflejada por


variables presentes en los proyectos de la tabla 3, se deciden utilizar las
desarrollo de software Scrum, el variables: Cantidad de Sprints,
siguiente paso fue analizar distintos Duración del Sprint, Tamaño de la
trabajos de investigación referidos al Pila del Producto, Tamaño de la Pila
proceso Scrum, en el campo de la del Sprint, Tamaño del Equipo y
simulación. De estas investigaciones, Velocidad como variables
se determinaron cuáles son las fundamentales que deberán estar
variables más utilizadas por este tipo de presentes en este trabajo.

26 y 27 de Abril de 2018 RedUNCI - UNNE - ISBN 978-987-3619-27-4


XX Workshop de Investigadores en Ciencias de la Computación 535

4. Formación de Recursos alternativas de gestión en proyectos de


software desarrollados con scrum utilizando
Humanos dinámica de sistemas," in XX Congreso
El equipo de trabajo se encuentra Argentino de Ciencias de la Computación,
Buenos Aires, Octubre 2014, p. 10.
formado por cuatro investigadores con
[8] Rashmi Popli and Naresh Chauhan, "A Sprint-
distintos niveles de posgrado, un Point Based Estimation Technique," in
Doctor en Ciencias Informáticas y Information Systems and Computer Networks
Magister en Redes de Datos; un Doctor (ISCON), 2013 International Conference on,
en Tecnologías de la Información y Marzo 2013, p. 6.
Comunicaciones Magister y [9] Hugo A. Mitre Hernández, Edgar Ortega
Especialista en Ingeniería de Software; Martínez, and Cuauhtémoc Lemus Olalde,
un Maestrando de Ingeniería de la Web; "Estimación y control de costos en métodos
ágiles para desarrollo de software: un caso de
dos Maestrando en Redes de Datos y estudio," in Universidad Nacional Autónoma
ocho estudiantes en período de de México , 2014, pp. 403-418.
realización de trabajos finales de grado [10] Bhavani Seetharaman and Zulkefli Mansor,
en el contexto de las carreras de "The Development of Agile Cost Management
Licenciatura en Sistemas de Tool," in International Conference on
Información y de Ingeniería en Electrical Engineering and Informatics
(ICEEI), Diciembre 2015, p. 5.
Informática de la UGD. Actualmente,
[11] Berenice Lencina, Yanina Medina, and Gladys
el número de tesinas de grado N. Dapozo, "Aplicación para Estimar Costos
aprobadas en el contexto de este en Proyectos de Software," in Simposio
proyecto, es de cinco, y otras tres en Argentino de Ingeniería de Software (ASSE
proceso de desarrollo. El número de 2016) - JAIIO 45 (Tres de Febrero, 2016).,
tesis de maestría terminadas Septiembre 2016, pp. 181-192.
relacionadas con este proyecto es de [12] Cordero Carrasco and Raúl Jacinto, "Una
Herramienta de Apoyo a la Estimación del
una.
Esfuerzo de Desarrollo de Software en
5. Bibliografía Proyectos Pequeños," in Repositorio
Académico de la Universidad de Chile , 2013,
[1] Kent Beck, Una Explicación de la p. 114.
Programación Extrema. Aceptar el Cambio.
[13] https://confluence.atlassian.com/adminjiraclou
España: Addison Wesley, 2002.
d/exporting-issues-776636787.html,
[2] Borja López Yolanda, "Metodología Ágil de "Documentación Oficial de Atlassian Jira,"
Desarrollo de Software – XP," , pp. 1-10. Abril 2017.
[3] "https://www.scrumalliance.org," Julio 2015. [14] https://www.icescrum.com/documentation/adv
[4] Jerry Banks, "Introduction to Simulation ," in anced-exports/, "Documentación Oficial de
Simulation Conference, 2000. Proceedings. IceScrum," Abril 2017.
Winter, 2000, p. 7. [15] Trello Inc. (2017, Abril) Introdución a Trello.
[5] Breno Bernard Nicolau de França and [Online]. https://trello.com/guide/getting-
Guilherme Horta Travassos, "Are We started.html
Prepared for Simulation Based Studies in [16] http://help.trello.com/article/747-exporting-
Software Engineering Yet?," in CLEI data-from-trello-1, "Documentación Oficial de
ELECTRONIC JOURNAL, Montevideo: Trello," Junio 2016.
Centro Latinoamericano de Estudios en
[17] Luisanna Cocco, Katiuscia Mannaro, and
Informática, Abril 2013, p. 25.
Giulio Concas, "A Model for Global Software
[6] Diego Alberto Godoy and Tamara Gisel Development with Cloud Platforms," in 38th
Kasiak, "Modelo Dinámico de Simulación Euromicro Conference on Software
para la Gestión de Proyectos de Software Engineering & Advanced Applications, Enero
Desarrollados con XP," in XVIII Congreso 2012, pp. 446-452.
Argentino de Ciencias de la Computación,
[18] Godoy Diego Alberto, Belloni Edgardo A.,
Octubre 2012, p. 10.
Sosa Eduardo Omar, Kotynski Henry, and
[7] Godoy Diego Alberto, Belloni Edgardo A., Benítez Juan de Dios, "Evaluación de
Sosa Eduardo Omar, Kotynski Henry, and Alternativas de Gestión en Proyectos de
Benítez Juan de Dios, "Evaluación de Software Desarrollados con Scrum Utilizando

26 y 27 de Abril de 2018 RedUNCI - UNNE - ISBN 978-987-3619-27-4


XX Workshop de Investigadores en Ciencias de la Computación 536

Dinámica de Sistemas," in XX Congreso


Argentino de Ciencias de la Computación,
Buenos Aires, Octubre 2014, p. 10.
[19] Jaweria Sultana, "A STUDY ON
APPLICABILITY OF THE SCRUM
FRAMEWORK FOR LARGE SOFTWARE
PROJECTS," Bachelor of Engineering, Tesis
de Maestria 2015.
[20] Isaac Griffith, Clemente Izurieta, Hanane
Taffahi, and Claudio David , "A Simulation
Study of Practical Methods for Technical Debt
Management in Agile Software
Development," in Simulation Conference
(WSC), 2014 Winter, Savanah, GA, USA,
2014.
[21] Ryushi Shiohama, Hironori Washizaki, Shin
Kuboaki, Kazunori Sakamoto, and Yoshiaki
Fukazawa, "Estimate of the Appropriate
Iteration Length in Agile Development by
Conducting Simulation," in Agile Conference
(AGILE), Dallas, TX, USA, 2012.

26 y 27 de Abril de 2018 RedUNCI - UNNE - ISBN 978-987-3619-27-4