SlideShare una empresa de Scribd logo
1 de 82
Descargar para leer sin conexión
Code Smells y SOLID
A qué huele tu código?




http://village.blogs.pressdemocrat.com/10315/recap-whos-ready-for-summer/?tc=ar
Comencemos!!




http://lifesabusiness.files.wordpress.com/2011/05/lets-start.jpg?w=600&h=400
Porqué es
necesario
escribir un
buen código?
Desarrollo de Software Tradicional
http://www.flickr.com/photos/futureshape/4000128011/
Mucho software
actual se
comporta como
un juego de Jenga
http://www.albertelli.com/photoarchive/Random_2003/lawn_jenga0002.jpeg
Unpequeño


                                                             cambio…


http://amistadcuauti.files.wordpress.com/2008/08/jenga.jpg
Provoca
efectos por
      todas
   partes...




http://design-crit.com/blog/images/jenga.jpg
Necesitamos un
  cambio en el
      sistema…




  http://raulpiriz.files.wordpress.com/2010/09/alg_jefe.jpg
Produce
  temor…




http://blog.rwbenwick.com/wp-content/uploads/2009/12/Reason-For-Leaving-iStock_000008369823Medium.jpg
http://www.albertelli.com/photoarchive/Random_2003/lawn_jenga0002.jpeg
Pasamos más
                                                                                     tiempo
                                                                            leyendo código
                                                                                        que
                                                                              escribiéndolo




http://photos.pcpro.co.uk/blogs/wp-content/uploads/2010/10/frustrated.jpg
Costo de poseer código “No Mantenible”
Ellos podrán ayudarnos?
Ustedes!!




http://www.catosplace.net/blogs/personal/wp-content/uploads/2011/04/developers.jpg
Actitud                  http://www.flickr.com/photos/designd15/4220055968/in/photostream/




“Escribir código que entienda la computadora es una
técnica; escribir código que entienda un ser humano
           es un Arte” – Robert ‘Uncle Bob’ Martin
Entonces, ¿Por
                                                                              qué es
                                                                        importante
                                                                      escribir mejor
                                                                            código?

http://www.websoftwareqa.com/wp-content/uploads/2010/07/Computer-Code.jpg
Fácil de Entender



Fácil de Cambiar



      Barato de Mantener
Cómo detectar
Dónde puedo       si lo estoy
encontrar la      haciendo mal?
información que
necesito?
                  Qué puedo
                  aplicar y qué
Qué patrones      no?
resuelven este
problema?
y muchos más…
Code Smells




Cómo detectar un
código mal oliente?
Qué son los Code Smells?
     Son todos los síntomas que
podemos encontrar en el código
       fuente de un sistema que
indican que muy probablemente
         existan problemas más
 profundos de calidad de código,
          de diseño o de ambos.
Rigidez




          http://www.naturecabins.com/solar/images_600x400/20080525_steel_beam_closeup.JPG
Rigidez es la tendencia que
  posee el software a ser
 difícil de cambiar, incluso
    en formas sencillas o
     cambios mínimos.
Fragilidad




http://www.flickr.com/photos/tsvadivel/4780317627/
Fragilidad es la tendencia
 que posee un programa
para romperse en muchos
lugares cuando un simple
   cambio es realizado.
Inamovilidad




http://4.bp.blogspot.com/_b5RFglsqS4k/Rm2_uGVsxuI/AAAAAAAACfY/CkpR-E0HsV0/s400/sumo.jpg
Inamovilidad es la
 dificultad de separar el
sistema en componentes
      que pueden ser
   reutilizados en otros
         sistemas.
http://photos.runic.com/photos/syrup1.jpg




Viscosidad
Viscosidad se presenta
 cuando hacer las cosas
incorrectamente es más
  fácil que hacerlas del
     modo correcto.
Ambiente de desarrollo lento e
ineficiente

Tiempos muy largos de compilación

