Desarrollo Ágil de Software. Curso IIC 2143 Ingeniería de Software Rodrigo Sandoval 2010
|
|
- Esther Méndez Cortés
- hace 8 años
- Vistas:
Transcripción
1 Desarrollo Ágil de Software Curso IIC 2143 Ingeniería de Software Rodrigo Sandoval 2010
2 Contenidos Definiciones de Desarrollo Ágil Dos ejemplos de Enfoques Ágiles: extreme Programming Scrum
3 Extracto In Search of Methodology Alistair Cockburn, 1994 La historia que escuchamos fue casi la misma (con una excepción), independiente del tamaño, experiencia, país, década, o Estructurado vs. Objeto. Lo que encontramos fue lo siguiente: A los equipos de desarrollo les desagrada gastar tiempo en actividades de diseño que no lleven directamente al producto final. No les gusta tener que actualizar en forma manual documentos de diseño para mantenerlos al día con el producto (típicamente, simplemente no volvían a actualizarlos). Se les dan recursos y tiempo limitados para aprender nuevas técnicas, y no mucho tiempo extra para integrar dichas técnicas a sus hábitos diarios de trabajo. Los desarrolladores generalmente pueden evadir aquellos aspectos de la metodología que no les agradan.
4 Por qué? Metodología actual, documentada en papel, no facilita el desarrollo. Existen áreas sensibles que pueden ser mejoradas: Evaluación Preliminar v/s Concepción Construcción y Elaboración v/s Flujo Normal de Desarrollo Fomentar uso de herramientas adecuadas. Fomentar empowerment del equipo. Fomentar mentalidad de equipo.
5 Definición de Desarrollo Ágil Manifesto for Agile Development We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value. Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan While there is value in the items on the right, we value the items on the left more agilemanifesto.org
6 The Agile Manifesto Principles I Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. Business people and developers must work together daily throughout the project. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
7 The Agile Manifesto Principles II The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Working software is the primary measure of progress. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. Continuous attention to technical excellence and good design enhances agility. Simplicity--the art of maximizing the amount of work not done-- is essential. The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
8 Adaptando UP al Desarrollo Ágil Minimizar los Artefactos Intermedios Comunicación La comunicación tiene lugar entre las personas miembros del equipo, los documentos son secundarios. Simplicidad La descripción de un proceso siempre debe verse demasiado pequeña. Revisiones periódicas para remover complejidades acumuladas. Cualquier cosa que no pueda ser completamente justificada se elimina. Feedback e Iteraciones Breves Pasos pequeños, verificando exactitud de lo realizado (~ Daily Build visibilidad) Humanizar Un proceso sólo puede tener efectos de segundo orden, los efectos de primer orden se deben a las personas. Al construir un proceso debemos depender de la gente en todas las instancias donde el riesgo sea aceptable. Esfuerzo y Calendario La administración de proyectos no puede especificar ambos a la vez. Deben consultarse los actores relevantes.
9 De qué depende la calidad? Para lograr la calidad, conviene enfocarse en las personas involucradas en el proyecto. Los procesos y las tecnologías ayudan a las personas. Procesos Personas Calidad Tecnologías
10 Principios de Desarrollo Liviano Iniciar pronto Aprender constantemente Postergar las decisiones Entregar rápidamente Eliminar pérdidas Empoderar al equipo Diseñar con integridad Evitar suboptimizaciones Fuente: Mary Poppendieck. Lean Development & the Predictability Paradox 2003 Poppendieck LCC
11 Métodos de Desarrollo Ágil extreme Programming o XP Prácticas de negocio, desarrollo y codificación. Scrum Base en la gestión del proyecto y la interacción entre sus participantes. Feature Driven Development o FDD Descubrir e implementar las funcionalidades relevantes (features). Crystal Clear Fuerte en comunicaciones, liviano en entregables, iteraciones cortas.
12 Procesos de Desarrollo Ágil EXTREME PROGRAMMING Algunas referencias de material de Rosa Alarcón 2009
13 EXTREME PROGRAMMING 1996, 1999 Beck, K. Extreme programming explained, embrace the change. Un conjunto de valores, principios y prácticas para desarrollar software, reduciendo el costo del cambio. Valores: comunicación, simplicidad, feedback, y valor. Roles: Cliente (Customer) y Desarrollador (Developer) Prácticas: Planificar el juego, programación en pares, release pequeños y frecuentes, propiedad colectiva del código, metáforas del sistema, integración continua, diseño simple, ritmo de producción sostenido, testing, todos juntos, refactoring frecuente, estándares de codificación.
14 6 BUENAS PRÁCTICAS 1. Si las revisiones de código son buenas, revisar TODO el código (programación por pares). 2. Si el testing es bueno, TODOS harán pruebas de unidad TODO el tiempo, incluso los clientes (prueba de aceptación). 3. Si la simplicidad es buena, siempre haremos lo MÁS SIMPLE posible que funcione. 4. Si la arquitectura es importante, TODOS definirán y refinarán la arquitectura TODO el tiempo. 5. Si las pruebas de integración son importantes, integraremos y probaremos varias veces al día. 6. Si las iteraciones cortas son buenas, haremos iteraciones MUY cortas.
15 5 VALORES 1. Comunicación Diseño simple, uso de metáforas, colaboración usuarioprogramador, comunicación y feedback verbal. 2. Simplicidad Código simple, refactoring hacia mejores soluciones. El diseño del código se hace pensando en el hoy, no en el futuro. 3. Feedback Del sistema, del cliente, del equipo. 4. Coraje Siempre codificar para ahora. Saber cuando desechar código. 5. Respeto Nunca hacer cambios que dañen la compilación, introduzcan errores en los Tests o retrasen el trabajo de los pares
16 12 prácticas Feedback fino. 1. Desarrollo guiado por Testing (Test Driven Development). 2. Planificación. 3. Todos juntos (incluir al cliente). 4. Programación en pares. Proceso continuo. 5. Integración continua. 6. Mejora de diseño (refactoring). 7. Releases pequeños. Entendimiento común. 8. Diseño simple. 9. Metáfora de sistema. 10.Propiedad colectiva del código. 11.Estándares de codificación o convenciones. Salud del programador. 12.Ritmo sostenible (semana de 40 hrs.).
17 PROGRAMACIÓN POR PARES 2 programadores. El que escribe es el conductor, el que guía es el navegador (diseño, testing). Mientras uno hace pruebas de unidad el otro piensa en la clase que satisface esa prueba. Cambio de roles cada media hora. Pares dinámicos (un par en la mañana y posiblemente otro en la tarde). 2001, Laurie Williams (Utah Univ.): paired programmers are only 15% slower than two independent individual programmers, but produce 15% fewer bugs.
18 ARTEFACTOS Requisitos: Story cards (tarjetas de papel que contienen feature/funcionalidad a programar. Grano: 2-10 días). Diseño: CRC cards (tarjetas de papel que contienen responsabilidades de las clases e ideas de colaboradores), Sketches (borradores). Gestión: Lista de tareas (papel o pizarra, Grano: 1-2 días), Gráficos (en la pared), Story cards (Cómo el usuario (con nombre idealmente) usaría el software). Manejo de configuraciones: - Implementación: - Test: -
19 Escribiendo Historias La historia es la unidad de funcionalidad en XP (feature) Requisitos Se demuestra el progreso de un proyecto al entregar código integrado y testeado que implementa una historia. Se escriben en tarjetas para poder visualizarlas a la vez y ordenarlas según prioridad del cliente.
20 Escribiendo Historias Una historia debe: ser entendible por clientes y desarrolladores, testeable valiosa para el cliente y lo suficientemente pequeña para construir 6 de ellas en una iteración.
21 Historia de XP (Título descriptivo de la historia) (Nº ID) (Descripción breve y concisa de la historia en dos o tres párrafos describiendo propósito, entrada, salida y efectos principales) CLIENTE DESARROLLADOR (Estimación Esfuerzo)
22 Escribiendo Historias Principios de buenas historias Deben ser entendibles por el cliente. Deben entregar valor al cliente. Debe formarse de una o a lo más dos frases que describan algo importante para el cliente. (ej: El sistema debe verificar la ortografía de todas las palabras ingresadas en el comentario ) Mientras más corta, mejor. Deben ser independientes unas de otras.
23 Historia y Tareas Desarrollo - Ejemplo Ingresar Datos del Documento H 09 El usuario, antes de digitalizar el documento e ingresarlo a la plataforma documental deberá digitar los datos o índices del documento, que serán exigidos y validados por el formulario de ingreso. Los índices a solicitar al usuario dependerán de una plantilla centralizada que la aplicación deberá consultar siempre antes de mostrarle el formulario al usuario. Consideración 1: El acceso a la plantilla centralizada se puede implementar como una historia separada. Consideración 2: A su vez, la validación puede ser una historia separada 5 días
24 De escribir a estimar Una historia, que debería ser lo más atómica posible, depende de una o más tareas de desarrollo (por ej: implementar tablas, implementar capa lógica, hacer interfaz, etc.) TAREAS (TASKS) CRC CARDS HISTORIA Implementar Tablas para los datos Implementar clase Documento que tiene la lógica de manejo de los datos del documento Implementar formulario interfaz para el ingreso de datos.
25 Levantamiento de Req. en XP Iteration Plan Story Estimated Iteration Release ,5 2 (4) Ordenar según prioridad , , (5) Planificar (1) Describir historias (2) Definir/descomponer c/historia en tareas técnicas (3) Estimar esfuerzo
26 ROLES Cliente: Escribe historias y pruebas de aceptación. Elige historias para su construcción/release en cada iteración. Desarrollo: Programador (codifica, diseña, hace refactoring, identifica nuevas tareas y estima el tiempo de desarrollo), Tester (ayuda al cliente a escribir y desarrollar los tests). Administrador: Coach (concientiza sobre el proceso, customiza el proceso, interviene, enseña). Tracker (colecciona métricas, informa del progreso, da feedback sobre malas estimaciones). Otros: Consultor (consultor técnico, coach).
27 PRÁCTICAS Requisitos: Planificar el juego, cliente colocado, test de aceptación. Diseño: Metáforas del sistema, refactoring frecuente, diseño simple. Implementación: Refactoring frecuente, estándares de codificación, programación en pares, propiedad colectiva del código. Test y verificación: pruebas de aceptación, pruebas de cliente, testdriven development, cliente colocado. Gestión: Planificación del juego, entregas cortas, ritmo sostenible, reuniones de pie. Manejo de configuraciones: Integración continua, sala común, planificación del juego.
28 Procesos de Desarrollo SCRUM Algunas referencias de material de Rosa Alarcón 2009
29 Scrum Workflow
30 SCRUM 1986, H.Takeuchi & I.Nonaka, The New Product Development Game [Harvard Business Review]. 1996, J. Sutherland & K. Schwaber, Scrum Development Process [OOPSLA 96]. 2001, Manifiesto Ágil. Teams auto-dirigidos y auto-organizados. Scrum Master: 50% desarrollo, 50% administración. Proceso: Reuniones para determinar lo que se hará en la siguiente fase (Sprint). No se puede cambiar las tareas del Sprint. Reuniones diarias de pie. Sprints de 30 días calendario. Demo al cliente al final del Sprint
31 ROLES Cliente (Product Owner) Crea y prioriza el Product Backlog, elige metas del siguiente Sprint, revisa sistema. Desarrollo (Scrum Team) Team members trabajan en el Sprint (iteración). Administrador (Scrum Master, 50% desarrollo) Asegura seguir prácticas Scrum, refuerza visión del proyecto y metas; media entre el Administrador del proyecto y el equipo; escucha progresos, remueve impedimentos. Dirige el Scrum diario, conduce el Sprint Review. Otros: Chickens, los demás observan pero no intervienen o hablan.
32 ARTEFACTOS Requisitos: Product Backlog (tareas: features, casos de uso, mejoras, bugs, instalación, Entradas en archivo Excel). Gestión: Product & Release Backlog (lista priorizada de requisitos con tiempos estimados). Sprint Backlog (tareas siguiente iteración. Grano: 4-16hrs) Gráfico del Backlog (estimar trabajo remanente vs. días disponibles) Diseño: -. Manejo de configuraciones: - Implementación: - Test: -
33 Product Backlog (1) El Cliente (PO) prepara y entrega esta lista de requerimientos PRIORIZADOS (en orden). Si no tiene conocimiento o experiencia para este nivel de detalle, el analista prepara el detalle, pero la prioridad la pone el cliente. A este nivel puede ser prioridad: alta/media/baja Descripción Prioridad Llenar formulario de datos de cotización 5 Modificar datos de cotización 2 Consulta/Búsqueda de cotizaciones por cliente y por fecha 3...
34 Product Backlog (2) El Cliente (PO) presenta la lista al Team de desarrollo y se describen los detalles adecuados para que el Team entienda claramente lo que hay que hacer y pueda estimar el esfuerzo. A este nivel puede ser factible describir complejidad en lugar de esfuerzo específico (funcionalidad de complejidad alta/media/baja). Luego se estima en forma genérica el esfuerzo para una funcionalidad alta (3 días), media (1 día), baja (1/2 día). Descripción Prioridad Esfuerzo Llenar formulario de datos de cotización 5 2 Modificar datos de cotización 2 2 Consulta/Búsqueda de cotizaciones por cliente y por fecha
35 Product Backlog (3) Habiendo definido prioridades (PO) y esfuerzos (Team), se establece un Plan de Iteración (Sprint Plan), que define un plazo acotado (30 días) y cuánto del Product Backlog se alcanza a implementar en ese plazo. El plan define: cuánto me queda para terminar. Las funcionalidades que no entren se dejan para el siguiente. Descripción Prioridad Esfuerzo Iter 1 Iter 2 Llenar formulario de datos de cotización Modificar datos de cotización Consulta/Búsqueda de cotizaciones por cliente y por fecha
36 Sprint Backlog Lista de tareas técnicas para cumplir con el Proudct Backlog. Es el plan de trabajo detallado del Team, habiendo definido el plan general de req. a implementar. Incluye asignación de tareas con nombre. Descripción Origen Responsable Estado Iter 1 Iter 2 Iter 3 Crear BD Pedro Pedro Terminada Crear Tablas Modelo 1 Pedro Jorge Terminada Instalar servidor Web y configurar seguridad José José En progreso Implementar Stored Proc para Cotizaciones Pedro Jorge No iniciada
37 MÉTRICAS SPRINT BACKLOG
38 PRÁCTICAS Requisitos: Planificar el pre-juego, planificar el Sprint, revisión del Sprint. Diseño: Fase de diseño de alto nivel. Implementación: -. Test y verificación: Revisión del Sprint. Manejo de configuraciones: Sala común, build diario. Gestión: No añadir tareas a la iteración. Scrum Master es un Firewall. Scrum diario. Bloqueos removidos en 1 día. Decisiones en 1 hora. Equipo auto-organizado, auto-dirigido. Planificar el pre-juego, planificar el Sprint. Chickens & Pigs.
39 COMPARACIÓN CON OTROS PROCESOS
40 Procesos de Desarrollo Proceso Fortalezas Prioridades Situaciones Serial (Cascada) Iterativo (Espiral) Incremental (RUP) Iterativo- Incremental (Ágil) Ad-hoc (Code & Fix) Administra riesgo de costo. Solidez diseño y arquitectura. Administra riesgo técnico. Administra riesgo de calendario Absorbe cambios en reqs. Administra riesgo técnico y de calendario Requiere un equipo bien afiatado. 1) Funcionalidades 2) Poco defecto 3) Tiempo x release 1) Funcionalidades 2) Poco defecto 3) Tiempo x release 1) Tiempo x release 2) Poco defecto 3) Funcionalidades 1) Tiempo x release 2) Funcionalidades 3) Poco defecto 1) Tiempo x release 2) Funcionalidades 3) Poco defecto Software embebido en hardware o para controlar un dispositivo crítico. Requisitos estables, alta calidad. Productos o ideas nuevas que requieren refinarse antes del desarrollo. La mayoría de los proyectos, como nuevas versiones de productos, necesidad de flexibilidad y compromisos de tiempo. Productos nuevos. Requisitos inestables. Necesidad de experimentación y tiempo limitado. Experimentos. Nada crítico.
Desarrollo Ágil de Software
Desarrollo Ágil de Software Extracto In Search of Methodology Alistair Cockburn, 1994 La historia que escuchamos fue casi la misma (con una excepción), independiente del tamaño, experiencia, país, década,
Más detallesCalidad y Mejoramiento de Procesos Ágiles. de Software
Calidad y Mejoramiento de Procesos Ágiles de Software Marcello Visconti Departamento de Informática Universidad Técnica Federico Santa María Valparaíso, Chile visconti@inf.utfsm.cl Agenda Introducción
Más detallesCalidad y Mejoramiento de Procesos Ágiles de Software
Calidad y Mejoramiento de Procesos Ágiles de Software M. Visconti & H. Astudillo Departamento de Informática Universidad Técnica Federico Santa María Introducción Principios
Más detallesPROCESOS ÁGILES DE DESARROLLO DE SOFTWARE
PROCESOS ÁGILES DE DESARROLLO DE SOFTWARE I - Introducción Darío Correal (dcorreal@uniandes.edu.co) 1 Everything should be made as simple as possible, but not simpler Albert Einstein 2 Tomado de Agile
Más detallesFundamentos de las metodologías ágiles
Fundamentos de las metodologías ágiles Sesión 3 Manifiesto ágil Manifiesto ágil Año: 2001 El manifesto ágil no representa la invención de las metologías ágiles, sino su presentación en sociedad Muchas
Más detallesAgile, Scrum & extreme Progammig
Agile,, Introduction Departamento de Computación Facultad de Cs. Exactas Fco-Qcas y Naturales Universidad Nacional de Río Cuarto {fbrusatti}(at)dc.exa.unrc.edu.ar Agile,, Metodologías Agiles Son metodologías
Más detallesThe Agile Manifesto. Que es el Manifiesto Ágil?
Que es el Manifiesto Ágil? Lista de principios y valores Declaración de conceptos que guían el desarrollo de software Creado en Febrero del 2001 por la alianza ágil. 17 personas representantes de: Extreme
Más detallesXP- EXTREME PROGRAMMING
XP- EXTREME PROGRAMMING RUBBY CASALLAS DEPARTAMENTO DE SISTEMAS Y COMPUTACIÓN FACULTAD DE INGENIERÍA UNIVERSIDAD DE LOS ANDES Agenda Qué es XP? 12 Prácticas Actividades Principales: Planeación Diseño Codificación
Más detalles4.1.1_Reunión de Planificación de Sprint (Sprint Planning Meeting) 4.1.2_Objetivo del Sprint (Sprint Goal) 4.1.4_Revisión de Sprint (Sprint Review)
1_Visión general de SCRUM 2_Teoría de Scrum 3_El Equipo Scrum (Scrum Team) 3.1_El Dueño de Producto (Product Owner) 3.2_El Equipo de Desarrollo (Development Team) 3.3_El Scrum Master 4_Eventos de Scrum
Más detallesQué es Scrum? Basado en el texto Explicando Scrum a mi abuela de Jorge Serrano - MVP Visual Developer - Visual Basic
Qué es Scrum? Basado en el texto Explicando Scrum a mi abuela de Jorge Serrano - MVP Visual Developer - Visual Basic http://geeks.ms/blogs/jorge/archive/2007/05/09/explicando-scrum-a-mi-abuela.aspx Por
Más detallesDES. Fundamento Institucional. Objetivos. Alcance
DES INSTRUCCIONES: a continuación se describe el flujo de trabajo correspondiente al área de procesos de DESARROLLO en el ciclo de vida del software en el cual se debe apoyar para la ejecución de sus actividades;
Más detallesProceso Unificado de Rational
RUP: El Proceso Unificado de Rational XP: Programacion Extrema EAP: Computación Científica Ciencia de la Computación V Prof. Oscar Brnito Pacheco Proceso Unificado de Rational Orígenes Modelo original
Más detallesCertified Scrum Developer (CSD), Módulo 3 y Track Completo
Certified Scrum Developer (CSD), Módulo 3 y Track Completo Surgida en 2009, la certificación CSD es la última novedad en certificaciones oficiales de la Scrum Alliance a través de la cual los equipos de
Más detallesPDSM: PROCESO DE DESARROLLO DE SOFTWARE MIXTO COMBINANDO RUP Y SCRUM. Mariani, María Florencia Okabe, Evangelina
PDSM: PROCESO DE DESARROLLO DE SOFTWARE MIXTO COMBINANDO RUP Y SCRUM Mariani, María Florencia Okabe, Evangelina Agenda Introducción Metodologías RUP SCRUM Proyectos PDSM: Definición y Aplicación del proceso
Más detallesIntroducción a las Metodologías Ágiles. Nicolás Brailovsky March 7, 2009
Universidad Tecnológica Nacional Facultad Regional Buenos Aires Diseño de Sistemas Introducción a las Metodologías Ágiles Nicolás Brailovsky March 7, 2009 1 Qué es una metodología? 2 Metodologías Ágiles
Más detallesIntroducción n a MSF. MSF v4.0 como framework
Microsoft Solutions Framework Agile Luis Fraile MVP Team System http://www.lfraile.net lfraile@lfraile.net Introducción n a MSF MSF v4.0 como framework Microsoft Solutions Framework Por un lado es un framework
Más detallesQué es scrum? scrumshortcuts.com
Qué es scrum? scrumshortcuts.com Qué es scrum? SCRUM es una metodología ágil de gestión de proyectos cuyo objetivo primordial es elevar al máximo la productividad de un equipo. La metodología scrumshortcuts.com
Más detalles4 a 8 semanas. Equipos pequeños 5 a 9 miembros. Informal. Cara a cara. En cada entrega el cliente dará su aportación. Sólo documentación básica
Tiempo para cada iteración recomendado ASD 4 a 8 semanas AUP Primeras iteraciones más tiempo que las demás. Tamaño del equipo Equipos pequeños 5 a 9 miembros Todos los tamaños Comunicación en el equipo
Más detallesGestión de Equipos de Desarrollo. Max Déboli Director de Desarrollo Lagash MVP Azure mdeboli@lagash.com http://mdeboli.wordpress.
Gestión de Equipos de Desarrollo Max Déboli Director de Desarrollo Lagash MVP Azure mdeboli@lagash.com http://mdeboli.wordpress.com Contexto Metodologías agiles de desarrollo de Software y como las usamos
Más detallesProceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:
PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: 1. Proporcionar una guía de actividades para el trabajo en equipo. (Guía detallada para el desarrollo
Más detallesIngeniería de Software: Parte 2
Ingeniería de Software: Parte 2 Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes.
Más detallesAplicación de metodologías Ágiles en TI. Elsa Mangione, PMP, PMI-ACP, CSM II Reunión de Miembros Abierta. Mendoza, 2013.
Aplicación de metodologías Ágiles en TI Elsa Mangione, PMP, PMI-ACP, CSM II Reunión de Miembros Abierta. Mendoza, 2013. 1 To Do En Proceso Done! Agile Scrum Intro Lean Kanban Aplicabilidad Cierre 2 To
Más detallesDesarrollo Ágil con SCRUM. Itzcoalt Alvarez M. Joiz.Net
Desarrollo Ágil con SCRUM Itzcoalt Alvarez M. Joiz.Net Objetivo Acercamiento a SCRUM, conocer sus ventajas y desventajas, así como su funcionamiento. 2 Agenda Antecedentes Como funciona SCRUM Roles y responsabilidades
Más detallesIngeniería de Software
Ingeniería de Software Tabla de Contenidos PARTE I INTRODUCCIÓN Capítulo 1: Evolución Los hitos en la evolución histórica del Desarrollo de Software Problemas y soluciones... Fallas, malas estimaciones
Más detalleshttp://www.informatizate.net
http://www.informatizate.net Metodologías De Desarrollo De Software María A. Mendoza Sanchez Ing. Informático - UNT Microsoft Certified Professional - MCP Analísta y Desarrolladora - TeamSoft Perú S.A.C.
Más detallesIngeniería de Software. Procesos. Proyecto de Ingeniería. Metodologías. Metodologías. Metodologías. Metodologías de desarrollo
Ingeniería de Software Procesos Laboratorio de Ingeniería de Software 2004 La ingeniería de software trata sobre la aplicación de practicas y métodos para construir productos de software que cumplan las
Más detallesDesarrollo ágil en tiempos de crisis. Alejandro Torres Castañeda y Analía Baño Dynkowski Baufest
Desarrollo ágil en tiempos de crisis Alejandro Torres Castañeda y Analía Baño Dynkowski Baufest allaboutagile.com It is not the strongest of the species that will survive or the most intelligent. It is
Más detallesPlanificación en Team Foundation Server 2010
Planificación en Team Foundation Server 2010 Planificación y Seguimientos en Proyectos Agile con Microsoft Visual Studio Team Foundation Server 2010 Dirigido a: Todos los roles implicados en un proyecto
Más detallesSCRUM. Gestión ágil de proyectos
SCRUM Gestión ágil de proyectos 1 Qué es Scrum? SCRUM es una metodología ágil utilizada en el desarrollo de proyectos de software y que permite obtener el mejor resultado posible en la gestión de un proyecto
Más detallesPaula Izaurralde. Especialista en Calidad en ARRIS Argentina. Ayudante en Metodologías Ágiles en el Desarrollo de Software
Marcela Garay Moyano Test Manager en ARRIS Argentina. Paula Izaurralde Especialista en Calidad en ARRIS Argentina. Luciano Marzo Tester en ARRIS Argentina ISTQB Certified Tester. Docente en la Diplomatura
Más detallesUniversidad ORT Uruguay
Facultad de Ingeniería Metodología SCRUM Cátedra de Ingeniería de Software. Docente Responsable: Gastón Mousqués. Autor: Adriana Peralta 123357 2003 ÍNDICE GENERAL Introducción 2 Principales características
Más detallesUNIVERSIDAD UNION BOLIVARIANA CARRERA DE INGENIERIA DE SISTEMAS
UNIVERSIDAD UNION BOLIVARIANA CARRERA DE INGENIERIA DE SISTEMAS METODOLOGIAS AGILES PROCESO UNIFICADO AGIL (AUP) MATERIA : INGENIERIA SOFTWARE DOCENTE : LIC. ERVIN FLORES ESTUDIANTE : JORGE LUIS CORDERO
Más detallesScrum. Juan Palacio Bañeres
Scrum Juan Palacio Bañeres La esencia de Scrum Al iniciar cada iteración, el equipo revisa el trabajo pendiente del proyecto y selecciona la parte que terminará como un incremento de funcionalidad incorporado
Más detallesDesarrollo Ágil. Introducción a desarrollo ágil. Periodo: 2012-2 Inicio: Ago 14, 2012 Termino: Nov 27, 2012
Desarrollo Ágil Introducción a desarrollo ágil Periodo: 2012-2 Inicio: Ago 14, 2012 Termino: Nov 27, 2012 Agenda Continuación de Scrum Tarea Bibliografía SCRUM Master (Roles) Representa la administración
Más detallesDESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE
DESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE UNIVERSIDAD DEL CAUCA FACULTAD DE INGENIERÍA ELECTRÓNICA Y TELECOMUNICACIONES
Más detallesSCRUM Metodología de trabajo ágil
SCRUM Metodología de trabajo ágil UN ENFOQUE PRÁCTICO Página 1 Página 2 Índice Introducción Características Criterios de referencia Fortalezas de Scrum Trazabilidad Definición Tipos Los Sprint Prácticas
Más detallesTema 3. Procesos ligeros de desarrollo de software.
Ingeniería del Software II 2011 Tema 3. Procesos ligeros de desarrollo de software. Tipos de procesos ligeros. Tipos de procesos ligeros: Desarrollo Rápido de Software. Desarrollo Ágil. Programación Extrema.
Más detallesIngeniería de Software II Primer Cuatrimestre de 2008
Ingeniería de Software II Primer Cuatrimestre de 2008 Clase 14: Introducción a Scrum Buenos Aires, 12 de Mayo de 2008 Scrum: Qué es? Qué es un scrum? Un scrum es un agrupamiento (formación fija) en Rugby.
Más detallesMetodologías Ágiles: Scrum y técnicas de estimación ágil
Metodologías Ágiles: Scrum y técnicas de estimación ágil PreparaTIC - Junio 2009 Jorge Manrubia Díez jorge.manrubia@giss.seg-social.es Por qué? Hacer un programa es cómo... Can you get a design that is
Más detallesVisión n de negocio y gestión de proyectos y estado actual. Conclusiones y enfoques relevantes de las metodologías de proyectos de software
Visión n de negocio y gestión de proyectos y estado actual Conclusiones y enfoques relevantes de las metodologías de proyectos de software Sin perder noción n de la realidad [La ingeniería de software]
Más detallesPRU. Fundamento Institucional. Objetivos. Alcance
PRU INSTRUCCIONES: a continuación se describe el flujo de trabajo correspondiente al área de procesos de PRUEBAS para el desarrollo de software, en el cual se debe apoyar para la ejecución de sus actividades;
Más detallesJuan Carlos Sanchez Galvis
Ventajas de usar SCRUM en proyectos de TI Juan Carlos Sanchez Galvis Certificado en PMP, ITIL, COBIT, SCRUM Los nombres de los productos y de las compañías referenciados en este material son marcas registradas
Más detallesIngeniería de Software II Segundo Cuatrimestre de 2008
Ingeniería de Software II Segundo Cuatrimestre de 2008 Clase 14: Introducción a los métodos ágiles y Scrum Buenos Aires, 9 de Octubre de 2008 Scrum: Qué es? Qué es un scrum? Un scrum es un agrupamiento
Más detallesScrum. Framework ágil de procesos
Scrum Framework ágil de procesos Definición Scrum is an Agile (incremental and iterative) process framework for developing any product or managing any work. It produces a potentially shippable set of functionality
Más detalles6 Anexos: 6.1 Definición de Rup:
6 Anexos: 6.1 Definición de Rup: Es un producto del proceso de ingeniería de software que proporciona un enfoque disciplinado para asignar tareas y responsabilidades dentro de una organización del desarrollo.
Más detallesLa medición funcional de software con SCRUM
La medición funcional de software con SCRUM Guilherme Siqueira Simões 1 Agenda Introducción El contexto SCRUM El contexto de la medición funcional de software Combinando los dos Prejuicios comunes sobre
Más detallesMETODOLOGÍA TRADICIONAL.
COMPARACIÓN DE METODOLOGÍAS METODOLOGÍA TRADICIONAL. Teniendo en cuenta la filosofía de desarrollo de las metodologías, aquellas con mayor énfasis en la planificación y control del proyecto, en especificación
Más detallesMiguel Torres Jaime Pavlich-Mariscal
Miguel Torres Jaime Pavlich-Mariscal Implementar algunos requerimientos feedback Implementar algunos requerimientos feedback Implementar algunos requerimientos Iteración de 2-6 semanas Entrega al cliente
Más detallesEl Proceso Unificado de Desarrollo de Software
El Proceso de Desarrollo de Software Ciclos de vida Métodos de desarrollo de software El Proceso Unificado de Desarrollo de Software 1 Fases principales del desarrollo de software Captura de requisitos:
Más detallesSon aplicables las metodologías ágiles a la dirección de megaproyectos?
Son aplicables las metodologías ágiles a la dirección de megaproyectos? Ing. Carla Fernández C, PMP 1 Metodologías Ágiles Son aplicables? Megaproyectos 2 1 El tradicional enfoque de cascada Análisis Diseño
Más detallesSolución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Gobierno Municipal del Cantón Bolívar
Gobierno Municipal del Cantón Bolívar Versión: Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Plan de Desarrollo de Software Universidad
Más detallesKaren Giraldo Escobar Graciela Catalina Soto PROYECTO DE GRADO I
Karen Giraldo Escobar Graciela Catalina Soto PROYECTO DE GRADO I Qué es SCRUM Beneficios Como Funciona Fundamentos Requisitos Historia Qué es SCRUM Beneficios Como Funciona Fundamentos Requisitos Historia
Más detallesCOPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE
COPPEL MANUAL TÉCNICO MCC DE SISTEMAS PROGRAMACIÓN DESCRIPCIÓN DEL PROCESO DE ARQUITECTURA DE SOFTWARE Creado en May/14 Objetivo: Contar con una guía de las actividades que se deben realizar en esta fase,
Más detallesTema 5. Gestión de Proyectos (ISG3)
Tema 5. Gestión de Proyectos (ISG3) Antonio José Sáenz Albanés (C.T.O) Reconocimiento No Comercial Compartir Igual - 2.5 - España 1 Planificación 1ª Clase: Presentación y Conceptos Generales 2ª Clase:
Más detallesRUP. Rational Unified Process
RUP Rational Unified Process Rational Unified Process Basado en 6 mejores prácticas de la industria de software: Desarrollo incremental Administración de requisitos Uso de arquitecturas basadas en componentes
Más detallesCómo las metodologías ágiles ayudan a los proyectos de Inteligencia de Negocios
Cómo las metodologías ágiles ayudan a los proyectos de Inteligencia de Negocios Guillermo Watson Datalytics Stibenzon Cañas Sánchez Ceiba Software House Business Intelligence No es una tecnología ni un
Más detallesLos profesores Flipantes
Los profesores Flipantes 1 0. Índice 1. Introducción al TSP 2. La lógica del TSP 3. Lanzamiento de un Proyecto TSP. 4. Fases del Ciclo TSPi. 5. TSPi en DSIC. 2 1. Introducción al TSP. El software suele
Más detallesDesarrollo Ágil. Software Engineering: A Practitioner s Approach Roger S. Pressman, Ph.D. Tomás Balderas Contreras Ingeniería de Software I
Desarrollo Ágil Software Engineering: A Practitioner s Approach Roger S. Pressman, Ph.D. Tomás Balderas Contreras Ingeniería de Software I Coordinación de Ciencias Computacionales INAOE 2011 Preguntas
Más detallesBPM en la práctica Transitando del BPA al BPM con una metodología probada. Diego Karbuski - Diciembre 2012
BPM en la práctica Transitando del BPA al BPM con una metodología probada. Diego Karbuski - Diciembre 2012 Qué es BPM? BPM no solo es tecnología informática. Es una disciplina de gestión empresarial impulsada
Más detallesKanban vs. Scrum. Sesión 6b. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. Alicante
Kanban vs. Scrum Sesión 6b Libro de Henrik Kniberg y Mattias Skarin Disponible en InfoQ Muy buena comparación de ambas metodologías Contiene un ejemplo completo de aplicación de Kanban 2 Scrum prescribe
Más detallesContenidos. Parte I - Introducción Capítulo 1 - Evolución. Capítulo 2 Condiciones de trabajo en el Desarrollo de Software
IX Contenidos Prólogo... XIX Prefacio... XXI Guía de lectura...xxiii Parte I - Introducción Capítulo 1 - Evolución 1.1 Introducción... 2 1.2 Los hitos en la evolución histórica del desarrollo de software...
Más detallesSistema Control de Gestión de Venta. Documento Visión y Alcances Proyecto para Brinks Chile
Sistema Control de Gestión de Venta Documento Visión y Alcances Proyecto para Brinks Chile Contenido Contexto del Proyecto: el cliente. Motivación y Necesidad Visión de Requerimientos y Detalle Preliminar
Más detallesPROPUESTA DE PROYECTO DE DESARROLLO DE PÁGINA WEB PARA GESTIÓN DE PROYECTOS CON METODOLOGÍA SCRUM
Universidad Rafael Landivar Campus Quetzaltenango Facultad de Ingeniería PROPUESTA DE PROYECTO DE DESARROLLO DE PÁGINA WEB PARA GESTIÓN DE PROYECTOS CON METODOLOGÍA SCRUM Linda Estrella Córdova Monterroso
Más detallesNUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE IGNACIO BAYUGAR
NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE IGNACIO BAYUGAR Ignacio.bayugar@mercadolibre.com, i id nachobayugar@gmail.com NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE El desarrollo ágil El nuevo rol de
Más detallesMetodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales
Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales Modulo 03 UML: Vista de Casos de Uso Artefacto: Actores Catedrático MSC. Jose Juan Aviña Grimaldo e-mail josejuan_avina@gmail.com
Más detallesRoles y Responsabilidades en la gestión de proyectos Scrum
en la gestión de proyectos Scrum Jesús E Méndez A #WebinarGratis 1 Quien es Jesus Mendez Coach Agile (2) Twitter: @chuzzete Web site: www.jesusmendez.ca Correo: info@jesusmendez.ca Scrum Master (5) + Volunteering
Más detallesInstituto Nacional de Tecnología Industrial TESTING DE SOFTWARE
Instituto Nacional de Tecnología Industrial TESTING DE SOFTWARE Laboratorio de Testing y Aseguramiento de Calidad de Software Disertante: A.C. Gabriel Miretti Agenda Presentación del Laboratorio de Testing
Más detalles1 de junio de 2014. Andrés Simón Bujaidar Director Alianzas Nacionales MEXICO FIRST Presente. Estimado Andrés:
1 de junio de 2014. Andrés Simón Bujaidar Director Alianzas Nacionales MEXICO FIRST Presente. Estimado Andrés: A continuación me permito poner a tu consideración la propuesta de los programas de certificación
Más detallesPROYECTO METODOLOGÍA DE TRABAJO. Fecha Autor Versión Cambio. 14/11/2008 Vanesa Dell Acqua 1.0 Documento inicial.
PROYECTO METODOLOGÍA DE TRABAJO Fecha Autor Versión Cambio 14/11/2008 Vanesa Dell Acqua 1.0 Documento inicial. Fecha de impresión 14/11/2008 CONTENIDO 1. INTRODUCCIÓN 1.1 OBJETIVO Este documento tiene
Más detallesMejora Ágil de Procesos
Mejora Ágil de Procesos Introducción Después de haber implementado por muchos años modelos de mejora, de dirección de proyectos y diferentes marcos ágiles, llegué a la conclusión de que el camino hacia
Más detallesElementos requeridos para crearlos (ejemplo: el compilador)
Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción
Más detallesOrígenes y descripción de la Automatización 'Inteligente'
Orígenes y descripción de la Automatización 'Inteligente' Orígenes La automatización, como hoy la propone Agile, nace del concepto Jidoka; también llamado: Autonomation. Automation with a human touch.
Más detallesSCRUM MASTER PRODUCT OWNER
SCRUM MASTER Los participantes aprenderán a detalle los principios y las prácticas de Scrum. El curso incluye ejercicios por medio de los cuales se aplican las prácticas de Scrum, logrando experimentarlas
Más detallesAseguramiento de la Calidad, QA. Materia: Desarrollo Industrial de Software Alumno: David Alejandro González Díaz y Froylan Ruiz Cirilo.
Aseguramiento de la Calidad, QA Materia: Desarrollo Industrial de Software Alumno: David Alejandro González Díaz y Froylan Ruiz Cirilo. Definición El aseguramiento de la calidad (QA), se puede definir
Más detallesDesarrollo en Cascada (Waterfall) VS Desarrollo Agile-SCRUM. Por Jesus Demetrio Velázquez Camacho
Desarrollo en Cascada (Waterfall) VS Desarrollo Agile-SCRUM Por Jesus Demetrio Velázquez Camacho Dentro de las organizaciones de desarrollo de aplicaciones existen dos grandes corrientes para la metodología
Más detallesMetodologías Iterativas de Desarrollo
Metodologías Iterativas de Desarrollo Lic. Carlos Leone (MBA) Ing. Nicolás Passerini Ing. Gustavo A. Brey 2005 Agenda # Tema 1 Introducción a Metodologías de Desarrollo 2 Tipos de Metodología 3 Metodologías
Más detallesTecnología de la Información. Administración de Recursos Informáticos
Tecnología de la Información Administración de Recursos Informáticos 1. Recursos informáticos: Roles y Responsabilidades 2. Áreas dentro del Departamento de Sistemas 3. Conceptos asociados a proyectos
Más detallesDesign Thinking aplicado al Project Management
Design Thinking aplicado al Project Management Evento Networking Directores de Proyectos 21 de junio de 2012 Earned Value Management y Risk Management www.gedpro.com José Moro Melón facebook.com/josemoromelon
Más detallesQué es una Metodología Ágil?
Metodologías Ágiles Qué es una Metodología Ágil? www.agilealliance.com Las Metodologías Ágiles (AMs) valoran: Al individuo y las interacciones en el equipo de desarrollo más que a las actividades y las
Más detallesPropiedad Colectiva del Código y Estándares de Codificación.
Propiedad Colectiva del Código y Estándares de Codificación. Carlos R. Becerra Castro. Ing. Civil Informática UTFSM. Introducción. n. En este trabajo se presentan específicamente dos prácticas de XP: Collective
Más detallesIngeniería de Software
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes. Definiciones
Más detallesProyecto Help Desk en plataforma SOA Alcance del Sistema Versión 1.2. Historia de revisiones
Proyecto Help Desk en plataforma SOA Alcance del Sistema Versión 1.2 Historia de revisiones Fecha Versión Descripción Autor 27/08/05 1.1 Definimos el Alcance del Sistema, en una primera instancia, priorizando
Más detallesA 10 años del Manifiesto Ágil
A 10 años del Manifiesto Ágil #AgilesPV Pueden comenzar a twittear sus preguntas. #AM De donde venimos De donde venimos 1970 s 1980 s 1990 s 2000 s I believe in this concept, but the implementation described
Más detallesProceso: AI2 Adquirir y mantener software aplicativo
Proceso: AI2 Adquirir y mantener software aplicativo Se busca conocer los estándares y métodos utilizados en la adquisición de y mantenimiento del software. Determinar cuál es proceso llevado a cabo para
Más detallesDE VIDA PARA EL DESARROLLO DE SISTEMAS
MÉTODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS 1. METODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS CICLO DE VIDA CLÁSICO DEL DESARROLLO DE SISTEMAS. El desarrollo de Sistemas, un proceso
Más detallesCiclo de vida y Metodologías para el desarrollo de SW Definición de la metodología
Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y administrar un proyecto
Más detallesBLU Concept PROPUESTA PÚBLICA NACIONAL SCRUM Mexico First
BLU Concept PROPUESTA PÚBLICA NACIONAL SCRUM Mexico First Kristian Mir Cervantes Director Comercial (55) 5515-5205 5277-0371 kristian.mir@blu.com.mx www.blu.com.mx Índice Descripción de la Propuesta...
Más detallesPRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE
PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,
Más detallesCapítulo VII. Administración de Cambios
Administración de Cambios Administración de cambios Tabla de contenido 1.- En qué consiste la administración de cambios?...97 1.1.- Ventajas...98 1.2.- Barreras...98 2.- Elementos...99 3.- Roles...99 4.-
Más detallesEl modelo Scrum. NST-0010 Rev. 0.1
NST-0010 Rev. 0.1 http://www.navegapolis.net Juan Palacio, 2006 Scrum: La teoría El origen. Scrum es una metodología ágil de desarrollo de proyectos que toma su nombre y principios de los estudios realizados
Más detallesAutodirección en Equipos de Software. Presentado por: Juan José Cárdenas sábado, 29 de enero de 2011
Autodirección en Equipos de Software Presentado por: Juan José Cárdenas sábado, 29 de enero de 2011 Qué hacemos para desarrollar software? Propuesta y negociación Plan Seguimiento, control y re planificación
Más detallesIngeniería de Sistemas I
Ingeniería de Sistemas I Metodologías Ágiles 1 Agenda Metodologías Ágiles, Origen Valores y Principios de las Metodologías Ágiles Ejemplos de Metodologías Ágiles SCRUM XP SCRUM y XP Agilidad o Disciplina?
Más detallesPlanificación, Gestión y Desarrollo de Proyectos
Planificación, Gestión y Desarrollo de Proyectos Conceptos básicos Planificación de un proyecto Gestión de un proyecto Desarrollo de un proyecto 1 Conceptos básicos: Proyecto Conjunto de actividades que
Más detallesScrum. Helder Marques
Scrum Helder Marques Gerencia de proyectos Es como el helado; viene en varios sabores ( Y muchas veces engorda ) Gerencia de proyectos Gerencia de proyectos Gerencia de proyectos Un poco de historia...
Más detallesGestión de Proyectos Informáticos
2 GESTION DE PROYECTOS INFORMATICOS Facultad de Ingeniería Universidad Nacional de Jujuy Analista Programador Universitario Ciclo 2012 A.P.U. Jorge R. Mendoza 2 METODOLOGÍAS Y CICLOS DE VIDA 3 Metodologías
Más detallesAnteproyecto Fin de Carrera
Universidad de Castilla-La Mancha Escuela Superior de Informática Anteproyecto Fin de Carrera DIMITRI (Desarrollo e Implantación de Metodologías y Tecnologías de Testing) Dirige: Macario Polo Usaola Presenta:
Más detallesEstándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008
Estándares para planes de calidad de software Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 DIFERENCIA ENTRE PRODUCIR UNA FUNCION Y PRODUCIR UNA FUNCION
Más detallesAdministración Ágil de. Juan Banda, MSc, CSP
Administración Ágil de Proyectos Juan Banda, MSc, CSP Expositor Juan Banda es un Project Manager y Agile Coach que ha trabajado en empresas grandes (de más de 300 empleados) que se dedican a hacer outsourcing
Más detalles