Está en la página 1de 35

MODELO CONCEPTUAL/

MODELO DE DOMINIO
Qu es un Modelo de Dominio
Un Modelo de Dominio es una representacin
visual de clases conceptuales o de objetos reales en
un dominio de inters [MO95].
Un Modelo de Dominio consiste en un conjunto de

diagramas de clases, sin definicin de operaciones.


Qu es un Modelo de Dominio?

Entrada:

Descripcindel problema,
Casos de Uso

Salida:

Un conjunto de diagramas de clases


Ejemplo
El modelo de dominio es un diccionario
visual
El modelo de dominio proporciona una
perspectiva conceptual
Objetos del dominio o clases conceptuales
Asociaciones entre clases conceptuales

Atributos de las clases conceptuales

La informacin que contienen tambin puede


ser expresada en forma de texto plano.
Objetos
Un objeto es una cosa con identidad nica en un
dominio de problema.
Carlos Prez, USB, Venezuela son objetos
Todos los objetos tienen una identidad y son
distiguibles.
Los objetos se distinguen por su existencia inherente y
no por las propiedades descriptivas que puedan
tener
Dosmanzanas con el mismo color, forma y textura siguen
siendo manzanas individuales.
Clases y Objetos
Una clase describe un grupo de objetos con las
mismas propiedades, comportamientos y relaciones
posibles.
Un objeto es una instancia de una clase.
Persona, Universidad y Pas son clases.
Los objetos de un dominio son el foco del modelado.
Por qu clases conceptuales?
El poder de la abstraccin.
El nivel de abstraccin es un asunto de juicio y est
relacionado con la aplicacin.
La descripcin de un cliente de un futuro sistema
puede tener una combinacin de clases y objetos.
Clases y clases conceptuales

El modelo de dominio
es una visualizacin de
elementos de un
dominio de interes en
el mundo real.
Los modelos de

dominio no deben
mostrar clases de
software
Modelo de Dominio vs.
Modelo de Datos
Modelo de Datos - datos persistentes a
ser almacenados en algn lugar
El modelo de dominio tambien incluye:

Objetos temporales
Objetos sin atributos
Motivacin
Ayudan a comprender los conceptos clave de
un negocio o un dominio de problema.
Disminuyen la brecha de representacin entre
como ven los clientes el problema y la
representacin en software de la solucin,
usando modelado Orientado por Objetos.
Motivacin
Cmo crear un modelo de dominio

Pasos:
1. Hallar las clases conceptuales.

2. Dibujar las clases conceptuales como

clases de un diagrama de clases UML.


3. Aadir asociaciones y atributos.
Hallar clases conceptuales
Tres estrategias:
Reusar o modificar modelos existentes
Existen modelos de dominio y de datos publicados y bien
elaborados para dominios comunes: inventario, finanzas,
salud, etc.
Fowler, Analysis patterns
Hay, Data Model Patterns
Silverston, Data Model Resource Book

Usar una lista de categoras.


Identificar sustantivos/frases nominales
Listas de Categoras
Objetos fsicos y tangibles
TDPV
Especificaciones o descripciones de cosas

EspecificacinDeProducto
Lugares

Tienda
Transacciones

Venta, Pago
Lnea o regln de elemento de transacciones
VentasLineaDeProducto
Listas de Categoras
Roles de personas
Cajero
Contenedores de otras cosas
Tienda
Cosas dentro de un contenedor
Producto
Otros Sistemas
Sistema de Autorizacin de tarjetas de crdito

La lista completa de categoras se encuentra en la tabla 10.1


del Larman.
Identificar Sustantivos
Identficacin de sustantivos
Analizar la descripcin textual de dominio
Identificar sustantivos (nombres) y frases nominales.
Estos indican candidatos a clases, objetos y atributos.
Ejemplo de Identificar Sustantivos
Errores Comunes
Ejemplo: PDV
Caso de Estudio: PDV
Identificar y dibujar clases conceptuales

Entrada: Caso de Uso en formato extendido.

Estrategia: lista de categoras, identificacin

de sustanivos.
Ejemplo: PDV. Entrada: CU
PDV. Modelo de Dominio Inicial.
Asociaciones
Una Asociacin es una relacin entre objetos que
indica alguna coneccin con significado e interesante.
Los objetos usualmente estn relacionados por

conecciones fsicas o concptuale.


El cajero Pedro Prez trabaja en el TPDV 12
Cundo mostrar una asociacin
Cuando el conociminto de la relacin necesita ser
presentado durante algn tiempo.
Ejemplo:
PDV: Necesitamos recordar cules instancias
LneasDeProductosVenta estn asociados con una Venta.
Se deben evitar mostrar demasiadas asociaciones.
Valores de multiplicidad

La multiplicidad se
enfoca en la relacin
en un momento
particular.
Ejemplo: Casado

con
Sobre asociaciones
Pueden existir mltiples asociaciones entre dos
clases.
Ejm: el vuelo 1087 va de Caracas a Maracaibo
Una clase conceptual puede estar relacionada
consigo misma.
Ejemplo: Un directorio puede contener otros
directorios.
Encontrando Asociaciones
Usar la lista de asociaciones comunes:
A es una parte fsica de B
Caja-TDPV
A es una parte lgica de B
VentasLineaDeProducto-Venta
A est contenido fsicamente en B
TDPV-Tienda
A est contenido lgicamente en B
DescripcinDeProducto - Producto
A es una descripcin de B
DescripcinDeProducto - Producto
Encontrando Asociaciones
A es un elemento de lnea en una transaccin o reporte B
VentasLineaDeProducto-Venta
A se conoce/introduce/registra/presenta/captura B

Venta-TDPV
A es miembro de B
Cajero-Tienda
A es una sub-unidad organizacional de B
Departamento-Tienda
La lista completa puede consultarse en la tabla 11.1
del Larman 2ed.
TDPV. Modelo de Domnio Parcial
Atributos
Un atributo es un valor de datos lgico de un
objeto.
Cundo mostrar un atributo?

Son sugeridos por los requerimientos


Implican una informacin que debe recordarse.
Ejm:
Venta necesita un atributo horaVenta
Tienda necesita nombre y direccin.
Atributos
En UML se puede indicar el tipo y alguna otra
informacin adicional.
No deben colocarse atributos derivados. Ejm:
totalVenta.
Atributos adecuados
Muchos tipos atributos deben pensarse como
tipos primitivos
Atributos Adecuados
Relacionar clases conceptuales con asociaciones, no
con atributos
Clases o Atributos
Si no pensamos en una clase conceptual X como un
nmero o un texto en el mundo real, X es
probablemente una clase conceptual, no un
atributo.
TDPV: Modelo de dominio