Subir el código toma horas

Hacer el deploy toma varios
minutos
Complejidad
                                                                      innecesaria




http://www.funglode.org/Portals/0/images/Sala_de_Prensa/2010/Marzo/Complejidad%20interior.jpg
Complejidad innecesaria
existe cuando hay muchos
      elementos que
actualmente no son útiles.
Repetición
                                                                          innecesaria




http://www.fondospantallagratis.com/wp-content/uploads/2009/03/fichas_de_domino.jpg
Repetición innecesaria es
 cuando el código posee
estructuras repetidas que
pueden ser unificadas bajo
  una sola abstracción.
Opacidad




http://img.fotocommunity.com/photos/11575434.jpg
Opacidad es la tendencia
que posee un módulo a ser
     difícil de leer y
      comprender.
http://fotos0.mundofotos.net/2008/19_11_2008/nostalgica1227105482/perrito-oliendo-flores.jpg




A qué huele tu código?
Un buen
                                                                             desarrollador
                                                                                  tiene un
                                                                                olfato fino




http://vinos.viaresto.com.ar/sites/default/files/Foto-aroma.jpg?1308074199
http://www.shrink4men.com/wp-content/uploads/2010/12/pointing-finger.jpg




Si Usted posee…
Código ilegible




http://3.bp.blogspot.com/_-XV87BeCV9Y/SwLqj5UzO8I/AAAAAAAAA4g/hzaxblNx1jw/s1600/IMG_2385.JPG
Código duplicado




http://www.matrix-explained.com/photopost/data/512/39100hugo3.jpg
Métodos muy Laaaargos!!




http://1.bp.blogspot.com/-
VqyZkA5M2eU/T35ixp0dD_I/AAAAAAAAAN4/pppIVZSeHbQ/s1600/548383_393176807378912_329870347042892_1399267_792609564_n.jpg
Clases muy                       grandes




http://cache2.allpostersimages.com/p/LRG/21/2163/18ACD00Z/posters/miller-john-huge-tyres-big-foot-customised-car-usa.jpg
http://www.zonelibere.net/images/stories/zenstones.jpg




                                                         Refactorizar
http://4.bp.blogspot.com/-RhAnCDMlvts/Tptjf9pQcZI/AAAAAAAAAUU/lJSYMataDOM/s1600/mecanismo-reloj.jpg




Cambiar la estructura interna del
código…
http://4.bp.blogspot.com/-RhAnCDMlvts/Tptjf9pQcZI/AAAAAAAAAUU/lJSYMataDOM/s1600/mecanismo-reloj.jpg


Sin alterar su comportamiento visible…




 Cambiar la estructura interna…
http://img.alibaba.com/wsphoto/v0/390462787/6pcs-lot-free-
shipping-2011-new-arrival-vintage-pocket-watch-necklaces.jpg
Obtener un código más
          simple.

  La refactorización enseña
técnicas para descubrir código
  de mala calidad y técnicas
       para cambiarlo.
http://theicebergfestival.ca/wp-content/gallery/iceberg-photos-2009/iceberg2.jpg




S.O.L.I.D
Single Responsibility Principle
Open / Close Principle
Liskov Substitution Principle
Interface Segregation Principle
Dependency Inversion Principle
Bueno, manos a la obra!!
Single Responsibility Principle
                      “Cada objeto debe tener
                        una responsabilidad
                            única, y esta
                        responsabilidad debe
                        estar completamente
                       encapsulada dentro de
                               la clase”
      “Las clases deben tener una única
     responsabilidad, una única razón de
                   cambio”
Open / Close Principle
               “Una clase debe
              estar abierta para
                extensión pero
                 cerrada para
                modificación”
Liskov Substitution Principle




  “Las clases derivadas deben ser
  sustituidas por sus clases base”
