SCRUMBAN: Metodologías Agiles PDF

Title SCRUMBAN: Metodologías Agiles
Author F. Verano Hidalgo
Pages 20
File Size 409 KB
File Type PDF
Total Downloads 47
Total Views 79

Summary

SCRUMBAN: METODOLOGIAS AGILES MSc. Fanny Vanessa Verano Hidalgo Metodología Agile Con el auge de la tecnología, y con el objetivo de agilizar y automatizar los procesos en el desarrollo de software, está la necesidad de implantar Metodologías de Desarrollo de Software que ayudan a entregar un produc...


Description

SCRUMBAN: METODOLOGIAS AGILES

MSc. Fanny Vanessa Verano Hidalgo

Metodología Agile Con el auge de la tecnología, y con el objetivo de agilizar y automatizar los procesos en el desarrollo de software, está la necesidad de implantar Metodologías de Desarrollo de Software que ayudan a entregar un producto de calidad en tiempo y costo estimados, las metodologías ágiles de desarrollo de software han despertado interés gracias a que proponen simplicidad y velocidad para crear sistemas. Las metodologías tradicionales no se adaptan a las nuevas necesidades o expectativas que tienen los usuarios hoy en día, en parte que los métodos usados no son flexibles ante la posibilidad de la exigencia de nuevos requerimientos. Estos cambios generalmente implican altos costos, demanda de tiempo y la reestructuración total del proyecto que se esté llevando; en contraparte, los métodos ágiles permiten un desarrollo iterativo y adaptable que permite la integración de nuevas funcionalidades a lo largo del desarrollo del proyecto; para que tanto el cliente como el desarrollador queden satisfechos porque el producto final tiene una calidad adecuada. El término Ágil, aplicado a software nace en 2001, en una reunión celebrada en Utah, donde un grupo de 17 expertos de la industria de software tenían como objetivo, ofrecer una alternativa a los procesos de desarrollo de software tradicionales, que se caracterizaban por ser rígidos y dirigidos por l documentación. Las metodologías ágiles son una serie de técnicas para la gestión de proyectos que han surgido como contraposición a los métodos clásicos de gestión como CMMI (Capability Maturity Model Integration es un modelo para la mejora y evaluación de procesos para el desarrollo, mantenimiento y operación de sistemas de software). Aunque surgieron en el ámbito del desarrollo de software, también han sido exportadas a otro tipo de proyectos. Todas las metodologías que se

MSC. Fanny Vanessa Verano Hidalgo

consideran ágiles cumplen con el manifiesto ágil que no es más que una serie de principios que se agrupan en 4 valores: 1- Los individuos y su interacción, por encima de los procesos y las herramientas. 2- El software que funciona, frente a la documentación exhaustiva. 3- La colaboración con el cliente, por encima de la negociación contractual. 4- La respuesta al cambio, por encima del seguimiento de un plan. Un proceso es ágil cuando el desarrollo de software es: 

Incremental. Entregas pequeñas de software, con ciclos rápidos.



Cooperativo. Cliente y desarrolladores trabajan juntos constantemente con una cercana comunicación.



Sencillo. El método en sí mismo es simple, fácil de aprender y modificar. Está bien documentado y es adaptable. Permite realizar cambios de último momento.

Sus elementos claves son: 

Poca documentación



Simplicidad



Análisis como una actividad constante



Diseño evolutivo



Integraciones



Testeos diarios

Objetivo de las Metodologías Ágiles La gestión de proyectos mediante metodologías ágiles tiene como objetivos dar garantías a las cuatro demandas principales de la industria en la que se ha generado: valor, reducción del tiempo de desarrollo, agilidad y fiabilidad, garantizando la calidad y la satisfacción del cliente.

MSC. Fanny Vanessa Verano Hidalgo

Características de Metodologías Ágiles 

Satisfacer al cliente mediante entrega de productos tempranas, funcionales y continuas



Los cambios en los requerimientos son permitidos



Equipos auto organizados



Entregas frecuentes en el menor tiempo posible



El equipo de desarrollo y el cliente deben trabajar juntos durante todo el proyecto



El método más eficiente y efectivo es el dialogo cara a cara dentro del equipo



Simplicidad



Aumenta la productividad



Difusión y transferencia del conocimiento.

Ventajas 

Respuesta rápida a cambios de requisitos durante el proyecto



Minimiza costos



Mayor velocidad y eficiencia



Se identifican errores rápidamente debido a que se van haciendo pruebas a medida que se avanza



El equipo de desarrollo conoce el estado del proyecto



Mejora la calidad del producto



Simplifica la sobrecarga de procesos

Metodologías Ágiles más usadas Entre las metodologías ágiles más usadas se encuentran las siguientes: 

