Metodologías de Desarrollo Ágil

Slides:



Advertisements
Presentaciones similares
EL PROCESO DE DESARROLLO DEL SOFTWARE
Advertisements

Ciclo de vida de desarrollo de software
Metodologías ágiles.
CICLO DE VIDA DE LOS SISTEMAS DE INFORMACIÓN
PROCESO Y MODELOS EN LA INGENIERIA DE SOFTWARE
Metodologías Ágiles Patricio Letelier
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles.
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
Metodología de Trabajo Aperio: SCRUM Aperio Inducción
METODOLOGIAS AGILES DE CONSTRUCCION DE SOFWARE
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de Metodologías ágiles.
FDD.
FDD: Feature Driven Development Desarrollo Basado en Funcionalidades
Proyecto de Ingeniería de Software 2008
Ingeniería del Software
Ingeniería del Software
Una explicación de la programación extrema XP
Modelo de Desarrollo XP
Ingeniería de Software
DSDM Dynamic System Development Method
Metodologías Ágiles.
Fdd : Feature Driven Development Nombre: JORGE RAFAEL COLLORANA MATERIA: CARRERA: INGENIERIA DE SISTEMAS LAPAZ_EL ALTO
Gestión de Proyectos Informáticos Sesión N° 5 Ciclo de Vida de un Proyecto Roberto Jijena I.
EXtreme Programming.
1 Diseño Orientado a Objetos Agustín J. González ELO-329: Diseño y Programación Orientados a Objetos 1er. Sem
METODOLOGIA AGIL ASD (DESARROLLO DE SOFTWARE ADAPTABLE)
Ciclo de Vida del Software
EDUAR 2.0 Sistema de Explotación de Información Educativa 10/05/2011.
agile-tester-foundation- chapter-2-fundamental-agile-testing- principles-practices-and-processes-1-of-3-
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Ingeniería del Software
Plan de Sistemas de Información (PSI)
VII Congreso de Expotecnología UVM 2007 Jonás A. Montilva C.
¿Cómo nos ayuda GeneXus a mejorar la calidad en el proceso de desarrollo de Software? Ing. Rosario Estévez Ing. Rafael Mon
Ximena Romano – Doris Correa
Diseño de Software y su Proceso
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
PROGRAMACIÓN EXTREMA (eXtreme Programing)
Alexander Aristizabal Ángelo flores herrera
Ingeniería de Software
Ciclo de vida de un sistema
METODOLOGÍAS DE DESARROLLO DE SOFTWARE MODERNAS
INGENIERÍA DEL SOFTWARE GESTIÓN DE PROYECTOS
UNIVERSITARIO: DAVID MAMANI EL ALTO – LA PAZ – BOLIVIA 2009 CARRERA: ING. DE SISTEMAS MATERIA: INGENIERIA DE SOFTWARE.
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de metodologías ágiles Tatiana Alejandra.
Gestión Ágil de Proyectos Colaborador: Anónimo
Roles de Open UP.
METODOLOGIAS DE DESARROLLO DE SOFTWARE
 Capacidad para adaptar el curso del desarrollo a la evolución de los requisitos y a las circunstancias del entorno de los proyectos.
