Code Monkey home page Code Monkey logo

proyecto-tfg's Introduction

Trabajo de Fin de Grado: Memes para todos

  • Tutor: Juan Julián Merelo Guervós @JJ
  • Autor: Daniel González Serrano @danigonzser

Documentación

GitHub Actions Workflow Status

La documentación está realizada con LaTeX por lo tanto es necesario compilar la memoria para generar el archivo PDF.

Primero, hay que comprobar la ortografía y gramática con TeXtidote para ello:

cd doc
textidote proyecto.tex > /ruta/donde/queremos/el/informe/report.html

Lo siguiente es compilar la memoria. Para ello, solo haría falta instalar en nuestra distribución la utilidad make:

sudo apt-get install make

Seguidamente, compilamos la memoria:

make

En el archivo Makefile se especifican e instalan las dependencias necesarias para compilar la memoria, estas son:

  • texlive
  • texlive-fonts-extra
  • texlive-lang-spanish

Licencia

Este proyecto tiene la licencia GPLv3.

GPLv3 License

proyecto-tfg's People

Contributors

danigonzser avatar

Watchers

 avatar

proyecto-tfg's Issues

La memoria debe compilar correctamente

Y si aparece algún error de compilación, debemos saberlo inmediatamente (y siempre antes de fusionar el PR correspondiente). Tanto #2 como el tutor necesitan que compile correctamente.

Falta de comprensión del proyecto en la introducción

La interpretación del proyecto existente en la introducción no concuerda ni está alineada con la idea inicial y principal del proyecto por lo que hay que realizar una revisión y una posterior reescritura de la misma.

No existe un análisis del problema

Esta issue, que aborda la falta de un análisis del problema, está directamente relacionada con #2 ya que sin un análisis detallado del problema, es difícil garantizar que la memoria del proyecto sea clara y coherente, lo cual es esencial para cumplir con los requisitos de los tutores y el tribunal.

Documentar este análisis no solo mejorará la calidad de la memoria, sino que también asegurará que tanto tutor como tribunal tengan una comprensión común y precisa de los desafíos a abordar, alineando así todas las historias de usuario pertinentes con los objetivos del proyecto.

Proceso de selección de tecnología para el desarrollo del proyecto.

Aún no existe el proceso de selección de tecnología para el proyecto el cual debe estar reflejado en la memoria.

Se tiene que realizar una elección de tecnología (el lenguaje de programación va de la mano con la tecnología) de la parte del diseño. Por lo tanto antes se debe hacer:

[HD08] Versionado de memes

Se debe manejar el versionado de memes, permitiendo a los usuarios acceder a versiones anteriores y restaurarlas en caso de ser necesario.

[HD06] Búsqueda avanzada de memes

Se debe gestionar la funcionalidad de búsqueda de memes, permitiendo a los usuarios encontrar memes específicos basándose en diferentes filtros, queries, etiquetas, etc.

La introducción debe dejar bien claro qué problema se va a resolver, y para quién.

En la introducción, antes de pasar a cualquier otra cosa, se tienen que formular los objetivos generales del proyecto. Los objetivos siempre van a tener la forma: Se va tratar de resolver el problema X para la persona y. Más adelante se especificará en historias de usuario, y milestones, pero el problema debe quedar claro desde el principio. Por supuesto, el problema qu ese describa tiene que tener relación con el título del proyecto, que es lo que ha sido aprobado por la comisión (y lo que va a evaluar #2).

La memoria no contiene una introducción

La memoria debe contener una introducción donde se escriba acerca de la motivación, descripción y objetivos del problema a abordar.

  • Motivación.
  • Descripción del problema.
  • Objetivos.

No existe una descripción de cómo se va a organizar la memoria

Debido al comentario se ha decidido crear una issue en relación a la creación de una descripción de la memoria, de la dirección del repositorio, etc. Todo esto para satisfacer a #2. Las posibles soluciones serían:

  • Una subsección más dentro del capítulo de la introducción.
  • Otro capítulo en el que se exponga todo esto.

Se ha decidido realizar todo esto en el capítulo 4 referente a la planificación. Se actualizará la memoria respecto a lo ya realizado en el TFG junto con las decisiones tomadas y sus respectivas justificaciones.

Revisión de criterios y documentación de decisiones

Issue para tenerlo en cuenta en el capítulo de la implementación creado a raíz de este comentario:

Aparte de que aquí no es relevante, por favor no pongas los criterios que crees que va a querer leer el tribunal en vez de los que usas. Si vas a probar una por una la velocidad de las herramientas usando un benchmark y tomar una decisión con respecto al resultado, hazlo (si es que la velocidad es siquiera relevante, claro). Si no, no lo pongas.
Esto no es un trabajo de una asignatura, es una memoria de un proyecto donde tienes que documentar las decisiones tomadas.

Originally posted by @JJ in #35 (comment)

No existe un capítulo de metodología

Creo que ya lo he mencionado, pero la metodología y la planificación son diferentes. La mentalidad o el marco de desarrollo son una cosa, generalmente incluida en la introducción o en un capítulo de metodología, y la planificación tiene que salir de esa metodología.
Considera, por favor, meter en su propio capítulo todo lo que corresponda a la metodología.

Originally posted by @JJ in #35 (comment)

A partir de este comentario se ha originado este issue que pretender abordar la necesidad de un capítulo de metodología en la memoria. Este capítulo va a ser incremental e iterativo estando presente a lo largo de todo el proyecto incorporando de forma continua las metodologías que se vayan utilizando en el proyecto. Por este motivo, es por lo que este issue no pertenece a ningún milestone.

[HD02] Accesibilidad multidispositivo

La UI debe ser accesible desde cualquier dispositivo, incluyendo ordenadores, tabletas y móviles. Debe ser completamente responsiva, adaptándose a diferentes tamaños de pantalla y resoluciones.

[HD01] Interfaz de usuario sencilla, atractiva y moderna

La UI debe ser intuitiva y fácil de usar, centrada en la simplicidad y claridad. Debe ser visualmente atractiva y moderna, siguiendo las buenas prácticas de UI/UX. El diseño debe facilitar la navegación rápida y eficiente.

Ejemplos de 'personas' poco ajustados con la realidad

Las personas descritas mediante la metodología no se ajustan del todo con la realidad además de ser ejemplos demasiado lejanos. Además, se considerará el utilizar las mismas personas que se mencionen en la introducción para que la memoria se sienta más cohesionada #2 .

Bug con macro de LaTeX \lstset y TeXtidote

Un error con TeXtidote puede bloquear la comprobación gramatical y ortográfica en CI. El bug se debe a que la macro de latex \lstset para el diseño de fragmentos de código no se elimina aun poniéndolo en el argumento de --remove-macros de TeXtidote.
image

Opciones de TeXtidote:

--output html
--check es
--dict ./diccionario/diccionario.es.txt
--ignore sh:seclen,sh:stacked,sh:nonp,sh:nobreak,sh:nsubdiv,sh:figref,lt:es:SPANISH_WORD_REPEAT_BEGINNING_RULE
--remove titlepage,titlepage,centering,textwidth,cleardoublepage,centeroffset,oddsidemargin,evensidemargin,large
--remove-macros cleardoublepage,bfseries,today,tableofcontents,listoffigures,listoftables,lstset,textit

He visto que la issue en el repositorio de TeXtidote puede ser el problema.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.