Interface Segregation Principle
                  “Mantenga interfaces
                    finas a un nivel de
                granularidad que el cliente
                         necesita.

                 Los clientes no deben ser
                  forzados a depender de
                interfaces que no utilizan.”
Dependency Inversion Principle
                     “Clases de alto nivel
                     no deben depender
                      de clases de bajo
                     nivel. Ambas deben
                       depender de sus
                        abstracciones”

     “Dependa de abstracciones, no de
           objetos concretos”
SOLID hace
que tu código
   huela bien
Gracias!

           @JohnnyOrdonez
Referencias

 • Clean Code: A Handbook of Agile Software Craftsmanship,
   Robert C. Martin (Aug 11, 2008) http://www.amazon.com/Clean-Code-
   Handbook-Software-Craftsmanship/dp/0132350882


 • Agile Software Development, Principles, Patterns, and
   Practices, Robert C. Martin (Oct 25, 2002) http://www.amazon.com/Software-
   Development-Principles-Patterns-Practices/dp/0135974445

 • Code Smells, Louhekon (2010) http://www.louhekon.fi/2010/02/code-
   smells/

 • A Taxonomy for "Bad Code Smells ", Mika Mäntylä (2010)
   http://www.soberit.hut.fi/mmantyla/BadCodeSmellsTaxonomy.htm
Referencias

 • A Taxonomy for "Bad Code Smells ", Mika Mäntylä (2010)
   http://www.soberit.hut.fi/mmantyla/BadCodeSmellsTaxonomy.htm


 • SOLID Software Design, AbbasRaza (2012)
   http://www.slideshare.net/theceo/solid-software-design


 • SOLID OO Principles, Andreas Enbohm (2011)
   http://www.slideshare.net/enbohm/solid-design-principles-9016117


 • The SOLID Principles in C#, Leon van Bokhorst (2012)
   http://www.remondo.net/solid-principles-csharp-single-responsibility/


 • A qué huele tu código?, Rubén Bernárdez (2011)
   http://www.slideshare.net/rubenbp/a-qu-huele-tu-cdigo-afinando-nuestro-
   olfato-7400175
Más Code
       Smells y Tips
     para corregirlos


                                                                         Tomado de:

http://www.slideshare.net/rubenbp/a-qu-huele-tu-cdigo-afinando-nuestro-olfato-7400175
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?
Code Smells y SOLID: A qué huele tu código?

Más contenido relacionado

La actualidad más candente

Análisis y desarrollo de sistemas de información
Análisis y desarrollo de sistemas de informaciónAnálisis y desarrollo de sistemas de información
Análisis y desarrollo de sistemas de información
Caterine Ramírez Aldana
 
2 2 estilos arquitectonicos
2 2 estilos arquitectonicos2 2 estilos arquitectonicos
2 2 estilos arquitectonicos
landeta_p
 
Las 4 P en el desarrollo de software
Las 4 P en el desarrollo de softwareLas 4 P en el desarrollo de software
Las 4 P en el desarrollo de software
Sofylutqm
 
Elementos básicos para instalación de una red wan
Elementos básicos para instalación de una red wanElementos básicos para instalación de una red wan
Elementos básicos para instalación de una red wan
Dommenykc Domm
 

La actualidad más candente (20)

EstáNdares De Calidad Aplicadas Al Software
EstáNdares De Calidad Aplicadas Al SoftwareEstáNdares De Calidad Aplicadas Al Software
EstáNdares De Calidad Aplicadas Al Software
 
Programacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooProgramacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma poo
 
Iso 12207
Iso 12207Iso 12207
Iso 12207
 
MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)MODELO COCOMO (INGENIERA DE SOFTWARE)
MODELO COCOMO (INGENIERA DE SOFTWARE)
 
Introducción a SOA
Introducción a SOAIntroducción a SOA
Introducción a SOA
 
Requerimientos funcionales y no funcionales
Requerimientos funcionales y no funcionalesRequerimientos funcionales y no funcionales
Requerimientos funcionales y no funcionales
 
