3.Diagrama de clases

download 3.Diagrama de clases

of 21

Transcript of 3.Diagrama de clases

  • 8/7/2019 3.Diagrama de clases

    1/21

    11--11

    Diagrama de clasesDiagrama de clases

  • 8/7/2019 3.Diagrama de clases

    2/21

    11--22

    Modelo del DominioModelo del Dominio

    Diagrama de Clases

    Clases

    Atributos y Operaciones

    Encapsulamiento

    Visibilidad

    Clases de Anlisis

    Relacin entre Clases:

    Definir Asociaciones Simples

    Identificar Generalizaciones

    Especificar Agregaciones

    Establecer Composiciones

  • 8/7/2019 3.Diagrama de clases

    3/21

  • 8/7/2019 3.Diagrama de clases

    4/21

    11--44

    ClasesClases

    La clase define el mbito de definicin de un conjunto deobjetos. Es una nocin en tiempo de compilacin, mientras un objeto

    e iste solo en tiempo de ejecucin.

    Cada objeto pertenece a una clase Los objetos se crean por instanciacin de las clases Es identificada por:

    ombre

    Atributos

    Operaciones

    La clase define el mbito de definicin de un conjunto deobjetos. Es una nocin en tiempo de compilacin, mientras un objeto

    e iste solo en tiempo de ejecucin.

    Cada objeto pertenece a una clase Los objetos se crean por instanciacin de las clases Es identificada por:

    ombre

    Atributos

    Operaciones

    A O

    -

    -

    -

    -

    -

    -

    -

    -

    -

    -

    ide usuario

    t t apellido paterno

    t t apellido materno

    t t primer nombre

    t t se undo nombre

    tip usuario

    tip doc identificacion

    cod doc identificacion

    cod usuario

    t t password

    : int

    : int

    : int

    : int

    : int

    : int

    : int

    : int

    : int

    : int

    ()

    t ()

    : v

    : v

  • 8/7/2019 3.Diagrama de clases

    5/21

  • 8/7/2019 3.Diagrama de clases

    6/21

    11--66

    Clases: OperacionesClases: Operaciones

    Operacin es un servicio que puede ser requerido por unobjeto para producir un comportamiento.

    Comportamiento son los efectos visibles de una operacino evento, incluyendo sus resultados.

    El comportamiento es como un objeto acta y reacciona, entrminos de sus cambios de estado y los mensajes queenva.

    El Mtodo es la implementacin de una operacin y pudeser un procedimiento o funcin.

    Operacin es un servicio que puede ser requerido por unobjeto para producir un comportamiento.

    Comportamiento son los efectos visibles de una operacino evento, incluyendo sus resultados.

    El comportamiento es como un objeto acta y reacciona, entrminos de sus cambios de estado y los mensajes queenva.

    El Mtodo es la implementacin de una operacin y pudeser un procedimiento o funcin.

  • 8/7/2019 3.Diagrama de clases

    7/21

    11--77

    Clases: VisibilidadClases: Visibilidad

    rivado: es visible solo para elinterior de la clase.

    rotegido: es visible para elinterior y las subclases

    respectivas. blico: es visible para el

    interior y e terior de la clase.

    rivado: es visible solo para elinterior de la clase.

    rotegido: es visible para elinterior y las subclases

    respectivas. blico: es visible para el

    interior y e terior de la clase.

    V B

    -

    #

    +

    ttribute 3

    ttribute 2

    ttribute 1

    : int

    : int

    : int

    -

    #

    +

    peration 3

    peration 2

    peration 1

  • 8/7/2019 3.Diagrama de clases

    8/21

    11--88

    La abstraccin y el encapsulamiento son conceptoscomplementarios: la primera se centra en elcomportamiento observable de un objeto, mientras elencapsulamiento se centra en la implementacin que dalugar a este comportamiento.

    ara que la abstraccin funcione la implementacin debeestar encapsulada.

    De modo predeterminado, los valores de atributos de unobjeto se encapsulan en el objeto y no pueden sermanipulados directamente por los dems objetos.

    odas las interacciones entre los objetos se efectaninvocando las diversas operaciones declaradas en laespecificacin de la clase y accesibles desde los demsobjetos, de acuerdo a las reglas de visibilidad.

    La abstraccin y el encapsulamiento son conceptoscomplementarios: la primera se centra en elcomportamiento observable de un objeto, mientras elencapsulamiento se centra en la implementacin que dalugar a este comportamiento.

    ara que la abstraccin funcione la implementacin debeestar encapsulada.

    De modo predeterminado, los valores de atributos de unobjeto se encapsulan en el objeto y no pueden sermanipulados directamente por los dems objetos.

    odas las interacciones entre los objetos se efectaninvocando las diversas operaciones declaradas en laespecificacin de la clase y accesibles desde los demsobjetos, de acuerdo a las reglas de visibilidad.

    Clases: Encapsulacin

  • 8/7/2019 3.Diagrama de clases

    9/21

    11--99

    Clases de AnlisisClases de Anlisis

    Una clase de anlisis enfoca el manejo funcional derequerimientos.

    Las clases de anlisis definen los atributos a un alto nivel. Eltipo de atributo se establece conceptualmente de acuerdo aldominio del problema. El tipo especifico se posterga hasta

    el diseo o implementacin.

    El comportamiento es definido por las responsabilidades enun alto nivel.

    Las clases de anlisis estn involucradas en relaciones,aunque esas relaciones son mas conceptuales que su

    contraparte del diseo. Una clase de anlisis es de Entidad, Interface, Control.

    Una clase de anlisis enfoca el manejo funcional derequerimientos.

    Las clases de anlisis definen los atributos a un alto nivel. Eltipo de atributo se establece conceptualmente de acuerdo aldominio del problema. El tipo especifico se posterga hasta

    el diseo o implementacin.

    El comportamiento es definido por las responsabilidades enun alto nivel.

    Las clases de anlisis estn involucradas en relaciones,aunque esas relaciones son mas conceptuales que su

    contraparte del diseo. Una clase de anlisis es de Entidad, Interface, Control.

  • 8/7/2019 3.Diagrama de clases

    10/21

    11--11

    Son usadas para modelar informacin normalmentepersistente.

    Las clases entidad modelan informacin que est asociada alcomportamiento de algn fenmeno o concepto tal como unindividuo, objeto de la vida real o un evento de la vida real.

    recuentemente se crea una abla en la D por cada claseentidad

    Una Clase Entidad tiene identificado rimario e IdentificadoAlterno.

    En los tipos de datos de sus atributos se pueden usar

    dominios, para organizar las longitudes de cada tipo.

    Son usadas para modelar informacin normalmentepersistente.

    Las clases entidad modelan informacin que est asociada alcomportamiento de algn fenmeno o concepto tal como unindividuo, objeto de la vida real o un evento de la vida real.

    recuentemente se crea una abla en la D por cada claseentidad

    Una Clase Entidad tiene identificado rimario e IdentificadoAlterno.

    En los tipos de datos de sus atributos se pueden usar

    dominios, para organizar las longitudes de cada tipo.

    Clases de Anlisis: Clase EntidadClases de Anlisis: Clase Entidad

    Smbolo UML para

    una clase entidad

  • 8/7/2019 3.Diagrama de clases

    11/21

    11--1111

    Clases de Anlisis: Clase ronteraClases de Anlisis: Clase rontera

    Modelan la interaccin entre el sistema y sus actores.

    Estas incluyen todos los formularios, reportes, interfaces ahard are e interfaces a otros sistemas.

    Como mnimo debe e istir una clase rontera por cadainteraccin actor caso uso.

    Modelan la interaccin entre el sistema y sus actores.

    Estas incluyen todos los formularios, reportes, interfaces ahard are e interfaces a otros sistemas.

    Como mnimo debe e istir una clase rontera por cadainteraccin actor caso uso.

    AC OR

    CASO USOCASO USO

    Aqu e iste

    una clase

    lmite

    Smbolo UML parauna clase frontera

  • 8/7/2019 3.Diagrama de clases

    12/21

    11--1212

    Clases de Anlisis: Clase ControlClases de Anlisis: Clase Control

    Estas clases representan coordinacin,secuencia, transaccin y control de otrosobjetos.

    Una clase de control se usafrecuentemente para encapsular el control

    de un caso de uso especfico. Estas clases tambin se usan para

    representar derivaciones y clculoscomplejos y que no pueden ser asociadosa una clase entidad.

    Modelan el dinamismo de un sistema,pues manipulan y coordinan las accionesprincipales, el flujo de control y delegantrabajo a otros objetos.

    Estas clases representan coordinacin,secuencia, transaccin y control de otrosobjetos.

    Una clase de control se usafrecuentemente para encapsular el control

    de un caso de uso especfico. Estas clases tambin se usan para

    representar derivaciones y clculoscomplejos y que no pueden ser asociadosa una clase entidad.

    Modelan el dinamismo de un sistema,pues manipulan y coordinan las accionesprincipales, el flujo de control y delegantrabajo a otros objetos.

    Smbolo UML para

    una clase control

  • 8/7/2019 3.Diagrama de clases

    13/21

    11--1313

    Diagrama de Clases: Relaciones entre ClasesDiagrama de Clases: Relaciones entre Clases

    Las relaciones entre clases pueden ser de:

    Generalizacin

    Dependencia

    Asociacin: que a su vez se puede dividir de dos formas,segn el criterio adoptado:

    Segn el nmero de clases participantes: inaria yaria.

    Segn como contribuyan a formar la clase, se dividen asu vez en:

    Agregacin y Composicin

    XOR

    Las relaciones entre clases pueden ser de:

    Generalizacin

    Dependencia

    Asociacin: que a su vez se puede dividir de dos formas,segn el criterio adoptado:

    Segn el nmero de clases participantes: inaria yaria.

    Segn como contribuyan a formar la clase, se dividen asu vez en:

    Agregacin y Composicin

    XOR

  • 8/7/2019 3.Diagrama de clases

    14/21

    11--1414

    Relacin entre Clases: GeneralizacinRelacin entre Clases: Generalizacin

    Los objetos de la subclase son tipos de objetos de lasuperclase.

    Est presente la propiedad denominada herencia.

    Una clase que se encuentra en un nivel alto de la jerarquaes una superclase de sus clases subordinadas. Una clase

    que se encuentra en un nivel bajo de la jerarqua es unasubclase de su superclase.

    Generalizacin es el proceso de factorizar los atributos yoperaciones comunes de un conjunto de clases yasignarlas a una superclase.

    Especializacin es el proceso de refinar las clases ensubclases que heredan los atributos y operaciones de lassuperclases.

    Los objetos de la subclase son tipos de objetos de lasuperclase.

    Est presente la propiedad denominada herencia.

    Una clase que se encuentra en un nivel alto de la jerarquaes una superclase de sus clases subordinadas. Una clase

    que se encuentra en un nivel bajo de la jerarqua es unasubclase de su superclase.

    Generalizacin es el proceso de factorizar los atributos yoperaciones comunes de un conjunto de clases yasignarlas a una superclase.

    Especializacin es el proceso de refinar las clases ensubclases que heredan los atributos y operaciones de lassuperclases.

  • 8/7/2019 3.Diagrama de clases

    15/21

  • 8/7/2019 3.Diagrama de clases

    16/21

    11--1616

    Relacin entre Clases: DependenciaRelacin entre Clases: Dependencia

    Es una relacin entre dos elementos en la cual un cambioen un elemento (independiente) puede afectar a otroelemento (dependiente).

    El elemento dependiente es aquel que necesita de otro (elindependiente), para poder cumplir su responsabilidad.

    Indica que un objeto en un diagrama usa los servicios ofacilidades de otro objeto.

    Se puede establecer dependencias entre paquetes yelementos modelados.

    Es una relacin entre dos elementos en la cual un cambioen un elemento (independiente) puede afectar a otroelemento (dependiente).

    El elemento dependiente es aquel que necesita de otro (elindependiente), para poder cumplir su responsabilidad.

    Indica que un objeto en un diagrama usa los servicios ofacilidades de otro objeto.

    Se puede establecer dependencias entre paquetes yelementos modelados.

  • 8/7/2019 3.Diagrama de clases

    17/21

    11--1717

    Relacin entre Clases: DependenciaRelacin entre Clases: Dependencia

    FC

    s

    l

    ar_Libr

    sFB

    scar_Libr

    CLibr

    LIBRO

    f r

    m A

    alys is M

    del

    libr

    selecci

    ad

    FC

    s

    l

    ar_Libr

    sFB

    scar_Libr

    CLibr

    LIBRO

    f r

    m A

    alys is M

    del

    libr

    selecci

    ad

    CF

    rm!lari

    FORMULARIO"

    fr#

    m A$

    alysis M#

    del%

    CAsig&ar Ide

    &

    '

    ificaci

    &

    CLIENTE"

    fr#

    m A$

    alysis M#

    del%

    FF

    rm!lari

    FAsig&ar Ide

    &

    '

    ificaci

    &

    CF

    rm!lari

    FORMULARIO"

    fr#

    m A$

    alysis M#

    del%

    CAsig&ar Ide

    &

    '

    ificaci

    &

    CLIENTE"

    fr#

    m A$

    alysis M#

    del%

    FF

    rm!lari

    FAsig&ar Ide

    &

    '

    ificaci

    &

  • 8/7/2019 3.Diagrama de clases

    18/21

    11--1818

    Relacin entre Clases: AsociacinRelacin entre Clases: Asociacin

    Las asociaciones modelan la forma en que se relacionanlos objetos de las clases.

    Modelan el vnculo o cone in dos o ms clases. Los elementos que definen al atributos son:

    ombre: Describe la manera en que ocurre la

    asociacin, no es elemento obligatorio, se utiliza slocuando mejora la comprensin de la asociacin.

    avegabilidad: Define el sentido u orientacin de lacomunicacin intercambio entre las clases.

    Multiplicidad: Especifica la cardinalidad de laasociacin, modelando la cantidad de objetos que se

    asocian a un objeto de la otra. ipo Asociacin: inaria, aria, Agregacin,

    Composicin.

    Las asociaciones modelan la forma en que se relacionanlos objetos de las clases.

    Modelan el vnculo o cone in dos o ms clases. Los elementos que definen al atributos son:

    ombre: Describe la manera en que ocurre la

    asociacin, no es elemento obligatorio, se utiliza slocuando mejora la comprensin de la asociacin.

    avegabilidad: Define el sentido u orientacin de lacomunicacin intercambio entre las clases.

    Multiplicidad: Especifica la cardinalidad de laasociacin, modelando la cantidad de objetos que se

    asocian a un objeto de la otra. ipo Asociacin: inaria, aria, Agregacin,

    Composicin.

  • 8/7/2019 3.Diagrama de clases

    19/21

    11--1919

    Tipo Asociacin: inariaTipo Asociacin: inaria

    Es una asociacin entre e actamente dos clases,incluyendo el caso de una asociacin refle iva de unaclase consigo misma. La navegabilidad es bidireccionalpor defecto.

    Es una asociacin entre e actamente dos clases,incluyendo el caso de una asociacin refle iva de unaclase consigo misma. La navegabilidad es bidireccionalpor defecto.

    ide actor emp sup

    0( (*

    0( (1i

    )

    0

    1

    c2

    or0 3

    pl0 1

    )

    o

    ide actor

    0( (1 0 ( ( *

    E PLEA

    ide empleado

    cod_area

    cod_cargo

    : int

    : int

    : int

    PE I

    ide pedido

    t t_apelli do_paterno

    t t_apelli do_materno

    t t_primer_nombre

    t t_segundo_nombre

    t t_telefono

    : int

    : int

    : int

    : int

    : int

    : int

    A TOR

    -

    -

    -

    --

    -

    -

    -

    -

    -

    ide_usuario

    t t_apelli do_paterno

    t t_apelli do_materno

    t t_primer_nombret t_segundo_nombre

    tip_usuario

    tip_doc_identificacion

    cod_doc_identificacion

    cod_usuario

    t t_password

    : int

    : int

    : int

    : int: int

    : int

    : int

    : int

    : int

    : int

    +

    +

    r0

    cup0

    r1

    r usu1

    rio4 5

    in s0

    r2

    1

    r4 5

    6voi

    )

    6voi

    )

  • 8/7/2019 3.Diagrama de clases

    20/21

    11--22

    Tipo Asociacin: -ariaTipo Asociacin: -aria

    Una Asociacin-aria es una forma dee presar una relacin entre tres o ms clases.

    Una Clase Asociacin puede ser usada paradescribir la relacin.

    Una Clase Asociacin modela los atributos yoperaciones de una asociacin. Se conecta auna asociacin mediante una lneadiscontinua y puede asociarse a otra clase.

    Una Asociacin-aria es una forma dee presar una relacin entre tres o ms clases.

    Una Clase Asociacin puede ser usada paradescribir la relacin.

    Una Clase Asociacin modela los atributos yoperaciones de una asociacin. Se conecta auna asociacin mediante una lneadiscontinua y puede asociarse a otra clase.

    S

    AULAAULA

    ALUM OALUM O

    CURSOCURSO

    DOCE TEDOCE TE

    echa Inicioecha Inicio

    CapacidadCapacidad

    pedido de libro

    1 7 7 *

    i8

    9

    li@

    ro

    A

    7 7 *

    i8

    9

    p9

    8i

    8o PEDIDO_DET

    -

    -

    -

    can_libro

    imp_precio

    tB

    t_tiempo_entreC

    a

    : int

    : int

    : int

    LI D RO

    -

    -

    -

    -

    -

    -

    -

    -

    ide libro

    imp_precio

    imp_precio_oferta

    tB

    t_tiempo_entreC

    a

    imp_flete

    tB

    t_descr_libro

    tB

    t_titulo_libro

    est_libro

    : int

    : Double

    : Double

    : StrinC

    : Double

    : StrinC

    : StrinC

    : StrinC

    PEDIDO

    -

    -

    -

    -

    -

    -

    ide pedido

    tB

    t_apellido_paterno

    tB

    t_apellido_materno

    tB

    t_primer_nombre

    tB

    t_seC

    undo_nombre

    tB

    t_telefono

    : int

    : int

    : int

    : int

    : int

    : int

  • 8/7/2019 3.Diagrama de clases

    21/21

    11--2121

    Tipo Asociacin: AgregacinTipo Asociacin: Agregacin

    Los objetos de diferentes clases (partes) son componentes de laotra Clase (todo).

    Sus elementos no tienen dependencia e istencial, el objeto incluidono necesariamente desaparece al destruirse el objeto que locontiene.

    Se representa mediante un rombo transparente ubicado al lado de la

    clase base.

    Los objetos de diferentes clases (partes) son componentes de laotra Clase (todo).

    Sus elementos no tienen dependencia e istencial, el objeto incluidono necesariamente desaparece al destruirse el objeto que locontiene.

    Se representa mediante un rombo transparente ubicado al lado de la

    clase base.

    ide actorE

    F F*

    1

    ide actor

    E

    F F *

    1

    cod ubigeo

    E

    F F 1

    E

    F F*

    cod ubigeo sup

    E

    F F*

    E

    F F1

    TELEF N-

    -

    -

    -

    ide telefono

    tipG

    telefono

    tH

    tG

    telefono

    estG

    telefono

    : int

    : int

    : int

    : int

    ACT

    -

    -

    -

    -

    -

    -

    -

    -

    -

    -

    ideG usuariot

    H

    tG

    apellidoG

    paterno

    tH

    tG

    apellidoG

    materno

    tH

    tG

    primerG

    nombre

    tH

    tG

    segundoG

    nombre

    tipG

    usuario

    tipG

    docG

    identificacion

    codG

    docG

    identificacion

    codG

    usuario

    tH

    tG

    passI

    ord

    : int: int

    : int

    : int

    : int

    : int

    : int

    : int

    : int

    : intP

    P

    rQ R S T Q

    rU

    rS V S U

    riW

    X Y

    i` V Q

    ra

    U

    rX Y

    b c W

    id

    b c W

    id

    I ECCI N

    -

    -

    -

    -

    ide direccion

    tipG

    direccion

    tH

    tG

    direccion

    estG

    direccion

    : int

    : int

    : int

    : int

    I E

    -

    -

    -

    cod ubigeo

    tH

    tG

    ubigeo

    numG

    nie

    el

    : int

    : int

    : int