ALM - La calidad está en los detalles

Como «creador» de software —ya sea de una operación, de una clase, un módulo/componente, una aplicación o toda una línea de productos— suele ser una buena idea el optar por saber lo que se está haciendo. Es decir, buscar un entendimiento cada vez más amplio y profundo de lo que ordenamos ejecutar a las computadoras. No estoy, por supuesto, afirmando que es necesario saber todos los detalles. Esa afirmación sería ingenua e idealista. Lo que sí estoy diciendo es que no encuentro excusa por la cual un creador de software no deba interesarse por satisfacer su curiosidad por los detalles de sus propios diseños.

Entiendo muy bien la falta de curiosidad en el caso de quien sólo es un «consumidor» de software y de tecnología en general. No espero que mi tía Margarita quiera o intente conocer detalles que no son de su interés. Pero para quien tenga la responsabilidad de crear soluciones de negocio basadas en software —desde su concepción, pasando por sus versiones iniciales, hasta su subsecuente evolución— no se justifica una falta de interés en los detalles relevantes para el rol que ejerza en la evolución de tal solución.

La palabra clave para identificar la causa del interés en los detalles es: responsabilidad. Si alguien no se asigna a sí mismo la obligación de responder por el estado de una solución de negocio basada en software entonces es clara la razón de la ausencia de interés en los detalles.

¿Por qué insisto en la importancia de poner atención a los detalles? Pues, para empezar, porque la persona que escoja ampliar su conocimiento de los detalles se coloca a sí misma en una mejor posición para ser capaz de responder mejor por su rol en la creación de soluciones.

¿Detalles acerca de qué? Pues, en general, los detalles acerca de todo aquello que mi tía Margarita no necesita enterarse al consumir software, y que, por el contrario, son la tarea de quien se comprometa a producir software. Pero, a pesar de lo obvio que eso parezca, la cantidad de casos, y su frecuencia, en los que varios roles se ejercen superficialmente en proyectos para creación de software, y la robustez del software creado, justifica la pregunta: ¿alguien está poniendo la suficiente atención en lo que está haciendo?

Crear software no-trivial es difícil; crear software de calidad es aún más difícil. Pues, al considerar los detalles, nada resulta tan simple como aparenta a primera vista. A la fecha han transcurrido varias generaciones de métodos sistemáticos para la creación de software y cada generación ha legado muy buenas lecciones de las que hoy podemos beneficiarnos en esta apasionante labor de crear software de manera profesional.

Algunas de esas lecciones se han mencionado en el recién ocurrido evento ALM Summit 2011: All Keynote and Plenary presentations, as well as breakout sessions from the ALM Leadership and Agile Developer tracks, were recorded and are available for viewing on Microsoft Channel 9 Events