La Naturaleza Del Software

LNDS

cuatro cosas mínimas

| Comentarios

Hay una pila enorme de herramientas que a los ingenieros les gusta usar en su proceso de desarrollo, pero sólo hay cuatro que realmente necesitan:

* Editor
* Compilador
* Control de Versiones
* Bug Tracking

– Michael “Rands” Lopp

Todos los que se dedican a desarrollar software tienen algún tipo de editor o ambiente integrado de desarrollo (IDE) y un compilador disponible. Lo increíble es que el control de versiones y la herramienta de seguimiento de bugs no están presentes en muchas empresas que se dedican a desarrollar software.

Hace un tiempo nos tropezamos con un proveedor, que tenía una importante pieza de software que necesitábamos, pero al poco andar nos dimos cuenta que no tenían estas prácticas básicas incorporadas, y por esto no podían cumplir a las exigencias de nuestro negocio. Así que decidimos orientarlos para que empezaran a usarlas, les pedimos que incorporaran control de versiones, e incluso los incorporamos a nuestro propio “Jira” para poder hacer seguimiento de sus bugs y tareas pendientes. Esta son prácticas mínimas, y en este caso ayudaron a ordenar el proyecto, y están contribuyendo a mejorar el producto final, además creo que ha ayudado internamente a esa empresa, tanto para mejorar sus productos y servicios como para valorar más a su equipo técnico, porque nos dirigimos al staff ejecutivo directamente para solicitarle que debían implementar estas prácticas en su equipo de ingeniería. Aunque fue un proceso lento, los frutos se están notando.

Todo esto, por supuesto, son condiciones necesarias, pero no suficientes, tengo que aclarar. Lo importante es que incorporar estas herramientas básicas te establece una fundación mínima para controlar la complejidad de cualquier proyecto.

Debes controlar el caos de la administración de tus proyectos, y estas cuatro simples cosas harán mucho por ti. Como dice Michael “Rands” Lopp:

Estas herramientas empoderan a los ingenieros, permitiendo a todo el equipo lo siguiente;

* Colaborar sin pisarse los callos unos a otros, yo haré esto, tu harás esto otro.
* Responsabilizarse por su trabajo. ¿Quién está trabajando en esto?¿De quién es este bug?
* Medir su trabajo. ¿Cuantos bugs o tareas tengo asignadas? ¿Cuantas tienes tú?
* Recordar lo que hicieron. Uh, ¿quién diablos programó esta basura?

Encontrarás muy temprano en tu trabajo de administración que la principal razón por la que la gente va a tu oficina es para resolver conflictos. Una vez que los participantes del conflicto dejan de gritar, necesitarás que vean los hechos, porque los hechos los aterrizarán, y aterrizar significa menos gritos. Estas herramientas son excelentes repositorios de fríos y duros datos, y eso puede ayudar mucho.

Como bono adicional, y si a ustedes les interesan estos temas de las certificaciones, les puedo contar que de acuerdo al honorable Instituto de Ingeniería de Software (SEI), el contar con estas cuatro cosas tan simples te puede hacer merecedor de una linda certificación CMMI Nivel 2 (“en este nivel las organizaciones disponen de unas prácticas institucionalizadas de gestión de proyectos, existen unas métricas básicas y un razonable seguimiento de la calidad. La relación con subcontratistas y clientes está gestionada sistemáticamente”).

¿Cuentan ustedes con estas cuatro herramientas básicas? ¿A cuantas instituciones conocen que ni siquiera están usando un control de versiones? Lamentablemente, son muchas más de las que uno sospecha.

Comentarios