SlideShare a Scribd company logo
1 of 36
Download to read offline
eXtreme Programing
            Alfredo Casado Bernardez
eXtreme Programming




                                  Indice

-   ¿Por qué XP?
-   ¿Qué es XP?, principios y practicas
-   Relación con otros métodos ágiles
-   Evolución                 Importancia de profesionalidad y método
-   Quiero saber más!         frente a un framework o tecnología pasajera.

                                     Esto te puede cambiar la vida, profesional
                                     claro. No es ninguna exageración.

                                     A mi me la ha cambiado, para mejor
                                     obviamente!.
Alfredo Casado Bernardez
eXtreme Programming



                                       Waterfall




                           No funcionan:
                            - demasiada documentación
                            - demasiada burocracia.
                            - separación de roles. gestores, arquitectos,
                            programadores, testers, operaciones/sistemas...
                            - rigidez, el cambio es un problema.
Alfredo Casado Bernardez    - ciclo en cascada claramente no sirve.
eXtreme Programming



                                       Waterfall




                        No funcionan:
                         - demasiada documentación
                         - demasiada burocracia.
                         - separación de roles. gestores, arquitectos,
Alfredo Casado Bernardez programadores, testers, operaciones/sistemas...
                         - rigidez, el cambio es un problema.
                         - ciclo en cascada claramente no sir ve.
eXtreme Programming



                           Waterfall




Alfredo Casado Bernardez
eXtreme Programming



                           Waterfall




Alfredo Casado Bernardez
eXtreme Programming



                           Waterfall




Alfredo Casado Bernardez
eXtreme Programming



                           Waterfall




Alfredo Casado Bernardez
eXtreme Programming



                           Waterfall




Alfredo Casado Bernardez
eXtreme Programming



                           Waterfall




Alfredo Casado Bernardez
eXtreme Programming



                                            Waterfall
Consecuencias, dos posibilidades:                       Y lo peor no es esto, lo peor es
  - Organizaciones grandes intentan seguir métodos      cuando hay que hacer cambios!!
  clasicos, el resultado son desarrollos que no
  satisfacen a nadie.

  - Organizaciones más pequeñas que no pueden
  permitirse el gasto optan por no seguir estas
  metodologias. El resultado es ASM/caos que de nuevo
  no deja satisfecho a nadie.




      Alfredo Casado Bernardez
eXtreme Programming



            Kent Beck, el padre de eXtreme programming
                           Documentación -> la necesaria

                           Separación de roles -> whole team y comunicación
                                          "..the problem [with software           projects]
                           Mucho tiempo isn'tla primera versión -> se, because una
                                          hasta change, per primera versión en change is
                           semana, dos como mucho.to happen; the problem, rather,
                                          going
                                          is the con el cambio, topromueve with change
                           XP no sólo es permisiva inability xp cope el cambio. El
                                          when it comes."
                           cambio como beneficio no como problema.

                           Si usamos XP lo hacemos para producir soft ware que sirva mejor a
                           las necesidades de nuestros clientes, nunca perder esto de vista,
                           este es el objetivo.



Alfredo Casado Bernardez
eXtreme Programming



                                    Valores, simplicidad
                       El mayor enemigo de cualquier sistema soft ware es la
                       complejidad. en XP mantener las cosas simples es un
                       objetivo prioritario. Diseño simple de kent beck:

                           - pasan los test.
                           - código revela sus intenciones.
                           - eliminar TODA duplicación.
                           - reducir el número de elementos.




Alfredo Casado Bernardez
eXtreme Programming



                              Valores de xp, comunicación

                           Un proyecto soft ware siempre se realiza en equipo, es
                           fundamental que los canales de comunicación sean de
                           banda ancha.

                           Comunicación entre:

                           cliente y equipo de desarrollo
                           entres miembros del equipo
                           entre programadores y testers
                           entre programadores y qa

                           Se trata de eliminar barreras y favorecer la
                           comunicación directa


Alfredo Casado Bernardez
eXtreme Programming



                               Valores de xp, feedback

                      Feedback continuo y temprano.

                      El cliente como parte del equipo esta constantemente
                      viendo el producto y dando feedback.

                      Los programadores que usan TDD tienen
                      constantemente feedback de que su trabajo es
                      correcto

                      La integración continua ofrece feedback constante de
                      que el código de todos se integra correctamente.

                      Se hacen iteraciones cortas, se obtiene feedback
                      después de cada iteración.