GRID COMPUTING
GRID COMPUTING  GRID COMPUTING
GRID COMPUTING
 
Programación Orientada a Objetos (POO) y UML
Programación Orientada a Objetos (POO) y UMLProgramación Orientada a Objetos (POO) y UML
Programación Orientada a Objetos (POO) y UML
 
Proceso unificado de desarrollo de software
Proceso unificado de desarrollo de softwareProceso unificado de desarrollo de software
Proceso unificado de desarrollo de software
 
Análisis y desarrollo de sistemas de información
Análisis y desarrollo de sistemas de informaciónAnálisis y desarrollo de sistemas de información
Análisis y desarrollo de sistemas de información
 
Linea de productos de software y Metodo Watch
Linea de productos de software y Metodo WatchLinea de productos de software y Metodo Watch
Linea de productos de software y Metodo Watch
 
2 2 estilos arquitectonicos
2 2 estilos arquitectonicos2 2 estilos arquitectonicos
2 2 estilos arquitectonicos
 
Metodologias Para El Analisis Y Diseño De Sistemas.
Metodologias Para El Analisis Y Diseño De Sistemas.Metodologias Para El Analisis Y Diseño De Sistemas.
Metodologias Para El Analisis Y Diseño De Sistemas.
 
Metodologia Incremental
Metodologia IncrementalMetodologia Incremental
Metodologia Incremental
 
PLANOS CABLEADO ESTRUCTURADO
PLANOS CABLEADO ESTRUCTURADOPLANOS CABLEADO ESTRUCTURADO
PLANOS CABLEADO ESTRUCTURADO
 
Las 4 P en el desarrollo de software
Las 4 P en el desarrollo de softwareLas 4 P en el desarrollo de software
Las 4 P en el desarrollo de software
 
presupuesto de red lan
presupuesto de red lanpresupuesto de red lan
presupuesto de red lan
 
Practicas Packet Tracer
Practicas Packet TracerPracticas Packet Tracer
Practicas Packet Tracer
 
linea del tiempo software
linea del tiempo softwarelinea del tiempo software
linea del tiempo software
 
Elementos básicos para instalación de una red wan
Elementos básicos para instalación de una red wanElementos básicos para instalación de una red wan
Elementos básicos para instalación de una red wan
 

Destacado

Refactoring for design smells
Refactoring for design smellsRefactoring for design smells
Refactoring for design smells
Ganesh Samarthyam
 
Principios SOLID de Diseño Orientado a Objetos
Principios SOLID de Diseño Orientado a ObjetosPrincipios SOLID de Diseño Orientado a Objetos
Principios SOLID de Diseño Orientado a Objetos
Jose E. Rodriguez Huerta
 
Clean Code (EN ESPANOL)
Clean Code (EN ESPANOL)Clean Code (EN ESPANOL)
Clean Code (EN ESPANOL)
Rodrigo Branas
 

Destacado (20)

Los olores del código
Los olores del códigoLos olores del código
Los olores del código
 
SOLID - ¿Cómo lo aplico a mi código?
SOLID - ¿Cómo lo aplico a mi código?SOLID - ¿Cómo lo aplico a mi código?
SOLID - ¿Cómo lo aplico a mi código?
 
¿A qué huele tu código? Afinando nuestro olfato
¿A qué huele tu código? Afinando nuestro olfato¿A qué huele tu código? Afinando nuestro olfato
¿A qué huele tu código? Afinando nuestro olfato
 
Code Smells
Code SmellsCode Smells
Code Smells
 
Services factory
Services factoryServices factory
Services factory
 
Desarrollo de-software-basado-en-reutilizacion
Desarrollo de-software-basado-en-reutilizacionDesarrollo de-software-basado-en-reutilizacion
Desarrollo de-software-basado-en-reutilizacion
 
