2° Edicion
UML y Patrones
Craig LarmanCapitulo 10
MobELo DEL Dominio:
VISUALIZACION DE CONCEPTOS
Todo esté muy bien en la préctica, pero nunca funcionaré en la teorta.
Maxima an6nima sobre la gestion
Objetivos
Identificar las clases conceptuales relacionadas con los requisitos de la itera
actual.
Crear un modelo de! dominio inicial
Distinguir entre atributos correctos ¢ incorrectos.
* Ailadir las clases conceptuales de especificacién, cuando sea oportuno.
Comparar y contrastar las vistas conceptual y de implementacién.
Introduccion
Un modelo del dominio se utiliza con frecuencia como fuente de inspiraci6n para el di-
sefio de los objetos software, y serd una entrada necesaria para varios de los siguientes
artefactos que se presentan en este libro. Por tanto, es importante leer este capitulo si el
lector no esta familiarizado con el tema del modelado del dominio.
Un modelo del dominio muestra (a los modeladores) clases conceptuales significa-
tivas en un dominio del problema; es el artefacto mas importante que se crea durante el
anilisis orientado a objetos'. Este capitulo estudia técnicas introductorias a la creacién de
modelos del dominio. Los siguientes dos capftulos tratardn mds extensamente las téc-
nicas de modelado del dominio —aftadiendo atributos y asociaciones—
"Los casos de uso son un importante artefacto del andisis de requisitos, pero no son orientados a objetas. Po:
nen de relieve una vista de procesos del dominio.122
10.1.
UML Y PATRONES
La identificacién de un conjunto rico de objetos o clases conceptuales es una parte
esencial del andlisis orientado a objetos, y bien merece la pena el esfuerzo en relacién
con los beneficios durante el trabajo de disefio e implementacién.
La identificacién de las clases conceptuales forma parte del estudio del dominio del
problema. UML contiene notacién, en forma de diagramas de clases, para representar los
modelos del dominio.
Idea clave
Un modelo del dominio es una representacién de las clases conceptuales del mundo real,
‘no de components software. No se trata de un conjunto de diagramas que describen cla-
ses software, u objetos software con responsabilidades.
Modelos del dominio
La etapa orientada a objetos esencial del andlisis o investigacién es la descomposiciGn de
tun dominio de interés en clases conceptuales individuales u objetos —Ias cosas de las que
somos conscientes—. Un modelo del dominio es una representacién visual de las clases
conceptuales u objetos del mundo real en un dominio de interés [MO95, Fowler96]. Tam-
bién se les denomina modelos conceptuales (término utilizado en la primera ediciGn de
este libro), modelo de objetos del dominio y modelos de objetos de anailisis
El UP define un Modelo de Dominio’ como uno de los artefactos que podrian
crearse en la disciplina del Modelado del Negocio.
Utilizando la notacién UML, un modelo del dominio se representa con un conjunto de
diagramas de clases en los que no se define ninguna operacién, Pueden mostrar:
+ Objetos del dominio o clases conceptuales.
+ Asociaciones entre las clases conceptuales.
+ Atributos de las clases conceptuales.
Por ejemplo, la Figura 10.1 muestra un modelo del dominio parcial, Hustra que las cla
ses conceptuales Pago y Venta son significativas en este dominio, que un Pago esté rela:
cionado con una Venta de un modo que es significativo hacer notar, y que una Venta tiene
una fecha y una hora. Los detalles de la notaci6n no son importantes en este momento.
Idea clave: Modelo del dominio—un diccionario visual
de abstracciones
Por favor, reflexione un momento sobre la Figura 10.1. La figura visualiza y relaciona al-
gunas palabras o clases conceptuales del dominio. También describe una abstraccién de
2 También estin relacionados con los modelos conceptuales entidad-relacién, que son eapaces de mostra vis
{as de los dominios puramente conceptual, pero que han sido ampliamente re-interpretados como modelos ded
{os para el disefio de bases de datos. Los modelos del dominio no son modelos de datos.
® Se utiliza Modelo del Dominio en mayésculas cuando deseo resaltar que es un modelo oficial definido ene
UP, frente al concepto bien conocido de “modelos de dominio",