Los diagramas de clase en UML se usan para modelar las clases del sistema con las relaciones que existen entre ellas.
En UML una clase se representa de la siguiente manera:
Los simbolos “#,-,+”, tienen un significado en uml.
- La palabra reservada protected se representa por: #
- La palabra reservada private se representa por: –
- La palabra reservada public se representa por: +
Las clases se relacionan para formar el sistema a modelar, por lo tanto necesitamos formas para modelar grupos de clases relacionadas entre ellas, lo cual se lleva a cabo por medio de las siguientes componentes:
Asociaciones : son las relaciones que hay entre las clases, son representadas por una linea. Ademas estas relaciones pueden tener elementos extras como: nombre, multiplicidad, rol y navegabilidad.
Nombre: indica el tipo de relaciòn que hay entre las clases que pertenecen a esa relaciòn.
Multiplicidad: define cuantas instancias de una clases pueden ser asociadas con instancias de otra clase.
Simbolo | Significado |
* | Cero o mas |
0 | Cero |
1 | Uno |
1..* | Uno o mas |
0..1 | Cero o un |
Navegabilidad: representa la visibilidad que tienen unas clases sobre otras en una misma relaciòn. La flecha apunta en la direcciòn de la visibilidad, asi en la siguiente figura la clase B tiene conocimiento de la clase A pero A no sabe de la existencia de B.
Rol: indica el papel que juega una clase en la relación.
Relaciones de herencia (generalizaciones): para representar que un grupo de clases ha heredado metodos o atributos de otra clase en uml se usa el siguiente esquema.
Las siguientes imagenes muestran una composición y una agregación.
Una composición nos permite agregar elementos a una clase, estos elementos (“clases, interfaces, etc”) dependen directamente de la clase, por lo que si la clase de la cual dependen es eliminada, también lo son los elementos agregados.
Al contrario de una composición, en una agregación el elemento que fue agregado no depende directamente de la clase, por lo cual tambièn puede ser agregado a otras clases y permanecer en el modelo aun y cuando las clases a las estaba agregado son eliminadas.
Diagrama UML de mi proyecto.
Brevemente explicado. El laberinto es una especializacion de una clase panel que nos permite mostrar contenido en una ventana y a su vez implementa metodos de una clase grafica. Laberinto tiene como agregado una clase Contenedor, y contenedor puede tener cero o mas objetos de la clase Muro en el y los objetos de Muro solo pueden tener un contenedor.
Contenedor es la clase que guarda las posiciones de los Muros que se van a dibujar en el Laberinto. Ademas en el Laberinto puede haber uno o mas objetos de la clase Robot y un Robot solo puede estar en un Laberinto.Los Robots pueden chocar con cero o mas Robots y con cero o mas Muros.
Los Robots se avanzan, retroceden, giran a la izquierda o derecha y checar si chocaron.
Esto es simplemente lo que mi diagrama de clases representa.
Bibliografía:
- http://www.agilemodeling.com/artifacts/classDiagram.htm
- http://www.smartdraw.com/resources/tutorials/uml-diagrams/
- Lenguaje unificado de modelado Grady Booch , Ivar Jacobson , James Rumbaugh Addison Wesley Publishing Company
creo que me equivoque en la tarea
Se suponía que hagas tú un ejemplo propio de un diagrama. Por ahora te pongo 1 punto por la explicación.
Bien, ahora son 5.
Podjęte ԝartości wynoszą 10% upust również dot.