En tiempos más recientes y aproximándonos al desarrollo creciente y organizado de las grandes compañías que dieron inicio a la revolución informática en el siglo XX. La necesidad de organizar pasó al plano de lo vital; imposible surgir si no organizamos las ideas y plasmamos por escrito el comportamiento e interacción de la información que vamos a manipular.

Diagramas de flujo:

diagrama de flujoNacieron los diagramas de flujo, que a base de rombos, líneas y rectángulos dieron forma a los primeros sistemas. Tenga en cuenta amigo lector que los sistemas no sólo se encasillan a la informática, el software y los bit. Hasta un plomero podría ver muy útil un diagrama de flujo en aquellos tiempos.

El visualizar en forma de diagrama el flujo de la información representó un gran avance respecto a la evolución de la “eficiencia en el desarrollo”, acelerando el cumplimiento de los objetivos y reduciendo los errores durante el proceso.

En tiempos de BASIC, FORTRAN y COBOL, los diagramas de flujo estuvieron siempre presentes aún cuando no hubiese algún otro programador echando mano al código. Sino por la necesidad de organizar las ideas.

Lenguaje de Modelado Unificado (UML):

umlPero los tiempos cambian y las necesidades también. El trabajo colaborativo, el apego a los estándares, las grandes masas de información, y los infinitos niveles de jerarquía en cualquier organización empezaron a dar fin a viejo Diagrama de Flujo el cual al fin y al cabo sólo eran rombos, líneas y rectángulos.

Satisfacer estas necesidades condujo a la creación de un estándar internacional para el año 2005, el Lenguaje de Modelado Unificado (Unified Modeling Language), o mejor conocido como UML.

No es muy difícil de comprender a que viene el UML, técnicamente son los mismos “diagramas de flujo” pero llevados a un lenguaje que represente en forma de código lo que solíamos ver en forma de imágenes. Evidentemente que el UML va mucho más allá de la bidimenionalidad a la que estábamos acostumbrados con los viejos diagramas de flujo, pero el objetivo es el mismo: organizar y representar.

¿Vale la pena implementar UML en mi trabajo?

En mi opinión personal hay un gran “depende de”, pero vayamos a lo concreto: evidentemente un lápiz y un papel serán mucho más efectivos que un complejo diagrama UML si lo que vas es a planificar como preparar un emparedado teniéndote como único involucrado.

Pero si hablamos de planificar la estructura, desarrollo de una plataforma a gran escala, con cientos de módulos que interactúan entre sí, decenas de programadores responsables involucrados, complejos modelos de datos y donde cada dependencia tenga determinado nivel de acceso a este gran mega diagrama. Entonces sin UML no podrías sobrevivir.

En países donde los estándares y la calidad son premiados (USA, Japón y Canadá por ejemplo), es notorio como las demandas de empleo incluyen el dominio de UML dentro de sus requerimientos; y es que hablamos de: trabajar en equipo, reducir el tiempo de desarrollo, reducir los errores y por sobre todo: dejar en claro el mensaje: “esto es lo que el sistema debe hacer”.

¡Diagramemos!

Existen muchas aplicaciones que nos ayudarán a crear diagramas UML, la lista es muy extensa así que mejor nos saltamos esa parte y exploramos por nuestra cuenta en esta lista publicada en Wikipedia.

Pero hay una aplicación en particular que me ha resultado muy simple pero a la vez atractiva y fácil de usar (además de ser la que he venido usando últimamente), sumado a la singularidad de estar basada en la web: yuml.me merece la pena echar una mirada a esta interesante aplicación.

yuml

Como bien acuñó en su tiempo Edward Bulwer-Lytton:

“La pluma es más fuerte que la espada”

Lo que es lo mismo: Dejemos las cosas por escrito y no nos caigamos en desentendidos.

Como habrán notado evito dejar el tecnicismo a un lado; este análisis ha tenido por objetivo quitar la venda de los ojos a quienes piensan que UML es un lenguaje para establecer contacto con los OVNIS e invitarles a investigar sobre el tema, bien sea por apegarnos a las buenas prácticas o por mera curiosidad como buenos hambrientos de conocimiento que somos.