Generación automática de la planificación de la entrega en desarrollo de software agil, asignación de historias de usuario a los desarrolladores usando algoritmos genéticos
Automatic generation of sprintplanning in agile software development, assignment of user stories to developers using genetic algorithms
Artículo de revista
2020-05-01
AiBi Revista de Investigación, Administración e Ingeniería
Colombia
En el desarrollo de aplicaciones softwareusando metodologías ágiles, la asignación de las tareas de desarrollo es una actividad fundamental, de ella depende el éxito del desarrollo del proyecto, asignar las tareas de desarrollo a la persona correcta, enel tiempo adecuado y de forma óptima, puede traer una reducción en eltiempo de desarrollo y en los costos del proyecto. El problema de la planificacióny asignación de tareas a recursos o personas, conocido como “scheduling” ha sido abordado desde diferentes enfoques y disciplinas, por ejemplo: la investigación de operaciones, la programación numérica y la programación lineal. En este trabajo se aborda este problema aplicado al desarrollo de software ágil, donde se busca asignar de forma automática y óptima las historias de usuario que deben implementar en una iteración (sprint)el equipo de desarrollo, teniendo en cuenta las características propias del equipo, por ejemplo, su experiencia (desarrollador junior, senior o novato). Se propone un algoritmo genético que genera la asignación de tareas para la iteración(sprint)de desarrollo. Se realizó la validación del algoritmo propuesto en un caso de estudioreal, se pudo observar que el resultado obtenido mejoraconsiderablemente al obtenido por el líder del proyecto. En el caso de estudio real se redujo el tiempo estimado dedesarrollo de 99 horas a 87 horas(12%), siendo una diferencia importante que representa ahorros en los costos del proyecto. Como trabajo futuro se pretende usar casos reales más complejos, con más desarrolladores e historias para validar el método propuesto. In the development of software applications, the assignment of development tasks is a fundamental activity, on it depends thesuccess of the development of the project, assigning the development tasks to the right person, at the right time and optimally, can bring a reduction in development time and project costs. The problem of programming and assigning tasks to resources or people, knownas "scheduling," has been approached from different approaches and disciplines, for example: operations research, numerical programming and linear programming. This work addresses this problem applied to the development of agile software, where it is sought to automatically and optimally assign the user stories that the development team must implement in an iteration or sprint, taking into account the characteristics of the team, for example, your experience (junior, senior or novice developer). A genetic algorithm is proposed that generates the assignment of tasks for the iteration or development sprint. The validation of the proposed algorithm was carried out in a real case study, it was observed that the obtained result improves considerably to that obtained by the project leader. In the case study, the estimated development time was reduced from 99 hours to 87 hours, being an important difference that represents savings in project costs. As future work it is intended to use more complex real-lifecases, with more developers and stories to validate the proposed method.
Descripción:
Generación automática de la planificación de la entrega en desarrollo de software agil, asignación de historias de usuario a los desarrolladores usando algoritmos genéticos.pdf
Título: Generación automática de la planificación de la entrega en desarrollo de software agil, asignación de historias de usuario a los desarrolladores usando algoritmos genéticos.pdf
Tamaño: 1.006Mb
PDF
LEER EN FLIP
Título: Generación automática de la planificación de la entrega en desarrollo de software agil, asignación de historias de usuario a los desarrolladores usando algoritmos genéticos.pdf
Tamaño: 1.006Mb


