Hace ya sus años, en el 94, Steve Cook y John Daniels, unos señores apenas conocidos hoy en el mundillo del desarrollo y la ingeniería del software, escribieron un libro muy interesante, el Designing Object Systems, que, entre otros, pretendía aclarar cómo usar correctamente los diagramas típicamente usados en diseño.
Aquel libro sería aún más desconocido de lo que es sino fuese porque Fowler, que, digamos, es un autor mucho más popular, lo utilizó como base para argumentar en su popular libro, UML Distilled, para mí, el mejor libro de UML, que los diagramas UML son una buena práctica… siempre que no te pases documentado, porque al final la mayoría de esa documentación, en exceso, no se utilizará, y nadie la implementará.
Para exponerlo, Steve Cook y John Daniels hacían referencia a tres perspectivas, las tres maneras en las que se puede usar un diagrama UML, y que no son siempre detallando al máximo cada detalle de lo que supuestamente luego se implementará.
Esas tres perspectivas son:
– Una la conceptual. Diagramas con conceptos del dominio (del negocio) y que son independientes del lenguaje. Muy útiles para que todo el equipo unifique ideas.
– Otra la de especificación. Diferente a la anterior, más detalle, pero sólo observamos las interfaces del software (esa importante diferencia en el mundo OO entre interfaz y su implementación), no su implementación.
– Y, por último, y diferenciado de los anteriores, la de Implementación que muestra al detalle la implementación.
Lo curioso es que por muchos años que han pasado desde aquel libro, hasta el presente parecen solo haber llegado, mayoritariamente, dos maneras de aplicar UML:
1 – No utilizándolo para nada, porque suena a papeleo.
2 – Utilizándolo para documentar hasta el mínimo detalle de una futura implementación, con las consabidas desviaciones entre teoría y práctica.
Otro ejemplo más del típico blanco o negro en el que se suele mover esta nuestra profesión.
- Quieres que tus equipos cambien, pero pasan de ti + Nuevo video OKRs con IA + Cumplo 24 años de Doctor en Informática #LaNewsletterdeJavierGarzas - 26 septiembre, 2024
- Amazon: la IA nos ahorra 4.500 años de programación + 3 familias de ESTIMACIÓN + Video creando Videojuegos con Hija e IA #LaNewsletterdeJavierGarzas - 19 septiembre, 2024
- Debes crear apps sin saber programar (no hay que saber nada) + Crea Test con IA + Scrum es el nuevo Excel - 12 septiembre, 2024
Pingback: Bitacoras.com
Como siempre gran aporte Javier. Un análisis certero de la realidad del uso de UML. Mi opinión es que siempre es bueno tener diagramas al menos de alto nivel sobre la parte estática del diseño del SW, y sobre la parte dinámica lo mismo , pero para ello se requiere de un buen arquitecto que sepa sacarle partido, y que no se convierta en generar unos diagramas a posteriori de la construcción que nadie utlizará para nada en su vida. Creo que hay muchos arquitectos que lo que son es muy buenos programadores y entusiastas de la tecnología, pero el diseño es una disciplina propia a la que no se presta demasiada atención