Tesis

descripción detallada de mi trabajo de tesis

Tesis. Análisis, Diseño e Implementación de un Administrador de Torneos de Ajedrez

A mis compañeros y futuros colegas de la Facultad de Ingeniería Informática de la PUCP que me han estado consultando sobre el modelo de la documentación de la memoria descriptiva y el anexo del trabajo de tesis, les comparto el documento de mi trabajo de tesis completo para que puedan tomarlo como guía para sus futuros proyectos:

Resumen:

En el presente trabajo se realizó el análisis, diseño e implementación de un sistema administrador de torneos de ajedrez que se propone como solución a la falta de una herramienta adecuada que administre en forma eficiente este tipo de eventos. Se resalta el hecho que por primera vez en este tipo de soluciones se integra en un único interfaz la gestión de jugadores dentro de un torneo con la administración de sus partidas jugadas.

Entre las tareas implementadas en el producto de este trabajo se pueden enumerar las siguientes: establecer el tipo de torneo a jugar, registrar jugadores en el sistema, inscribirlos en un torneo, crear categorías, obtener reportes con los resultados de las rondas jugadas o de las estadísticas generales del torneo, gestionar las partidas jugadas, obtener reportes de las partidas jugadas, calcular las nuevas valoraciones de habilidad de juego de los jugadores (conocida como ELO) y obtener mecanismos de desempate en caso de igualdad en puntajes.

Cabe indicar que en este trabajo se optó por implementar un procedimiento de emparejamiento de jugadores a lo largo de las rondas de un torneo en el sistema suizo que mejora el tiempo de respuesta en la generación de las parejas según los procedimientos establecidos por los reglamentos de la Federación Internacional de Ajedrez (FIDE).

Tesis. Análisis, Diseño e Implementación de un Administrador de Torneos de Ajedrez (más…)

Capítulo 5. Observaciones, Conclusiones y Recomendaciones

conclusiones

En este capítulo, se presentan las conclusiones obtenidas durante el trabajo desarrollado en la presente tesis y también se presentan las consideraciones a evaluar para un futuro, tanto de la investigación de nuevas líneas de aplicación, como del desarrollo de nuevas alternativas vinculadas al desarrollo del juego de ajedrez.

(más…)

Capítulo 4. Flujo de Administración de un torneo tipo ‘Sistema Suizo’

tablero de ajedrez

A continuación se procederá a mostrar un proceso de emparejamiento de jugadores en un torneo tipo suizo.

(más…)

Capítulo 4. Descripción de Algoritmos utilizados en el Sistema

copa ajedrez

En esta sección se detalla el funcionamiento del algoritmo de generación de emparejamiento entre jugadores para torneos del tipo suizo y Round Robin.

Reglas de Emparejamiento en Torneos de tipo Sistema Suizo

A continuación, se describen las reglas generales sobre generación de emparejamientos para torneos suizos entre jugadores:

1. El número de rondas a disputar debe anunciarse de antemano.

2. Dos jugadores sólo se enfrentan entre sí una vez.

3. Los jugadores serán pareados con otros del mismo puntaje, o el puntaje más cercano.
(más…)

Capítulo 4. Justificación para Utilización de Entorno de Desarrollo Netbeans

netbeans

Se presenta un cuadro de comparación de entornos de desarrollo considerados como candidatos para la elaboración del presente proyecto de tesis.

Instalación (Peso:2)

NetBeans 5.5 (Peso:5) Simple.
Eclipse 3.3 (Peso:4) Guía de instalación no intuitiva.
IntelliJ (Peso:5) Simple.

(más…)

Capítulo 4. Justificación para Utilización de Gestor de Base de Datos SQLITE

sqlite

A continuación se presenta un cuadro de comparación de los gestores de base de datos considerados como candidatos para la elaboración del presente proyecto de tesis.

Alcance (Peso:2)

MySQL (Peso:5) Este gestor está orientado para desarrollos de mediana envergadura.
PostgreSQL (Peso:5) PostgreSQL está orientado a la gestión de base de datos medianos y grandes
SQLITE (Peso:5) SQLite se orienta a la gestión de proyectos de envergadura media: programas de escritorio, respaldo de datos y sitios Web.

(más…)

Capítulo 4. Justificación para Utilización de Lenguaje de Programación Java

java logo

A continuación se presenta un cuadro de comparación de los lenguajes de programación considerados como candidatos para la elaboración del presente proyecto de tesis.

Rapidez (Peso: 2)

Java (Peso: 3). Aunque no es tan veloz como C++, la rapidez de ejecución es aceptable para los objetivos de este proyecto.
C++(Peso: 5). C++ es más rápido que estos lenguajes, puesto que genera código nativo de cada máquina.
Visual Basic(Peso: 3). Su velocidad no es comparable a la de C++ pero se acepta para los objetivos del proyecto.

Facilidad de lectura de código (Peso: 2)

Java(Peso: 5). Es de fácil lectura.
C++(Peso: 4). Su flexibilidad hace que sea más difícil de entender que los demás lenguajes.
Visual Basic(Peso: 5). Es de fácil lectura.
(más…)

Capítulo 4. Construcción. Criterios para Justificación de Utilización de Herramientas

evaluacion de criterios de construccion

Este capítulo se centra en los procesos relacionados: evaluación de diferentes soluciones para la selección de las herramientas más adecuadas en la construcción del presente sistema de información y explicación de algoritmos utilizados en la implementación del mismo sistema.
(más…)

Capítulo 3. Definición de las Pantallas del Sistema

ajedrez y la computadora

El objetivo de esta sección del documento es especificar cada formato individual de la interfaz de la pantalla. En la definición de cada pantalla se consideran aquellos aspectos que son importantes para el diseño y construcción del sistema.

Ventana de Inicio del Sistema

Las características principales de la ventana de inicio del sistema son descritas en la siguiente tabla:

ventana principal

En la figura se muestra la ventana de Inicio del Sistema. La pantalla despliega una tabla en la parte central de la ventana que muestra la lista de torneos que todavía no han concluido. En la parte inferior se muestran el botón “Crear Torneo” el cual abre la ventana de creación de torneos y el botón “Abrir Torneo” que abre la ventana de gestión de un torneo.
En el panel “Ver / Editar Partidas” de la venta se ubican los botones:”Ingresar Partidas”, el botón “Leer Partidas”, el botón “Buscar Partidas” y el botón “Jugar Partidas” el cual abre la ventana que permite jugar ajedrez contra el sistema.
(más…)

Capítulo 3. Diseño. Principios Generales de Interfaz

Principios generales

La interfaz de usuario será gráfica e interactiva, del tipo estándar utilizado en todas las aplicaciones basadas en ventanas. Los lineamientos principales para la construcción de la interfaz de usuario son los siguientes:

1. La activación de las distintas operaciones del sistema se produce mediante una barra de menús y botones opcionales.

2. Las pantallas tendrán, en general, un botón para aceptar los datos provistos y otro para cancelarlos y, dependiendo de la funcionalidad provista, botones auxiliares para realizar otro tipo de operaciones.
(más…)