Alfredo Casado Bernardez
eXtreme Programming



                                    Valores de xp, coraje

                           Hay que echarle huevos al asunto, así de claro. Nadie
                           dijo que esto fuera a ser fácil. nadie da duros a peseta.
                           Los grandes beneficios sólo se obtienen a través de
                           grandes esfuerzos.




Alfredo Casado Bernardez
eXtreme Programming



                                   Practicas XP
  Feedback                  Continuous            Shared         Wellfare

      TDD                        CI         Simple design
Planing Game                                    System
                               Design         Metaphor          Sustainable
Whole Team                  Improvement       Collective           Pace
                               Small          ownership
    Pair
Programming                   releases          Coding
                                               Standard
 Alfredo Casado Bernardez
eXtreme Programming



                                        Whole team
                     El equipo cuena con todas las habilidades necesarias para
                     cumplir con su trabajo.

                     El cliente forma parte del equipo de trabajo. Punto más
                     polémico sin duda de xp (junto con PP quiza).

                     En scrum se relaja un poco, el clienete o product owner en
                     terminología scrum puede ser el propio cliente o un proxy de
                     este (algo así como un analista funcional o alguien de
                     nuestra empresa cuyo trabajo sea representar la posición
                     del cliente).

                     KB es más radical, si el cliente no quiere cederme a uno de
                     sus trabajadores para que el proyecto pueda avanzar
                     entonces no le interesa lo suficiente el proyecto, y en
                     consecuencia a mi tampoco. (con dos cojo...)
Alfredo Casado Bernardez
eXtreme Programming



                           Planning Game y Small releases

                           En este punto nos reunimos con el cliente y decidimos
                           las historias de usuario que van a entrar en la primera
                           iteración/release.

                           poner fotillo de nuestro tablon.

                           La idea es tener lo más rapido algo que funcione para
                           poder obtener feedback lo antes posible, todo lo
                           contrario de lo que sucedia en proyectos clásicos.

                           A veces se usan practicas de scrum o kanban/lean
                           mezcladas con xp en esta fase.



Alfredo Casado Bernardez
eXtreme Programming



                     System metaphor y walking skeleton

                           Consiste en empezar el desarrollo con un esqueleto
                           andante que cubra todos los puntos de la arquitectura
                           end-to-end. desde el UI hasta la bd por ejemplo en una
                           aplicación web típica.

                           El termino WS me parece mucho más acertado,
                           pertenece a alistair cockburn que lo definió como
                           parte de su metodología crystal. (este hombre también
                           se invento lo de la deuda técnica, un crack de las
                           buenas metaforas :P )




Alfredo Casado Bernardez
eXtreme Programming



                                      pair programming

                           Ya tenemos la planificación de lo que vamos ha hacer y
                           una metáfora para construir la arquitectura.

                           El siguiente paso es ponernos ha hacer el trabajo, pero
                           eso si, no nos ponemos solos!.

                           Cuatro ojos ven más que dos. PP es revisión de código
                           llevado al extremo. Práctica polemica pero que da
                           grandes resultados en algunos contextos.

                           ayuda a la visión compartida
                           ayuda a miembros nuevos del equipo
                           evita relajaciones, hacer PP es cansado.
                           d
Alfredo Casado Bernardez
eXtreme Programming



                                  TDD y simple design



                           Mi practica favorita, la que más me ha echo crecer como
                           programador en mi carrera profesional.

                           fundamental mezclar tdd con SD. En la fase refactor
                           seguimos las reglas de SD para mejorar nuestro código.

                           Algunos mitos:

                           - consume mucho tiempo
                           - es muy difícil
                           - no se pueden probar todos los casos
                           - no me dejan hacer test

Alfredo Casado Bernardez   Superado el periodo de aprendizaje desaparecen los mitos
eXtreme Programming



                                   Integración Continua

                           Práctica fundamental en combinación con tdd.

                           Si integrar frecuentemente es bueno integrar
                           continuamente es mejor. lógica aplastante...

                           Cada vez que hago un commit se compila todo el proyecto
                           y se pasan todos los test.

                           Hacer commit frecuentes, si haces TDD puedes hacer
                           commit cada vez que estes en verde.

                           No hacer commit-and-run, romper el build es entorpecer
                           al resto del equipo, se castiga con dureza (comprar
                           chucherias en nuestro caso).
Alfredo Casado Bernardez
eXtreme Programming



                              Collective Code Ownership

                           El codigo es de todos, no existen islas de conocimiento,
                           cualquiera puede hacer cualquier tarea.

                           Una práctica curiosa, poner las tarjetas al reves en la
                           pared y se escojen a boleo, evita que la gente tienda a
                           quedarse en su zona de conform.

                           reduce el factor camion, ¿cuantos miembros de tu equipo
                           tienen que ser atropellados por un camión para que tu
                           proyecto se vaya al garete?




