[en] The objective of this Master thesis is the development of a business web application that optimizes the technical support offered by a series of organizations. Primarily, the software is aimed to optimize the technical support done through text. It doesn't matter If it is done through social media or through chat in the organization page. The software will offer its users a series of decision trees that will adapt to the different requests made by clients. Through the nodes of these trees, users will be able to solve the request almost automatically. This is due to the fact that the nodes will contain the appropriate answers that should be delivered to the clients ready to be copied and pasted easily into the text channel. In case the client is being attended via voice, the user can simply read the answers instead. While the conversation with the client is progressing, the user should advance in the decision tree opening the appropriate nodes considering the client answers. To maximize efficiency multiple users will attend different clients simultaneously within the app. When a user has been waiting for a response for too long, he can abandon it. The system will store exactly where the last user left the client. This allows a second user to attend the same client seamlessly when he responds, and without him noticing that he is talking to different people. Regarding the system architecture, a client-server architecture was chosen as an appropriate option. The server consists of a backend using .NET Framework 5.0 together with Entity Framework and a MariaDB database. For the client side a web application was developed using React.js in addition to another JavaScript packages and libraries that will be covered later in this document. The development process of this project has been made within the ALDABA corporation following a scrum-based methodology. Even though the software was made with a certain enterprise customer in mind, multiple organizations can be managed within the app.

[es] El objetivo de este TFM es el desarrollo de una aplicación web empresarial enfocada a la optimización del soporte técnico ofrecido por una serie de empresas. Principalmente, el software estará enfocado a la optimización del soporte realizado a través de canales de texto, ya sea a través de redes sociales como puede ser WhatsApp o a través de un chat en su propia página web. El software pondrá a disposición de los operarios una serie de árboles de decisión que se adaptarán a las diferentes solicitudes que puedan tener los clientes. A través de los nodos de estos árboles podrán atender a los clientes de forma prácticamente automática, ya que dispondrán de todas las preguntas y respuestas que han de darle al cliente listas para ser fácilmente copiadas y pegadas al canal de texto. En caso de que el cliente sea atendido por un canal de voz, sólo deberá leer las respuestas indicadas por el árbol en cuestión. A medida que la conversación con el cliente avance, los operarios deberán avanzar en el árbol de decisión abriendo los nodos acordes a las respuestas del cliente. Para maximizar la eficiencia, múltiples operadores atenderán a diferentes clientes simultáneamente a través del sistema. Cuando un operario lleve demasiado tiempo esperando la respuesta de un cliente, podrá abandonarlo para no perder el tiempo. El sistema almacenará el punto de la conversación exacto en el que se quedó el operario inicial para que el cliente pueda ser atendido por otro trabajador de forma transparente cuando este responda. En cuanto a la estructura del sistema, se optó por una arquitectura cliente-servidor. El servidor está compuesto por un backend en C# usando .NET Framework 5.0 junto con Entity Framework y una base de datos utilizando MariaDB. El lado cliente de la aplicación se desarrolló utilizando React.js junto con otras librerías o paquetes de JavaScript que resultaron convenientes y se mencionarán más adelante. Todo el proceso de desarrollo se llevó a cabo dentro de la empresa ALDABA siguiendo una metodología de desarrollo basada en SCRUM. Aunque el software se desarrolló con un cliente empresarial específico en mente, dispone de soporte para múltiples entidades independientes que podrán ser gestionadas por el sistema.