Programación extrema (XP) por sus siglas en inglés: su creador es Kent Beck y se denomina extrema porque lleva a límites extremos algunos y elementos y actividades comunes de la forma tradicional de programar.

MSC. Fanny Vanessa Verano Hidalgo



Scrum: este concepto nace a principio de los años 90, está basado en el estudio de gestión de equipos desarrollado por Hirotaka Takeuchi e Ikujiro Nonaka en 1986. Este es uno de los métodos ágiles que más se utiliza y es aplicable a otros tipos de proyectos. Cuenta con una organización (Scrum Alliance) sin fines de lucros que se encarga de difundirlo.



Kanban: este es considerado como el Enfoque Lean. Kanban, significa tablero visual, es un sistema de información que controla de modo armónico la fabricación de los productos necesarios en la cantidad y tiempo necesarios en cada uno de los procesos que tienen lugar tanto en el interior de la fábrica, como entre distintas empresas.



Open Up: es un proceso unificado ágil y liviano, que aplica un enfoque iterativo e incremental dentro de un ciclo de vida estructurado y contiene un conjunto mínimo de prácticas que ayuda al equipo a ser más efectivo desarrollando software. Es un modelo de desarrollo de software, es parte del Framework de modelo de proceso de Eclipse.



Scrumban: Scrumban es un híbrido de Scrum y Kanban - una mezcla de las ceremonias de Scrum, con los aspectos visuales, los límites de trabajo en progreso, sistemas pull, y flujo continuo de Kanban. El híbrido Scrumban permite que los equipos usen lo mejor de ambos enfoques para satisfacer sus necesidades particulares. En cierta forma, Scrumban está más alineado con Kanban que con Scrum, en el sentido de que es más fácil de ejecutar en varias aplicaciones, ya que es menos restrictivo que Scrum.

MSC. Fanny Vanessa Verano Hidalgo

Kanban La palabra Kanban viene del japonés y traducida literalmente quiere decir tarjeta con signos o señal visual. Kanban es un método visual para gestionar y procesar el trabajo, el objetivo del método kanban es poder visualizar tu trabajo, limitar la acumulación de tareas pendientes y maximizar la eficiencia (o el flujo de trabajo). Los equipos que trabajan con kanban se enfocan en reducir la duración de un proyecto (o la intervención de cada miembro) de comienzo a fin. La estructura kanban tiene sus orígenes en una fábrica de Toyota y fue popularizada luego por los equipos de desarrollo de software gracias a su flexibilidad y agilidad para permitir acelerar el ritmo y eficiencia del trabajo. Los principios del método kanban se pueden aplicar a casi cualquier industria, lo que ha permitido que esta metodología siga ganando popularidad entre todo tipo de equipos ágiles como en marketing, ventas, reclutamiento e incluso operaciones. Utiliza un tablero físico o digital para planear y hacer el seguimiento de tareas. En un tablero kanban se utilizan tarjetas, columnas y lo más importante, el concepto de progreso constante. Esto permite cierto control sobre el equipo y lo obliga a comprometerse a terminar el trabajo de manera continua. Los 4 principios básicos de Método Kanban El método está enfocado en llevar a cabo las tareas pendientes y los principios más importantes pueden ser divididos en cuatro principios básicos y seis prácticas. Principio 1: Empezar con lo que hace ahora. Kanban no requiere configuración y puede ser aplicado sobre flujos reales de trabajo o procesos activos para identificar los problemas. Por eso es fácil implementar Kanban en cualquier tipo de organización, ya que no es necesario realizar cambios drásticos.

MSC. Fanny Vanessa Verano Hidalgo

Principio 2: Comprometerse a buscar e implementar cambios incrementales y evolutivos. El método Kanban está diseñado para implementarse con una mínima resistencia, por lo que trata de pequeños y continuos cambios incrementales y evolutivos del proceso actual. En general, los cambios radicales no son considerados, ya que normalmente se encuentran con resistencias debidas al miedo o la incertidumbre del proceso. Principio 3: Respetar los procesos, las responsabilidades y los cargos actuales. Kanban reconoce que los procesos en curso, los roles, las responsabilidades y los cargos existentes pueden tener valor y vale la pena conservarlos. El método Kanban no prohíbe el cambio, pero tampoco lo prescribe. Alienta el cambio incremental, ya que no provoca tanto miedo como para frenar el progreso. Principio 4: Animar el liderazgo en todos los niveles. Este es el principio más novedoso de Kanban. Algunos de los mejores liderazgos surgen de actos del día a día de gente que está al frente de sus equipos. Es importante que todos fomenten una mentalidad de mejora continua (Kaizen) para alcanzar el rendimiento óptimo a nivel de equipo/ departamento/ empresa. Esto no puede ser una actividad a nivel de dirección. Las seis prácticas de Kanban Hay seis prácticas centrales que deben estar presentes para una implementación con éxito. 