Refactoring - Mejorando el diseño del código existente
Refactoring - Mejorando el diseño del código existenteRefactoring - Mejorando el diseño del código existente
Refactoring - Mejorando el diseño del código existente
 
Automatic API REST Droidcon
Automatic API REST DroidconAutomatic API REST Droidcon
Automatic API REST Droidcon
 
Refactoring e Code Smells: Seu código está apodrecendo!
Refactoring e Code Smells:  Seu código está apodrecendo!Refactoring e Code Smells:  Seu código está apodrecendo!
Refactoring e Code Smells: Seu código está apodrecendo!
 
Bad smells no código
Bad smells no códigoBad smells no código
Bad smells no código
 
Refactoring for design smells
Refactoring for design smellsRefactoring for design smells
Refactoring for design smells
 
Cylon.js - Javascript for Robotics Projects
Cylon.js - Javascript for Robotics ProjectsCylon.js - Javascript for Robotics Projects
Cylon.js - Javascript for Robotics Projects
 
Principios SOLID de Diseño Orientado a Objetos
Principios SOLID de Diseño Orientado a ObjetosPrincipios SOLID de Diseño Orientado a Objetos
Principios SOLID de Diseño Orientado a Objetos
 
Proyecto morse
Proyecto morseProyecto morse
Proyecto morse
 
Estimación Ágil, Story Points y Planning Poker
Estimación Ágil, Story Points y Planning PokerEstimación Ágil, Story Points y Planning Poker
Estimación Ágil, Story Points y Planning Poker
 
NetConfUY: Maximizando la productividad del desarrollo móvil
NetConfUY: Maximizando la productividad del desarrollo móvilNetConfUY: Maximizando la productividad del desarrollo móvil
NetConfUY: Maximizando la productividad del desarrollo móvil
 
ejemplos de pruebas unitarias y de integracion
ejemplos de pruebas unitarias y de integracion ejemplos de pruebas unitarias y de integracion
ejemplos de pruebas unitarias y de integracion
 
SOLID - Teoria e Prática
SOLID - Teoria e PráticaSOLID - Teoria e Prática
SOLID - Teoria e Prática
 
Deconstrucción de SOLID
Deconstrucción de SOLIDDeconstrucción de SOLID
Deconstrucción de SOLID
 
Clean Code (EN ESPANOL)
Clean Code (EN ESPANOL)Clean Code (EN ESPANOL)
Clean Code (EN ESPANOL)
 

Similar a Code Smells y SOLID: A qué huele tu código?

Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
Retos en la Adopción del Refactoring -  Junta General del MexALN 28/06/2012Retos en la Adopción del Refactoring -  Junta General del MexALN 28/06/2012
Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
Alfredo Chavez
 
Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
Alfredo Chavez
 
Ensayo aprendido en el semestre
Ensayo aprendido en el semestreEnsayo aprendido en el semestre
Ensayo aprendido en el semestre
za_bluee
 
Herramientas Educativas
Herramientas EducativasHerramientas Educativas
Herramientas Educativas
Miguel Angel
 

Similar a Code Smells y SOLID: A qué huele tu código? (20)

Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
Retos en la Adopción del Refactoring -  Junta General del MexALN 28/06/2012Retos en la Adopción del Refactoring -  Junta General del MexALN 28/06/2012
Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
 
Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
Retos en la Adopción del Refactoring - Junta General del MexALN 28/06/2012
 
Developing for Android (The movie)
Developing for Android (The movie)Developing for Android (The movie)
Developing for Android (The movie)
 
Ensayo aprendido en el semestre
Ensayo aprendido en el semestreEnsayo aprendido en el semestre
Ensayo aprendido en el semestre
 
Ensayo de redes
Ensayo de redesEnsayo de redes
Ensayo de redes
 
Herramientas Educativas
Herramientas EducativasHerramientas Educativas
Herramientas Educativas
 
Web quest netiqueta
Web quest netiquetaWeb quest netiqueta
Web quest netiqueta
 
