miércoles, 13 de enero de 2016

43. Deuda técnica

El proceso de desarrollo de software, es un proceso complejo, artesanal, en el que las decisiones de los involucrados a diferentes niveles pueden llevarnos al éxito o al fracaso.

La deuda técnica es un concepto que lleva a trabajar más por malas decisiones, en otras palabras por hacer mal las cosas.

Cuando el tiempo supera la calidad y por cumplir plazos se eliminan funcionalidades del producto, se omiten procesos, se permite que el producto llegue con bugs conocidos, se adquiere esa deuda técnica, deuda que en la mayoría de los casos se paga con grandes intereses.

Por qué digo esto, la deuda técnica generara problemas de re-trabajo, falta de confianza por parte del cliente, inestabilidad, bajas expectativas, no entregas a tiempo después de las primeras versiones, inestabilidad de los sistemas.

El costo puede ir desde crear nuevamente algunas partes de un sistema a recrearlo completamente cuando esta ya no es sostenible.

Demasiadas cosas que no se encuentran bien hechas hacen que pequeños cambios requieran demasiado tiempo para su ejecución, un sistema inestable puede requerir procesos de prueba muy complejos que nos hace perder nuestra ventaja competitiva.

La deuda técnica por lo regular son componentes faltantes o no desarrollados de la manera adecuada en un proyecto, bug conocidos no solucionados.

Un sistema inestable hace que el prestigio de una empresa se pierda, crea desconfianza con el consumidor y con el cliente, traslademos esto al mundo actual, principalmente a una aplicación móvil, en donde el consumidor en cuanto encuentra una falla la abandona, la deuda técnica es un riesgo muy elevado para el éxito de un producto.

Lo barato sale caro es una frase que aplica con la deuda técnica, el querer ahorrar recursos (tiempo, calidad) y tomarlos para deuda técnica, hace que los desarrollos incrementen su grado de complejidad en el momento del mantenimiento.

Una analogía de la deuda técnica, es un globo, cada vez que asumimos que algo se convierta en deuda técnica, inflamos este globo, en un principio, el globo hasta se ve lindo, pequeño, controlable, pero conforme este va creciendo y ocupando más espacio, este explota, y es cuando la deuda técnica nos ha superado.

Y que pasa cuando se asume la deuda técnica, independientemente de todos los controles que se tengan, en muchos casos los equipos de desarrollo terminan asumiendo deuda técnica, deuda que en muchos casos se ve controlable, lo que debemos hacer es gestionarla, documentarla, y pagarla, nunca dejar que se acumule, los equipos de desarrollo deben estar conscientes de su existencia y tomar medidas para controlarla, reducirla y erradicarla

La deuda técnica es un gran riesgo, que debemos evitar a toda costa.


Hasta la próxima

No hay comentarios.:

Publicar un comentario