+ All Categories
Home > Software > Xp y Entornos de Desarrollo Software

Xp y Entornos de Desarrollo Software

Date post: 29-Jul-2015
Category:
Upload: david-de-francisco-marcos
View: 36 times
Download: 2 times
Share this document with a friend
Popular Tags:
15
David de Francisco Marcos Msc, MBA, PMP y CSM XP y Entornos de Desarrollo Ágil Máster en Informática Universidad de Valladolid 2014-2015 Sesión 3 [email protected] www.linkedin.com/in/daviddefco
Transcript
Page 1: Xp y Entornos de Desarrollo Software

David de Francisco Marcos Msc, MBA, PMP y CSM

XP y Entornos

de Desarrollo

Ágil

Máster en Informática

Universidad de Valladolid

2014-2015 Sesión 3

[email protected]

www.linkedin.com/in/daviddefco

Page 2: Xp y Entornos de Desarrollo Software

Notas Rápidas sobre XP

Page 3: Xp y Entornos de Desarrollo Software

Desarrollar

Análisis Incremental

Tests de Cliente

TDD

Refactorización

Diseño Simple

Desarrollo Incremental

Spikes

Optimización

Tests Exploratorios

Prácticas XP

Pensar

Programación Pares

Trabajo con Energía

Controles Visuales

Análisis Causa – Efecto

Retrospectivas

Colaborar

Confianza

Sentarse Juntos

Cliente Involucrado

Daily Meetings

Estándares de Código

Demos Continuas

Informar y Comunicar

Planificar

Visión

Planificar Entregas

Juegos de Planificación

Gestión de Riesgos

Historias

Backlogs

Entregar

Definición de Hecho

No Bugs

Control de Versiones

Build en 10 Minutos

Autoría Compartida

Documentación

Page 4: Xp y Entornos de Desarrollo Software

Desarrollar

Análisis Incremental

Tests de Cliente

TDD

Refactorización

Diseño Simple

Desarrollo Incremental

Spikes

Optimización

Tests Exploratorios

Prácticas XP

Pensar

Programación Pares

Trabajo con Energía

Controles Visuales

Análisis Causa – Efecto

Retrospectivas

Colaborar

Confianza

Sentarse Juntos

Cliente Involucrado

Daily Meetings

Estándares de Código

Demos Continuas

Informar y Comunicar

Planificar

Visión

Planificar Entregas

Juegos de Planificación

Gestión de Riesgos

Historias

Backlogs

Entregar

Definición de Hecho

No Bugs

Control de Versiones

Build en 10 Minutos

Autoría Compartida

Documentación

Page 5: Xp y Entornos de Desarrollo Software

Análisis Causa - Efecto

5 Whys

Para llegar al fondo de algo

continuar preguntando por qué

hasta que llegamos a un motivo

de peso

Diagrama de Raspa de Pez

1) Dibujar el problema a resolver

2) Categorizar las causas

3) Detallar las causas

4) Analizar causas principales

5) Buscar correlaciones entre ellas

Page 6: Xp y Entornos de Desarrollo Software

Ejemplo Cucumber

Característica: Proceso de login de mi tienda online

Como cliente de la tienda online

Quiero poder autenticarme en la tienda

De forma que pueda acceder al contenido de la aplicación y mi autenticación quede registrada a lo largo de toda la sesión

Antecedentes:

Dado que me encuentro en la vista de autenticacion de la Web

Y que no estoy autenticado dentro de la aplicación

Escenario: proceso de autenticación

Esquema del escenario: autenticación

Cuando relleno el campo de identificador de usuario con el valor <username>

Y relleno el campo de password con el valor <password>

Entonces al pulsar en el botón de acción debería estar en la pagina <page>

Ejemplos:

| username | password | page | | user01 | claveerronea | LoginPage |

| inexistente | user01pass | LoginPage |

| super | user01pass | RootPage |

TDD y BDD

TDD: Ciclo rápido de:

Prueba

Desarrollo

Refactorización

Reduce el efecto de errores y

mejora el diseño del código

Behaviour Driven Development

Lleva TDD un paso más allá, al

diseño guiado por dominio,

involucrando a los BSE en los

procesos de test / aceptación

Page 7: Xp y Entornos de Desarrollo Software

Refactorización

Refactorizar es cambiar el

código fuente sin alterar su

funcionalidad.

Beneficios

Mejora el diseño del software

Contribuye a detectar errores

Facilita la comprensión del SW

Ayuda a programar más rápido

Imagen obtenida de www.flickr.com/photos/danisarda

Page 8: Xp y Entornos de Desarrollo Software

Ejemplo Refactorización

public class CalcSal { private static final int meses = 12; private static final double ss = 6.3; private static final double imp = 14; public static double calcSalNet(double s) { if (s < 0) throw new IllegalArgumentException(); double sMens = s/meses; return sMens - (s/meses * (ss/100)) - (sMens * (imp/100)); } }

Page 9: Xp y Entornos de Desarrollo Software

Ejemplo Refactorización

public class Salario { private static final int CUOTAS_ANUALES_DE_SEGURIDAD_SOCIAL = 12; private static final int NUMERO_DE_PAGAS_ANUALES = 12; private static final double PORCENTAJE_RETENCION_SEGURIDAD_SOCIAL = 6.3; private static final double PORCENTAJE_RETENCION_IRPF = 14; public static double calcularSalarioMensualNeto(double salarioAnualBruto) { validarCifraDeSalario(salarioAnualBruto); double salarioMensualBruto = salarioAnualBruto / NUMERO_DE_PAGAS_ANUALES; return salarioMensualBruto - getRetencionesMensualesSeguridadSocial(salarioAnualBruto) - getRetencionesMensualesIrpf(salarioMensualBruto); } private static void validarCifraDeSalario(double salarioParaValidar) { if (salarioParaValidar < 0) throw new IllegalArgumentException( "El valor de un salario no puede ser menor que 0" ); } private static double getRetencionesMensualesSeguridadSocial(double salarioAnualBruto) { double decimalRetencionSeguridadSocial = PORCENTAJE_RETENCION_SEGURIDAD_SOCIAL / 100; return (salarioAnualBruto / CUOTAS_ANUALES_DE_SEGURIDAD_SOCIAL) * decimalRetencionSeguridadSocial; } private static double getRetencionesMensualesIrpf(double salarioMensualBruto) { double decimalRetencionIrpf = PORCENTAJE_RETENCION_IRPF / 100; return (salarioMensualBruto * decimalRetencionIrpf); } }

Page 10: Xp y Entornos de Desarrollo Software

Entornos de Desarrollo

Page 11: Xp y Entornos de Desarrollo Software

Ejemplo Entorno de Desarrollo

Page 13: Xp y Entornos de Desarrollo Software

Servidor CI

Page 14: Xp y Entornos de Desarrollo Software

Métricas de Calidad (Sonar)

Page 15: Xp y Entornos de Desarrollo Software

Próximos Pasos:

1) Encuesta: https://es.surveymonkey.com/s/WJSJVNS

2) Bibliografía y PPTs en la plataforma y Slideshare

3) Cualquier duda / comentario es bienvenido

David de Francisco Marcos Msc, MBA, PMP y CSM

[email protected]

www.linkedin.com/in/daviddefco

Gracias por la Atención


Recommended