Desarrollo de software. Antipatrón. Voodoo chicken coding

Este antipatrón hace referencia a cambios que introducimos en el código de la aplicación o a código que directamente se añade en la misma y después se adapta, que no entendemos muy bien cómo funciona pero que al final resuelven el problema o la funcionalidad en la que estábamos trabajando (como si fuera por arte de magia o de un sortilegio).

En ocasiones, este antipatrón, coincidirá con otros como, por ejemplo, “Programación por permutación” o “Cargo cult“, ya que al final tendremos una situación que resuelve una contingencia y no sabes ni cómo ni por qué.

Si el producto software fuera algo estático, podríamos considerar que ya, efectivamente hemos resuelto el problema, pero nos volveremos probablemente a encontrárnoslo de nuevo más adelante, cuando se tenga que realizar un mantenimiento del componente afectado y tengamos que tocar ese “código mágico”. Lo mismo se consigue resolver de nuevo la situación, se incrementa la cantidad de código afectada o se tiene que buscar una nueva solución, ahora sí, que se entienda como funciona.

Es cierto que a veces nos podemos encontrar con determinadas incidencias que no hay forma de solucionar, que no siguen una lógica y que tras prueba y error se consigue dar con la solución aunque no entendamos muy bien por qué. Esto implica que en circunstancias excepcionales sí que puede resultar práctico tener voodo chicken coding en el sistema, teniendo en cuenta que el mismo será siempre un punto débil en nuestra aplicación y que si se dispusiera de tiempo y medios sería necesario seguir investigando el motivo del error que dio lugar a esa solución (el problema lo tenemos en que aunque existan esos medios, no se invertirán en esto, alegando el famoso “si funciona, no lo toques”).

1 comentario

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: