Ingeniería Del Software I TPI
Ingeniería Del Software I TPI
Ingeniería Del Software I TPI
VALORES:
El primero de los valores que promueve el manifiesto es que las personas son lo más
importante, por encima de los procesos y las herramientas, por su capacidad para ser
creativas e innovar
Esta afirmación sostiene que ver cómo se comportan las funcionalidades esperadas en
software funcionando es más valioso que un documento muy detallado de requisitos, que
además será muy difícil de crear antes del desarrollo de un proyecto por la inestabilidad
de su naturaleza.
De nada sirve entregar un producto a los usuarios que ya no es relevante para ellos. Este
valor defiende que, en entornos cada vez más cambiantes, tiene más sentido ir creando el
producto con una retroalimentación continua durante su desarrollo, que cumplir a
rajatabla lo pactado de antemano.
El cuarto de los valores de Agile habla de que no tiene sentido utilizar planteamientos
rígidos en escenarios volátiles como el del desarrollo de software. Es más valiosa la
capacidad de respuesta y adaptación a los cambios que la de seguir y asegurar el
cumplimiento de los planes preestablecidos.
PRINCIPIOS:
Este principio propone poner fin a las barreras existentes entre los equipos de negocio y
de desarrollo de software, para mejorar la comprensión y colaboración mutua y conseguir
mejores resultados.
El sexto enunciado del manifiesto habla de la forma de comunicación más adecuada para
llevar a cabo proyectos de forma exitosa: la conversación cara a cara. De todas las formas
de comunicación existentes, la cara a cara es la más efectiva, ya que reducen
notablemente los tiempos de respuesta y los malentendidos
El séptimo principio ágil hace referencia a que la medida fundamental para que las
organizaciones conozcan el progreso de un proyecto debe ser el software en
funcionamiento
La octava idea de la declaración sostiene que al operar de forma ágil se persigue optimizar
la forma de trabajar para evitar sobrecargas y entregar al mercado frecuentemente
soluciones de software que aporten valor a los usuarios, sin que haya que hacer esfuerzos
desmesurados.
El noveno postulado del manifiesto afirma que cuidar los aspectos técnicos a la hora de
desarrollar un producto de software aporta agilidad.
El décimo principio del Manifiesto ágil plantea una idea muy práctica: actuar de la forma
más sencilla posible. El cliente no paga por el esfuerzo realizado, sino porque se le
entregue una solución que atienda sus necesidades.
El undécimo enunciado afirma que los equipos a los que se le da una libertad y una
confianza suficientes son los que consiguen los mejores resultados.
El último principio de Agile hace referencia a la idea de la mejora continua. Los equipos
deben revisar frecuentemente su trabajo, para ajustarlo y mejorar su rendimiento
Ventajas y desafíos de adoptar metodologías ágiles:
Ventajas:
Desventajas:
Existe el peligro de que la falta de límites del proyecto conduzca a una expansión
descontrolada.
Metodología Scrum:
Product Owner
El Product Owner o dueño del producto es conocido como “la voz del cliente”, ya que
debe entender las necesidades y prioridades de los stakeholders, incluyendo los clientes y
los usuarios
Responsabilidades:
• Explicar las historias de usuario al equipo Scrum, al tiempo que crea la lista de tareas.
Scrum Master
El Scrum Master debe tener una actitud de líder servicial (Servant Leader) para el equipo
Scrum. Es quien modera y facilita las interacciones del equipo como facilitador y
motivador.
Responsabilidades:
• Garantizar que los recursos de respaldo estén disponibles para el funcionamiento del
proyecto sin problemas.
• Apoya al equipo Scrum en la estimación del esfuerzo necesario para completar las tareas
acordadas para el sprint
• Se asegura que los problemas que afectan al equipo Scrum se discutan y se resuelvan.
• Garantizar que exista un ambiente ideal para el equipo Scrum.
Scrum Team
El Scrum Team también es conocido como equipo de desarrollo, ya que es responsable del
desarrollo, servicio o de cualquier otro resultado. Consiste en un grupo de personas que
trabajan en las historias de usuario en la lista de pendientes del sprint para crear los
entregables del proyecto
Responsabilidades:
• Estar de acuerdo con los demás miembros del Scrum Core Team sobre la duración del
Sprint.
• Crear entregables.
Product Backlog
El Product Backlog es un inventario que contiene cualquier tipo de trabajo que haya que
hacer en el producto: requerimientos, casos de uso, tareas y dependencias. Es la principal
fuente de información sobre el producto en Scrum, una lista, en cualquier formato, que
contiene todos los requerimientos que necesitamos implementar en el producto
Sprint Backlog
Se trata de una lista de elementos en los que trabajar durante la etapa de Sprint. Estos
elementos normalmente se componen de tareas técnicas más pequeñas que permiten
conseguir un incremento de software terminado.
Incremento
Si Scrum tuviera que ser reducido a una sola cosa, sería a entregar una pieza de software
terminado en cada Sprint. Un Incremento es el resultado del Sprint, es la suma de todas
las tareas, casos de uso, historias de usuario y cualquier elemento que se haya
desarrollado durante el Sprint y que será puesto a disposición del usuario final en forma
de software, aportando un valor de negocio al producto que se está desarrollando.
Eventos: En la metodología Scrum, hay varios eventos clave que se llevan a cabo durante
el proceso de desarrollo de un proyecto. Estos eventos tienen como objetivo fomentar la
colaboración, la transparencia y la adaptabilidad en el equipo de desarrollo. A
continuación, se presentan los eventos más comunes en Scrum:
Sprint Planning (Planificación del Sprint): Es una reunión en la que el equipo Scrum define
y planifica el trabajo a realizar durante el próximo Sprint. Se establece el objetivo del
Sprint y se seleccionan las historias de usuario o elementos del backlog que se incluirán en
el Sprint.
Daily Scrum (Scrum Diario o Reunión Diaria): Es una reunión diaria de corta duración en la
que el equipo se sincroniza y actualiza sobre el progreso del trabajo. Cada miembro del
equipo comparte qué hizo desde la última reunión, qué hará hasta la siguiente y si hay
algún impedimento o problema que requiera atención.
Sprint Review (Revisión del Sprint): Al final de cada Sprint, se lleva a cabo una reunión de
revisión para demostrar y revisar el trabajo completado durante el Sprint. El equipo
muestra las funcionalidades desarrolladas y recibe comentarios del cliente o de los
stakeholders para realizar ajustes o mejoras.
Sprint Retrospective (Retrospectiva del Sprint): Es una reunión en la que el equipo Scrum
reflexiona sobre el Sprint completado. Se identifican las prácticas que funcionaron bien y
las que se pueden mejorar. El objetivo es realizar ajustes y definir acciones de mejora
continua para el próximo Sprint.
Ventajas de Scrum:
Flexibilidad: Scrum es altamente adaptable a los cambios en los requisitos del
proyecto, lo que permite a los equipos responder rápidamente a las necesidades
cambiantes del cliente.
Desventajas de Scrum:
Dificultad para gestionar cambios drásticos: Si los cambios en los requisitos son
demasiado grandes o frecuentes, Scrum puede enfrentar dificultades para
manejarlos de manera eficiente. Puede requerir ajustes significativos en el plan y la
estructura del proyecto.
Metodología Kanban:
Principios:
Practicas:
Otro de los objetivos del método Kanban es optimizar el flujo de trabajo y acelerar
el proceso de producción, centrándose en completar cada una de las tareas
eficientemente
La manera más efectiva para lograr una mejora continua y un cambio sostenible en
una organización se consigue mediante el establecimiento de una visión
compartida sobre los problemas que deben superarse para obtener un futuro
mejor. Con la visualización y la colaboración, Kanban consigue fomentar un sentido
de unidad y trabajo en equipo.
Columnas
Punto de compromise
Punto de entrega
Ventajas:
Visualización del flujo de trabajo: Kanban utiliza un tablero visual que muestra de manera
clara y concisa el flujo de trabajo, las tareas en progreso y las que están pendientes. Esto
brinda una visibilidad completa del estado del proyecto y permite un seguimiento más
efectivo.
Desventajas:
Requiere disciplina y autonomía: Kanban requiere que los equipos sean disciplinados y
estén comprometidos con los principios y prácticas de la metodología. Además, los
equipos necesitan tener un alto grado de autonomía para tomar decisiones y administrar
su propio flujo de trabajo.
Valores:
1. Simplicidad
2. Comunicación
XP se basa en una respuesta rápida y una comunicación efectiva. Para trabajar de manera
efectiva, el equipo debe ser abierto y honesto entre sí. Cuando surgen problemas, se
espera que todos aporten sus comentarios e ideas, ya que probablemente alguno de ellos
ya tenga una solución adecuada
3. Comentarios
4. Valentía
5. Respeto
Practicas:
Pruebas de clientes: Cuando finalices una función nueva, el cliente desarrollará una
prueba de aceptación para determinar si has cumplido con la historia de usuario original.
Desarrollo guiado por pruebas (TDD): Debido a que la programación extrema se basa en
los comentarios, se requieren pruebas exhaustivas. A través de ciclos cortos, los
programadores realizan pruebas automatizadas para luego reaccionar de inmediato.
Refactorización: Aquí es donde se deberá prestar especial atención a los detalles más
finos del código base, para eliminar los duplicados y asegurarse de que el código sea
coherente. De esta manera obtendrás diseños simples y de alta calidad.
Metáfora (Metaphor): En XP, se utiliza una metáfora para establecer una analogía común
que ayude a todos los miembros del equipo a comprender y comunicarse sobre el
sistema. La metáfora proporciona un marco conceptual que facilita la toma de decisiones
y la resolución de problemas.
Desventajas:
Enfoque:
Aplicabilidad:
Scrum: Es adecuado para proyectos complejos que requieren una estructura clara de roles
y eventos. Es especialmente útil cuando los requisitos son más propensos a cambios y se
necesita una entrega iterativa.
XP: Es adecuado para equipos de desarrollo que buscan una entrega rápida de software
de alta calidad. Es útil cuando se requiere una colaboración cercana y una adaptabilidad
rápida a los cambios en los requisitos.
Beneficios:
Scrum: Proporciona una estructura clara y roles definidos, lo que facilita la planificación y
el seguimiento del progreso del proyecto. Promueve la transparencia, la colaboración y la
adaptabilidad, lo que permite una entrega más rápida y eficiente.
Kanban: Mejora la eficiencia del flujo de trabajo al limitar el trabajo en progreso y
optimizar el proceso. Proporciona una mayor visibilidad y control sobre las tareas, lo que
ayuda a identificar cuellos de botella y mejorar continuamente el rendimiento del equipo.
XP: Permite una entrega rápida de software de alta calidad mediante la adopción de
prácticas técnicas y de gestión sólidas. Promueve la colaboración, la comunicación y la
mejora continua, lo que resulta en un producto final de mayor calidad y satisfacción del
cliente.
Enfoque:
Metodologías ágiles: Las metodologías ágiles, como Scrum, Kanban y XP, tienen un
enfoque iterativo e incremental. Se basan en la entrega temprana y continua de valor al
cliente, dividiendo el trabajo en incrementos más pequeños y manejables. El énfasis se
coloca en la adaptabilidad, la colaboración y la retroalimentación continua.
Flexibilidad:
Comunicación:
Metodologías ágiles: Las metodologías ágiles están diseñadas para ser altamente
adaptables y responder rápidamente a los cambios. Los cambios se pueden incorporar en
las siguientes iteraciones, lo que permite una mayor flexibilidad y capacidad de respuesta.
Se valora la adaptación continua y se fomenta la mejora basada en la retroalimentación
recibida.
Elaborar sus conclusiones sobre las Metodologías Ágiles Incluir las referencias
bibliográficas y referentes de cada Metodología:
Las metodologías ágiles han revolucionado la forma en que se desarrollan los proyectos de
software, ofreciendo un enfoque más flexible, colaborativo y adaptativo. A través de
metodologías como Scrum, Kanban y XP, las organizaciones han logrado mejorar la
eficiencia, la calidad y la satisfacción del cliente.
BIBLIOGRAFIA:
https://www.iebschool.com/blog/que-son-metodologias-agiles-agile-scrum/
#:~:text=Por%20definici%C3%B3n%2C%20las%20metodolog%C3%ADas
%20%C3%A1giles,las%20circunstancias%20espec%C3%ADficas%20del
%20entorno.
https://sentrio.io/blog/valores-principios-agile-manifiesto-agil/
https://ebf.com.es/blog/ventajas-y-desventajas-de-las-metodologias-agiles-
y-su-aplicacion-en-el-trabajo/
https://www.proyectum.com/sistema/blog/los-tres-principales-roles-en-
scrum/#:~:text=En%20la%20metodolog%C3%ADa%20Scrum
%20podemos,del%20proyecto%20en%20su%20totalidad.
https://www2.deloitte.com/es/es/pages/technology/articles/artefactos-
scrum.html
https://www.aluracursos.com/blog/metodo-kanban-conceptos-y-funciones-
agilidad?
gclid=CjwKCAjwp6CkBhB_EiwAlQVyxTyZWIWDX7lwg5_ds76Hwdyikm5EcA0zS
VcsuORDE9OyW9zO0xQgExoCHisQAvD_BwE
https://www.indeed.com/orientacion-profesional/desarrollo-profesional/
kanban-que-es
https://www.atlassian.com/es/agile/kanban/boards#:~:text=Un%20tablero
%20de%20kanban%20es,orden%20de%20su%20trabajo%20diario.
https://asana.com/es/resources/extreme-programming-xp