Actividades en el Proceso de desarrollo de Software
GRUPO ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION SENA DESARROLLO ITERATIVO E INCREMENTAL INTEGRANTES STEVEN PALOMA ALEJANDRO BERNAL TATIANA.
Métodos para garantizar la calidad del software.
problemas de la calidad del software
Estructurar tus ideas para hacerlas realidad
Ciclo de Vida del Software
Sistema de control de calidad de software
Ingeniería en Informática F UNDAMENTOS DE C OMPUTACIÓN B ACHILLERATO EN I NGENIERÍA I NFORMÁTICA L IC. C ARLOS H. G UTIÉRREZ L EÓN.
METODOLOGÍADE DESARROLLO ÁGIL DSDM - FDD
CONCEPTO DE CICLO DE VIDA 1 En los departamentos de Sistemas se debe definir un marco de referencia común que debe ser:  Pueda ser empleado por todos.
UTFSM - Departamento de Electrónica1 Noviembre de 2003 “Beneficios del Uso de Metodologías en el Desarrollo de Proyectos”
Software de Comunicaciones
Modelo de procesos de software
1 Tema 2: Introducción al proceso unificado de desarrollo de software.
Es una metodología ágil diseñada para el desarrollo de software, basada en la calidad y el monitoreo constante del proyecto. Consiste esencialmente en.
Integrantes: Mejía Zúñiga Yoselin Taco Apaza Pamela Ychuta Torres John.
Sistemas de calidad en el desarrollo de software.
Entregables del Proyecto
Universidad Alejandro de Humboldt MÉTODO DE DESARROLLO DE SISTEMAS DINÁMICOS (DSDM) María Rosa Oya Javier Torrealba.
Desarrollo iterativo e incremental
METODOLOGIA AGIL ASD (DESARROLLO DE SOFTWARE ADAPTABLE) ESTUDIANTE: MARITZA HUARACHI MATERIA: INGENIERIA DE SOFTWARE DOCENTE: Lic. ERVIN FLORES JULIO-2009.
Transcripción de la presentación:

Metodologías de Desarrollo Ágil Universidad de Colima Facultad de Telemática Materia: Ing. Software

Desarrollo basado en funciones (FDD) Metodologías Tradicionales Ágiles Programación Extrema Scrum Metodologías Crystal Desarrollo basado en funciones (FDD) DSDM ASD LD ROGELIO SALINAS URTIZ

XP DSDM FDD ASD Programación Extrema Método de desarrollo de sistemas dinámicos Desarrollo basado en funciones Desarrollo de software adaptable XP DSDM FDD ASD

Metodología para desarrollo ágil de aplicaciones Programación extrema Metodología para desarrollo ágil de aplicaciones

Metodología de desarrollo ligera basada en una serie de prácticas de buenas maneras que persigue el objetivo de aumentar la productividad a la hora de desarrollar y promoviendo el trabajo en equipo. Nace de la mano de Kent Beck.

Se basa en metodologías de desarrollo de software donde se da prioridad a los trabajos que dan un resultado directo y que reducen la burocracia que hay alrededor de la programación.

Desarrollos más sencillos Es una combinación de diversas metodologías.

Principios que guían esta metodología 1. El principio de pruebas 2. Proceso de planificación 3. El cliente en el lugar 4. Programación en parejas 5. Integración continua 6. Refactorización

7. Entregas pequeñas 8. Diseño simple 9. Metáfora 10 7. Entregas pequeñas 8. Diseño simple 9. Metáfora 10. Propiedad colectiva del código 11. Estándar de codificación 12. La semana de 40 horas

Método de desarrollo de sistemas dinámicos DSDM

Metodología ágil más antigua Nace en 1994 Su objetivo era crear una metodología RAD unificada. Se centra en los proyectos de sistemas de información

Características Trabajo en equipo por parte de usuarios, desarrolladores y stakeholders. Desarrollo iterativo e incremental. Todos los cambios realizados en el desarrollo son reversibles.

Propone cinco fases: viabilidad, estudio del negocio, modelado funcional, diseño y construcción, y finalmente implementación.

Este modelo presenta 15 roles para usuarios y desarrolladores Este modelo presenta 15 roles para usuarios y desarrolladores. Algunos de ellos son: Desarrollador: Incluye todo el personal de desarrollo, programación y testeo. Usuario embajador: Aquel usuario que espera a utilizar el sistema. Visionario: Encargado de verificar la satisfacción de necesidades.

Desarrollo basado en funciones FDD

FDD Feature Driven development (Desarrollo basado en funciones) Basada en la calidad y el monitoreo constante del proyecto. Fue desarrollada por Jeff De Luca y Peter Coad a mediados de los años 90.

Características Se preocupa por la calidad. Ayuda a contrarrestar situaciones como el exceso en el presupuesto, fallas en el programa o el hecho de entregar menos de lo deseado. Se obtienen resultados periódicos y tangibles. Se basa en un proceso iterativo con iteraciones cortas que producen un software funcional que el cliente y la dirección de la empresa pueden ver y monitorear.

Ventajas El equipo de desarrollo no malgasta el tiempo y dinero del cliente desarrollando soluciones innecesariamente generales y complejas que en realidad no son un requisito del cliente. Cada componente del producto final ha sido probado y satisface los requerimientos. Rápida respuesta a cambios de requisitos a lo largo del desarrollo. Entrega continua y en plazos cortos de software funcional.

Desventajas Falta de documentación del diseño. Problemas derivados de la comunicación oral. Fuerte dependencia de las personas. Falta de reusabilidad.

Procesos Desarrollar un modelo global: Al inicio del desarrollo se construye un modelo teniendo en cuenta la visión, el contexto y los requisitos que debe tener el sistema a construir. Construir una lista: Se elabora una lista que resuma las funcionalidades que debe tener el sistema, cuya lista es evaluada por el cliente. Planear: Se procede a ordenar los conjuntos de funcionalidades conforme a su prioridad y dependencia, y se asigna a los programadores jefes.

Diseñar: Se selecciona un conjunto de funcionalidades de la lista Diseñar: Se selecciona un conjunto de funcionalidades de la lista. Se procede a diseñar y construir la funcionalidad mediante un proceso iterativo, decidiendo que funcionalidad se van a realizar en cada iteración. Construir: se procede a la construcción total del proyecto.

Roles y responsabilidades Arquitecto jefe: Realiza el diseño global del sistema. Director de desarrollo: Lleva diariamente las actividades de desarrollo. Programador Jefe: Analiza los requerimientos. Diseña el proyecto. Selecciona las funcionalidades a desarrollar de la última fase del FDD. Propietario de clases: Responsable del desarrollo de las clases que se le asignaron como propias. Expertos de dominio: Puede ser un usuario, un cliente, analista o una mezcla de estos. Poseen el conocimiento de los requerimientos del sistema.

Desarrollo de software adaptable ASD

INTRODUCCIÓN Esta metodología se adapta al cambio en lugar de luchar contra él. Se basa en la adaptación continua a circunstancias cambiantes. En ella no hay un ciclo de planificación-diseño-construcción del software, sino un ciclo especular colaborar-aprender.

DEFINICIÓN El método ágil ASD Desarrollo Adaptable de Software es un modelo de implementación para desarrollo de software. Al igual que otras metodologías ágiles, su funcionamiento es cíclico y reconoce que en cada iteración se producirán cambios e incluso errores.

CARACTERÍSTICAS Sus principales características del ASD son: Iterativo. Orientado a los componentes de software Tolerante a los cambios. Guiado por los riesgos La revisión de los componentes sirve para aprender de los errores y volver a iniciar el ciclo de desarrollo

CICLO DE VIDA El ciclo de vida del ASD se basa en: Especulación.- Es donde se inicia y se planifican las características del Software. Colaboración.- Se desarrollan las características del software. Aprendizaje.-  Se revisa la calidad, y si no se tiene errores se entrega al cliente

FLUJO DEL ASD -Especular: objetivos y metas, funcionalidad. -Coordinación de quipo. -Captura todo lo que se ha aprendido positivo y negativo.

VENTAJAS Sirve para aprender de los errores y volver a iniciar el ciclo de desarrollo. Utiliza información disponible acerca de cambios para mejorar el comportamiento del software. Promulga colaboración, la interacción de personas.

DESVENTAJAS Los errores o cambios que no son detectados en reuniones anteriores a tiempo afecta tanto a la calidad del producto como a su costo total. Dado a que es una metodología ágil implica no realizar procesos que son requeridos en las metodologías tradicionales o por lo menos no realizarlos en procesos diferentes.

CONCLUSIÓN Usado de manera adecuada esta metodología (Adaptive Software Development) se puede alcanzar excelentes resultados pero debido a las características que maneja es mas factible usarla para proyectos pequeños y medianos.