Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Curso:
IF-7100
Ingeniería de software.
Tema
Metodologías Ágiles (Actuales).
Docente:
Master Raquel Mora Porras Soto.
Estudiantes:
Grupo de proyecto: 02
I Ciclo, 2022.
Tabla de contenidos.
Introducción. 2
Objetivos. 3
Objetivo General. 3
Objetivos específicos. 3
Desarrollo de contenido. 4
Metodologías ágiles. 4
Comparación entre metodologías. 4
Metodologías ágiles actuales.Extreme Programming XP. 5
Historia Extreme Programming. 5
Definición Extreme Programming. 5
Valores, principios, prácticas de Extreme Programming. 6
Estrategias y ciclo de vida de Extreme Programming. 8
Ventajas y desventajas Extreme Programming 10
Scrum. 11
Historia de Scrum. 11
Definición de Scrum. 11
Fases de Scrum. 12
Roles Scrum. 12
Principios de Scrum 13
Ventajas y desventajas Scrum. 14
Limitantes. 15
Recomendaciones. 16
Conclusiones. 17
Bibliografía. 18
1
Introducción.
Si se quiere trabajar de forma rápida, sencilla, con mayor flexibilidad y eficacia, las
metodologías ágiles son una excelente opción, ya que estas se adaptan a las diversas
necesidades y preferencias, tanto de los clientes como del mercado. Estas metodologías
toman en cuenta el criterio de los usuarios y clientes al momento de realizar el trabajo,
manteniéndose una comunicación constante y fluida, así como facilidad para adaptarse a los
posibles cambios que surjan.
Existen diferentes tipos de metodologías ágiles y cada una de ellas se puede utilizar
según sea el caso y las necesidades que se requieran cubrir, por ejemplo: si se necesita
realizar ajustes continuos, mejoras o resolver las solicitudes del cliente, se puede trabajar con
Scrum; si lo que se busca es hacer la entrega lo mejor posible y tal como la solicita el cliente,
una buena opción es Extreme Programming (excelente en el desarrollo de software); además
de otras metodologías como Kanban que es utilizado principalmente para conocer el flujo de
producción por medio de tarjetas visuales con las cuales se puede identificar las labores que
se van realizando o bien, el método Lean que utiliza los recursos que tenga a su alcance, ya
sean materiales o humanos, entre otros, esto para lograr, en el menor tiempo posible,
satisfacer las necesidades de los usuarios y clientes.
Para efectos de esta investigación, abordaremos las dos metodologías más utilizadas,
como lo son Scrum y Extreme Programming, conociendo más a fondo acerca de ambas,
identificando sus ventajas y desventajas y otros puntos de interés. Además se realiza una
comparación entre las metodologías tradicionales y las metodologías ágiles.
2
Objetivos.
Objetivo General.
Objetivos específicos.
● Conocer los 2 tipos de metodologías ágiles más comunes y las técnicas que utilizan
para el desarrollo de software.
3
Desarrollo de contenido.
Metodologías ágiles.
Las metodologías ágiles nos dan un proceso de flexibilidad mucho mayor a las
tradicionales, de igual manera las metodologías ágiles tienen mucha más diversidad y dan una
mayor agilidad a la hora de hacer un desarrollo de software,esto generando ventajas tanto al
desarrollador como al cliente.
4
requerimientos van a cambiar durante el proceso de desarrollo (Cadavid et al., 2013,
p.32)
● Extreme programing
● Scrum
● Kanban
● Agile inception
● Design sprint
En este documento nos centramos en los dos primeros porque son los que están siendo más
utilizadas en la actualidad
El origen de la Programación XP viene de los años 90, por Kent Beck que más tarde
se convierte en uno de los autores del Manifiesto Ágil, en ese entonces fue contratado para
dirigir a un equipo de Sistemas de Compensación Integral de Chrysler.
5
Definición Extreme Programming.
➢ Una comunidad que comparte estos valores y muchas de las mismas prácticas.
6
El Extreme Programming mediante el uso de técnicas y prácticas útiles permite que a
través de un código con un diseño, arquitectura y codificación particular se pueda modificar y
agregar diversas funcionalidades sin que eso signifique generar mucho impacto en la calidad
del software.
Valores: XP tiene sus bases en valores, es la forma que posee tanto los valores
personales como los valores corporativos, XP recomienda trabajar los siguientes valores e ir
agregando los que sean más acordes al funcionamiento que va teniendo el equipo.
Valor Descripción
Principios: Estos permiten cerrar la brecha entre los valores y las prácticas y asi poder
encontrar una armonía de valores,los principales principios los cuales son 14, que guían XP
son los siguientes:
● Humanidad.
7
● Economía.
● Beneficio mutuo.
● Auto similitud.
● Mejora.
● Diversidad.
● Reflexión.
● Flujo.
● Oportunidad.
● Redundancia.
● Fallo.
● Calidad.
● Pequeños pasos.
● Responsabilidad aceptada.
Prácticas: Esto influye en el comportamiento de las personas ya que hace ir desde una
dirección determinada hasta dónde pueden estar con XP. Las prácticas de XP se dividen en 13
prácticas primarias y 11 prácticas corolarias.
Esta metodología ágil consiste en una serie de seis pasos o etapas relevantes para el
proyecto en el cúal podrian ser determinadas como el ciclo de vida de esta manera de
implementar un proyecto o trabajo, a continuación se van a mencionar las seis fases para la
implementación de esta metodología:
8
1. Fase de exploración: en este etapa existirá una mayor relación entre usuarios y
desarrolladores, se iniciará una serie de conversaciones en las cuales se tomará en
cuenta las opiniones, deseos e historias de los clientes para poder llevar a cabo un
prototipo del proyecto y de esta manera también decidir cuáles herramientas son las
más óptimas y beneficiosas para la creación del proyecto. Se menciona que las
historias de los usuarios son la base para la iniciación del proyecto ya que mediante la
interpretación de las historias se puede tener una mejor perspectiva de las necesidades
futuras del sistema y de qué manera deberá de ser atendida.
3. Iteraciones: en esta etapa, se ejecuta las 2 fases anteriores, en las cuales después de
crear un plan de entrega y determinar los esfuerzos necesarios, se logra incluir una
serie de iteraciones en las cuales se determinan como una arquitectura que piensa ser
utilizada en el proyecto de manera que se distribuyen las historias en tareas
programables y repartidas entre el equipo de trabajo, se menciona que cada iteración
no debería tener un tiempo muy prolongado de realización.
9
4. Producción: en esta fase se planea que el proyecto sea entregado al cliente, sin
embargo, es el proceso en el cual se efectúan muchas más pruebas para verificar la
integridad del programa, también se debe tomar en cuenta que muchas características
del programa probablemente fueron cambiadas y se deberá analizar la necesidad de
añadir más características a esta versión.
6. Muerte del proyecto: en esta fase luego de volver a tener negociaciones con el cliente
y se establece que se encuentran todas las características que el usuario pidió en su
sistema, se procede a cerrar el proyecto y no tocar más el programa entregado, otro
punto a tener en cuenta es que un proyecto puede quedar en muerte, siempre y cuando
el cliente sea satisfecho, cuando no quede satisfecho o ya no exista presupuesto.
Según la autora Vera Salavarría en su trabajo del 2018 las ventajas y desventajas de Extreme
Programming son las que se presentan a continuación en el cuadro.
10
Se puede decir entonces que la programación extrema es una metodología adaptativa
para el desarrollo de software, es decir se permite ajustar y hacer cambios a sus componentes
con respecto a necesidades específicas.
Scrum.
Historia de Scrum.
“SCRUM es una metodología que nace ajena al desarrollo del software, de hecho sus
principios fundamentales fueron desarrollados en procesos de reingeniería por Goldratt,
Takeuchi y Nonaka en la década de 1980” (González, 2006, p.13). Acorde a esto Scrum no
nace como la idea de facilitar el desarrollo del software sino que más bien nace para poder
facilitar una tarea en el deporte del rugby. “Su nombre no corresponde a una sigla, sino a un
concepto deportivo, propio del rugby, relacionado con la formación requerida para la
recuperación rápida del juego ante una infracción menor”(Cadavid et al., 2013,p.33)
Definición de Scrum.
11
La metodología Scrum brinda una mayor eficacia en cuanto a lo que consiste en el
trabajo en equipo y sus roles lo que hacen es brindar un correcto funcionamiento en el
desarrollo del proyecto.
Acordes es esto se puede definir la metodología Scrum como una que propone y da la
facilidad por medio de sprints para así poder obtener nuevas versiones más completas y con
mayor funcionalidad.
Fases de Scrum.
12
Roles Scrum.
Scrum define tres roles: el Scrum Master, el dueño del producto y el equipo de
desarrollo.
● Product owner(dueño del producto): Acorde (Schwaber & Sutherland, 2013,p.6) “El
Dueño de Producto es el responsable de maximizar el valor del producto y del trabajo
del Equipo de Desarrollo. El cómo se lleva a cabo esto podría variar ampliamente
entre distintas organizaciones, Equipos Scrum e individuos.”
Principios de Scrum
Estas se conocen como las pautas básicas para aplicar el framework y estos tienen la
obligación de implementarse en todos los proyectos de Scrum
13
1. Control del proceso empírico:Va en base a las tres ideas principales
transparencia,inspección y adaptación
2. Auto-organización:Este principio se enfoca en los trabajadores de hoy en día, que
entregan un valor considerablemente mayor cuando se auto-organizan
3. Colaboración:
La autora Vera Salavarría en su trabajo del 2018 menciona las siguientes ventajas y
desventajas de Scrum:
14
Ventajas:
Desventajas:
15
Limitantes.
16
Recomendaciones.
➢ Es clave tomar en cuenta la estimación del esfuerzo, es decir estimar de una manera
realista los esfuerzos que requiere una tarea, ya que si se estima mal se tendría que
revisar o corregir.
➢ Medir la velocidad del equipo, como se sabe la velocidad es una métrica que nos
permite conocer la cantidad de trabajo puede abordar en un determinado periodo de
tiempo.
➢ Visibilizar el avance y éxito del equipo es una forma de motivar al equipo a que sigan
alcanzando los resultados y ver que es una forma atractiva de trabajo, en otras
palabras el reconocimiento es una de las acciones que más valoran los trabajadores.
17
Conclusiones.
18
Bibliografía.
Bioul, G., Escobar, F., Alvarez, M., Nardin, A., & Ricci, E. (2010). Metodologías Ágiles, análisis de
su implementación y nuevas propuestas. Universidad CAECE, Sede Mar del Plata, Olavarría.
2464. Recuperado de:
http://sedici.unlp.edu.ar/bitstream/handle/10915/19292/Documento_completo.pdf?sequence=
1&isAllowed=y
Cadavid, A. N., Martinez, J., & Vélez, J. (2013). Revisión de metodologías ágiles para el desarrollo de
software. Prospectiva, 11(2), 30-39. Recuperado de: https://doi.org/10.15665/rp.v11i2.36
Gonzales, J. (2006). Introducción a las metodologías ágiles Otras formas de analizar y desarrollar.
Recuperado de:
https://www.exabyteinformatica.com/uoc/Informatica/Tecnicas_avanzadas_de_ingenieria_de_
software/Tecnicas_avanzadas_de_ingenieria_de_software_(Modulo_3).pdf
Latelier & Penadés.(2006). Metodologías ágiles para el desarrollo de software: eXtreme Programming
(XP). Recuperado de:
https://www.researchgate.net/profile/Patricio-Letelier/publication/26428496_Metodologias_a
giles_para_el_desarrollo_de_software_eXtreme_Programming_XP/links/60abe70892851ca9d
ce1cc4c/Metodologias-agiles-para-el-desarrollo-de-software-eXtreme-Programming-XP.pdf?
origin=publication_detail
Schwaber, K., & Sutherland, J. (2013). La Guía Definitiva de Scrum: Las Reglas del Juego.
Recuperado de: https://scrumguides.org/docs/scrumguide/v1/Scrum-Guide-ES.pdf
Digité. (2021, 1 octubre). ¿Qué es Extreme Programming (XP)? - Valores, Principios Y Prácticas.
Digite. Recuperado de:
https://www.digite.com/es/agile/programacion-extrema-xp/#:%7E:text=El%20proyecto%20ha
b%C3%ADa%20comenzado%20en,el%20TDD%20con%20gran%20%C3%A9xito
19