Tarjetas CRC
Este es el resultado de la actividad realizada en clase, con el objetivo de proponer las "entidades que están involucradas en el funcionamiento del sistema", como un paso previo al diseño del sistema.
Entidades con responsabilidades definidas
Cliente
| Responsabilidades | Colaboradores |
|---|---|
| Crear partida | Configurar partida |
| Dar datos a comunicación-cliente | Comunicación cliente |
| Recibir confirmación de su creación | Comunicación cliente |
| Llamar al señor visión | Visión |
| Recibo las acciones del cliente | Visión |
| Llamar a Comunicación cliente para unir a partida | Comunicación cliente |
| Confirmación unión | Comunicación cliente |
| Comunicar a visión del cambio | Visión |
| Visión me dice que se sale del juego | |
| Hablar con cliente | Comunicación cliente |
| Me dicen que se ha terminado | Comunicación cliente |
| Pasar a visión los detalles | Visión |
Comunicación-Cliente
| Responsabilidades | Colaboradores |
|---|---|
| Comunicar cliente con el servidor | Módulo de comunicaciones |
Usuario
| Responsabilidades | Colaboradores |
|---|---|
| Mantener datos del usuario así como los fragmentos de comunicación | BaseDeDatos |
| Recibir petición de puntos y la devuelvo a partida después de obtenerla de la BaseDeDatos | BaseDeDatos, Partida |
| Recibir nueva puntuación y actualizar la BBDD | BaseDeDatos |
Mensaje
| Responsabilidades | Colaboradores |
|---|---|
| Serializar datos (Cu4) |
Metadatos
| Responsabilidades | Colaboradores |
|---|---|
| Crear instancia |
Base de Datos
| Responsabilidades | Colaboradores |
|---|---|
| Registrar una partida creada | Juego |
| Actualizar partida creada (a jugadores) | Juego |
| Proporcionar o actualizar puntos de un usuario | Comunicación Cliente |
Modulo Comunicaciones
| Responsabilidades | Colaboradores |
|---|---|
| Recibir petición de partida y crearla | MetaDatos, Mensaje |
| Comunicar módulos con cliente, creando mateadatos y con ellos un mensaje que se envía | MetaDatos, Mensaje |
| Llevar los usuarios conectados |
Módulo Chat
| Responsabilidades | Colaboradores |
|---|---|
| Crear el/los canal(es) de chat para la partida | |
| Cerrar los canales de chat |
Configurar Partida
| Responsabilidades | Colaboradores |
|---|---|
| Mostrar interfaz para configurar la partida coger valores y devolverlos | Cliente |
Juego
| Responsabilidades | Colaboradores |
|---|---|
| Crear instancia (Cu4) | BaseDeDatos (crea la partida en la BBDD), Partida |
| Recibir datos (Cu5), remitirlos a la partida concreta | Partida |
| Terminar partida, eliminar partida de la colección, actualizar la BBDD | BaseDeDatos (actualizar datos partida) |
Visión
| Responsabilidades | Colaboradores |
|---|---|
| Representar visualmente el estado del juego | Cliente |
| Manejar los eventos y acciones del usuario | Cliente |
| Salir de la partida | Cliente |
Partida
| Responsabilidades | Colaboradores |
|---|---|
| Crear instancia de la clse EstadoPartida pasando los parámentros iniciales | EstadoPartida |
| Crear CHAT | Módulo Chat |
| Pasar control a Juego | Juego |
| comprobar si cabe otro jugador dentro de la partida. Si ya está completa avisa a EstadoPartida para que comience | |
| Comprobar puntos del usuario para ver si se puede unir a la partida. Si no hay problemas crea un nuevo jugador | Usuario |
| Si abandona un jugador, la partida de lo comunica a EstadoPartida y penaliza al jugador | Usuario |
| Si la partida termina, cerrar canales de Chat y actualiza la base de datos, a través de Juego | Usuario, Juego |
EstadoPartida
| Responsabilidades | Colaboradores |
|---|---|
| Inicializar los componentes de la partida | Tablero, dado, carta, baraja, ficha |
| Si un jugador abandona, según el juego se actualizan los datos o se acaba |