Objetos virtuales de aprendizaje en e-learning 2.0
Objetos virtuales de aprendizaje en e-learning 2.0Objetos virtuales de aprendizaje en e-learning 2.0
Objetos virtuales de aprendizaje en e-learning 2.0
 
Stc tecnologia junio 0214
Stc tecnologia junio 0214Stc tecnologia junio 0214
Stc tecnologia junio 0214
 
Herramientas para desarrollar rápidamente
Herramientas para desarrollar rápidamenteHerramientas para desarrollar rápidamente
Herramientas para desarrollar rápidamente
 
Device Days 2012 - HTML5 y CSS3 para móvil
Device Days 2012 - HTML5 y CSS3 para móvilDevice Days 2012 - HTML5 y CSS3 para móvil
Device Days 2012 - HTML5 y CSS3 para móvil
 
Aplicaciones o herramientas para integrar a Moodle
Aplicaciones o herramientas para integrar a Moodle Aplicaciones o herramientas para integrar a Moodle
Aplicaciones o herramientas para integrar a Moodle
 
Desarrollo de Aplicaciones con Node.js | INTERSYS UNPRG | 2012
Desarrollo de Aplicaciones con Node.js | INTERSYS UNPRG | 2012Desarrollo de Aplicaciones con Node.js | INTERSYS UNPRG | 2012
Desarrollo de Aplicaciones con Node.js | INTERSYS UNPRG | 2012
 
Nube (1)
Nube (1)Nube (1)
Nube (1)
 
Me encanta que los estándares salgan bien
Me encanta que los estándares salgan bien Me encanta que los estándares salgan bien
Me encanta que los estándares salgan bien
 
Diseñando la web móvil con HTML5 y CSS3
Diseñando la web móvil con HTML5 y CSS3Diseñando la web móvil con HTML5 y CSS3
Diseñando la web móvil con HTML5 y CSS3
 
Introducción a la web móvil
Introducción a la web móvilIntroducción a la web móvil
Introducción a la web móvil
 
Code Blast 2012 - Node.js
Code Blast 2012 - Node.jsCode Blast 2012 - Node.js
Code Blast 2012 - Node.js
 
Qué puede aprender Drupal de Plone
Qué puede aprender Drupal de PloneQué puede aprender Drupal de Plone
Qué puede aprender Drupal de Plone
 
Pres3
Pres3Pres3
Pres3
 

Más de Johnny Ordóñez

Más de Johnny Ordóñez (20)

Gestión Lean de Portafolios de Empresariales - Guía de Implementación
Gestión Lean de Portafolios de Empresariales - Guía de ImplementaciónGestión Lean de Portafolios de Empresariales - Guía de Implementación
Gestión Lean de Portafolios de Empresariales - Guía de Implementación
 
Alineamiento Estratégico con OKRs - OKR Summit (Chile 2020)
Alineamiento Estratégico con OKRs - OKR Summit (Chile 2020)Alineamiento Estratégico con OKRs - OKR Summit (Chile 2020)
Alineamiento Estratégico con OKRs - OKR Summit (Chile 2020)
 
Diseño de Centro de Excelencia en Ágil (CoEs)
Diseño de Centro de Excelencia en Ágil (CoEs)Diseño de Centro de Excelencia en Ágil (CoEs)
Diseño de Centro de Excelencia en Ágil (CoEs)
 
Principios operativos ágiles - Modelo Operativo Ágil
Principios operativos ágiles - Modelo Operativo ÁgilPrincipios operativos ágiles - Modelo Operativo Ágil
Principios operativos ágiles - Modelo Operativo Ágil
 
CoE Value Proposition Canvas
CoE Value Proposition CanvasCoE Value Proposition Canvas
CoE Value Proposition Canvas
 
