¿Refactorizar o que funcione?

Tal vez de base la pregunta esté mal planteada porque estamos tratando con dos conceptos que deberían ser complementarios y obligatorios en todo desarrollo de software: que el software permita trabajar al usuario con normalidad y que sea fácilmente mantenible.

Esto es la teoría y lo que en la práctica debería de llevarse a cabo. Sin embargo, siendo realistas gran parte de los proyectos en los que trabajamos están mal planteados (plazos y presupuestos insuficientes) y hay cambios de enfoque o prioridades que ponen más complicada todavía la situación de partida, ¿qué hacemos aquí?, dirigir los esfuerzos hacia un software que funcione aplicando buenas prácticas de programación para que el código de partida tenga la mayor calidad posible.

Lo ideal es que no se tenga que llegar a la situación de tener que prescindir de la refactorización pero no sería realista no contemplar ese escenario porque todos sabemos que existe y nos lo encontramos más veces de lo que desearíamos.

Como he comentado en reiteradas ocasiones, gran parte de la suerte del proyecto se juega al inicio, cuando se negocian las condiciones y como consecuencia de las mismas se establecen las primeras restricciones al proyecto (después vendrán más).

Esto no sería tan determinante si el cliente entendiera que el desarrollo de software es de naturaleza evolutiva en un entorno de incertidumbre lo que hace que la estimación económica y temporal inicial puedan quedar echas trizas a lo largo de la ejecución del proyecto. Incluso entendiéndolo, también tendrá en muchas ocasiones restricciones presupuestarias y de otra índole, de personas que están en otro nivel de la organización y que van a estar más lejos todavía de esa realidad (y estas a su vez pueden depender de otras que estén todavía más lejos y así sucesivamente).

También los proveedores tienen mucho que ver en esas condiciones cuando presentan o aceptan ofertas fuera de mercado.

Anuncios

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 )

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 )

Google+ photo

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

Conectando a %s

A %d blogueros les gusta esto: