Métodos Ágiles de Desarrollo de Software.3

Preview:

Citation preview

METODOLOGÍAS

• LA ELECCIÓN DE UNA METODOLOGÍA ES CON LO QUE SE COMENZARA, YA QUE DE ELLA DEPENDE SI SE CONCLUYE DE MANERA EFICIENTE EL PROYECTO. PARA ELLO SE COMPARARAN Y SE ELIGIERA UNA DE ELLAS, TOMANDO EN CUENTA TODAS SUS CARACTERÍSTICAS.

METODOLOGÍAS TRADICIONALES

• RIGIDEZ ANTE LOS CAMBIOS, DE MANERA LENTOS O MODERADA

• LOS CLIENTES INTERACTÚAN CON EL EQUIPO DE DESARROLLO MEDIANTE REUNIONES

• GRUPOS DE GRAN TAMAÑO Y VARIAS VECES DISTRIBUIDOS EN DIFERENTES SITIOS

• DEPENDENCIA DE LA ARQUITECTURA DE SOFTWARE MEDIANTE MODELOS

• POCO FEEDBACK LO QUE EXTIENDE EL TIEMPO DE ENTREGA

• MÍNIMOS ROLES• BASADAS EN NORMAS DE ESTÁNDARES DE

DESARROLLO• PROCESOS MUY CONTROLADOS POR POLÍTICAS Y

NORMAS• SEGUIMIENTO ESTRICTO DEL PLAN INICIAL DE

DESARROLLO

METODOLOGÍAS AGILES

• FLEXIBILIDAD ANTE LOS CAMBIOS DEL PROYECTO DE FORMA MODERADA A RÁPIDA

• LOS CLIENTES HACEN PARTE DEL EQUIPO DE DESARROLLO

• GRUPOS PEQUEÑOS (PROMEDIO 10 PARTICIPANTES IN SITU) EN EL MISMO LUGAR.

• MENOR DEPENDENCIA DE LA ARQUITECTURA DE SOFTWARE

• CONTINUO FEEDBACK ACORTANDO EL TIEMPO DE ENTREGA

• DIVERSIDAD DE ROLES• BASADAS EN HEURÍSTICAS A PARTIR DE PRÁCTICAS DE

PRODUCCIÓN DE CÓDIGO• PROCESOS MENOS CONTROLADOS, POCAS POLÍTICAS Y

NORMAS• CAPACIDAD DE RESPUESTA ANTE LOS CAMBIOS

¿QUÉ TIPO DE METODOLOGÍA USAR?

TODO DEPENDE DEL TIPO DE PROYECTO YA QUE CADA UNA PRESENTA SUS VENTAJAS Y DESVENTAJAS. EN ESTE CASO ES PERTINENTE UTILIZAR LAS METODOLOGÍAS AGILES. PRINCIPALMENTE PORQUE LAS METODOLOGÍAS TRADICIONALES SON:PESADOS, TIENEN LENTITUD DE REACCIÓN, EXCESO DE DOCUMENTACIÓN, EN DEFINITIVA, FALTA DE AGILIDAD DE LOS MODELOS DE DESARROLLO EXISTENTE.

LAS METODOLOGÍAS EXISTENTES NO CUMPLIERON LAS EXPECTATIVAS PLANTEADAS INICIALMENTE.

EXPLOSIÓN DE LA RED Y LAS APLICACIONES WEB.

MOVIMIENTO OPEN SOURCE.

PERO CLARO, AUNQUE LAS VENTAJAS SUENEN BIEN, LAS METODOLOGÍAS AGILES TAMBIÉN PRESENTAN INCONVENIENTES QUE HAY QUE ASUMIR CUANDO SE DECIDE TRABAJAR CON ELLAS. ESTOS SON:FALTA DE DOCUMENTACIÓN DEL DISEÑO.• PROBLEMAS DERIVADOS DE LA COMUNICACIÓN ORAL. • FUERTE DEPENDENCIA DE LAS PERSONAS.• FALTA DE REUSABILIDAD DERIVADA DE LA FALTA DE DOCUMENTACIÓN• RESTRICCIONES EN CUANTO A TAMAÑO DE LOS PROYECTOS• PROBLEMAS DERIVADOS DEL FRACASO DE LOS PROYECTOS ÁGILES. SI

UN PROYECTO ÁGIL FRACASA NO HAY DOCUMENTACIÓN O HAY MUY POCA; LO MISMO OCURRE CON EL DISEÑO. LA COMPRENSIÓN DEL SISTEMA SE QUEDA EN LAS MENTES DE LOS DESARROLLADORES.

MÉTODOS AGILES

• LAS METODOLOGÍAS ÁGILES SON MÉTODOS DE DESARROLLO DE SOFTWARE EN LOS QUE LAS NECESIDADES Y SOLUCIONES EVOLUCIONAN A TRAVÉS DE UNA COLABORACIÓN ESTRECHA ENTRE EQUIPOS MULTIDISCIPLINARIOS SE BASAN EN EL DESARROLLO ITERATIVO E INCREMENTAL, DONDE LOS REQUISITOS Y SOLUCIONES EVOLUCIONAN CON EL TIEMPO SEGÚN LA NECESIDAD DEL PROYECTO.

BÁSICAMENTE:ENTREGAR RÁPIDAMENTE, CAMBIAR RÁPIDAMENTE, CAMBIAR A MENUDO.

PERO… ¿EN QUE SE BASAN LAS METODOLOGÍAS AGILES?

SE BASAN EN 4 PRINCIPIOS DEL MANIFIESTO AGIL LOS CUALES SON:1. VALOR MÁS A LOS INDIVIDUOS Y SU INTERACCIÓN QUE A LOS PROCESOS Y LAS HERRAMIENTAS. 2. VALOR MÁS EL SOFTWARE QUE FUNCIONA QUE LA DOCUMENTACIÓN EXHAUSTIVA. 3. VALOR MÁS LA COLABORACIÓN CON EL CLIENTE QUE LA NEGOCIACIÓN CONTRACTUAL. 4. VALOR MÁS LA RESPUESTA AL CAMBIO QUE EL SEGUIMIENTO DE UN PLAN

EJEMPLOS DE METODOLOGÍAS

AGILES

PROGRAMACIÓN EXTREMA

• ES UNO DE LOS EJEMPLOS MÁS EXITOSOS DE METODOLOGÍA ÁGIL. XP EXTREMEPROGRAMMING

• ES UNA METODOLOGÍA ÁGIL CENTRADA EN POTENCIAR LAS RELACIONES INTERPERSONALES COMO CLAVE PARA EL ÉXITO EN DESARROLLO DE SOFTWARE, PROMOVIENDO EL TRABAJO EN EQUIPO, PREOCUPÁNDOSE POR EL APRENDIZAJE DE LOS DESARROLLADORES, Y PROPICIANDO UN BUEN CLIMA DE TRABAJO.

SCRUM• ESTÁ ESPECIALMENTE INDICADA PARA PROYECTOS

CON UN RÁPIDO CAMBIO DE REQUISITOS. SUS PRINCIPALES CARACTERÍSTICAS SE PUEDEN RESUMIR EN DOS. MEDIANTE ITERACIONES, DENOMINADAS SPRINTS, CON UNA DURACIÓN DE 30 DÍAS. EL RESULTADO DE CADA SPRINT ES UN INCREMENTO EJECUTABLE QUE SE MUESTRA AL CLIENTE. LA SEGUNDA CARACTERÍSTICA IMPORTANTE SON LAS REUNIONES A LO LARGO PROYECTO. UNA REUNIÓN DIARIA DE 15 MINUTOS DEL EQUIPO DE DESARROLLO PARA COORDINACIÓN E INTEGRACIÓN.

CRYSTAL

• TRATA DE UN CONJUNTO DE METODOLOGÍAS PARA EL DESARROLLO DE SOFTWARE CARACTERIZADAS POR ESTAR CENTRADAS EN LAS PERSONAS QUE COMPONEN EL EQUIPO (DE ELLAS DEPENDE EL ÉXITO DEL PROYECTO) Y LA REDUCCIÓN AL MÁXIMO DEL NÚMERO DE ARTEFACTOS PRODUCIDOS.

Recommended