Visualizar el flujo de trabajo

Lo primero y lo más importante es entender qué se necesita para el transcurso de un producto desde su pedido hasta su entrega. Para visualizar su proceso en Kanban, necesitará un tablero con tarjetas y columnas. Cada columna del tablero representa un paso en su flujo de trabajo. Cada tarjeta Kanban representa un

MSC. Fanny Vanessa Verano Hidalgo

elemento de trabajo. De esta forma, puede fácilmente seguir el progreso y detectar los cuellos de botella. 

Eliminar las interrupciones

El cambio de enfoque puede dañar seriamente su proceso y la multitarea (o multitasking) podría provocar generación de desperdicios. Limitar el trabajo en proceso (WIP) significa que un sistema de arrastre (pull) se aplica sobre partes o sobre todo el flujo de trabajo. Establecer un número máximo de elementos por etapa asegura que una tarjeta se “arrastra” al siguiente paso sólo cuando hay capacidad disponible. Tales restricciones iluminarán rápidamente las áreas problemáticas en su flujo para que pueda identificarlas y resolverlas. 

Gestionar el flujo

La idea de implementar un sistema Kanban es crear un flujo continuo e ininterrumpido. Por flujo nos referimos al movimiento de elementos de trabajo a través del proceso de producción. Lo que interesa es la velocidad y la continuidad del movimiento. Idealmente, queremos un flujo rápido e ininterrumpido. Esto significaría que nuestro sistema está creando valor rápidamente. O sea, minimizar el riesgo y evitar el coste de retraso, pero también hacerlo de manera previsible. 

Hacer las políticas explícitas (Fomentar la visibilidad)

No puede mejorar algo que no se entiende. Esta es la razón por la cual el proceso debe estar bien definido, publicado y promovido. Las personas no se asociarían ni participarían en algo que no creen que sea útil. Cuando todos estén familiarizados con el objetivo común, podrán trabajar y tomar decisiones con respecto a cambios que les moverán hacia una dirección positiva. 

Circuitos de retroalimentación

Para que el cambio positivo ocurra, tenga éxito y sea duradero, se necesita reuniones regulares ya que son necesarias para la transferencia de conocimiento

MSC. Fanny Vanessa Verano Hidalgo

(circuitos de retroalimentación). Tales son las reuniones diarias de pie para sincronizar el equipo. Se llevan a cabo frente al tablero Kanban y cada miembro comparte con los demás lo que hizo el día anterior y qué va a hacer el día de hoy. La duración promedio ideal de una reunión de pie debe ser entre 10 y 15 minutos, y las demás reuniones pueden durar hasta una hora, en función del tamaño del equipo y los temas. 

Mejorar colaborando (usando modelos y el método científico)

La forma de lograr la mejora continua y el cambio sostenible dentro de una organización se consigue a través de la visión compartida para un futuro mejor y la comprensión colectiva de los problemas que deben superarse. Los equipos que tienen un entendimiento compartido de las teorías sobre el trabajo, el flujo de trabajo, el proceso y el riesgo, tienen más probabilidades de crear una comprensión compartida de un problema y sugerir acciones de mejora que pueden acordarse por consenso. La metodología Kanban se basa en: 

Calidad garantizada. Todo lo que se hace debe salir bien a la primera, no hay margen de error. De aquí a que en Kanban no se premie la rapidez, sino la calidad final de las tareas realizadas. Esto se basa en el hecho que muchas veces cuesta más arreglarlo después que hacerlo bien a la primera.



Reducción del desperdicio. Kanban se basa en hacer solamente lo justo y necesario, pero hacerlo bien. Esto supone la reducción de todo aquello que es superficial o secundario (principio YAGNI).



Mejora continua. Kanban no es simplemente un método de gestión, sino también un sistema de mejora en el desarrollo de proyectos, según los objetivos a alcanzar.

MSC. Fanny Vanessa Verano Hidalgo



Flexibilidad. Lo siguiente a realizar se decide del backlog (o tareas pendientes acumuladas), pudiéndose priorizar aquellas tareas entrantes según las necesidades del momento (capacidad de dar respuesta a tareas imprevistas).

Kanban en pocas palabras: 

Visualiza el flujo de trabajo



Divide el trabajo en pedazos, escribiendo cada elemento en una tarjeta y colocándola en un tablero en la pared.



Utiliza columnas con nombre para ilustrar dónde se encuentra cada elemento en el flujo de trabajo.



Limita el trabajo en curso (WIP): Asigna límites explícitos a cuántos elementos pueden estar en progreso en cada estado del flujo de trabajo.



Mide el tiempo de entrega (tiempo promedio para completar un trabajo, a veces llamado "tiempo de ciclo") y optimiza el proceso para que el tiempo de entrega sea lo más pequeño y predecible posible.

