Un Modelo de Dominio es
un artefacto de la disciplina de análisis,
construido con las reglas de UML durante
la fase de concepción,
en la tarea construcción del modelo de
dominio, presentado como uno o más diagramas de clases y que
contiene, no conceptos propios de un sistema de software sino de la propia
realidad física.
Los modelos de dominio puede
utilizarse para capturar y expresar el entendimiento ganado en un área bajo
análisis como paso previo al diseño de un sistema, ya sea de software o de otro
tipo. Similares a los mapas mentales utilizados en el aprendizaje, el modelo de
dominio es utilizado por el analista como un medio para comprender el sector
industrial o de negocios al cual el sistema va a servir.
El siguiente diagrama es un
pequeño ejemplo de Modelo de Dominio, en este caso, referido al Metro o sistema
de transporte subterraneo de una ciudad cualquiera.
En este diagrama se ve que
un Usuario del Metro tiene cero o más boletos, comprados estos en una maquina
de Venta de Boletos; dicha maquina “crea” los boletos los cuales son consumidos
en un viaje, el cual tiene una estación de origen y otra de destino. Finalmente
se ve que una estación tiene una o más maquinas de venta así como empleados de
limpieza, seguridad y operaciones.
Es posible capturar un mayor
grado de detalle en uno de estos modelos; corresponde al analista decidir
cuanto detalle va a ser necesario y hasta donde llegar a modelar. El objetivo
es capturar lo necesario para comprender donde va a funcionar el sistema que
estamos diseñando y esto demanda una cantidad distinta de detalles cada vez.
El modelo de dominio puede
ser tomado como el punto de partida para el diseño del sistema. Esto es así ya
que cuando se realiza la programación orientada a objetos, se supone que el
funcionamiento interno del software va a imitar en alguna medida a la realidad,
por lo que el mapa de conceptos del modelo de domino constituye una primera
versión del sistema.
En la aproximación
llamada Desarrollo Guiado por Modelos al modelo de dominio se le
conoce como Modelo Independiente del Computador o CIM, por sus siglas
en inglés. El CIM es el que da inicio al proceso de desarrollo y ocupa el rol,
tanto de modelo de requisitos como de modelo análisis.
Por otra parte, cuando se
sigue una aproximación Centrada en Casos de Uso como RUP/UP, el
modelo de dominio es utilizado como entrada en la tarea análisis de los casos de uso en
la construcción de los llamados escenarios de análisis.
Es decir, y con esto quiero
concluir, que el modelo de dominio ocupa un rol protagonico en el desarrollo
moderno de software y constituye un artefacto que vale la pena tener en
nuestros proyectos.
Comentarios
Publicar un comentario