Alfredo Casado Bernardez
eXtreme Programming



                                    Design Improvement
                       La regla de los boy scout. deja el campo más limpio de
                       como lo encontraste.

                       Recuerda, el código es de todos, no vale eso de “esto esta
                       fatal lo hizo fulanito”, no amigo, ese código es tuyo, si no
                       te gusta lo arreglas.

                       Hace falta coraje.




                              Boy Scout rule:
               Always leave a place cleaner than you found it
Alfredo Casado Bernardez
eXtreme Programming



                                       Sustainable pace

                           Las 40 horas.

                           No se puede realizar un trabajo que exige un alto de
                           concentración y tiene un alto grado de complejidad sin
                           estar a tope de tus facultades.

                           En ocasiones puede ser razonable un esfuerzo extra, eso
                           pasa siempre y seguira pasando.

                           Lo que no es razonable es que ese esfuerzo “extra” se
                           convierta en norma. Decia KB, si llevas varias semanas
                           haciendo horas de más para resolver un problema ten una
                           cosa clara, tienes un problema que no se resuelve con más
                           horas!!.
Alfredo Casado Bernardez
eXtreme Programming


                                 Nadie dijo que fuera fácil
                                  Cuidado con el DIP!

                       Hay que superar la etapa de aprendizaje para
                       realmene sacarle beneficio, lo más importante es no
                       desanimarse.

                           Los beneficios que obtengas son normalmente
                           proporcionales al esfuerzo que dedicas en algo.
                           Exceptuando que te toque la loteria claro!.

                       Es importante contar con coraje para salir del bache.
                       Otras opciones es buscar ayuda mediante coaching
                       para pasar esta fase.

                       Los beneficios de verdad llegarán despues y merecen la
                       pena el esfuerzo
Alfredo Casado Bernardez
eXtreme Programming



                      Relación con otros métodos ágiles

                           ver com encaja xp con otras metodologias como scrum
                           o las ideas de lean.

                           No estoy muy seguro si poner esto o no, simplemente
                           un dibujo, o algo contando que xp es el core de las
                           practicas de ingeniería y que las practicas de gestión
                           de proyecto se suelen realizar utilizando ideas de
                           scrum o kanban/lean.




Alfredo Casado Bernardez
eXtreme Programming


                           En 10 años pasan muchas cosas...
                                 Continuous delivery
                            10 años son mucho tiempo:

                              - BDD
                              - Continuous delivery
                              - DevOps
                              - Craftmanship




Alfredo Casado Bernardez
eXtreme Programming


                   En 10 años pasan muchas cosas...
                    Behavior Driven Development




Nombre Apellidos
eXtreme Programming



                   Quiero más!, sobre XP




Nombre Apellidos
eXtreme Programming



                   Quiero más!, TDD/BDD




Nombre Apellidos
eXtreme Programming



                   Quiero más!, CI/CD




Nombre Apellidos
eXtreme Programming



                   Quiero más!, profesion




Nombre Apellidos
eXtreme Programming



   Quiero más!, estándares codificación y buenas prácticas




Nombre Apellidos
eXtreme Programming




         MUCHAS GRACIAS!!!!
           Alfredo Casado Bernardez


twitter: @AlfredoCasado
blog: http://weblogs.javahispano.org/artesanodeprimera/

More Related Content

What's hot

Metodologia xp
Metodologia xpMetodologia xp
Metodologia xpfiremas
 
Extreme Programming-Fases
Extreme Programming-FasesExtreme Programming-Fases
Extreme Programming-FasesBelghy Chisag
 
Metodología xp
Metodología xpMetodología xp
Metodología xpPiskamen
 
Metodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudMetodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudEliud Cortes
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programmingjoaquin_win
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoJohita Guerrero
 
Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)Cesar Acosta
 
Metodologías ágiles para el desarrollo de software - XP
Metodologías ágiles para el desarrollo de software - XPMetodologías ágiles para el desarrollo de software - XP
Metodologías ágiles para el desarrollo de software - XPJose Diaz Silva
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xpgmjuan
 
Presentacion de xp scrum UDO MONAGAS AYDSI- I- 2014
Presentacion de xp scrum UDO MONAGAS AYDSI- I- 2014Presentacion de xp scrum UDO MONAGAS AYDSI- I- 2014
Presentacion de xp scrum UDO MONAGAS AYDSI- I- 2014marihencely
 
Metodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareMetodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareDeisy Sapaico
 
METODOLOGIAS XP
METODOLOGIAS XPMETODOLOGIAS XP
METODOLOGIAS XPBiingeSof
 

What's hot (20)

Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Extreme Programming-Fases
Extreme Programming-FasesExtreme Programming-Fases
Extreme Programming-Fases
 
Monografia de xp
Monografia de xpMonografia de xp
Monografia de xp
 
Diapositivas xp
Diapositivas xpDiapositivas xp
Diapositivas xp
 
Metodología xp
Metodología xpMetodología xp
Metodología xp
 
Metodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliudMetodologia xp cortesserranoeliud
Metodologia xp cortesserranoeliud
 
Monografia metodologia xp
Monografia   metodologia xpMonografia   metodologia xp
Monografia metodologia xp
 
Pst metodologia xp
Pst metodologia xpPst metodologia xp
Pst metodologia xp
 
Metodologia XP
Metodologia XPMetodologia XP
Metodologia XP
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Programacion Extrema
Programacion ExtremaProgramacion Extrema
Programacion Extrema
 
Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)Programación Extrema (Extream Programming XP)
Programación Extrema (Extream Programming XP)
 
Metodologías ágiles para el desarrollo de software - XP
Metodologías ágiles para el desarrollo de software - XPMetodologías ágiles para el desarrollo de software - XP
Metodologías ágiles para el desarrollo de software - XP
 
Programacion extrema_WR
Programacion extrema_WRProgramacion extrema_WR
Programacion extrema_WR
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Presentacion de xp scrum UDO MONAGAS AYDSI- I- 2014
Presentacion de xp scrum UDO MONAGAS AYDSI- I- 2014Presentacion de xp scrum UDO MONAGAS AYDSI- I- 2014
Presentacion de xp scrum UDO MONAGAS AYDSI- I- 2014
 
Metodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareMetodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de software
 
METODOLOGIAS XP
METODOLOGIAS XPMETODOLOGIAS XP
METODOLOGIAS XP
 

Similar to eXtreme Programming: principios y prácticas ágiles

Similar to eXtreme Programming: principios y prácticas ágiles (20)

Metodos agiles 4
Metodos agiles 4Metodos agiles 4
Metodos agiles 4
 
XP Programming
XP ProgrammingXP Programming
XP Programming
 
Xp
XpXp
Xp
 
Metología Agiles Desarrollo Software (XP)
Metología Agiles Desarrollo Software (XP)Metología Agiles Desarrollo Software (XP)
Metología Agiles Desarrollo Software (XP)
 
Metología Agiles Desarrollo Software (XP)
Metología Agiles Desarrollo Software (XP)Metología Agiles Desarrollo Software (XP)
Metología Agiles Desarrollo Software (XP)
 
Manual 02
Manual 02Manual 02
Manual 02
 
Programación extrema
Programación extremaProgramación extrema
Programación extrema
 
No hay bala de plata
No hay bala de plataNo hay bala de plata
No hay bala de plata
 
Lo que odiamos de la agilidad
Lo que odiamos de la agilidadLo que odiamos de la agilidad
Lo que odiamos de la agilidad
 
Code Blast 2012 - Node.js
Code Blast 2012 - Node.jsCode Blast 2012 - Node.js
Code Blast 2012 - Node.js
 
Clase 01 agilidad
Clase 01 agilidadClase 01 agilidad
Clase 01 agilidad
 
