Please enable JavaScript.
Coggle requires JavaScript to display documents.
MODELO DE CLASES Diagrama-de-Flujo-de-Proceso-1024x640 - Coggle Diagram
MODELO DE CLASES
Introducción
Un diagrama de clases
Sirve para visualizar las relaciones entre las clases que involucran el sistema.
Las cuales pueden ser asociativas, de herencia, de uso y de contenimiento.
esta compuesto por los siguientes elementos:
Clases
atributos, métodos y visibilidad.
Relaciones
Herencia, Composición, Agregación, Asociación y Uso.
Elemento
Clase
Unidad básica que encapsula toda la información de un Objeto
un objeto es una instancia de una clase.
Através de ella podemos modelar el entorno en estudio
una Casa, un Auto, una Cuenta Corriente, etc.
En UML, una clase es representada por un rectángulo que posee tres divisiones:
Superior:
Contiene el nombre de la Clase
Intermedio:
Contiene los atributos que caracterizan a la Clase.
Inferior:
Contiene los métodos u operaciones, los cuales son la forma como interactúa el objeto con su entorno
Atributos
Pueden ser de tres tipos:
public
Indica que el atributo será visible tanto dentro como fuera de la clase
es decir, es accsesible desde todos lados.
private
Indica que el atributo sólo será accesible desde dentro de la clase
sólo sus métodos lo pueden accesar
protected
Indica que el atributo no será accesible desde fuera de la clase
pero si podrá ser accesado por métodos de la clase
además de las subclases que se deriven.
Métodos
Pueden ser de tres tipos:
private
Indica que el método sólo será accesible desde dentro de la clase
sólo otros métodos de la clase lo pueden accesar
protected
Indica que el método no será accesible desde fuera de la clase
pero si podrá ser accesado por métodos de la clase
además de métodos de las subclases que se deriven
public
Indica que el método será visible tanto dentro como fuera de la clase
es decir, es accsesible desde todos lados.
Relaciones entre clases
Cardinalidad de relaciones:
En UML, la cardinalidad de las relaciones
indica el grado y nivel de dependencia:
uno o muchos: 1..* (1..n)
0 o muchos: 0..* (0..n)
número fijo: m (m denota el número).
Herencia (Especialización/Generalización)
Indica que una subclase hereda los métodos y atributos especificados por una Super Clase
La subclase además de poseer sus propios métodos y atributos
poseerá las características y atributos visibles
de la Super Clase
Ejemplo:
Agregación
Cuando se requiere componer objetos que son instancias de clases definidas por el desarrollador de la aplicación
Tenemos dos posibilidades:
Por Valor:
Es un tipo de relación estática
el tiempo de vida del objeto incluido esta
condicionado por el tiempo de vida del que lo incluye
Este tipo de relación es comunmente llamada
Composición
Por Referencia:
Es un tipo de relación dinámica
el tiempo de vida del objeto incluido es
independiente del que lo incluye
Este tipo de relación es comunmente llamada Agregación
Ejemplo:
Asociación:
Permite asociar objetos que colaboran entre si
no es una relación fuerte
es decir, el tiempo de vida de un objeto no depende del otro.
Ejemplo:
Dependencia o Instanciación (uso):
una clase es instanciada (su instanciación es
dependiente de otro objeto/clase)
Es para denotar la dependencia que tiene una clase de otra
Ejemplo:
Casos Particulares
Clase Abstracta:
Se denota con el nombre de la clase y de los métodos con letra "itálica"
Esto indica que la clase definida no puede ser instanciada
pues posee métodos abstractos
La única forma de utilizarla es definiendo subclases
que implementan los métodos abstractos definidos
Clase parametrizada:
Se denota con un subcuadro en el extremo superior de la clase
en donde se especifican los parámetros que deben ser pasados a la clase
para que esta pueda ser instanciada