Está en la página 1de 7

UTM MORELIA

Metodologías y Modelado de Desarrollo de software.

INVESTIGACIÓN:

METOLODIAS ÁGILES: “XTREME (XP) &


SCRUM”.

Pfra: Paulina Salgado Solorzano.

Alumno: Gaona Magallán Luis Antonio.

Grupo: 2B ‘TI’
METODOLOGIA XTREME XP.
¿En qué consiste?
Si se tiene como prioridad el aumento de la productividad cuando se está desarrollando un
software la metodología xtreme (XP) es nuestra primera opción. Es una metodología muy
efectiva, hace uso de varias prácticas de trabajo, siguiendo su principal objetivo que es
desarrollar el mejor software para las necesidades del cliente. Tiene como característica que si
el sistema no eleva demasiado su complejidad, el costo de modificar al sistema en un futuro no
difiere mucho de si hiciera ahora.

Este sistema no está en contra de modificaciones al sistema, aún si ya se lleva a cabo en una fase
muy avanzada de su desarrollo, sino todo lo contrario, la máxima prioridad siempre será la
satisfacción del cliente, siempre atender sus necesidades, de forma inmediata. Pero gracias a las
características de este sistema, facilita que dichas modificaciones puedan realizarse de manera
que no impliquen un problema mayor causando así un retraso en el tiempo de entrega.

¿Cómo se aplica?
La metodología tiene como base la simplicidad y como objetivo principal la satisfacción del
cliente; para lograrlo se deben tomar en cuenta cuatro valores fundamentales:

 Retroalimentación.
 Proceso continuo en lugar de por bloques.
 Propiedad intelectual compartida.
 Entendimiento compartido.

Principios de XP:

1. El juego de la planificación: Es un permanente diálogo entre las partes empresarial


(deseable) y técnica (posible).
2. Pequeñas entregas: Se debe cuidar que cada entrega se mantenga con una extensión
pequeña, nada de entregas exageradamente grandes que hacen perder de vista los
puntos más importantes.
3. Metáfora: “Una metáfora es una historia que todo el mundo puede contar acerca de
cómo funciona el sistema.”
4. Diseño sencillo: No se debe crear un complejo diseño difícil de manipular.
5. Pruebas: Está prohibido dejar la mínima parte del sistema sin testear.
6. Refactorización: Al ir implementando las funciones de nuestro sistema, se busca la
manera más fácil de hacerlo, cuidando que no se pierda la funcionabilidad.
7. Programación por parejas: “Todo el código de producción lo escriben dos personas
frente al ordenador”. Uno se encarga del código mientras el otro siempre está pensando
cómo mejorarlo.
8. Propiedad colectiva; Cualquiera que crea que puede aportar valor al código en cualquier
parcela puede hacerlo, ningún miembro del equipo es propietario del código.
9. Integración continua: Es mejor que el código se integre en bloques pequeños pero
diarios, esto hace menos pesada la fase de pruebas.
10. 40 horas semanales: Cuerpos y mentes descansados son más eficientes.
11. Cliente en casa: El cliente no debe perder contacto ni interacción con el equipo en
ninguna fase del desarrollo.
12. Estándares de codificación: Si los programadores tienen acceso a diferentes partes del
sistema, alternándose, debemos de establecer un estándar de codificación aceptado e
implantado por todo el equipo.

¿En qué tipos de proyectos se aplica?


Es mejor utilizar XP cuándo el proyecto en cuestión tiene un alto riesgo de elementos añadidos.
Quizá sea satisfacer un plazo muy ajustado. Quizá sean alguna cantidad o medio de
requerimiento dinámico desconocido que la solución propuesta no tiene garantías de satisfacer.
Cabe la posibilidad de que la solución propuesta sea tan avanzada que corre el riesgo
simplemente de no funcionar.

Lo más recomendable es que el equipo de desarrollo no sea menor de 2 integrantes y por


contraparte no exceda la cantidad de diez.

Estos son los resultados deseados de XP:

 Se incrementa considerablemente la productividad del equipo de desarrollo.


 Se consigue con más facilidad la satisfacción del cliente.
 Se satisfacen y mantienen los estándares de calidad.
 Se satisfacen con más precisión los requisitos del cliente.
 Se cumplen los plazos con mayor exactitud y consistencia.

Ventajas y desventajas
Ventajas:

 Se adapta muy bien al desarrollo de sistemas ya sean grandes o pequeños.


 Optimiza el tiempo
 Permite desarrollo en parejas
 Se basa en crear código sencillo
 No se necesita demasiada documentación durante el desarrollo.

Desventajas:

 El tiempo y costo no se tienen definidos con exactitud.


 Permite que después de cada entrega el cliente pueda agregar más trabajo del ya dicho.
 Es necesaria la contante presencia del cliente.
METODOLOGIA SCRUM
¿En qué consiste?
A la hora de poner en marcha un proyecto, toda empresa debe asegurar que el equipo implicado
conoce sus tareas y plazos de tiempo de entrega. Scrum es una metodología de trabajo que nos
ayuda a conseguirlo y que, además, permite agilizar la entrega de valor al cliente en iteraciones
cortas de tiempo.

Scrum es un proceso, marco de trabajo o framework, usado en equipos que trabajan en


proyectos complejos; una metodología de trabajo ágil que tiene como finalidad la entrega de
valor en períodos cortos de tiempo, basada tres pilares: la transparencia, inspección y
adaptación.

¿Cómo se aplica?
Pilares de la metodología Scrum:

