En ingeniería de software , un modelo de dominio es un modelo conceptual del dominio [ definición necesaria ] que incorpora tanto el comportamiento como los datos. [1] [2] En la ingeniería de ontologías , un modelo de dominio es una representación formal de un dominio de conocimiento con conceptos, roles, tipos de datos, individuos y reglas, generalmente basado en una lógica de descripción .
Descripción general
Un modelo de dominio es un sistema de abstracciones que describe aspectos seleccionados de una esfera de conocimiento, influencia o actividad (un dominio [3] ). Luego, el modelo se puede utilizar para resolver problemas relacionados con ese dominio. El modelo de dominio es una representación de conceptos significativos del mundo real pertinentes al dominio que deben modelarse en software. Los conceptos incluyen los datos involucrados en el negocio y las reglas que el negocio utiliza en relación con esos datos. Un modelo de dominio aprovecha el lenguaje natural del dominio.
Un modelo de dominio generalmente utiliza el vocabulario del dominio, lo que permite comunicar una representación del modelo a las partes interesadas no técnicas. No debe hacer referencia a implementaciones técnicas como bases de datos o componentes de software que se estén diseñando.
Uso
Un modelo de dominio generalmente se implementa como un modelo de objeto dentro de una capa que usa una capa de nivel inferior para la persistencia y "publica" una API en una capa de nivel superior para obtener acceso a los datos y el comportamiento del modelo.
En el lenguaje de modelado unificado (UML), se utiliza un diagrama de clases para representar el modelo de dominio.
Ver también
Notas
- ^ Fowler, Martin. Patrones de arquitectura de aplicaciones empresariales . Addison Wesley, 2003, pág. 116.
- ^ Fowler, Martin. "P de EAA - Modelo de dominio"
- ^ Evans, Eric Domain-Driven Design: Definiciones y resúmenes de patrones . Domain Language Inc., 2006, pág. 3.