Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 86 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,86 @@
# Latex template for students thesis of MatCom
## Writting a Chapter
### Chapter Structure
Each chapter will be structured as follows:
- An **introduction section** which should be concise and no longer than one page. This section must provide answers to the following questions:

- What topic are you going to discuss in the chapter? (Definitions)
- Why is it relevant to discuss that topic? (Context and real life applications)
- How is structured the current chapter? (Content of the rest of the sections)

- **Content sections** in a logical order so each one refers to sections that the reader is already familiar with.

To work in parallel in the same chapter we need to stablish some conventions. All the chapters of the thesis will be in the `document\MainMatter\` directory. I will use the chapter called *"Sistemas de Inteligencia de Negocios"* to illustrate how these conventions will work.

- Each `chapter` will have his own directory with a descriptive name. In this case we will have the `document\MainMatter\BusinessIntelligence\` directory.
- Each `chapter` directory will have the following files:

- A `.tex` main file with the same name as the directory. In this file we will write the introductory section of the chapter and include the files of the chapter's sections. This is how this file should look like:

```LaTex
% Set the name of the chapter and its label
\chapter{Sistemas de Inteligencia de Negocios}\label{chapter:bi-systems}

% Write here the introductory section content

% These commands include the content of the sections files
\include*{MainMatter/BusinessIntelligence/TransactionalSystems}
\include*{MainMatter/BusinessIntelligence/AnalyticalSystems}
\include*{MainMatter/BusinessIntelligence/ETL}
```

- A `.tex` file for each section, each one with a descriptive name and structured as follows:

```LaTex
% Set the name of the section and its label
\section{Online Analytical Processing (OLAP)} \label{section:olap}

% Write here the introduction to the section

