Skip to content

General Diagrams

Juan Sebastián Sanchez Jiménez edited this page Oct 3, 2026 · 10 revisions

Deployment Diagram

  • Description: This diagram represents the physical deployment and infrastructure architecture for executing Level 5: The NEXUS Core within SIEAC. It maps the complete data flow starting from the player's mobile device (where the Flutter app renders Luna's UI interface and manages local logic for Puzzles 1 through 4), routing through the network infrastructure over HTTPS/443, to the central Dockerized VPS server hosting the Level 5 Controller for remote validation of puzzle solutions and the final 1013 security code, and ultimately persisting player state and timestamps into the dedicated PostgreSQL database server (Port 5432).

  • Objective: To specify the deployment topology and infrastructure requirements for Level 5, establishing a clear separation of concerns between the mobile client and remote backend services, while defining the necessary communication protocols (HTTPS and TCP) and network ports required to validate puzzle progress, manage key inventory, and securely log player completion times in real-time


SIEAC_deployment_diagram_EN drawio

General Arquitecture

  • Description:This General architecture diagram illustrates the three-tiered software system of the K-9 Escape Room platform, comprising the Presentation Layer (Flutter application), Business Logic Layer (SIEAC API Backend), and Data Layer (PostgreSQL Database). It maps out the structural breakdown of client-side components, data flow via REST API, backend controllers, and database entities to show how user actions and level progression interact across the entire stack.

  • Objective:The main objective of this diagram is to provide a clear, high-level blueprint of the system's structural organization and component communication for developers and stakeholders. It serves to streamline system integration, clarify data dependencies between the mobile interface and backend services, and facilitate efficient maintenance and future scalability.


WhatsApp Image 2026-10-01 at 10 45 57 AM

Component Diagram

  • Description: It shows the internal structure of Level 5 as independent software pieces and the interfaces that connect them. The Level 5 Screen communicates with the Coordinator, which manages the four puzzles through a single shared interface (IPuzzle). The puzzles update the Local State Manager (keys from 0/5 to 5/5), which saves progress in Local Storage. When validation is needed, the Mobile HTTP Client (Dio) uses the IValidation interface of the Level 5 Controller, which validates puzzles 1 to 4 and code 1013, and queries the SIEAC database through the Data Access Module.

  • Objective: To document how the Level 5 code is organized, with a separate responsibility for each component. It serves as a guide for building and testing it: the puzzles are interchangeable because they share the same interface, and the state of the keys lives in a single place.


SIEAC_level5_component_diagram_EN drawio

Class Diagram

SIEAC_diagrama_clases_estructura_UML (1) drawio (1)
  • Description: The diagram shows the class and component structure of a video game system. It centralizes the logic in the main controller (GameController), which manages the game state, loads levels and puzzles (Level, Puzzle), and handles interaction with a character (DogCharacter). It also manages player sessions and their tokens (PlayerSession, TokenService), recording progress in GameProgress, which is synchronized via ApiService for persistent storage in a PostgreSQL database.

  • Objective: Structure the object-oriented architecture to control the game flow, manage user sessions, update level/puzzle progress, and synchronize this information with an external database via an API service



Activity Diagram

  • Description: This diagram is structured using three swimlanes to separate responsibilities among the main components: Luna (The Dog): Represents player-driven actions, such as entering the core area, submitting answers for each puzzle, and obtaining the final reward.

NEXUS (AI/NPC): Represents the game's interactive AI, responsible for appearing, presenting four sequential logic/programming puzzles (sequences, conditionals, loops, and direct code entry), and delivering narrative dialogue upon success.

Core System: Handles background game logic, including evaluating inputs against decision nodes, triggering retry loops on incorrect answers, generating rewards, and saving player progress.

Workflow Summary: Initiation: Luna enters the NEXUS Core, prompting NEXUS to appear. Puzzle Challenges: NEXUS presents four consecutive challenges (Sequence, Condition, Loop, and Code). Validation Loops: The Core System checks each answer provided by Luna. An incorrect response loops back to the input step, while a correct response advances to the next puzzle. Resolution: After solving all four puzzles, NEXUS delivers concluding dialogue, the Core System saves progress and generates a reward, and Luna acquires KEY 5 to finish the level.

  • Objective: The primary objective of this activity diagram is to model the interactive gameplay logic and execution flow for Level 5: The Core of Nexus. It defines the step-by-step sequential interactions between the player character (Luna), the non-player character/AI (NEXUS), and the backend logic (Core System) as the player solves a series of programming and logic puzzles to earn Key 5 and save progress.

activity diagram

Clone this wiki locally