aboutsummaryrefslogtreecommitdiffstats
path: root/chapter
diff options
context:
space:
mode:
authorMitsuo Tokumori <[email protected]>2023-06-07 13:34:45 -0500
committerMitsuo Tokumori <[email protected]>2023-06-07 13:34:45 -0500
commit796609fde3238e632d3bc08fcb186134b661fe49 (patch)
treedd58722516ff4c687bb051b05b455d0e8920c743 /chapter
parentf734026991f16f90a5a436e3d1c159d91f80afc1 (diff)
downloadthesis-796609fde3238e632d3bc08fcb186134b661fe49.tar.gz
thesis-796609fde3238e632d3bc08fcb186134b661fe49.tar.bz2
thesis-796609fde3238e632d3bc08fcb186134b661fe49.zip
Add tools explanation for section 1.3
Diffstat (limited to 'chapter')
-rw-r--r--chapter/10-generalidades.tex242
1 files changed, 236 insertions, 6 deletions
diff --git a/chapter/10-generalidades.tex b/chapter/10-generalidades.tex
index 40af41b..73f1a37 100644
--- a/chapter/10-generalidades.tex
+++ b/chapter/10-generalidades.tex
@@ -608,11 +608,110 @@ verificación de cada resultado.
En esta sección se listan las herramientas, métodos, y procedimientos relevantes
para cumplir los resultados esperados planteados en la sección anterior.
Algunas herramientas son específicas para ciertos resultados esperados, mientras
-que otras son transversales a varios resultados esperados. Se busca
-ser coherente en la selección de herramientas y métodos
-utilizados para la problemática, en este caso la deserción estudiantil
-universitaria detectada de forma tardía desaprovechando los datos disponibles
-de los estudiantes.
+que otras son transversales a varios resultados esperados. En la
+\autoref{tab:herramientas-metodos-procedimientos} se aprecian los métodos,
+procedimientos, y herramientas asociados a cada resultado esperado.
+
+En general, se busca ser coherente en la selección de herramientas y métodos
+utilizados para enfrentar la problemática, en este caso la deserción estudiantil
+universitaria detectada de forma tardía desaprovechando los datos de
+los estudiantes disponible para las universidades.
+
+\begin{table} [H] % htbp
+ \centering
+ \small
+ \caption{Herramientas, métodos, y procedimientos por resultado esperado}
+ \label{tab:herramientas-metodos-procedimientos}
+ \begin{tabular} {*{3}{|p{0.30\linewidth}}|}
+ \hline
+
+ \textbf{Resultado esperado} &
+ \textbf{Métodos y Procedimientos} &
+ \textbf{Herramienta} \\
+ \hline
+ \hline
+
+ \textbf{R1.1} Recolección de datos. &
+ Solicitar conjunto de datos a universidades del país. Revisión de la literatura. &
+ Email. Bases de datos bibliográficos \\
+ \hline
+
+ \textbf{R1.2} Análisis descriptivo y limpieza de datos. &
+ Estadística descriptiva, histogramas &
+ Python, matplotlib \\
+ \hline
+
+ \textbf{R1.3} Transformación de datos. &
+ Metolodogía KDD &
+ Python, pandas \\
+ \hline
+
+ \textbf{R1.4} Análisis de relación. &
+ Regresión logística &
+ Python, matplotlib \\
+ \hline
+
+ \textbf{R1.5} Análisis de correlación. &
+ Mapas de calor &
+ Python, matplotlib \\
+ \hline
+
+ \textbf{R2.1} Identificación de los algoritmos aprendizaje automático de predicción con ayuda de la literatura &
+ Revisión de la literatura &
+ Base de datos bibliográficos \\
+ \hline
+
+ \textbf{R2.2} Implementación de los algoritmos de ML seleccionados que mejor se ajusten a la problemática. &
+ Modelo incremental, KDD &
+ Python, poetry-python, scikit-learn, jupyter notebooks \\
+ \hline
+
+ \textbf{R2.3} Comparación de los algoritmos de ML implementados y selección del mejor modelo según su presición en la predicción &
+ Modelo incremental, KDD &
+ Python, matplotlib \\
+ \hline
+
+ \textbf{R3.1} Catálogo de requisitos. &
+ Metolodogía ágil, User Story Mapping &
+ Google Sheets, draw.io \\
+ \hline
+
+ \textbf{R3.2} Prototipo del sistema. &
+ UI Design &
+ Figma \\
+ \hline
+
+ \textbf{R3.3} Especificación de requisitos. &
+ Metolodogía ágil, User Stories &
+ Google Sheets \\
+ \hline
+
+ \textbf{R3.4} Modelo de base de datos. &
+ Modelo relacional, tercera forma normal &
+ draw.io \\
+ \hline
+
+ \textbf{R3.5} Arquitectura de la solución. &
+ Modelo 4+1 &
+ draw.io \\
+ \hline
+
+ \textbf{R3.6} Implementación del sistema. &
+ Modelo incremental &
+ Git, Github, AWS, Visual Studio Code, PostgreSQL. Backend y Frontend tech stack \\
+ \hline
+
+ \textbf{R3.7} Integración del sistema con los modelos de ML. &
+ Modelo incremental &
+ Git, Github, AWS \\
+ \hline
+
+ \textbf{R3.8} Instalación y configuración del software. &
+ Modelo incremental &
+ Apache Web Server. Markdown, diagramas mermaid \\
+ \hline
+ \end{tabular}
+\end{table}
\subsection{Aprendizaje Automático}
@@ -691,4 +790,135 @@ extremadamente precisos, no son infalibles y siempre existe un margen de error
\autocite{Latif20221051}. Por lo tanto, la interpretación cuidadosa de los
resultados del modelo es fundamental para tomar decisiones informadas y diseñar
estrategias efectivas para prevenir la deserción estudiantil
-\autocite{Alwarthan2022107649, Latif20221051}. \ No newline at end of file
+\autocite{Alwarthan2022107649, Latif20221051}.
+
+\subsection{Bases de datos bibliográficas}
+
+Son bases de datos que contienen información bibliográfica, como referencias y
+citas de libros, artículos, revistas, conferencias, entre otros. Estas bases de
+datos permiten buscar y acceder a la información académica
+\autocite{bases-de-datos-bibliograficas}. Algunos ejemplos incluyen SCOPUS,
+IEEE Xplore, y ACM Digital Library.
+
+\subsection{Python}
+
+Python es un lenguaje de programación popular y de propósito general. En la
+actualidad, es muy popular debido a su sintaxis legible y su enfoque en la
+simplicidad y la eficiencia. Python es utilizado ampliamente en el desarrollo
+de software, análisis de datos, inteligencia artificial, entre otras áreas
+\autocite{python}.
+
+La utilidad de Python se le puede atribuir en gran medida gracias a la
+diversidad de paquetes \textit{open source} disponibles. Para
+desarrollar los resultados esperados relacionados al objetivo \textit{O2},
+se utilizarán las librerías Pandas, NumPy, Matplotlib, y scikit-learn. Es un
+problema común que un proyecto grande, que utiliza muchas librerías, se
+encuentre con conflictos de dependencias. Es decir, que una librería
+necesita una versión más antigua de otra, pero una tercera librería necesita
+la versión más nueva. Para resolver este tipo de conflictos, se utilizará
+el gestor de librerias Poetry.
+% citation needed
+
+\subsection{Matplotlib}
+
+Matplotlib es una biblioteca de visualización en Python. Proporciona
+herramientas para crear gráficos estáticos, gráficos interactivos y
+visualizaciones 3D. Es ampliamente utilizada en el análisis y visualización de
+datos \autocite{matplotlib}.
+
+\subsection{Pandas}
+
+Pandas es una biblioteca de Python utilizada para el análisis y manipulación de
+datos. Proporciona estructuras de datos y funciones que facilitan la limpieza,
+transformación y exploración de datos \autocite{pandas}.
+
+\subsection{Poetry-python}
+
+Poetry es una herramienta de administración de dependencias para proyectos de
+Python. Simplifica la gestión de paquetes y entornos virtuales, permitiendo una
+fácil instalación y distribución de proyectos \autocite{poetry-python}.
+
+\subsection{Scikit-learn}
+
+Scikit-learn es una biblioteca de aprendizaje automático (machine learning) en
+Python. Proporciona una amplia gama de algoritmos y herramientas para la
+construcción y evaluación de modelos de aprendizaje automático \autocite{scikit-learn}.
+
+Existen muchas librarías que facilitan el uso de algorítmos de aprendizaje
+automático. Sin embargo, se eligió scikit-learn por su popularidad,
+diversidad de algoritmos disponibles, y muy buena documentación que facilitan
+el aprendizaje de la librería.
+
+\subsection{Jupyter Notebooks}
+
+Jupyter Notebooks es un entorno interactivo de programación que permite combinar
+código, texto y elementos gráficos en un solo documento. Es ampliamente
+utilizado en el análisis de datos y la experimentación rápida debido a su
+capacidad para ejecutar código en bloques \autocite{jupyter-notebooks}.
+
+\subsection{Google Sheets}
+
+Google Sheets es una aplicación de hojas de cálculo en línea proporcionada por
+Google. Permite crear, editar y colaborar en hojas de cálculo en tiempo real,
+similar a Microsoft Excel \autocite{google-sheets}.
+
+\subsection{Draw.io}
+
+Draw.io es una herramienta en línea para crear diagramas y gráficos. Proporciona
+una interfaz intuitiva y una amplia gama de elementos gráficos para crear
+diagramas de flujo, organigramas, diagramas de red y más \autocite{draw-io}.
+
+\subsection{Figma}
+
+Figma es una herramienta de diseño de interfaces de usuario (UI) y experiencia
+de usuario (UX) basada en la nube. Permite a los diseñadores crear, colaborar y
+prototipar diseños de forma eficiente \autocite{figma}.
+
+\subsection{Git}
+
+Git es un sistema de control de versiones ampliamente utilizado para el
+seguimiento de cambios en archivos y proyectos de software. Permite a los
+desarrolladores colaborar en proyectos y realizar un seguimiento de las
+modificaciones realizadas \autocite{git}.
+
+\subsection{GitHub}
+
+GitHub es una plataforma de alojamiento de código basada en Git. Permite a los
+desarrolladores almacenar, gestionar y colaborar en proyectos de software, y
+proporciona herramientas adicionales como seguimiento de problemas, solicitudes
+de extracción y gestión de versiones \autocite{github}.
+
+\subsection{Visual Studio Code}
+
+Visual Studio Code es un editor de código fuente desarrollado por Microsoft. Es
+altamente personalizable y admite una amplia gama de lenguajes de programación.
+Proporciona características avanzadas como resaltado de sintaxis, depuración y
+control de versiones integrado \autocite{visual-studio-code}.
+
+\subsection{PostgreSQL}
+
+PostgreSQL es un sistema de gestión de bases de datos relacional de código
+abierto. Es conocido por su confiabilidad, robustez y capacidad para manejar
+grandes volúmenes de datos. PostgreSQL es ampliamente utilizado en aplicaciones
+web y empresariales \autocite{postgresql}.
+
+\subsection{Nginx}
+
+Nginx es un servidor web de alto rendimiento y un proxy inverso. Es conocido por
+su capacidad para manejar múltiples solicitudes simultáneas y su eficiencia en
+el manejo del tráfico web. Nginx se utiliza comúnmente como servidor web en
+aplicaciones de producción \autocite{nginx}.
+
+\subsection{Markdown}
+
+Markdown es un lenguaje de etiquetas ligero utilizado para dar formato al texto
+"plano". Es fácil de leer y escribir, y se utiliza comúnmente para crear
+documentación, páginas web y notas de forma rápida y sencilla
+\autocite{markdown}.
+
+\subsection{Diagramas de Mermaid}
+
+Mermaid es una herramienta que permite crear diagramas de flujo, diagramas de
+secuencia y otros tipos de diagramas utilizando una sintaxis de texto sencilla.
+Estos diagramas pueden ser incorporados en documentos o presentaciones para una
+mejor visualización de la información \autocite{mermaid-diagrams}. \ No newline at end of file