Technical Review of my Book Innovative Design Thinking Approaches in Software Engineering

Imagen
The book   Innovative Design Thinking Approaches in Software Engineering   (IGI Global, 2025), which I had the privilege of authoring, editing, and coordinating alongside Dr. Carolina Tripp-Barba, addresses a pressing need in contemporary software development: rethinking engineering methodologies to prioritize empathy, creativity, and human value. Through a collection of eight original chapters written by an international and interdisciplinary group of researchers, the volume presents a multi-faceted view of how Design Thinking can reshape software engineering processes in both theory and practice. Among the key contributions of this work are: The formalization of the FusionFlow model , a methodology that blends Design Thinking, Artificial Intelligence, and Agile practices to enable iterative, user-driven, and adaptive software development (Chapter 3). The application of Legal Design Thinking (LDT)   to improve legal technology tools by enhancing usability, ethics, and ac...

Como Definir un Metamodelo con Eclipse Modeling Framework (EMF). Domain Specific Language (DSL)




En esta entrada les explico lo que es un Metamodelo (MM) y un Domain Specific Language (DSL) dentro del entorno del Model-Driven Development (MDD).

Un DSL se puede definir como una herramienta específica para una tarea específica. Es un lenguaje que maneja los conceptos propios de un dominio. Esto es, por ejemplo, en el ámbito de la construcción, podríamos decir que los conceptos, palabras, terminología que se emplea en dicho dominio son especificados en diagrama de clases en dónde cada clase corresponde con un concepto de ese dominio. 

Un metamodelo, por su parte, es la implementación de un DSL dentro del Eclipse Modeling Project, a través del Eclipse Modeling Framework, básicamente:
  • Permite construir un lenguaje de dominio especifico
  • Transformar modelos (M2M y M2T)
  • Generar código (M2T)
  • Interoperabilidad de datos
  • Generar documentación
Para poder construir un metamodelo, es necesario conocer ese conjunto de conceptos del dominio a modelar (llamadas metaclases) y sus relaciones (meta-asociaciones). Para esto, debemos saber ¿Cuál es el tipo de problema que queremos modelar?  y ¿Quiénes serán los usuarios del lenguaje? 

En el siguiente video muestro, paso a paso, como construir un MM con el entorno Eclipse a través del Eclipse Modeling Framework (EMF). El video esta en mi canal de YouTube.



Esto es la antesala para la generación de código fuente a partir de modelos. 

Es cuánto. 


Comentarios

Mi foto
José Alfonso Aguilar
Mazatlán, Sinaloa, Mexico
Me gusta aprender y escribir sobre tecnología y desarrollo. Soy Ingeniero en Sistemas Computacionales, trabajo como Profesor-Investigador en la Facultad de Informática Mazatlán, de la Universidad Autónoma de Sinaloa. México. Me gusta combinar la docencia-investigación con el giro profesional del desarrollo de software y gestión de proyectos de innovación.

Entradas más populares de este blog

Historia y versiones de HTML (HyperText Markup Language)

Todo lo que debes saber sobre el Model-View Controller (MVC) para Aplicaciones Web

Hablemos de Propiedad Intelectual