SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Desarrollo Dirigido por Ejemplos Concretar   en lugar de   Abstraer Carlos Blé Jurado Marzo 2010 – Universitat Jaume I www.carlosble.com
Nada más salir de la facultad... “ ¡Podemos  programar  lo que sea!!” “ ¡Despues  de la carrera saco  adelante cualquier  cosa!!!!!!”
Y va la experiencia y dice... “ así que...  podeis hacer lo que  sea...” “ ¡y quien lo  va a  mantener !!!!!! ”
No te tortures con código imposible ni  se lo hagas a tus compañeros No juegues con  el dinero del  cliente. Dale  soluciones, no más problemas Tranquilo majete: haz las cosas bien
¿Y eso como se hace? ,[object Object],“ ...tengo un colega en una empresa donde saben un montón de ingeniería del software...”
¡¡¡¡¡¡¡ AL REVES !!!!!!!! A lo mejor es que los estamos haciendo...
Afrontemos los problemas del software ,[object Object]
No  hace lo que el cliente  necesita  que haga   (hace otros rollitos que están que te cagas y tal)
Es muy caro de  mantener  y (más vale que el cliente evolucionar   no  pida cambios)
Los métodos tradicionales no están resultando eficajes para evitarlos ,[object Object]
Transcribir  (volcar los requisitos en 500 páginas)
Abstraer   (intentar resumir las 500 páginas en conceptos)
Modelar  (diagramas de clases, etc)
Implementar  (a picar código)
Probar   (tres días usando la app a mano)
Entregar   (cobrar y salir pitando)
En realidad hay aun más problemas El mundo de la informática es complicado: ,[object Object]
Pero en el lado técnico, al menos, podemos ser ágiles ,[object Object]
Transcribir     (escribimos historias de usuario)
Concretar     (escribir criterios/tests    de aceptación)
Probar/Implementar    (primero la prueba, ¡cobarde!)

Weitere ähnliche Inhalte

Was ist angesagt?

Cómo hacer Test Driven Development
Cómo hacer Test Driven DevelopmentCómo hacer Test Driven Development
Cómo hacer Test Driven DevelopmentJavier Novoa Cataño
 
065 Testing Automatizado Hagamos Que Las Maquinas Trabajen Por Nosotros
065 Testing Automatizado Hagamos Que Las Maquinas  Trabajen Por Nosotros065 Testing Automatizado Hagamos Que Las Maquinas  Trabajen Por Nosotros
065 Testing Automatizado Hagamos Que Las Maquinas Trabajen Por NosotrosGeneXus
 

Was ist angesagt? (6)

Cómo hacer Test Driven Development
Cómo hacer Test Driven DevelopmentCómo hacer Test Driven Development
Cómo hacer Test Driven Development
 
Practica2
Practica2Practica2
Practica2
 
Manual basico java
Manual basico javaManual basico java
Manual basico java
 
065 Testing Automatizado Hagamos Que Las Maquinas Trabajen Por Nosotros
065 Testing Automatizado Hagamos Que Las Maquinas  Trabajen Por Nosotros065 Testing Automatizado Hagamos Que Las Maquinas  Trabajen Por Nosotros
065 Testing Automatizado Hagamos Que Las Maquinas Trabajen Por Nosotros
 
BDD & Cucumber
BDD & CucumberBDD & Cucumber
BDD & Cucumber
 
Introducción a TDD
Introducción a TDDIntroducción a TDD
Introducción a TDD
 

Andere mochten auch

Introduccion a TDD y XP en la Universidad de Santiago de Compostela
Introduccion a TDD y XP en la Universidad de Santiago de CompostelaIntroduccion a TDD y XP en la Universidad de Santiago de Compostela
Introduccion a TDD y XP en la Universidad de Santiago de CompostelaCarlos Ble
 
Breve introducción a TDD con Phpunit
Breve introducción a TDD con PhpunitBreve introducción a TDD con Phpunit
Breve introducción a TDD con Phpunitmoisesgallego
 
Design how your objects talk through mocking
Design how your objects talk through mockingDesign how your objects talk through mocking
Design how your objects talk through mockingKonstantin Kudryashov
 
Test Driven Development (TDD)
Test Driven Development (TDD)Test Driven Development (TDD)
Test Driven Development (TDD)David Ehringer
 

Andere mochten auch (6)

Introduccion a TDD y XP en la Universidad de Santiago de Compostela
Introduccion a TDD y XP en la Universidad de Santiago de CompostelaIntroduccion a TDD y XP en la Universidad de Santiago de Compostela
Introduccion a TDD y XP en la Universidad de Santiago de Compostela
 
Kata tdd
Kata tddKata tdd
Kata tdd
 
Breve introducción a TDD con Phpunit
Breve introducción a TDD con PhpunitBreve introducción a TDD con Phpunit
Breve introducción a TDD con Phpunit
 
TDD Course (Spanish)
TDD Course (Spanish)TDD Course (Spanish)
TDD Course (Spanish)
 
