Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MODELO CONCEPTUAL
Un modelo conceptual explica los conceptos significativos en un dominio del problema,
identificando los atributos y las asociaciones, y es la herramienta más importante del
análisis orientado a objetos.
Los casos de uso son una importante herramienta para el análisis de requerimientos, pero
realmente no están orientados a objetos. Un modelo conceptual representa cosas del
mundo real, no componentes del software.
La siguiente figura muestra un modelo conceptual parcial del dominio del ejemplo que
se está desarrollando – Ventas en una Tienda.
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
Un modelo conceptual es una descripción del dominio de un problema real, no es una
descripción del diseño del software. Debido a esto, no es conveniente aquí incluir
elementos como ventanas o bases de datos.
En el dominio real de comprar productos en una tienda usando una terminal de punto
de venta (TPDV), intervienen tres conceptos principales: tienda, TPDV y una venta.
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
Una técnica muy útil consiste en identificar frases nominales (sustantivos) en las
descripciones textuales del domino del problema ( Casos de Uso) y considerarlas
conceptos o atributos.
Hay que tener en cuenta que no es posible establecer una correspondencia en forma
automática entre sustantivo y concepto y que además las expresiones en lenguaje
natural son ambiguas.
Cuando uno subraya una frase o sustantivo como candidatos a definir un concepto
debe tener presente que:
• Varios términos pueden referirse a un mismo objeto.
• Un mismo término puede referirse a varios objetos
• El lenguaje natural es muy ambiguo
Dependiendo del estilo de escritura del autor del caso de uso, tener en cuenta que
un sustantivo puede ser “verbalizado” y un verbo “sustantivado”. P.ej: vendido por
venta; registración por registrar,
La lista de objetos obtenida debe ser “filtrada”. Toda frase debe ser considerada en
el contexto del domino del problema, no por si misma.
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
SECCIÓN PRINCIPAL.
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
Objetos físicos o tangibles TDPV, Dado
Especificaciones, diseño o descripciones de
Especificació ndeProducto, ReglasdeJuego
cosas
Lugares Tienda, MesadeJuego
Transacciones Venta, Pago, Reservación, Apuesta
Línea o renglón de un elemento de
VentasLineadeProducto
transacciones
Rol de las personas Cajero, Gerente, Jugador
Contenedores de otras cosas Tienda, Cesto, Biblioteca
Cosas dentro de un contenedor Producto, Libro
Otros sistemas de cómputo o
SistemaAutorizacionTarjetasdeCredito
electromecánicos externos al sistema
Conceptos de nombres abstractos Hambre, Suerte
Organizaciones DepartamentodeVentas, LineaAerea
Venta, Robo, Junta, Vuelo, Accidente,
Eventos
RodarDados
Procesos
A menudo no están representados como VentaUnProducto, ReservacionAsiento
conceptos, pero pueden estarlo)
PoliticadeReembolso,
Reglas y políticas
PoliticadeCancelaciones
Catálogos CatalogodeProductos, CatalogodeLibros
Registros de finanzas, de trabajo, de
Recibo, Mayor, ContratodeEmpleo
contratos, de asuntos legales
Instrumentos y servicios financieros LineadeCredito, Existencia
Manuales y libros ManualdePersonal, ManualdeReparaciones
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
6.1.1.3 Conceptos para el dominio del ejemplo punto de venta
TDPV EspecificaciondeProducto
Producto VentasLineadeProductos
Tienda Cajero
Venta Cliente
Pago Gerente
CatalogodeProductos
¿Se debería incluir el recibo que imprime el punto de venta? Este recibo es un
informe del sistema, y dado que toda su información proviene de otros objetos, no
es necesario incluirlo. Sin embargo, es posible que en una etapa posterior (por
ejemplo cuando se implemente devolver productos) se justifique su inclusión.
Por tanto, el modelo conceptual inicial del sistema de punto de venta (sin incluir
atributos ni asociaciones) y considerando los casos de uso definidos en el Capitulo
5, tendría el siguiente aspecto:
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
números de serie son distintos el cada instancia, pero la especificación es la
misma.
Una asociación se representa como una línea entre conceptos, con el nombre de
la asociación.
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
conceptos. Opcionalmente se puede poner una flecha que indique la dirección
en que debe leerse el nombre de la asociación (no indica nada más, es sólo una
ayuda para leer el diagrama).
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
Las asociaciones más importantes son las siguientes:
Las asociaciones son importantes, pero no se debe dedicar tiempo excesivo a ellas. Es más
importante identificar los conceptos que las asociaciones. Muchas asociaciones tienden a
confundir el modelo conceptual, en vez de aclararlo. Se pueden incorporar las que se indican
en los casos de uso, y las que se consideren necesarias para un adecuado entendimiento del
problema.
6.3.2 Multiplicidad
6.4 Generalización
La generalización es una relación que refleja propiedad de herencia entre dos
elementos del modelo. En particular en el caso de Conceptos ( o tipos de objetos)
permite a un concepto heredar atributos y operaciones de otro.
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
Pago
monto:cantidad
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
• El subtipo se comporta de una manera distinta al supertipo o a otro
subtipo en aspectos que resultan relevantes.
6.5 Agregación
La agregación es una relación con la que se modelan las relaciones parte-todo
entre las cosas.
Al todo se lo llama compuesto; en cambio a las partes se las denomina como
parte o componente.
Equipo Jugadores
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
Equipo Jugador
Contrato Representante
• booleanos (o lógicos),
• fechas y horas,
• números,
• texto.
Algunos tipos comunes son: dirección, color, teléfono, CUIT, código de barras,
código postal, etc.
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
De tenerse atributos “complejos” o sea que tienen una estructura de datos,
deberían modelarse como una asociación.
Por ejemplo:
Avión Motor no es un
Motor atributo simple
Motor
Avión Tipo:
Potencia
Nº serie
Vuelo Destino no es
Destino un atributo
simple
Aeropuerto
Vuelo
Puede darse el caso que tengamos un atributo compuesto por una estructura de datos,
por ej: CUIT cuya estructura es: AA BBBBBBBB X donde:
AA = tipo de contribuyente
B = número de inscripción o documento .
X = dígito verificador
¿En este caso como se modela?
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
Cliente
CIUT
Contribuyente
CIUT
Tipo
Nº
Verificador
Una de las violaciones más comunes a esta regla consiste en agregar atributos como
claves foráneas. Por ej.:
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
6.7.2.3 Atributos con unidades
En algunos casos se nos presenta n atributos que están definidos por un número y una
unidad:
• Moneda ( $, u$s )
• Velocidad ( kph, mph )
Si modelamos de esta manera tendríamos algo utilizable pero no flexible:
Pago
monto:número
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11
El modelo conceptual es una herramienta de comunicación, con la cual se intenta
comprender los conceptos importantes y sus relaciones. Es también útil para
transmitir este conocimiento a otros.
M
ME ETTO OD DO OLLO OG GÍÍA AD DE
ELL EESSTTU
UDDIIO
OD DEE SSIISSTTE
EMMA
ASS
A P U NT E S O R IE
APUNTES ORIENTACIÓN A OBJETOS NT A C IÓ N A O B J E TO S
A
Annííbbaall JJ.. C
Caalllliiggoo
V
V..11..11