La programación extrema o e xtreme programming (xp
La programación extrema o e xtreme programming (xpLa programación extrema o e xtreme programming (xp
La programación extrema o e xtreme programming (xp
 
XPDay2009: Nameaction
XPDay2009: NameactionXPDay2009: Nameaction
XPDay2009: Nameaction
 
Presentaciones Ramiro Alvarez - eCommerce IT Camp
Presentaciones Ramiro Alvarez - eCommerce IT Camp Presentaciones Ramiro Alvarez - eCommerce IT Camp
Presentaciones Ramiro Alvarez - eCommerce IT Camp
 
Exposicion 5
Exposicion 5Exposicion 5
Exposicion 5
 
Diferencias entre scrum y xp
Diferencias entre scrum y xp Diferencias entre scrum y xp
Diferencias entre scrum y xp
 
Clase 03 XP
Clase 03 XPClase 03 XP
Clase 03 XP
 
Crocodrile
CrocodrileCrocodrile
Crocodrile
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xp
 
Xp
XpXp
Xp
 

More from ADWE Team

Frameworks para el desarrollo de juegos para dispositivo móviles
Frameworks para el desarrollo de juegos para dispositivo móvilesFrameworks para el desarrollo de juegos para dispositivo móviles
Frameworks para el desarrollo de juegos para dispositivo móvilesADWE Team
 
HTML5 + CSS3 + Wordpress = Responsive Web
HTML5 + CSS3 + Wordpress = Responsive WebHTML5 + CSS3 + Wordpress = Responsive Web
HTML5 + CSS3 + Wordpress = Responsive WebADWE Team
 
HTML5 dia de internet 2012
HTML5 dia de internet 2012HTML5 dia de internet 2012
HTML5 dia de internet 2012ADWE Team
 
Significado y usos de RSS
Significado y usos de RSSSignificado y usos de RSS
Significado y usos de RSSADWE Team
 
Responsive web y Wordpress
Responsive web y WordpressResponsive web y Wordpress
Responsive web y WordpressADWE Team
 
Introduccion html5
Introduccion html5Introduccion html5
Introduccion html5ADWE Team
 
Ponencia seo para el èxito con google 2011 copia
Ponencia seo para el èxito con google 2011   copiaPonencia seo para el èxito con google 2011   copia
Ponencia seo para el èxito con google 2011 copiaADWE Team
 
Diseñar para dispositivos móviles
Diseñar para dispositivos móvilesDiseñar para dispositivos móviles
Diseñar para dispositivos móvilesADWE Team
 
Potenciando tu web con APIs de Miquel Camps para ADWE Madrid
Potenciando tu web con APIs de Miquel Camps para ADWE MadridPotenciando tu web con APIs de Miquel Camps para ADWE Madrid
Potenciando tu web con APIs de Miquel Camps para ADWE MadridADWE Team
 
Presentacion de Fran Moreno para adwe
Presentacion de Fran Moreno para adwePresentacion de Fran Moreno para adwe
Presentacion de Fran Moreno para adweADWE Team
 
Rompiendo moldes
Rompiendo moldesRompiendo moldes
Rompiendo moldesADWE Team
 
Gwt intro adwe_murcia
Gwt intro adwe_murciaGwt intro adwe_murcia
Gwt intro adwe_murciaADWE Team
 
5 tips de diseñadores a maquetadores... y viceversa
5 tips de diseñadores a maquetadores... y viceversa5 tips de diseñadores a maquetadores... y viceversa
5 tips de diseñadores a maquetadores... y viceversaADWE Team
 
Presentación Framework CodeIgniter
Presentación Framework CodeIgniter Presentación Framework CodeIgniter
Presentación Framework CodeIgniter ADWE Team
 
El momento del diseño, con Carlos Úbeda, de DNXGroup
 El momento del diseño, con Carlos Úbeda, de DNXGroup El momento del diseño, con Carlos Úbeda, de DNXGroup
El momento del diseño, con Carlos Úbeda, de DNXGroupADWE Team
 
Presentacion seo analisis
Presentacion seo analisisPresentacion seo analisis
Presentacion seo analisisADWE Team
 
Presentación de ACTO Framework parte I
Presentación de ACTO Framework parte IPresentación de ACTO Framework parte I
Presentación de ACTO Framework parte IADWE Team
 
Presentación de ACTO Framework parte II
Presentación de ACTO Framework parte IIPresentación de ACTO Framework parte II
Presentación de ACTO Framework parte IIADWE Team
 
SEO ADWE Murcia
SEO ADWE MurciaSEO ADWE Murcia
SEO ADWE MurciaADWE Team
 

More from ADWE Team (20)

Frameworks para el desarrollo de juegos para dispositivo móviles
Frameworks para el desarrollo de juegos para dispositivo móvilesFrameworks para el desarrollo de juegos para dispositivo móviles
Frameworks para el desarrollo de juegos para dispositivo móviles
 
HTML5 + CSS3 + Wordpress = Responsive Web
HTML5 + CSS3 + Wordpress = Responsive WebHTML5 + CSS3 + Wordpress = Responsive Web
HTML5 + CSS3 + Wordpress = Responsive Web
 
HTML5 dia de internet 2012
HTML5 dia de internet 2012HTML5 dia de internet 2012
HTML5 dia de internet 2012
 
Significado y usos de RSS
Significado y usos de RSSSignificado y usos de RSS
Significado y usos de RSS
 
Responsive web y Wordpress
Responsive web y WordpressResponsive web y Wordpress
Responsive web y Wordpress
 
Git git hub
Git git hubGit git hub
Git git hub
 
Introduccion html5
Introduccion html5Introduccion html5
Introduccion html5
 
Ponencia seo para el èxito con google 2011 copia
Ponencia seo para el èxito con google 2011   copiaPonencia seo para el èxito con google 2011   copia
Ponencia seo para el èxito con google 2011 copia
 
Diseñar para dispositivos móviles
Diseñar para dispositivos móvilesDiseñar para dispositivos móviles
Diseñar para dispositivos móviles
 
Potenciando tu web con APIs de Miquel Camps para ADWE Madrid
Potenciando tu web con APIs de Miquel Camps para ADWE MadridPotenciando tu web con APIs de Miquel Camps para ADWE Madrid
Potenciando tu web con APIs de Miquel Camps para ADWE Madrid
 
Presentacion de Fran Moreno para adwe
Presentacion de Fran Moreno para adwePresentacion de Fran Moreno para adwe
Presentacion de Fran Moreno para adwe
 
Rompiendo moldes
Rompiendo moldesRompiendo moldes
Rompiendo moldes
 
Gwt intro adwe_murcia
Gwt intro adwe_murciaGwt intro adwe_murcia
Gwt intro adwe_murcia
 
5 tips de diseñadores a maquetadores... y viceversa
5 tips de diseñadores a maquetadores... y viceversa5 tips de diseñadores a maquetadores... y viceversa
5 tips de diseñadores a maquetadores... y viceversa
 
Presentación Framework CodeIgniter
Presentación Framework CodeIgniter Presentación Framework CodeIgniter
Presentación Framework CodeIgniter
 
El momento del diseño, con Carlos Úbeda, de DNXGroup
 El momento del diseño, con Carlos Úbeda, de DNXGroup El momento del diseño, con Carlos Úbeda, de DNXGroup
El momento del diseño, con Carlos Úbeda, de DNXGroup
 
Presentacion seo analisis
Presentacion seo analisisPresentacion seo analisis
Presentacion seo analisis
 
Presentación de ACTO Framework parte I
Presentación de ACTO Framework parte IPresentación de ACTO Framework parte I
Presentación de ACTO Framework parte I
 
Presentación de ACTO Framework parte II
Presentación de ACTO Framework parte IIPresentación de ACTO Framework parte II
Presentación de ACTO Framework parte II
 
SEO ADWE Murcia
SEO ADWE MurciaSEO ADWE Murcia
SEO ADWE Murcia
 

Recently uploaded

Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 

Recently uploaded (20)

Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 

eXtreme Programming: principios y prácticas ágiles

  • 1. eXtreme Programing Alfredo Casado Bernardez
  • 2. eXtreme Programming Indice - ¿Por qué XP? - ¿Qué es XP?, principios y practicas - Relación con otros métodos ágiles - Evolución Importancia de profesionalidad y método - Quiero saber más! frente a un framework o tecnología pasajera. Esto te puede cambiar la vida, profesional claro. No es ninguna exageración. A mi me la ha cambiado, para mejor obviamente!. Alfredo Casado Bernardez
  • 3. eXtreme Programming Waterfall No funcionan: - demasiada documentación - demasiada burocracia. - separación de roles. gestores, arquitectos, programadores, testers, operaciones/sistemas... - rigidez, el cambio es un problema. Alfredo Casado Bernardez - ciclo en cascada claramente no sirve.
  • 4. eXtreme Programming Waterfall No funcionan: - demasiada documentación - demasiada burocracia. - separación de roles. gestores, arquitectos, Alfredo Casado Bernardez programadores, testers, operaciones/sistemas... - rigidez, el cambio es un problema. - ciclo en cascada claramente no sir ve.
  • 5. eXtreme Programming Waterfall Alfredo Casado Bernardez
  • 6. eXtreme Programming Waterfall Alfredo Casado Bernardez
  • 7. eXtreme Programming Waterfall Alfredo Casado Bernardez
  • 8. eXtreme Programming Waterfall Alfredo Casado Bernardez
  • 9. eXtreme Programming Waterfall Alfredo Casado Bernardez
  • 10. eXtreme Programming Waterfall Alfredo Casado Bernardez
  • 11. eXtreme Programming Waterfall Consecuencias, dos posibilidades: Y lo peor no es esto, lo peor es - Organizaciones grandes intentan seguir métodos cuando hay que hacer cambios!! clasicos, el resultado son desarrollos que no satisfacen a nadie. - Organizaciones más pequeñas que no pueden permitirse el gasto optan por no seguir estas metodologias. El resultado es ASM/caos que de nuevo no deja satisfecho a nadie. Alfredo Casado Bernardez
  • 12. eXtreme Programming Kent Beck, el padre de eXtreme programming Documentación -> la necesaria Separación de roles -> whole team y comunicación "..the problem [with software projects] Mucho tiempo isn'tla primera versión -> se, because una hasta change, per primera versión en change is semana, dos como mucho.to happen; the problem, rather, going is the con el cambio, topromueve with change XP no sólo es permisiva inability xp cope el cambio. El when it comes." cambio como beneficio no como problema. Si usamos XP lo hacemos para producir soft ware que sirva mejor a las necesidades de nuestros clientes, nunca perder esto de vista, este es el objetivo. Alfredo Casado Bernardez
  • 13. eXtreme Programming Valores, simplicidad El mayor enemigo de cualquier sistema soft ware es la complejidad. en XP mantener las cosas simples es un objetivo prioritario. Diseño simple de kent beck: - pasan los test. - código revela sus intenciones. - eliminar TODA duplicación. - reducir el número de elementos. Alfredo Casado Bernardez
  • 14. eXtreme Programming Valores de xp, comunicación Un proyecto soft ware siempre se realiza en equipo, es fundamental que los canales de comunicación sean de banda ancha. Comunicación entre: cliente y equipo de desarrollo entres miembros del equipo entre programadores y testers entre programadores y qa Se trata de eliminar barreras y favorecer la comunicación directa Alfredo Casado Bernardez
  • 15. eXtreme Programming Valores de xp, feedback Feedback continuo y temprano. El cliente como parte del equipo esta constantemente viendo el producto y dando feedback. Los programadores que usan TDD tienen constantemente feedback de que su trabajo es correcto La integración continua ofrece feedback constante de que el código de todos se integra correctamente. Se hacen iteraciones cortas, se obtiene feedback después de cada iteración. Alfredo Casado Bernardez
  • 16. eXtreme Programming Valores de xp, coraje Hay que echarle huevos al asunto, así de claro. Nadie dijo que esto fuera a ser fácil. nadie da duros a peseta. Los grandes beneficios sólo se obtienen a través de grandes esfuerzos. Alfredo Casado Bernardez
  • 17. eXtreme Programming Practicas XP Feedback Continuous Shared Wellfare TDD CI Simple design Planing Game System Design Metaphor Sustainable Whole Team Improvement Collective Pace Small ownership Pair Programming releases Coding Standard Alfredo Casado Bernardez
  • 18. eXtreme Programming Whole team El equipo cuena con todas las habilidades necesarias para cumplir con su trabajo. El cliente forma parte del equipo de trabajo. Punto más polémico sin duda de xp (junto con PP quiza). En scrum se relaja un poco, el clienete o product owner en terminología scrum puede ser el propio cliente o un proxy de este (algo así como un analista funcional o alguien de nuestra empresa cuyo trabajo sea representar la posición del cliente). KB es más radical, si el cliente no quiere cederme a uno de sus trabajadores para que el proyecto pueda avanzar entonces no le interesa lo suficiente el proyecto, y en consecuencia a mi tampoco. (con dos cojo...) Alfredo Casado Bernardez
  • 19. eXtreme Programming Planning Game y Small releases En este punto nos reunimos con el cliente y decidimos las historias de usuario que van a entrar en la primera iteración/release. poner fotillo de nuestro tablon. La idea es tener lo más rapido algo que funcione para poder obtener feedback lo antes posible, todo lo contrario de lo que sucedia en proyectos clásicos. A veces se usan practicas de scrum o kanban/lean mezcladas con xp en esta fase. Alfredo Casado Bernardez
  • 20. eXtreme Programming System metaphor y walking skeleton Consiste en empezar el desarrollo con un esqueleto andante que cubra todos los puntos de la arquitectura end-to-end. desde el UI hasta la bd por ejemplo en una aplicación web típica. El termino WS me parece mucho más acertado, pertenece a alistair cockburn que lo definió como parte de su metodología crystal. (este hombre también se invento lo de la deuda técnica, un crack de las buenas metaforas :P ) Alfredo Casado Bernardez
  • 21. eXtreme Programming pair programming Ya tenemos la planificación de lo que vamos ha hacer y una metáfora para construir la arquitectura. El siguiente paso es ponernos ha hacer el trabajo, pero eso si, no nos ponemos solos!. Cuatro ojos ven más que dos. PP es revisión de código llevado al extremo. Práctica polemica pero que da grandes resultados en algunos contextos. ayuda a la visión compartida ayuda a miembros nuevos del equipo evita relajaciones, hacer PP es cansado. d Alfredo Casado Bernardez
  • 22. eXtreme Programming TDD y simple design Mi practica favorita, la que más me ha echo crecer como programador en mi carrera profesional. fundamental mezclar tdd con SD. En la fase refactor seguimos las reglas de SD para mejorar nuestro código. Algunos mitos: - consume mucho tiempo - es muy difícil - no se pueden probar todos los casos - no me dejan hacer test Alfredo Casado Bernardez Superado el periodo de aprendizaje desaparecen los mitos
  • 23. eXtreme Programming Integración Continua Práctica fundamental en combinación con tdd. Si integrar frecuentemente es bueno integrar continuamente es mejor. lógica aplastante... Cada vez que hago un commit se compila todo el proyecto y se pasan todos los test. Hacer commit frecuentes, si haces TDD puedes hacer commit cada vez que estes en verde. No hacer commit-and-run, romper el build es entorpecer al resto del equipo, se castiga con dureza (comprar chucherias en nuestro caso). Alfredo Casado Bernardez
  • 24. eXtreme Programming Collective Code Ownership El codigo es de todos, no existen islas de conocimiento, cualquiera puede hacer cualquier tarea. Una práctica curiosa, poner las tarjetas al reves en la pared y se escojen a boleo, evita que la gente tienda a quedarse en su zona de conform. reduce el factor camion, ¿cuantos miembros de tu equipo tienen que ser atropellados por un camión para que tu proyecto se vaya al garete? Alfredo Casado Bernardez
  • 25. eXtreme Programming Design Improvement La regla de los boy scout. deja el campo más limpio de como lo encontraste. Recuerda, el código es de todos, no vale eso de “esto esta fatal lo hizo fulanito”, no amigo, ese código es tuyo, si no te gusta lo arreglas. Hace falta coraje. Boy Scout rule: Always leave a place cleaner than you found it Alfredo Casado Bernardez
  • 26. eXtreme Programming Sustainable pace Las 40 horas. No se puede realizar un trabajo que exige un alto de concentración y tiene un alto grado de complejidad sin estar a tope de tus facultades. En ocasiones puede ser razonable un esfuerzo extra, eso pasa siempre y seguira pasando. Lo que no es razonable es que ese esfuerzo “extra” se convierta en norma. Decia KB, si llevas varias semanas haciendo horas de más para resolver un problema ten una cosa clara, tienes un problema que no se resuelve con más horas!!. Alfredo Casado Bernardez
  • 27. eXtreme Programming Nadie dijo que fuera fácil Cuidado con el DIP! Hay que superar la etapa de aprendizaje para realmene sacarle beneficio, lo más importante es no desanimarse. Los beneficios que obtengas son normalmente proporcionales al esfuerzo que dedicas en algo. Exceptuando que te toque la loteria claro!. Es importante contar con coraje para salir del bache. Otras opciones es buscar ayuda mediante coaching para pasar esta fase. Los beneficios de verdad llegarán despues y merecen la pena el esfuerzo Alfredo Casado Bernardez
  • 28. eXtreme Programming Relación con otros métodos ágiles ver com encaja xp con otras metodologias como scrum o las ideas de lean. No estoy muy seguro si poner esto o no, simplemente un dibujo, o algo contando que xp es el core de las practicas de ingeniería y que las practicas de gestión de proyecto se suelen realizar utilizando ideas de scrum o kanban/lean. Alfredo Casado Bernardez
  • 29. eXtreme Programming En 10 años pasan muchas cosas... Continuous delivery 10 años son mucho tiempo: - BDD - Continuous delivery - DevOps - Craftmanship Alfredo Casado Bernardez
  • 30. eXtreme Programming En 10 años pasan muchas cosas... Behavior Driven Development Nombre Apellidos
  • 31. eXtreme Programming Quiero más!, sobre XP Nombre Apellidos
  • 32. eXtreme Programming Quiero más!, TDD/BDD Nombre Apellidos
  • 33. eXtreme Programming Quiero más!, CI/CD Nombre Apellidos
  • 34. eXtreme Programming Quiero más!, profesion Nombre Apellidos
  • 35. eXtreme Programming Quiero más!, estándares codificación y buenas prácticas Nombre Apellidos
  • 36. eXtreme Programming MUCHAS GRACIAS!!!! Alfredo Casado Bernardez twitter: @AlfredoCasado blog: http://weblogs.javahispano.org/artesanodeprimera/