Design how your objects talk through mocking
Design how your objects talk through mockingDesign how your objects talk through mocking
Design how your objects talk through mocking
 
Test Driven Development (TDD)
Test Driven Development (TDD)Test Driven Development (TDD)
Test Driven Development (TDD)
 

Ähnlich wie Charla Tdd Uji 032010

C# for Beginners
C# for BeginnersC# for Beginners
C# for BeginnersZaory Zaory
 
Diseño de Interacción - El primer Paso Necesario (Ricardo Devis)
Diseño de Interacción - El primer Paso Necesario (Ricardo Devis)Diseño de Interacción - El primer Paso Necesario (Ricardo Devis)
Diseño de Interacción - El primer Paso Necesario (Ricardo Devis)Ricardo Devis
 
Consejos de un perro viejo programador
Consejos de un perro viejo programadorConsejos de un perro viejo programador
Consejos de un perro viejo programadorBraulio Diez Botella
 
Técnicas y herramientas para que la computadora haga más y el programador m...
Técnicas y herramientas para que la computadora haga más y el programador m...Técnicas y herramientas para que la computadora haga más y el programador m...
Técnicas y herramientas para que la computadora haga más y el programador m...Hernan Wilkinson
 
Buenos Aires vs. (London vs. Chicago) Agiles 2020
Buenos Aires vs. (London vs. Chicago) Agiles 2020Buenos Aires vs. (London vs. Chicago) Agiles 2020
Buenos Aires vs. (London vs. Chicago) Agiles 2020Hernan Wilkinson
 
Reglas de Código Simple
Reglas de Código SimpleReglas de Código Simple
Reglas de Código Simplepsluaces
 
Meetup: Sesion #1 Unit Testing & Simian Army
Meetup: Sesion #1 Unit Testing & Simian ArmyMeetup: Sesion #1 Unit Testing & Simian Army
Meetup: Sesion #1 Unit Testing & Simian ArmyOsvaldo Mercado Coss
 
Ponele el TURBO al Dev Team de tu Startup
Ponele el TURBO al Dev Team de tu StartupPonele el TURBO al Dev Team de tu Startup
Ponele el TURBO al Dev Team de tu StartupMartin Siniawski
 
Abuntool presentation
Abuntool presentationAbuntool presentation
Abuntool presentationCarlos Toxtli
 
Meetup TestingUy 2019 - Contribuir con la definición de requerimientos para e...
Meetup TestingUy 2019 - Contribuir con la definición de requerimientos para e...Meetup TestingUy 2019 - Contribuir con la definición de requerimientos para e...
Meetup TestingUy 2019 - Contribuir con la definición de requerimientos para e...TestingUy
 
Is clase 13_metodos_y_procesos
Is clase 13_metodos_y_procesosIs clase 13_metodos_y_procesos
Is clase 13_metodos_y_procesosAle Mejia
 
Presentación Modelo sistemático para testeo con usuarios en Startups
Presentación Modelo sistemático para testeo con usuarios en StartupsPresentación Modelo sistemático para testeo con usuarios en Startups
Presentación Modelo sistemático para testeo con usuarios en StartupsGustavo Soto Miño
 
Modelo sistemático de testeo con usuarios para startups
Modelo sistemático de testeo con usuarios para startupsModelo sistemático de testeo con usuarios para startups
Modelo sistemático de testeo con usuarios para startupsJuan Paulo Madriaza
 
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptxclase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptxJulianSimonetta
 
El diseñador a medias (con notas). UX Spain 2013
El diseñador a medias (con notas). UX Spain 2013 El diseñador a medias (con notas). UX Spain 2013
El diseñador a medias (con notas). UX Spain 2013 qweos
 
Apuntes #XPweek
Apuntes #XPweekApuntes #XPweek
Apuntes #XPweekCarlos Ble
 

Ähnlich wie Charla Tdd Uji 032010 (20)

C# for Beginners
C# for BeginnersC# for Beginners
C# for Beginners
 
Diseño de Interacción - El primer Paso Necesario (Ricardo Devis)
Diseño de Interacción - El primer Paso Necesario (Ricardo Devis)Diseño de Interacción - El primer Paso Necesario (Ricardo Devis)
Diseño de Interacción - El primer Paso Necesario (Ricardo Devis)
 
Consejos de un perro viejo programador
Consejos de un perro viejo programadorConsejos de un perro viejo programador
Consejos de un perro viejo programador
 
Técnicas y herramientas para que la computadora haga más y el programador m...
Técnicas y herramientas para que la computadora haga más y el programador m...Técnicas y herramientas para que la computadora haga más y el programador m...
Técnicas y herramientas para que la computadora haga más y el programador m...
 
Buenos Aires vs. (London vs. Chicago) Agiles 2020
Buenos Aires vs. (London vs. Chicago) Agiles 2020Buenos Aires vs. (London vs. Chicago) Agiles 2020
Buenos Aires vs. (London vs. Chicago) Agiles 2020
 
