Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías...
-
Upload
arcelia-flores -
Category
Documents
-
view
239 -
download
0
Transcript of Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías...
![Page 1: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/1.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Metodologías Ágiles
Magister en Ingeniería de SoftwareUNSL
![Page 2: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/2.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Este curso
• Se basa en el análisis critico de metodologías y procesos de desarrollo
• Trata detalladamente dos metodologías Ágiles
• Quizas el mayor desafío que Ustedes tienen es formar una opinión basada en evidencia acerca de las metodologías ágiles y rigurosas
![Page 3: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/3.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Aprobación
• 15 % : Participación en clase• 25 % : Trabajos Prácticos• 60% : Trabajo de investigación + Presentación
![Page 4: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/4.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Objetivos de este modulo
• Tener una interpretación propia basada en evidencia acerca de por qué surgieron las metodologías ágiles
• Identificar fortalezas, debilidades, tendencias y preferencias en las metodologías robustas y ágiles
![Page 5: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/5.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Contenidos
• Los inicios de la ingeniería de software• La crisis del software• Los procesos y modelos robustos• Los procesos y modelos ágiles• La gente
![Page 6: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/6.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Advertencia
• Algunos puntos estarán interpretados, y Uds. son libres de tener una visión diferente
• Esta presentación no es “completa”• La forma en que algunos temas se presentan
pueden cuestionar algunos dogmas de la ingeniería de software
![Page 7: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/7.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
El principio (sin ingeniería)
![Page 8: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/8.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Contexto histórico
• La NATO declara la crisis del software en 1968, luego de crear el término Ingeniería de Software un año antes
• Deming, procesos, calidad en el resto de la industria
• Bill Curtis sobre variación entre programadores
• Fred Brooks “The mythical man-month”• Gerald Weinberg “The psichology og
programming”
![Page 9: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/9.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Contexto histórico
• Evidencia de sectores no-software de una relación directa entre mejore procesos - mejores productos
• Clean-pipe & Dirty water• Una de las premisas de CMM
![Page 10: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/10.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Contexto histórico
• Contratos multimillonarios con el DoD• Necesidad de “certificar” proveedores
![Page 11: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/11.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Breve paréntesis
• Durante Semana Santa, escuché una excelente interpretación del Requiem, de Mozart por parte de la Sinfónica de Córdoba.
• Obviamente, la variación de cada uno de los individuos, o algunos en particular, con miembros de la Sinfónica de Londres, eran notables
![Page 12: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/12.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Breve paréntesis
• El resultado final, sin embargo, era altamente comparable. Las diferencias se fundían en una excelente presentación, que dejó satisfechos a los aún mas exigentes
• Era tan descabellado pensar que un equipo de desarrollo de 400 personas podía funcionar como una orquesta?
![Page 13: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/13.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
CMM
• Carneggie Mellon (por qué no el MIT? O Cal Tech?)
• Bill Curtis• Mark Paulk• Watts Humphrey
![Page 14: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/14.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
El modelo del SEI
• Modelo IDEAL de process improvement• Ciclo clásico al estilo Demming, con una fase
inicial de diagnóstico contra un modelo de referencia
• CMM es el modelo de referencia
• Los niveles, y el término madurez, son extraídos de Crosby (“Quality is Free”)
![Page 15: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/15.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Quality is free
• La calidad se mide por el costo de reparar errores
• Niveles de Crosby:– Uncertainty– Awakening– Enlightment– Wisdom– Certainty
![Page 16: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/16.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Estructura de CMM
• Se pueden encontrar muchos tutoriales• 500 páginas de recomendaciones, aunque el
modelo podría explicarse en 20
• Breve debate: El nombre de los niveles (Inicial, Repetible, Definido, Gerenciado, Optimizado)
• Assessments de CMM (no auditorías, ni certificaciones)
![Page 17: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/17.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Otros modelos
• Bajo la sombrilla de SPI (software process improvement) surgieron otros modelos
• SPICE• ISO 9001
• El espíritu de CMM se desmerece en una certificación.
![Page 18: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/18.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Que se entiende por nivel Definido?
![Page 19: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/19.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Seriamente
• CMM no es normativo, pero...• Características de un proceso robusto
– Upfront planning– Requirements Management, en un sentido
tradicional– Ciclos de vida waterfall, V-model – Métricas
![Page 20: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/20.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
CMM y Producción en masa
– Stock– Hand-off– Proceso con nivel decreciente en la
necesidad de habilidades de los desarrolladores
– Responsabilidad diluida en la organización
![Page 21: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/21.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Estructura de un Proceso de SW
• Pipeline de fases ETVX• Cada fase tiene un entregable físico:
documento de análisis, documento de diseño, etc
• Planes detallados para las actividades de cada fase
![Page 22: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/22.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Los problemas de las metodologías rigurosas
• Tolvanen, 1998– overhead de proceso– métodos difíciles de usar y aprender– ambigüedad
![Page 23: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/23.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Los problemas de las metodologías rigurosas
• Baskerville, Travis &Treux, 1992– métodos orientados a proyectos grandes
(realmente grandes)– falta de adaptabilidad
![Page 24: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/24.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Los problemas de las metodologías rigurosas
• DeMarco & Lister, 1987– la gente puede centrarse mas en la
documentación que en el desarrollo real– no se asigna suficiente responsabilidad a los
desarrolladores– falta de motivación
![Page 25: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/25.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Los problemas de las metodologías rigurosas
• Bohem (2002)– enfoques rigurosos mas apropiados para
sistemas críticos. La “inercia” de un enfoque rigurosos no es apropiada para ambientes de cambio y velocidad.
![Page 26: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/26.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Desarrollo ágil de SW (Agile)
• Un compromiso útil entre nada de proceso y demasiado proceso (Fowler, 2001)
![Page 27: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/27.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Lean thinking
• El modelo de manufactura en el que se baso Crosby, y luego inspirara CMM y otros procesos rigurososos, evolucionó
• Conceptos como:– Just in time– Satisfacción del cliente– Eliminación de pasos innecesarios
![Page 28: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/28.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Ejemplo de empresas “Lean”
• Toyota– Los trabajadores pueden detener la línea si
detectan un defecto• eBay, Amazon, FedEx
– Eliminación de las órdenes y tracking innecesario. Just-in-time. Envíos sin stock.
• Chrysler– Acuerdos de colaboración con proveedores
![Page 29: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/29.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Principios de producción Lean
• Toda tarea debe agregar valor al producto• Focalizarse en la gente que agrega valor• Agregar valor basado en demanda• Optimizar entre organizaciones
![Page 30: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/30.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Gastos en producción Lean
• Producción en exceso• Stock• Pasos extra en el proceso• Búsqueda de información• Defectos• Esperas • Transportes
![Page 31: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/31.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Agile Alliance
• 17 representantes de metodologías alternativas (XP, Scrum, Crystal...) reunidos en un hotel de Utah en 2001
• Companías que competían en un mismo mercado, intentando una “suma positiva”
![Page 32: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/32.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Agile Manifesto
• declaración de principios• muy buena aceptación (debate Bohem)
![Page 33: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/33.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Los cuatro valores
• Individuos e interacciones por sobre procesos y herramientas
• Software funcionando por sobre documentación detallada
• Colaboración por sobre negociación con el cliente
• Responder a cambios por sobre seguir un plan
![Page 34: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/34.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Individuos e Interacciones
• La suposición de los roles intercambiables
![Page 35: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/35.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Software por sobre documentación
• foco en la implementación por sobre el modelado
• no significa que no se documenten requerimientos, diseño, etc.
![Page 36: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/36.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Debate
• UML, es Agile?• Como sé que mi proyecto tiene
suficiente/demasiada documentación?
![Page 37: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/37.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Colaboración del Cliente
• algunas metodologías un poco extremas• el espíritu es no “extorsionar” al cliente con un
contrato. Estar dispuesto al cambio, y cerca del cliente para predecirlo.
![Page 38: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/38.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Responder al cambio
• requirements emergence• cambios a los requerimientos originales
pueden tener mayor valor que los relevados inicialmente
![Page 39: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/39.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Los 12 principios del Manifesto
1 - La prioridad es satisfacer al cliente a través de releases tempranos y frecuentes
2 - Recibir cambios de requerimientos, aun en etapas finales
3 - Releases frecuentes (2 semanas a un mes)4 - Técnicos y no técnicos trabajando juntos
TODO el proyecto
![Page 40: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/40.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Los 12 principios del Manifesto
5 - Hacer proyectos con individuos motivados6 - El medio de comunicación por excelencia es
cara a cara7 - La mejor métrica de progreso es la cantidad
de software funcionando8 - El ritmo de desarrollo es sostenible en el
tiempo
![Page 41: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/41.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Los 12 principios del Manifesto
9 - Atención continua a la excelencia técnica10 - Simplicidad - Maximización del trabajo no
hecho11 - Las mejores arquitecturas, diseños y
requerimientos emergen de equipos auto-organizados
12 - A intervalos regulares, el equipo evalúa su desempeño y ajusta la manera de trabajar
![Page 42: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/42.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
1. Satisfacción del cliente como prioridad uno
• Basado en los releases frecuentes y en etapas tempranas
• Glass (2001) Cuidado con el manejo de expectativas del cliente
![Page 43: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/43.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
2 - Cambios son bienvenidos
• Brooks (1987) ya identificó el problema• “stabilize and synchronize” de Microsoft• requiremennts emergence• Como se factura esto?
![Page 44: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/44.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
3 - Entregas frecuentes
• la psicología del programador (Weinberg): Objetivos próximos y distantes
• mejor manejo de requerimientos (Cockburn, 2000)
• evolución del modelo en espiral
![Page 45: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/45.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
4 - Técnicos y desarrolladores trabajando juntos
“En mi trabajo, tengo los usuarios mas estúpidos del mundo”
• Microsoft: managers escriben código• Reducción del gap comunicacional
![Page 46: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/46.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
5 - Motivación
• people factor• la gente es la mejor oportunidad para mejorar
la productividad (Bohem, 1981)• el Principio de Dilbert
![Page 47: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/47.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
6 - Comunicación cara a cara
• No es necesariamente informal• el espacio físico debe favorecer la
comunicación • frecuentemente confundido con una reducción
en la documentación
![Page 48: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/48.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
7 - Software es la mejor medida de progreso
• no significa que las metodologías ágiles no colecten otras métricas
• no confundir funcionalidad con “cantidad de software”
• la mayoría de las métricas tradicionales son un epifenómeno de software entregado
![Page 49: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/49.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
8 - Ritmo de desarrollo sostenible
• DeMarco & Lister (1987) : Mas de 40 horas por semana no es sostenible en el tiempo
• responsabilidad social + efectividad ($)• una de las características de “venta” de CMM
a desarrolladores es, de hecho, la disminución del overtime
![Page 50: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/50.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
9 - Excelencia técnica
• revisión continua de la arquitectura/diseño• mejora continua del producto• peer reviews
![Page 51: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/51.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
10 - Maximizar el trabajo no hecho (o Simplicidad)
• no implementar mas de lo acordado• no debe confundirse con relegar diseño y
saltar a la codificación• Refactoring• No es “good enough quality”
• Cómo se alinea este principio con la forma de ser del desarrollador argentino?
![Page 52: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/52.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
11 - Equipos auto-organizados
• sinergia (DeMarco & Lister)• es un principio que apunta a la organización• proceso de reclutamiento• objetivos - motivación - satisfacción con el
trabajo• preservar los equipos de un proyecto a otro
![Page 53: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/53.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
12 - Autoevaluación
• mejora continua del proceso• conocimiento organizacional• los cambios pueden ser un poco erráticos si no
se aplica un criterio cuantitativo
![Page 54: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/54.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Práctico #1
1 - Fundamentar reducciones en el costo de cambio de requerimientos en una metodología que cumple los principios de Agile. Comenzar con la curva clásica, de cualquier libro de ingeniería de software.
![Page 55: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/55.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Práctico #1
2 - Evaluar el costo de cambios desde una perspectiva del cliente. Es similar la necesidad del cliente si se usa una metodología tradicional?
![Page 56: Iridis group Metodologías Ágiles - Maestría en Ingeniería de Software -UNSL Metodologías Ágiles Magister en Ingeniería de Software UNSL.](https://reader030.fdocument.pub/reader030/viewer/2022012906/5665b4271a28abb57c8f99ee/html5/thumbnails/56.jpg)
Metodologías Ágiles - Maestría en Ingeniería de Software -UNSLiridis group
Práctico #1
3 - Si vemos un libro de requerimientos como una orden de trabajo, y las correspondientes estimaciones como el presupuesto, el contrato de la empresa de software con su cliente es bastante directo . Bosqueje como sería un contrato usando una metodología ágil que implemente la misma aplicación.