ModeloConceptual

download ModeloConceptual

of 48

Transcript of ModeloConceptual

  • 8/3/2019 ModeloConceptual

    1/48

    Modelo ConceptualExtension

  • 8/3/2019 ModeloConceptual

    2/48

    Criterio para las clases anlisis delproblema:

    Un recurso que es algunas veces usadopor un actor. Puede ser adquirido,mantenido, usado, posible construido yvendido. Usando este simple criterio lossiguientes elementos vienen a ser buenoscandidatos para clases de dominio del

    problema:ActoresSuministros y Materiales

    Productos

    Registros de transacciones, como adquisicin,

    ventas, mantenimiento y disposicin.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    3/48

    Ejemplo de tienda de flores que clase decosas podran ser buenas clases deldominio del problema de una tienda deflores?

    Actores: Tomador de orden, Floristas,Conductores, personas de ventas, tenedorde libros.

    Suministros y materiales: Flores, Papel,vasos, alambre, tarjetas y asi.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    4/48

    Productos: arreglos de flores,artculos de regalo.

    Registros: Ordenes, despachos,recepcin de ventas, factura delcliente, factura del proveedor.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    5/48

    La pregunta clave es podr elusuario reconocer estos objetos?

    podra usar la tienda de florestodos estos objetos an si no seescribiera software?

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    6/48

    Identificar Clases y objetos

    Inspeccin gramatical a partir delvocabulario del dominio del problema.

    1. Encontrar nombres Leer ladeclaracin del problema y ladocumentacin asociada y destaque losnombres, sustantivos. Los sustantivos setransforman en clases u objetos oatributos, o valores de atributos. De igualforma los verbos revelan operaciones uasociaciones.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    7/48

    Anlisis Del ProblemaTexto Elemento del Modelo

    Sustantivo Objeto (til como data de prueba

    ClaseAtributo

    Valor de Atributo

    Verbo Asociacin

    Operacin

    Evento

    Adjetivo Estado

  • 8/3/2019 ModeloConceptual

    8/48

    2. Evale los nombres (sustantivos) parahallar las clases: Algunas preguntas:

    Es el trmino necesario dentro del alcance delproyecto?

    Si es as, El nombre califica como recurso deldominio del problema? Pensar en el nombre declase apropiado para el recurso del dominio al

    cual se refiere el nombre. De otro modo, el nombre es un ejemplar de

    clase, por ejem. Un objeto, una instancia de unaclase? escriba este hecho para referirlocuando se necesite data de prueba.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    9/48

    De otro modo, es el nombre un atributode una clase?, de que clase?.Escrbalo.

    De otro modo, el nombre es un ejemplarde atributo, un valor de atributo escribaeste hecho para referirse a el cuandonecesite data de prueba.

    Asegrese de concordar los trminos.Frecuentemente encontrar sinnimos.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    10/48

    3. Defina el propsito Describaporque la clase es un recursonecesario del dominio del problema.

    Ejem. nuestro auditorio es utilizadopor tipos diferentes de eventos.Algunos eventos son de una sola vez,tales como juego de Basquet. Otros

    eventos comprenden una nmero depresentaciones como obras oconciertos

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    11/48

    Anlisis Del ProblemaTrminos No es clase Clase Propsito ClaseAuditorio Auditorio El lugar donde se llevan a

    cabo los eventos y para loscuales se venden boletos

    Evento Evento Una actuacin negociada porel planeador de eventos yllevada a cabo en una o maspresentaciones.

    JuegoBsquet

    tipo de evento

    Presentacin Presentacin Un simple presentacin deun evento

    Obra Tipo de evento

    Concierto Tipo de evento

  • 8/3/2019 ModeloConceptual

    12/48

    Notacin del diagrama de clases

    En el compartimiento de nombre de laclase se coloca el nombre, un estereotipo

    opcional y propiedad opcionales. Elestereotipo va enmarcado por ().Los estereotipos se pueden usar paralimitar el rol de la clase en el modelo.

    Ejem, basado en el patrnde diseo Factory e paralas interfaces Java o interfaces deusuario.

    Anlisis Del Problema

    Cliente

  • 8/3/2019 ModeloConceptual

    13/48

    El compartimiento de atributosimplemente lista los atributos. El ordende la lista no interesa.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    14/48

    Compartimiento de Operaciones.Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    15/48

    Notacin del diagrama de clases

    Una clase se puede comunicar con otraclase que conozca, con la cual estasociada. Se usa una lnea entre lasdos clases. Nombre de la asociacin generalmente

    un verbo en activo que describe la relacin

    entre las dos. Ej. posee, abre. Multiplicidad el nmero de objetos de

    cada clase que participan en la relacin.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    16/48

    Multiplicidad:

    Asterisco (*) no hay lmite inferior nisuperior.

    Asterisco (*) usado en rangos (1..*) no haylmite superior

    Los puntos (..) indican rango.

    Valores separados por comas son listasenumeradas de valores.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    17/48

    Multiplicidad - Ejemplos

    A B

    11

    C D0..*1

    E F

    1..*1

    G H

    41

    I J

    4..61

    K L

    2,4,61

    M N

    0..*1..*

    1 1

    1

    1

    1

    1

    1

    1..*

    0..*

    1..*

    4

    4..6

    0..*

    2,4,6

    Anlisis Del Problema

    uno uno

    uno

    uno

    uno

    uno

    uno

    Uno o mas

    Cero o mas

    Uno o mas

    cuatro

    Seis a diez inclusive

    Dos o cuatro o seis

    Cero o mas

  • 8/3/2019 ModeloConceptual

    18/48

    Roles y restricciones: Cuando es difcil definiruna asociacin una solucin puede ser utilizarroles. El rol de una clase con respecto a otra. Se

    pueden agregar restricciones (constraints)usando la notacin estndar. Ejem. Un clientepuede colocar cero o mas rdenes, pero unaorden no puede existir a menos que un cliente la

    coloque. Los clientes que colocan ordenes sonclientes preferentes. Las ordenes que elloscolocan tienen prioridad.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    19/48

    Cliente Orden

    0..*1

    coloca+Orden con prioridad+Cliente Preferido

    1 0..*

    {El valor combinado no puedeexceder el limite de crdito

    del cliente}

    Anlisis Del Problema

    Asociacin rol

    Nombre asociacionClaseRestricciones : opcionalMultiplicidad : requerida

  • 8/3/2019 ModeloConceptual

    20/48

    Ejem. Un cliente selecciona un sitioque le interesa y el sistema coloca el

    sitio en separado para el cliente.

    Anlisis Del Problema

    Cliente

    Separa

    Asiento

  • 8/3/2019 ModeloConceptual

    21/48

    Modelado bsico : Multiplicidad

    Cuantos objetos de esta clase

    pueden estar asociados con cadaobjeto de la otra clase? Y viceversa.

    Otra forma es leer la asociacinempezando de uno siempre.

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    22/48

    Ejem. cuntos asientos pueden serseparados por un cliente? y -cuntos clientes pueden separar el

    mismo sitio?

    Anlisis Del Problema

    Cliente

    0..*

    Separa

    Asiento

    0..*

  • 8/3/2019 ModeloConceptual

    23/48

    En el ejemplo no mas de un clientepuede separar un asiento al mismotiempo

    Cliente

    0..1

    0..*

    0..1

    Separa

    0..*

    Asiento

    Anlisis Del Problema

  • 8/3/2019 ModeloConceptual

    24/48

    Restricciones Ejem.Anlisis Del Problema

    Cliente

    0..1

    {Solo uno a la vez}

    0..*

    0..1

    Separa

    0..*

    Asiento

    Cliente

    0..*

    0..*

    0..*

    {Histricamente}

    Separa

    0..*

    Asiento

  • 8/3/2019 ModeloConceptual

    25/48

    Agregacin necesita igual lamultiplicidad en ambos lados de laasociacin.

    Anlisis Del Problema

    PlanEvento Asiento0..*0..* 0..*0..*

  • 8/3/2019 ModeloConceptual

    26/48

    Mltiples niveles deagregacin dentro delmismo objeto.

    Transmisin

    Auto

    1

    1

    Carburador Piston Bujia

    Motor

    1

    1

    1

    1

    1

    8

    1

    8

    ....

    1

    11

    1

    1 11

    1 8 8

    Usando Agregacin

  • 8/3/2019 ModeloConceptual

    27/48

    Identificar una agregacin buscarpalabras y frases en la declaracin

    del problema: Ensamble

    Parte de

    Consiste de

    Esta compuesto de

    Usando Agregacin

  • 8/3/2019 ModeloConceptual

    28/48

    La composicin es equivalente acontainment by value. En el CASE

    seleccionar dicha opcin para queaparezca el diamante slido.

    Modelando Composiciones

    PresentacionEvento

    1..1 0..*1..1 0..*

  • 8/3/2019 ModeloConceptual

    29/48

    Modelando ComposicionesAgregacin Composicin

    La multiplicidad debe estar en ambos

    lados de la asociacin

    La multiplicidad queda implcita en el

    lado del objeto compuesto.

    La multiplicidad se debe poner en ellado de las partes que componen.

    Las partes pueden existir an si elobjeto agregado es destruido odesemsamblado.

    Las partes se pueden mover de unagregago a otro.

    Las partes no existen si el compuestoes destruido o desemsamblado.

    Las partes no se pueden moverdesde un compuesto a otro.

  • 8/3/2019 ModeloConceptual

    30/48

    Agregacin - ComposicinCursoCustomizado

    Ejercicio

    TablaDeContenido

    1

    1

    1

    1

    Leccin

    1..*

    1..*

    1..*

    1..*

    1..*

    0..*

    1..*

    0..*

    1..*1..*1..* 1..*

    Referencia a

  • 8/3/2019 ModeloConceptual

    31/48

    Agregacin - Composicin

    Ejercicio

    TablaDeContenido Leccin

    0..*

    1

    0..*

    1

    1 1..*1 1..*

    Referencia a

    CursoFijo

    1

    1

    1

    1..*

    1

    1

    1

    1..*

  • 8/3/2019 ModeloConceptual

    32/48

    Ejemplo de Generalizacin

    Modelando

    Generalizaciones

    Para definir un objeto cliente:1. Cual tipo de objeto cliente:

    Privado o corporativo.2. Combinar la definicin de la

    clase cliente base con ladefinicin de claseClientePrivado

  • 8/3/2019 ModeloConceptual

    33/48

    Un cliente tiene nombre, direccin ylmite de crdito; un cliente privado

    usa tarjetas pero un clientecorporativo usa un proceso de ordende compra y no tiene tarjetas. Losclienetes corporativos requieren un

    nombre de contacto para manejar losproblemas que tengan que ver con lacuenta.

    ModelandoGeneralizaciones

  • 8/3/2019 ModeloConceptual

    34/48

    ModelandoGeneralizaciones

    Superclase

    Subclases

    Icono generalizacin

    Lnea generalizacin

    Discriminador

  • 8/3/2019 ModeloConceptual

    35/48

    Buscar frases:

    Clase de / Tipo de : Soportamos tres

    tipos de profesores ... Igual .. Pero: El estado z es igual al

    estado J pero con diferentescalificaciones

    Parecido ... Pero.

    ModelandoGeneralizaciones

  • 8/3/2019 ModeloConceptual

    36/48

    Asociacion recursiva o reflexiva.

    Asociaciones avanzadas

    Empleado

    0..1

    0..*

    0..1

    0..*

    +Supervisor

    +Subordinado

    Empleado

    0..1

    0..*

    0..1

    0..*

    Supervisa

    Usando Roles Usando Nombre de Asociacin

  • 8/3/2019 ModeloConceptual

    37/48

    Clase Asociativa

    Son usadas para identificar

    informacin acerca de una asociacin.

    Asociaciones avanzadas

  • 8/3/2019 ModeloConceptual

    38/48

    Revisar si es necesario mantenerinformacin acerca de la asociacin.

    Asociaciones avanzadas

    CartaAsientosPresentacin Asiento

    0..*0..*

    Ofrece

    0..* 0..*

  • 8/3/2019 ModeloConceptual

    39/48

    Identifique la informacin que necesitamantener. Pueden ser atributos y/ooperaciones.

    Asociaciones avanzadas

  • 8/3/2019 ModeloConceptual

    40/48

    Implementacin de una claseasociativa

    Asociaciones avanzadas

  • 8/3/2019 ModeloConceptual

    41/48

    Ejemplo : Caso CEPER

    Modelo conceptual dominio :

    Verificar si el cliente es nuevo

    Registrar la llamada del cliente

    Registrar una solicitud de venta Crear una cuenta para el Cliente

    Verificar el Stock y el Crdito del cliente

    Acordar precio

    Solicitar corte de producto a produccin Emitir una factura y gua de entrega

    Trasladar el producto al cliente

  • 8/3/2019 ModeloConceptual

    42/48

    Registrar solicitud decompra de produccin

    Evaluar solicitud de compra de produccin

    Emitir solicitud de cotizacin a proveedores Registrar la muestra y propuesta del proveedor

    Evaluar y registrar resultados del anlisis demuestra del insumo

    Registrar y emitir la orden de compra y contrato Registrar el ingreso de Insumos en almacn.

    Ejemplo : Caso CEPER

  • 8/3/2019 ModeloConceptual

    43/48

    Ejemplo : Caso CEPERModeloConceptualDominio

  • 8/3/2019 ModeloConceptual

    44/48

    Ejemplo : Caso CEPER

    Modelo Con

    multiplicidades

  • 8/3/2019 ModeloConceptual

    45/48

    Diagrama de clases

  • 8/3/2019 ModeloConceptual

    46/48

    El diagrama de clases anterior modela laorden de compra de un cliente. La claseprincipal es Orden (Order), asociada con el

    Cliente (Customer) que hace la compra yel Pago (Payment). Un pago es uno de trestipos: Efectivo (Cash), Cheque (Check) oCrdito (Credit). Al orden contiene el

    detalle de la orden (OrderDetail), cada unaasociada con un Artculo (Item).

    Diagrama de clases

  • 8/3/2019 ModeloConceptual

    47/48

    Multiplicidad es el nmero deinstancias (ejemplares, ocurrencias)

    de una clase asociada con otra clasea travs del vnculo.

    0..1 : Cero o una instancia.

    0..* * : cero o muchas (sin

    lmite)

    1 : Exactamente una

    1..* : al menos una instancia

    Diagrama de clases

  • 8/3/2019 ModeloConceptual

    48/48

    Diagrama de paquetes