From 796609fde3238e632d3bc08fcb186134b661fe49 Mon Sep 17 00:00:00 2001
From: Mitsuo Tokumori <rtokumori@pucp.edu.pe>
Date: Wed, 7 Jun 2023 13:34:45 -0500
Subject: Add tools explanation for section 1.3

---
 chapter/10-generalidades.tex | 242 +++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 236 insertions(+), 6 deletions(-)

(limited to 'chapter/10-generalidades.tex')

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
-- 
cgit v1.2.3

