Diagrama de clases Uml2
Los diagramas de clase son los principales bloques de construcción del modelado orientado a objetos, por lo que es importante que entienda las diversas relaciones de los diagramas de clase y cómo afectan a su solución. Las hemos enumerado a continuación con ejemplos.
Las clases están interrelacionadas entre sí de maneras específicas. En particular, las relaciones en los diagramas de clase incluyen diferentes tipos de conexiones lógicas. Los siguientes son los tipos de conexiones lógicas que son posibles en UML:
Esto ocurre cuando una clase puede tener múltiples funciones o responsabilidades. Por ejemplo, un miembro del personal que trabaja en un aeropuerto puede ser un piloto, un ingeniero de aviación, un despachador de billetes, un guardia o un miembro de la tripulación de mantenimiento. Si el miembro de la tripulación de mantenimiento es gestionado por el ingeniero de aviación, podría haber una relación de gestión por en dos instancias de la misma clase.
es la asociación lógica activa cuando se representa la cardinalidad de una clase en relación con otra. Por ejemplo, una flota puede incluir varios aviones, mientras que un avión comercial puede contener de cero a muchos pasajeros. La notación 0..* en el diagrama significa «de cero a muchos».
El diagrama de clases describe
Generalización (interfaz de automatización).Una Generalización describe una relación entre los siguientes elementos:- Una Actividad y otra Actividad.- Un Actor y otro Actor.- Una Clase y otra Clase o Interfaz.- Un Tipo de Datos y otro Tipo de Datos.- Una Interfaz y otra Interfaz o Clase. – Una señal y otra señal.- Un caso de uso y otro caso de uso.Si necesita averiguar si la herencia está configurada para un elemento, puede hacerlo de las siguientes maneras:- En un diagrama, haga clic con el botón derecho del ratón en el elemento y rellene los elementos secundarios o superiores.- Haga clic con el botón derecho del ratón en el elemento, apunte a Informe y haga clic en Detalles. El informe que se genera en el panel de salida registrará si el elemento es una especialización o especializado.- Haga clic con el botón derecho del ratón en el elemento, apunte a Buscar y luego haga clic en En el navegador de relaciones. A continuación, puede expandir el elemento y, a través de las subcarpetas Padre/Super<tipo de elemento> e Hijo/Sub<tipo de elemento>, determinar de qué elementos se hereda y de qué elementos se hereda.En los paneles del Modelador, un símbolo de atajo en el icono de la Generalización indica que el elemento es una
Generalización de Uml
Ilustre las clases con rectángulos divididos en compartimentos. Coloque el nombre de la clase en la primera partición (centrado, en negrita y en mayúsculas), enumere los atributos en la segunda partición (alineado a la izquierda, sin negrita y en minúsculas) y escriba las operaciones en la tercera.
Utilice marcadores de visibilidad para indicar quién puede acceder a la información contenida en una clase. La visibilidad privada, denotada con un signo -, oculta la información de cualquier cosa fuera de la partición de la clase. La visibilidad pública, indicada con un signo +, permite a todas las demás clases ver la información marcada. La visibilidad protegida, denotada con un signo #, permite a las clases hijas acceder a la información que han heredado de una clase padre.
Las asociaciones representan relaciones estáticas entre clases. Coloque los nombres de las asociaciones por encima, por encima o por debajo de la línea de asociación. Utilice una flecha rellena para indicar la dirección de la relación. Coloque los roles cerca del final de una asociación. Los roles representan la forma en que las dos clases se ven entre sí.
Coloque anotaciones de multiplicidad cerca de los extremos de una asociación. Estos símbolos indican el número de instancias de una clase vinculadas a una instancia de la otra clase. Por ejemplo, una empresa tendrá uno o más empleados, pero cada empleado trabaja para una sola empresa.
Lista del diagrama de clases
Pero no estoy seguro de si debo generar la clase Book y hacer dos subclases para textbook y reference book. Mi justificación es que creo que libro de texto y libro de referencia utilizan el mismo atributo y método. La generalización puede no ser necesaria.
En general la respuesta depende de los requisitos funcionales, pero me orientaría a no especificar la diferencia entre libro de texto y libro de referencia, porque al final siguen siendo libros, sin ninguna especificación o método particular. Por lo tanto, excluiría la generalización y también la adición de un atributo de tipo. A lo sumo, si se necesita distinguir entre los dos tipos de libros, se puede decir que un estudiante tiene dos listas diferentes de libros prestados, los libros del plan de estudios y los libros de referencia.