Transparencia: Todos los implicados tienen conocimiento de qué ocurre y en el proyecto y cómo
ocurre. Esto hace que haya un entendimiento “común” del proyecto, una visión global.

Inspección: Los miembros del equipo Scrum frecuentemente inspeccionan el progreso para
detectar posibles problemas. La inspección no es un examen diario, sino una forma de saber que
el trabajo fluye y que el equipo funciona de manera auto-organizada.

Adaptación: Cuando hay algo que cambiar, el equipo se ajusta para conseguir el objetivo del
sprint. Esta es la clave para conseguir éxito en proyectos complejos, donde los requisitos son
cambiantes o poco definidos y en donde la adaptación, la innovación, la complejidad y
flexibilidad son fundamentales.

El desarrollo de producto tiene un ciclo de vida en la metodología Scrum. Estas son fases en las
que se divide un proceso Scrum:

 ¿Qué y quién? El producto que queremos conseguir una vez terminemos el Sprint, y
los roles de equipo con sus tareas asignadas.
 ¿Dónde y cuándo? El plazo y el contenido del Sprint.
 ¿Por qué y cómo? Las distintas herramientas para aplicar esta metodología ágil.

Roles de Scrum

Scrum tiene como prioridad la entrega de un resultado de calidad. Los equipos de Scrum son
auto-organizados y multi-funcionales. Esto garantiza la responsabilidad de la entrega de valor al
equipo completo, sin necesidad de ayuda de otros miembros de la organización.

Los tres roles de Scrum, son los siguientes:

1. Product owner: Es el responsable de maximizar el valor del trabajo del equipo de desarrollo.
La maximización del valor del trabajo viene de la mano de una buena gestión del Product
Backlog, el cual explicaremos más adelante.

Es el único rol que habla constantemente con el cliente, lo que le obliga a tener muchos
conocimientos sobre negocio. Para finalizar, un equipo Scrum debe tener solo 1 Product Owner,
y este además puede ser parte del equipo de desarrollo.
2. Scrum Master: Es el responsable de que Scrum sea comprendido y aplicado en la organización.
Es el manager de Scrum, pero en ningún momento se le puede considerar un jefe. Líder servil
que se encarga de eliminar impedimentos o inconvenientes que tenga el equipo dentro de un
sprint (que ya revisaremos en detalle más adelante), aplicando las mejores técnicas para
fortalecer el equipo de marketing digital.

Dentro de la organización, el Scrum Master tiene la labor de ayudar en la adopción de esta


metodología en todos los equipos.

3. Equipo de desarrollo: Son los encargados de realizar las tareas priorizadas por el Product
Owner. Es un equipo multifuncional y auto-organizado. Son los únicos que estiman las tareas del
product backlog, sin dejarse influenciar por nadie. La finalidad de esto es transmitir la
responsabilidad compartida si no se llegan a realizar todas las tareas de un sprint.

¿En qué proyectos se aplican?

Aunque esta metodología se adapta a distintos sectores, no es la más adecuada para


implementar proyectos que estén relacionados con constructoras o fabricas.Incluso, en los
propios proyectos tecnológicos ha habido algún que otro fracaso. Precisamente, Jeff Sutherland,
cocreador de Scrum y Asesor Senior y Coach de OpenView, explica las razones del fracaso de
Healthcare y del éxito de Spotify en esta entrevista que resumimos aquí.

“Causas de fracaso de Healthcare.gov, proyecto del gobierno norteamericano para mostrar


transparencia en los seguros sanitarios.”

 No haber lanzado el proyecto fase a fase


 No testeo ni aprendizaje
 Falta de liderazgo en un proyecto con más de 20 consultoras implicadas
 Falta de coordinación entre el Front-End y el Back-End
 El testeo final se produjo en un periodo demasiado corto

“Causas del éxito de Spotify.”

 Contrato externo de un especialista en metodologías ágiles. Gran importancia al rol del


Scrum Master.
 Fundamental el trabajo del Product Owner, para saber entender las necesidades reales
del cliente y trasladarlas a tiempo al equipo.
 Buena coordinación central de la compañía.
 Rápidos, baratos y mejores frente a sus competidores Google y Apple.
 Los pequeños equipos Scrum son hábiles para implementar el software al final de cada
sprint, sin romper a otros equipos.
Ventajas y desventajas de la Metodología Scrum

Ventajas

 Scrum es muy fácil de aprender, los roles, eventos y artefactos son claros y tienen un
objetivo muy relacionado a nuestra manera diaria de trabajar.
 El cliente puede comenzar a usar su producto rápidamente.
 Se agiliza el proceso, ya que la entrega de valor es muy frecuente.
 Menor probabilidad de sorpresas o imprevistos, porque el cliente está viendo
frecuentemente el proyecto.

Desventajas

 Difícil de implementar.
 Necesita equipos multi-disciplinares.
 El equipo puede tender a realizar el camino más corto para conseguir el objetivo de un
Sprint, el cual no siempre es el de mayor calidad.

Bibliografía:
Araque, M. (8 de Febrero de 2017). Metodología Scrum: ¿qué es y cómo funciona? Recuperado
el 27 de Marzo de 2019, de https://www.wearemarketing.com/es/blog/metodologia-
scrum-que-es-y-como-funciona.html

Malverde, D. (27 de Marzo de 2015). Introducción a la Programación Extrema (XP). Obtenido


de http://www.davidvalverde.com/blog/introduccion-a-la-programacion-extrema-xp/