LAS TÉCNICAS ÁGILES Y LA MADUREZ DE LA INDUSTRIA DEL SOFTWARE PARA SU ADOPCIÓN
San MiguelEnsayo26 de Febrero de 2020
8.368 Palabras (34 Páginas)209 Visitas
LAS TÉCNICAS ÁGILES Y LA MADUREZ DE LA INDUSTRIA DEL SOFTWARE PARA SU ADOPCIÓN
Agreda Chamorro Camilo Ernesto
Imbett Corredor Augusto Miguel
Londoño Muñoz Jesus Antonio
Méndez Martínez Mario Alejandro
Universidad Internacional de la Rioja
[pic 1]
17 de febrero de 2020
Nota
El presente trabajo es presentado a:
Asignatura: Metodologías, Desarrollo y Calidad en la Ingeniería de Software,
Docente: Ph D. Juan Antonio Sicilia Montalvo,
Programa: Máster Universitario en Ingeniería de Software y Sistemas Informáticos.
La información relacionada con éste documento deberá ser enviada a Facultad de Ingeniería y Tecnología, Universidad Internacional de la Rioja, Avenida de la Paz, 137 26006. Logroño (La Rioja).
Tabla de Contenido
Introducción 1
Desarrollo de la Actividad: 2
1. Introducción a las técnicas ágiles. 2
Reseña Histórica 2
Gráfico de la Historia Cronológica de las Técnicas Ágiles de Desarrollo de Software. 6
2. Comparativa entre técnicas ágiles y convencionales 7
Técnicas Ágiles 7
Técnicas Convencionales 7
3. Ventajas e inconvenientes de la adopción a técnicas ágiles 8
Ventajas de la adopción de ágiles 8
Inconvenientes de la adopción de ágiles 10
4. Técnica ágil SAFe 13
SAFe (Scaled Agile Framework) 13
Lean agile leadership (Liderazgo Ágil) 14
Valores principales de SAFe 14
Mentalidad Lean-Agile 16
Aplica los principios de SAFe 17
Liderar la transformación 17
Largue Solutions SAFe 20
Portfolio SAFe 21
Full SAFe 22
5. Requisitos mínimos para que una empresa pueda ser considerada ágil 24
Modelo Operativo 24
Recursos Humanos 24
Proceso de inversión: 24
Medición de rendimientos 25
Ubicación física de los equipos 25
6. Ejemplos de empresas de desarrollo de software que pueden ser consideradas ágiles y el porqué 26
Spotyfy 26
Apple 26
Google 27
Amazon 27
Tabla de Valoración Individual 28
Conclusiones 29
Referencias 30
Introducción
Teniendo en cuenta lo dispendiosas y poco efectivas que pueden llegar a ser las Técnicas convencionales (tradicionales) “Metodologías pesadas” en el 2001 se reunieron un conjunto de expertos en Modelos de Mejora del Desarrollo de Software Basado en Procesos, para crear un nuevo esquema de trabajo que abordara las diferentes problemáticas del desarrollo de software ya que en el momento estaban saliendo a relucir numerosas experiencias negativas de grandes compañías, problemas y dificultades que se tenía con las Técnicas Convencionales, partiendo de esto, esta mesa de trabajo empezó a desarrollar el concepto de Metodologías Ágiles; como resultado de esta reunión nació el manifiesto ágil que contiene un conjunto de principios que debe cumplir una técnica para considerase ágil, además este tipo de técnicas debe contemplar que el equipo encargado del desarrollo debe tener una cultura ágil, habilidades de alto rendimiento, proactividad y altas capacidades para desempeñar distintos roles dentro del proyecto.
Basadas en el manifiesto ágil empezaron a aparecer nuevas técnicas que siguen esos principios. De las principales ventajas que se pueden encontrar al usar este tipo de técnicas son: fácil adaptación al negocio y al medio cambiante, obtener resultados de entregas funcionales, iterativas e incrementales sin esperar hasta el final, logrando confianza y compromiso del cliente ya que éste puede ir conociendo paso a paso como crece su proyecto y cómo se construye en base a su necesidad.
Esas metodologías cumplen con una serie de etapas en las que se priorizan las actividades en la fase que se encuentren en el momento propicio, con el precepto divide y vencerás, facilitando enormemente la construcción del sistema.
Desarrollo de la Actividad:
Introducción a las técnicas ágiles.
Reseña Histórica
En el año de 1930, Walter Shewart propone el Ciclo PDCA (Planear, Hacer, Verificar y Actuar), es un ciclo que posteriormente fue ampliamente difundido por el Dr. Williams Edwards Deming como estrategia de mejora continua de calidad en cuatro pasos y donde lo más destacable es que al ser una estrategia cíclica es muy usada formando parte de otras estrategias de negocio y técnicas ágiles aún en nuestros días.
En el año de 1940, Toyota desarrolla en cabeza del Dr. Taiichi Ohno las ténicas “Kanban y Lean Manufacturing” que se centran en la planificación, la mejora continua y mantenimiento para todos sus sistemas de producción con el emblema “JIT” (Just in time) Justo a tiempo, convirtiéndose en la marca líder en ventas de camionetas, éstas técnicas estratégicas más adelante será la fuente predecesora del movimiento ágil.
En el año de 1974, Tom Gild publica conceptos sobre la “Gestión de Proyectos Evolutiva” (EVO) esta publicación básicamente expone una forma de desarrollo de proyectos más eficientemente sin necesariamente seguir una serie de fases o etapas, internamente aplica el ciclo PDCA, en este año también aparece un artículo “El proceso de Desarrollo de Software Adaptativo” (ASD) escrito por Ernest A. Edmonds éstas metodologías fueron aplicadas en varias empresas de talla mundial Como: IBM, Hewelt Packard, Microsoft.
En el año de 1992, Alistair Cockbur presenta los “Métodos Crystal” para IBM quién pidió el desarrollo de una metodología orientada a objetos, el desarrollo de esta técnica desembocó en una colección de enfoques de desarrollo ágil de software, los cuales son el punto de partida para la evolución de las metodologías (técnicas) ágiles, lo que hoy en día se conoce como el movimiento ágil, se centra principalmente en el equipo y la interacción entre cada miembro mientras se avanza en un proyecto de desarrollo de software.
En el año de 1993, aparece un artículo que muestra el concepto de “Refactorización” por Bill Opdyke titulado "Creando Superclases Abstractas por medio de la Refactorización" que hace hincapié en una técnica particular de alterar piezas de código de software sin afectar su resultado con el objetivo de mejorar los atributos no funcionales.
En el año de 1995 con el concepto “Programación en Pares” (Pair Programing) el cuál fue desarrollado por varios autores de forma simultánea, pero independiente, destacando principalmente a Jim Coplien en un artículo llamado “Programación en Pares” donde definió un patrón de desarrollo de software, y también Larry Constantine en su libro “Duros Dinámicos”.
La esencia de éstos conceptos pasó a ser parte integral más adelante de la técnica denominada Programación Extrema XP (eXtreme Programing).
La Programación en Pares consiste, en desarrollar un software por un conjunto de esfuerzos combinado por dos programadores que intercambian roles durante determinado tiempo descritos de la siguiente forma, el controlador que va a ser el encargado de desarrollo de código, y el navegador que va a ser el encargado de dirigir y hacer pruebas de satisfacción.
En este mismo año, se formaliza la técnica “SCRUM” aunque sus primeros desarrollos datan desde 1993 y se basan en un modelo definido por Ikujiro Nonaka y Takeuchia a principios de los 80 que establece una nueva forma de trabajo en equipo “scrum” de los jugadores de Rugby.
...