B3 - T4 - UML 2 Flashcards
¿Qué representan los diagramas de casos de uso?
Representan la interacción entre los actores externos (usuarios o sistemas externos) y el sistema, ayudando a entender qué funcionalidades ofrece desde la perspectiva del usuario.
¿Cuál es el propósito de un diagrama de casos de uso?
Modelar la interacción entre actores externos y el sistema para identificar las funcionalidades que este debe proporcionar.
¿Qué es un actor en un diagrama de casos de uso?
Es una entidad externa (usuario, sistema u organización) que interactúa con el sistema.
¿Qué es un caso de uso?
Representa una funcionalidad o acción específica que el sistema ofrece a los actores.
¿Qué representa la relación entre un actor y un caso de uso?
Indica que el actor participa en el caso de uso.
¿Qué significa una relación «extend» en un diagrama de casos de uso?
Señala que un caso de uso puede extenderse opcionalmente bajo ciertas condiciones.
¿Qué significa una relación «include» en un diagrama de casos de uso?
Indica que un caso de uso incluye a otro como parte obligatoria de su comportamiento.
¿Qué es el sistema en un diagrama de casos de uso?
Es el entorno que contiene los casos de uso y define el alcance del sistema que se está modelando.
¿Pueden los actores heredar características en un diagrama de casos de uso?
Sí, existe una relación de herencia entre actores.
¿Todos los casos de uso tienen el mismo tamaño?
No, los casos de uso pueden variar en su nivel de detalle y tamaño.
¿Existen casos de uso abstractos?
No, en los diagramas de casos de uso no existen casos abstractos, como ‘Gestionar…’.
¿Cómo se pueden organizar los casos de uso?
Se pueden agrupar en paquetes o subsistemas.
¿Qué diferencia tienen los casos de uso con los diagramas de flujo de datos (DFD)?
Los casos de uso no ‘explotan’ como los diagramas de flujo de datos; se centran en interacciones y no en desglosar procesos.
¿Qué ejemplo práctico puedes dar para un caso de uso?
‘Registrar usuario’ puede ser un caso de uso, con el actor ‘Cliente’ participando en la acción.
¿Cuándo usarías una relación «extend»?
Para modelar una funcionalidad opcional, como ‘Cambiar contraseña’ que solo ocurre bajo ciertas condiciones.
¿Cuándo usarías una relación «include»?
Para dividir comportamientos obligatorios, por ejemplo, ‘Procesar pago’ incluye ‘Validar tarjeta’.
¿Qué tipo de sistemas se benefician de los diagramas de casos de uso?
Sistemas orientados al usuario, donde es crucial entender qué funcionalidades específicas se requieren.
¿Qué representa un diagrama de clases?
Representa la vista estática del sistema, mostrando clases, atributos, métodos y relaciones como asociación, herencia, composición y agregación.
¿De qué tipo de vista del sistema forma parte el diagrama de clases?
De la vista estática del sistema.
¿Cómo se representa una clase en un diagrama de clases?
Por un rectángulo dividido en tres partes: Nombre de la clase, Atributos, Métodos.
¿Qué indican los símbolos +, # y - en los atributos de una clase?
+ Público: accesible desde cualquier lugar.
# Protegido: accesible solo desde la clase y sus subclases.
- Privado: accesible solo dentro de la clase.
¿Qué es un atributo en una clase?
Es una propiedad o característica que describe la información mantenida por la clase.
¿Qué es un método en una clase?
Es una operación o función que define el comportamiento de la clase.
¿Qué es una relación de asociación?
Es una relación estructural que conecta dos o más clases sin una dependencia fuerte entre ellas.
Ejemplo: Cliente → Pedido.
¿Qué es una relación de herencia o generalización?
Es una relación jerárquica donde una subclase hereda atributos y métodos de una superclase.
¿Qué simboliza un triángulo blanco en un diagrama de clases?
Una relación de herencia o generalización.
¿Qué diferencia hay entre composición y agregación?
Composición: Relación fuerte, el ciclo de vida del componente está ligado al contenedor. Si este se destruye, el componente también.
Agregación: Relación más débil, el ciclo de vida del componente es independiente del contenedor.
¿Cómo se representa una relación de composición?
Con un rombo relleno.
Ejemplo: Casa ◆────── Habitación.
¿Cómo se representa una relación de agregación?
Con un rombo sin rellenar.
Ejemplo: Curso ◇────── Estudiante.
¿Qué es la multiplicidad en una relación?
Es una restricción que indica cuántas instancias de una clase pueden relacionarse con otra.
Por ejemplo, 1..* indica al menos una.
¿Qué significa * en la multiplicidad de una relación?
Significa ‘0 o más’ instancias.
¿Qué es una clase origen y una clase destino en una relación?
Clase origen: Es la clase desde la cual se inicia la relación.
Clase destino: Es la clase hacia la cual apunta la relación.
Da un ejemplo de una relación de asociación.
Cliente → Pedido: indica que un cliente puede realizar pedidos.
Da un ejemplo de una relación de herencia.
Vehículo → Coche: donde Coche hereda atributos y métodos de Vehículo.
Da un ejemplo de una relación de composición.
Casa ◆────── Habitación: las habitaciones dependen completamente de la casa.
Da un ejemplo de una relación de agregación.
Curso ◇────── Estudiante: los estudiantes existen independientemente del curso.
¿Qué ventajas ofrece el diagrama de clases en el diseño orientado a objetos?
Permite visualizar y modelar la estructura del sistema, destacando relaciones, atributos y métodos.
¿Cómo pueden ser útiles las relaciones de composición?
Para modelar elementos que tienen una relación de contención fuerte, como partes que no pueden existir sin el todo.
¿Cómo se utilizan las relaciones de herencia en el diseño de software?
Para reutilizar código y organizar jerarquías de clases que comparten atributos y métodos.
¿Por qué se recomienda usar diagramas de clases en proyectos grandes?
Porque ayudan a desglosar la estructura del sistema y organizan las relaciones entre clases de manera clara.
¿Qué es un diagrama de objetos?
Es una representación que muestra instancias específicas del diagrama de clases, representando objetos concretos en un momento específico.
¿Qué relación tiene el diagrama de objetos con el diagrama de clases?
El diagrama de objetos es una instancia del diagrama de clases, donde se modelan ejemplos concretos de las clases definidas.
¿Qué permite visualizar un diagrama de objetos?
El estado actual de un sistema en ejecución.
¿Qué representan los objetos en un diagrama de objetos?
Representan instancias concretas de las clases definidas en el diagrama de clases.
¿Cómo están conectados los objetos en un diagrama de objetos?
A través de ‘enlaces’, que representan relaciones entre los objetos.