¿Qué es Scrum? No es una metodología, sino que es una implementación del Agile Manifesto. Fue creado por Jeff Sutherland y Ken Schwaber y presentado por primera vez en la OOPSLA (es la conferencia internacional sobre programación, lenguajes y aplicaciones que es realizada cada año por la ACM (Association for Computing)) en 1995. Su nombre proviene del Rugby (en francés melèe) y al igual que en Rugby todos los jugadores actúan como una unidad para hacer que la pelota caiga en su control. En Scrum todos los componentes de un equipo actúan unitariamente para construir software de forma iterativa e incremental. Es un proceso en el que se aplican de manera regular un conjunto de buenas prácticas para trabajar colaborativamente, en equipo, y obtener el mejor resultado posible de un proyecto. Estas prácticas se apoyan unas a otras y su selección tiene origen en un estudio de la manera de trabajar de equipos altamente productivos.

MSC. Fanny Vanessa Verano Hidalgo

La “definición” de agilismo es: ligero, pronto, expedito. Y eso es básicamente lo que buscamos en un proyecto para evitar que se haga eterno. Es una estrategia flexible e integral, pues se tiene un marco que se adapta perfectamente a los cambios continuos. Es adaptable y transparente: la experiencia y los emisores de información son accesibles y fácilmente modificables. La entrega anticipada de valor: el proceso de crear el backlog (reserva) priorizado del producto garantiza que los requerimientos de alto valor del cliente se cumpla primero, lo que supone que todo lo que vayamos entregando tienen valor para el cliente puesto que se entrega con prioridades. Scrum también divide tareas complejas en historias de usuarios y las visualiza en un flujo de trabajo (muchas veces en un tablero Kanban). Los equipos de Scrum se comprometen a generar software al final de los intervalos establecidos, Sprints. Principios, aspectos y procesos de SCRUM Son la base que sostiene el framework de SCRUM y se pueden aplicar a cualquier industria. Debemos ser muy rigurosos al seguirlos y no podemos cambiarlos, puesto es lo que genera la confianza en el método. 

Control de proceso empírico: el resultado de la experiencia es un factor muy clave en SCRUM.



Autogestión: es MUY importante la transparencia y que todo el equipo sea sincero con sus compañeros y el proyecto. La información debe estar clara en un board común. En las metodologías tradicionales hay una organización superior al equipo, cuando en SCRUM todo es auto gestionado (aunque los miembros del equipo no pueden actuar haciendo lo que quieran).

Autoorganización 

Colaboración: es clave que entre todos encontremos soluciones a los problemas comunes.

MSC. Fanny Vanessa Verano Hidalgo



Priorización basada en el valor: la priorización en SCRUM funciona por el valor de cada actividad. Debemos identificar qué va a aumentar el valor del producto y de ahí, priorizar. Es importante también analizar las dependencias y riesgos, pero dando siempre foco al valor. La priorización la hace el ‘product owner’. Una vez que el product owner tiene claro las prioridades, habla con el equipo de SCRUM para que incluyan todas las actividades que haya que hacer. El equipo también debe aconsejar y comentar al product owner sobre las prioridades. Muy muy importante a considerar es la justificación del negocio: no vamos a hacer esfuerzos cuando el resultado no aporta valor.



TimeBoxing: aunque se basa en procesos empíricos, SCRUM defiende que hay que ser muy riguroso en los tiempos de desarrollo. El time-boxing propone la fijación de una cierta cantidad de tiempo para cada proceso y actividad en un proyecto SCRUM. ¿Ventajas?: proceso de desarrollo eficiente, menos gastos generales, alta velocidad para los equipos, puede utilizarse para evitar la mejora continua de algo.



Desarrollo iterativo: pequeñas unidades de trabajo, para lograr un todo. Descomposición de trabajo en entregables, que genera una entrega continua de valor. Aquí es donde surgen los sprints, qué son los periodos de tiempo donde se entregan estos pequeños entregables de valor.

Aspectos: 

Organización: product owner [dueño del qué, poder de decisión, disponible siempre para el equipo, conoce el dominio y viene de la parte del negocio (normalmente)] scrum master [dueño de la productividad, facilita sesiones de scrum, elimina obstáculos, asegura la transparencia], dev team [dueños del cómo, multidisciplinar, propósito]. Otros roles no centrales: stakeholders, scrum guidance, proveedores.

MSC. Fanny Vanessa Verano Hidalgo



Comunicación

de

equipo

dentro

de

SCRUM:

Primer

flujo

de

comunicación: cliente -> product owner -> scrum master -> equipo dev. El equipo dev también se comunica con el product owner para demostrar el incremento del producto durante las revisiones del sprint. 

Calidad: Es la capacidad del ...


Similar Free PDFs