Este software fue desarrollado como Proyecto de Aula para la asignatura de Estructuras de Datos en Ingenier铆a de Sistemas e Inform谩tica en la Universidad Pontificia Bolivariana (UPB), durante el primer semestre de 2025 (2025-10). RailLink es un Sistema de Gesti贸n de Trenes de Transporte de Pasajeros dise帽ado con est谩ndares profesionales y arquitect贸nicos de alta calidad.
Este proyecto posee un inmenso valor acad茅mico y l贸gico porque NO utiliza java.util para sus colecciones. Cada estructura de datos fue programada 100% desde cero, incluyendo:
- Listas Enlazadas (Simples, Dobles y Circulares)
- Pilas y Colas
- 脕rboles Binarios
- Tablas Hash (Hashmaps)
- Grafos
El sistema cuenta con un algoritmo avanzado de teor铆a de grafos para validar y calcular la ruta m谩s corta entre estaciones, evaluado en kil贸metros. Esto permite la optimizaci贸n autom谩tica del recorrido que debe hacer el tren (y el pasajero) dentro de nuestra red ferroviaria.
A continuaci贸n, mostraremos c贸mo luce el sistema en acci贸n:
RailLink sigue la rigidad y el desacoplamiento del patr贸n MVC (Modelo-Vista-Controlador):
La gesti贸n e interacci贸n de los modelos internos (Boletos, Estaciones, Pasajeros) se representa de la siguiente manera:
Adem谩s, tenemos una vista general de nuestros componentes integrados:
El n煤cleo de la l贸gica enrutadora trabaja en base a este dise帽o de grafos en kil贸metros:
El software sigue una organizaci贸n modular limpia:
src/main/java/dataStructures/: Colecciones y Algoritmos desde Cero.src/main/java/model/: Entidades de L贸gica de Negocio.src/main/java/view/: Interfaces Gr谩ficas de Usuario.src/main/java/controller/: Enlace MVC.src/main/java/database/: Persistencia JSON (Gesti贸n y Control).src/test/: Pruebas Unitarias JUnit 5.
- Clona el repositorio e imp贸rtalo como un proyecto Maven.
- Compila el software:
mvn clean compile. - Ejecuta nuestra suite extendida de pruebas para validar la integridad de las colecciones customizadas:
mvn test
This software was developed as a Classroom Project for the Data Structures course in Systems and Informatics Engineering at Universidad Pontificia Bolivariana (UPB), during the first semester of 2025 (2025-10). RailLink is a Passenger Train Management System designed with high-quality and professional architectural standards.
This project holds an immense academic and logical value because it DOES NOT use java.util for its collections. Every single data structure was programmed 100% from scratch, including:
- Linked Lists (Singly, Doubly, and Circular)
- Stacks and Queues
- Binary Trees
- Hash Tables (Hashmaps)
- Graphs
The system features an advanced graph theory algorithm to validate and calculate the shortest path between stations, evaluated in kilometers. This allows for automatic optimization of the route that the train (and the passenger) must traverse inside our railway network.
Here is what the system looks like in action:
RailLink follows the strictness and decoupling rules of the MVC (Model-View-Controller) pattern:
The management and interaction of internal models (Tickets, Stations, Passengers) are illustrated below:
Additionally, we have a complete overview of our integrated software components:
The core behavior of our shortest-route algorithm relies on the following design based on kilometers:
The software adheres to a clean modular setup:
src/main/java/dataStructures/: Scratch-built Algorithms and Collections.src/main/java/model/: Business Logic Entities.src/main/java/view/: Graphical User Interfaces.src/main/java/controller/: MVC Linker.src/main/java/database/: JSON Persistence capabilities.src/test/: JUnit 5 Unit Tests.
- Clone the repository and import it as a Maven Project.
- Compile the software:
mvn clean compile - Execute our extended test suite to validate the integrity of our custom collections:
mvn test