Reglas de Código Simple
Reglas de Código SimpleReglas de Código Simple
Reglas de Código Simple
 
Meetup: Sesion #1 Unit Testing & Simian Army
Meetup: Sesion #1 Unit Testing & Simian ArmyMeetup: Sesion #1 Unit Testing & Simian Army
Meetup: Sesion #1 Unit Testing & Simian Army
 
Ponele el TURBO al Dev Team de tu Startup
Ponele el TURBO al Dev Team de tu StartupPonele el TURBO al Dev Team de tu Startup
Ponele el TURBO al Dev Team de tu Startup
 
Abuntool presentation
Abuntool presentationAbuntool presentation
Abuntool presentation
 
Meetup TestingUy 2019 - Contribuir con la definición de requerimientos para e...
Meetup TestingUy 2019 - Contribuir con la definición de requerimientos para e...Meetup TestingUy 2019 - Contribuir con la definición de requerimientos para e...
Meetup TestingUy 2019 - Contribuir con la definición de requerimientos para e...
 
Is clase 13_metodos_y_procesos
Is clase 13_metodos_y_procesosIs clase 13_metodos_y_procesos
Is clase 13_metodos_y_procesos
 
métodos y procesos
métodos y procesosmétodos y procesos
métodos y procesos
 
SEPGLA 2007 Presentation
SEPGLA 2007 PresentationSEPGLA 2007 Presentation
SEPGLA 2007 Presentation
 
Presentación Modelo sistemático para testeo con usuarios en Startups
Presentación Modelo sistemático para testeo con usuarios en StartupsPresentación Modelo sistemático para testeo con usuarios en Startups
Presentación Modelo sistemático para testeo con usuarios en Startups
 
Modelo sistemático de testeo con usuarios para startups
Modelo sistemático de testeo con usuarios para startupsModelo sistemático de testeo con usuarios para startups
Modelo sistemático de testeo con usuarios para startups
 
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptxclase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
clase-Unidad1 y Unidad2-Pseudo-Print-Scanf-IF (1).pptx
 
El diseñador a medias (con notas). UX Spain 2013
El diseñador a medias (con notas). UX Spain 2013 El diseñador a medias (con notas). UX Spain 2013
El diseñador a medias (con notas). UX Spain 2013
 
Apuntes #XPweek
Apuntes #XPweekApuntes #XPweek
Apuntes #XPweek
 
UX process design for mobile
UX process design for mobileUX process design for mobile
UX process design for mobile
 
Plantilla implementacion
Plantilla implementacionPlantilla implementacion
Plantilla implementacion
 

Mehr von Carlos Ble

Gestión de proyectos
Gestión de proyectosGestión de proyectos
Gestión de proyectosCarlos Ble
 
Maintainable software
Maintainable softwareMaintainable software
Maintainable softwareCarlos Ble
 
Carbon offsetting
Carbon offsettingCarbon offsetting
Carbon offsettingCarlos Ble
 
BDD - Test Academy Barcelona 2017
BDD - Test Academy Barcelona 2017BDD - Test Academy Barcelona 2017
BDD - Test Academy Barcelona 2017Carlos Ble
 
Distinguir entre Problema y Solución
Distinguir entre Problema y SoluciónDistinguir entre Problema y Solución
Distinguir entre Problema y SoluciónCarlos Ble
 
ES6 Simplified
ES6 SimplifiedES6 Simplified
ES6 SimplifiedCarlos Ble
 
Behavior Driven Development - Material de clase PMA
Behavior Driven Development - Material de clase PMABehavior Driven Development - Material de clase PMA
Behavior Driven Development - Material de clase PMACarlos Ble
 
TDD in the Web with Python and Django
TDD in the Web with Python and DjangoTDD in the Web with Python and Django
TDD in the Web with Python and DjangoCarlos Ble
 

Mehr von Carlos Ble (8)

Gestión de proyectos
Gestión de proyectosGestión de proyectos
Gestión de proyectos
 
Maintainable software
Maintainable softwareMaintainable software
Maintainable software
 
Carbon offsetting
Carbon offsettingCarbon offsetting
Carbon offsetting
 
BDD - Test Academy Barcelona 2017
BDD - Test Academy Barcelona 2017BDD - Test Academy Barcelona 2017
BDD - Test Academy Barcelona 2017
 
Distinguir entre Problema y Solución
Distinguir entre Problema y SoluciónDistinguir entre Problema y Solución
Distinguir entre Problema y Solución
 
ES6 Simplified
ES6 SimplifiedES6 Simplified
ES6 Simplified
 
Behavior Driven Development - Material de clase PMA
Behavior Driven Development - Material de clase PMABehavior Driven Development - Material de clase PMA
Behavior Driven Development - Material de clase PMA
 
TDD in the Web with Python and Django
TDD in the Web with Python and DjangoTDD in the Web with Python and Django
TDD in the Web with Python and Django
 

Kürzlich hochgeladen

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 

Kürzlich hochgeladen (11)

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 

Charla Tdd Uji 032010