Previo a la justificación y necesidad del evento en el ámbito académico, social, empresarial o institucional, resulta pertinente aclarar las siglas incluidas en el título del evento “UML con herramienta CASE y educación STEAM integrada”:
- UML: Unified Modeling Language. Es el lenguaje de modelado de sistemas de software más conocido y utilizado en la actualidad, respaldado por el Object Management Group (OMG).
- CASE: Computer Aided Software Engineering. Las herramientas CASE (Ingeniería de Software Asistida por Computadora) son diversas aplicaciones o programas informáticos destinados al aumento de la productividad en el desarrollo de software, reduciendo el costo en términos de tiempo y de dinero.
- STEAM: Science–Technology–Engineering–Art– Mathematics.
Es un sistema educativo innovador que busca romper las barreras que han sido impuestas por la educación tradicional, dando énfasis en los pilares de la ciencia, la tecnología, la ingeniería, el arte y las matemáticas. El enfoque pedagógico STEAM está centrado en el aprendizaje práctico y experimental, animando a los alumnos a jugar, explorar, experimentar, crear y aprender haciendo. Al incorporar aplicaciones del mundo real en el aula, la educación STEAM ayuda a los alumnos a desarrollar el pensamiento crítico y las habilidades para resolver problemas, que son esenciales para tener éxito en el mundo actual.
La elaboración de modelos constituye una actividad fundamental para todo ingeniero: los ingenieros electrónicos elaboran modelos de circuitos; los mecánicos de motores; los ambientales y forestales modelos hidráulicos; etc. Los arquitectos elaboran modelos de casas y edificaciones; los diseñadores de moda, de ropa; es decir, los modelos están presentes o
inmanentes en una gran cantidad de profesiones. ¿Cuáles modelos elaboran los ingenieros de software y demás programas relacionados con las ciencias de la computación? La respuesta es que elaboran modelos para los productos de software tan presentes e importantes en el mundo de hoy y para el futuro cercano y lejano. Estos modelos pueden ser estáticos o
dinámicos y se realizan con un lenguaje de modelado conocido como UML (Unified Modeling Language), creado por los “tres amigos” Booch, Rumbaugh, Jacobson en 1975. La calidad del software depende en gran medida de los modelos estáticos estructurales elaborados (diagramas de clases), de los diagramas dinámicos de comportamiento (diagramas de objetos, casos de uso, secuencia), y de los diagramas de despliegue para la distribución del producto final de software.
El mundo de la programación orientada a objetos y de la programación multiparadigma conlleva una gran “Torre de Babel” en lenguajes de programación de propósito general: C, C++, C#, Java, Python, R, Go y un gran etcétera). Sin embargo, los lenguajes de modelado de software han sido pocos y UML se ha convertido en el estándar mundial por excelencia. Gran parte de los programas para dibujar diagramas estructurados (Lucidchart, Dia, Draw.io) han incorporado al UML pero no generan código fuente a partir de los modelos realizados.
También algunos IDE como NetBeans o Visual Studio.Net disponen de plugins para generar de manera automática los diagramas de clases de la aplicación desarrollada.
Las herramientas CASE (Computer Aided Software Engineering) disponibles en el mercado son los programas más potentes para trabajar con UML por sus interfaces Hombre-Máquina o Humano-Computador amigables, intuitivas, fáciles de manejar. Pero el potencial de las herramientas CASE más atractivo para los desarrolladores de software constituye la
generación de código automático a partir de los modelos elaborados en UML, incluso también permiten procesos de ingeniería inversa, que es la generación de los diagramas de clase a partir del código fuente.
El aprendizaje de UML se facilita y ludifica con la Educación STEAM (Science – Technology - Engineering – Art - Mathematics), con su componente Art representada en la literatura universal, propiciando de esta manera nexos con las humanidades durante el proceso formativo de ingenieros de software y programas académicos afines.