Agilidad como cualidad de un sistema vivo - agility enablement (CAS 2019)
Agilidad como cualidad de un sistema vivo - agility enablement (CAS 2019) Agilidad como cualidad de un sistema vivo - agility enablement (CAS 2019)
Agilidad como cualidad de un sistema vivo - agility enablement (CAS 2019)
 
Agile People - Habilitando la agilidad desde Gestión de talento
Agile People - Habilitando la agilidad desde Gestión de talentoAgile People - Habilitando la agilidad desde Gestión de talento
Agile People - Habilitando la agilidad desde Gestión de talento
 
Gestión Lean de Portafolios de Innovación - Foro Líderes de Transformación (L...
Gestión Lean de Portafolios de Innovación - Foro Líderes de Transformación (L...Gestión Lean de Portafolios de Innovación - Foro Líderes de Transformación (L...
Gestión Lean de Portafolios de Innovación - Foro Líderes de Transformación (L...
 
Agilidad en tiempos de VUCA - Keynote Telefónica Colombia
Agilidad en tiempos de VUCA - Keynote Telefónica ColombiaAgilidad en tiempos de VUCA - Keynote Telefónica Colombia
Agilidad en tiempos de VUCA - Keynote Telefónica Colombia
 
La ilusión de Agilidad - Scrum Day Colombia 2019
La ilusión de Agilidad - Scrum Day Colombia 2019La ilusión de Agilidad - Scrum Day Colombia 2019
La ilusión de Agilidad - Scrum Day Colombia 2019
 
Corporate Innovation Portfolio Management (Excerpt)
Corporate Innovation Portfolio Management (Excerpt)Corporate Innovation Portfolio Management (Excerpt)
Corporate Innovation Portfolio Management (Excerpt)
 
agility enablement Library - (English version)
agility enablement Library - (English version)agility enablement Library - (English version)
agility enablement Library - (English version)
 
'agility enablement' - Biblioteca
'agility enablement' - Biblioteca'agility enablement' - Biblioteca
'agility enablement' - Biblioteca
 
'agility enablement' - Habilitando la agilidad empresarial (Lima 2018)
'agility enablement' - Habilitando la agilidad empresarial (Lima 2018)'agility enablement' - Habilitando la agilidad empresarial (Lima 2018)
'agility enablement' - Habilitando la agilidad empresarial (Lima 2018)
 
Enterprise agility - A Johnny Ordonez Compilation about EA
Enterprise agility - A Johnny Ordonez Compilation about EAEnterprise agility - A Johnny Ordonez Compilation about EA
Enterprise agility - A Johnny Ordonez Compilation about EA
 
'agility enablement' - desbloqueando la agilidad empresarial
'agility enablement' - desbloqueando la agilidad empresarial'agility enablement' - desbloqueando la agilidad empresarial
'agility enablement' - desbloqueando la agilidad empresarial
 
'agility enablement'- unlocking enterprise agility
'agility enablement'- unlocking enterprise agility'agility enablement'- unlocking enterprise agility
'agility enablement'- unlocking enterprise agility
 
De Agile Coach a 'agility enabler': Habilitando la agilidad empresarial
De Agile Coach a 'agility enabler': Habilitando la agilidad empresarialDe Agile Coach a 'agility enabler': Habilitando la agilidad empresarial
De Agile Coach a 'agility enabler': Habilitando la agilidad empresarial
 
OKR Canvas - Ágiles 2018
OKR Canvas - Ágiles 2018OKR Canvas - Ágiles 2018
OKR Canvas - Ágiles 2018
 
OKR Canvas - Métricas, KPIs y OKRs
OKR Canvas - Métricas, KPIs y OKRsOKR Canvas - Métricas, KPIs y OKRs
OKR Canvas - Métricas, KPIs y OKRs
 

Último

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
FagnerLisboa3
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Último (15)

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
 
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
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
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
 
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
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
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
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
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
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
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
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 

Code Smells y SOLID: A qué huele tu código?