% Subsections for the contents
\subsection{Objetivos de los sistemas OLAP}
% Write here...
\subsection{Arquitectura de los sistemas OLAP}
% Write here...
\subsection{Almacenes de datos}
% Write here...
\subsection{Modelo Dimensional}
% Write here...
\subsection{Arquitectura de un almac\'en de datos}
% Write here...
\subsection{Herramientas OLAP}
% Write here...

```

Having separate files for the sections of a chapter will allow us to work together in the same chapter but in different sections. This way we can avoid merge conflicts while working in parallel.

We include the chapters in the main thesis `.tex` file like this:

```LaTex
\include{MainMatter/BusinessIntelligence/BusinessIntelligence}
\include{MainMatter/AutomaticETL/AutomaticETL}
\include{MainMatter/Proposal/Proposal}
\include{MainMatter/Implementation/Implementation}
```

> The difference between `\include{file}` and `\include*{file}` is that the first one will create a new page for the content of the file.

### Tracking progress

For trackign the progress we will use GitHub issues. We will create an issue for each section of a chapter (including the introductory section). Each issue will contain a task list including all the subsections to complete the section.

Each milestone of the project will be completing a chapter and each one will have a provisional deadline.

### Writting a chapter

To write a chapter we will create branches with the following naming convention:

`<user>/<chapter>/<section>/<description>`

For example:

`vicmc99/BusinessIntelligence/TransactionalSystems/Add-Relational-Database-Subsection`

In each pull request you will have to assign me as reviewer

It should never happen to have two branches open on the same section of the same chapter at the same time.
1 change: 1 addition & 0 deletions document/MainMatter/AutomaticETL/AutomaticETL.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
\chapter{Generaci\'on Autom\'atica de Procesos ETL}\label{chapter:auto-etl}
1 change: 0 additions & 1 deletion document/MainMatter/Background.tex

This file was deleted.

16 changes: 16 additions & 0 deletions document/MainMatter/BusinessIntelligence/AnalyticalSystems.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
\section{Online Analytical Processing (OLAP)} \label{section:olap}

\textbf{TODO}: La introducci\'on de esta secci\'on es presentar el concepto de OLAP

El Procesamiento Anal\'itico en L\'inea (\textbf{OLAP}) es una tecnología de organización de grandes bases de datos
comerciales que facilita a los usuarios el an\'alisis de grandes conjuntos de datos multidimensionales de manera
eficiente y efectiva. A diferencia de las bases de datos relacionales tradicionales, que se centran en el procesamiento
de transacciones y la actualización de datos en tiempo real, OLAP se enfoca en el análisis de datos históricos y la
identificación de patrones y tendencias.

\subsection{Objetivos de los sistemas OLAP}
\subsection{Arquitectura de los sistemas OLAP}
\subsection{Almacenes de datos}
\subsection{Modelo Dimensional}
\subsection{Arquitectura de un almac\'en de datos}
\subsection{Herramientas OLAP}
18 changes: 18 additions & 0 deletions document/MainMatter/BusinessIntelligence/BusinessIntelligence.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
\chapter{Sistemas de Inteligencia de Negocios}\label{chapter:bi-systems}

\textbf{TODO}: A\~nadir una breve introducci\'on que cubra los siguientes puntos:
\begin{enumerate}
\item Definici\'on de Inteligencia de Negocios.
\item C\'omo es utilizada la inteligencia de negocios y qu\'e beneficios tiene?
\item Componentes principales de una soluci\'on de inteligencia de negocios
\end{enumerate}
Una breve descripci\'on del contenido del resto del cap\'itulo:
``Las secciones en las que se estructura el resto del cap\'itulo recogen un estudio de los distintos componentes de una soluci\'on
de inteligencia de negocios de forma respectiva. La secci\'on \ref{section:oltp} presenta los sistemas transaccionales...''

\include*{MainMatter/BusinessIntelligence/TransactionalSystems}
\include*{MainMatter/BusinessIntelligence/AnalyticalSystems}
\include*{MainMatter/BusinessIntelligence/ETL}



6 changes: 6 additions & 0 deletions document/MainMatter/BusinessIntelligence/ETL.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
\section{Procesos ETL}\label{section:etl}
TODO: A\~nadir la definici\'on de los procesos ETL
\subsection{Objetivos de los procesos ETL}
\subsection{ETL vs ELT}
\subsection{Operaciones de los Procesos ETL}
\subsection{Herramientas para Procesos ETL}
21 changes: 21 additions & 0 deletions document/MainMatter/BusinessIntelligence/TransactionalSystems.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
\section{Online Transaction Processing (OLTP)} \label{section:oltp}

\textbf{TODO}: La introducci\'on de esta secci\'on es presentar el concepto de OLTP

Claro, la tecnología de procesamiento de transacciones en línea (OLTP) es un sistema crítico en
la infraestructura tecnológica de muchas organizaciones, ya que permite el procesamiento de
transacciones en tiempo real. Esto significa que los datos se actualizan al instante y están
disponibles para su uso inmediato. Los sistemas OLTP se utilizan en una amplia variedad de
aplicaciones, desde la banca y las finanzas hasta el comercio electrónico y la atención médica.

\subsection{Objetivos de los sistemas OLTP}
\subsection{Arquitectura de los sistemas OLTP}

los sistemas OLTP se basan en una arquitectura cliente-servidor, donde los clientes envían
solicitudes al servidor para realizar transacciones en la base de datos. El servidor procesa
estas solicitudes y actualiza la base de datos en tiempo real, lo que permite una respuesta
rápida a las solicitudes de los clientes. Los sistemas OLTP también utilizan técnicas de
concurrencia y control de transacciones para garantizar la integridad de los datos y prevenir
problemas como la corrupción de datos o la pérdida de información.

\subsection{Modelo Relacional}
10 changes: 7 additions & 3 deletions document/Thesis.tex
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
\usepackage{xcolor}
\usepackage{multicol}
\usepackage{graphicx}
\usepackage{newclude}
\floatstyle{plaintop}
\restylefloat{table}
\addbibresource{Bibliography.bib}
Expand Down Expand Up @@ -89,9 +90,12 @@
\mainmatter

\include{MainMatter/Introduction}
\include{MainMatter/Background}
\include{MainMatter/Proposal}
\include{MainMatter/Implementation}

% Business Intelligence section
\include{MainMatter/BusinessIntelligence/BusinessIntelligence}
\include{MainMatter/AutomaticETL/AutomaticETL}
\include{MainMatter/Proposal/Proposal}
\include{MainMatter/Implementation/Implementation}

\backmatter

Expand Down
6 changes: 3 additions & 3 deletions document/uhthesis.cls
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
\RequirePackage{csquotes}
\RequirePackage[
style=apa,
citestyle=authoryear,
citestyle=numeric,
hyperref=true,
backref=true
]{biblatex}
Expand Down Expand Up @@ -77,14 +77,14 @@
\DeclareCiteCommand{\cite}
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\printtext[bibhyperref]{\usebibmacro{cite}}}
\printtext[bibhyperref]{[\usebibmacro{cite}]}}
{\multicitedelim}
{\usebibmacro{postnote}}

\DeclareCiteCommand*{\cite}
{\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\printtext[bibhyperref]{\usebibmacro{citeyear}}}
\printtext[bibhyperref]{\usebibmacro{cite}}}
{\multicitedelim}
{\usebibmacro{postnote}}

Expand Down