No dejo de asombrarme de las realidades tan distintas que enfrentan las organizaciones en términos de software delivery y la «ceguera» de algunos consultores, coaches y líderes.
Dos por tres escucho frases del estilo «hay que implementar X» o «hacer Y está mal» o «tienen que usar Z»,expresadas en forma absoluta como si fueran balas de plata o como si el contexto no fuera relevante. Muchas veces quienes se pronuncian de esta forma son personas que están trabajando en escenarios de innovación , transformación o renovación tecnológica en el contexto de sistemas de información en los cuales muy posiblemente sus frases o recetas sean apropiadas. Pero la realidad es mucho más amplia, hay contextos que no son sistemas de información y hay contextos que no son de transformación. Yo mismo me suelo involucrar en proyectos de mantenimiento de aplicaciones legacy. Esta cuestión que estoy planteando aplica tanto a cuestiones de proceso como a cuestiones de tecnología.
En términos de proceso he visto consultores impulsando iniciativas del tipo #noEstimates o #noProjects y criticando el uso de burndown charts y el uso de velocity/capacity para planificar. En mi opinion estos consultores ven sus recetas como balas de plata cuando todos sabemos que tal cosa no existe.
En términos de tecnología veo consultores proponiendo cuestiones como Continuous Delivery cuando tienen aplicaciones con alto grado de acoplamiento, baja cohesión, modelos de dominio anémicos y sin pruebas automatizadas. Del mismo modo veo consultores de calidad implementando Sonar cuando los equipos de desarrollo ni siquiera leen los warnings que tira el compilador de Java o el propio IDE. En mi opinión estos consultores ponen el carro por delante del caballo, lo cual en lugar de ayudar genera complejidades adicionales.
En un punto me pregunto si estos consultores no terminan siendo «vende humo».
Nico
Primero que todo interesante tu post ya que constantemente (y me sumo) uno anda buscando una receta para solucionar alguna problemática o implementar alguna iniciativa. Ahora pensando lo que comentas, igual nos obligan a dar soluciones ya probadas y que de alguna forma minimice el riesgo al fracaso, por eso como buzzwords (DevOps, Continuous everything, etc) son vendibles y no darse el tiempo para conocer la realidad y los contextos de cada equipo. Me he preguntado, como debo actuar en estas situaciones 🤔🤔🤔🤔
Saludos
Hola Nico,
En tu último párrafo hacés referencia a algo que a mí particularmente me preocupa: como cada vez más la gente cree que la excelencia técnica o la técnica en general no tienen importancia en Agile (ni en nada) y que todo se arregla con más recetas. Bastante similiar a las dietas de fotocopia, como si cada persona necesitara la misma alimentación para lograr el mismo objetivo.
Hola Leo, gracias por tu comentario, me parece muy apropiada tu analogía con las dietas de fotocopia. Creo que si bien en algunos contextos donde se ignora la excelencia técnica, creo que hay algunos otros contexto donde es mandatoria. En este sentido creo que el libro Accelerate representa un argumento interesante.
Saludos!