## 3 System Description
### Graphical User Interface  
The GUI was conceived to represent all of the information received from the Network Cell Info application run in the Xiaomi mi 10 Lite. It was successfully tested to run on a general-purpose computer that could also be used as the base station for all of the other aspects related to UAV flight planning. As with the other two subsystems, when this was designed, it was expected to have several functional and non-functional requirements that would define how it would behave and the parts that it would be made of. These requirements have been included in Table 6.  
The application was designed with MATLAB's GUIDE tool [36], which can be described as the Integrated Development Environment of the Graphical User Interface. This tool was integrated into MATLAB, which can be described as a computer programming language that uses calculations and algorithms to analyse large amounts of data and present them in visually appealing formats. As far as our proposal is concerned, MATLAB and MATLAB's GUIDE were used to develop the GUI, which was referred to as GALENCODER SENSOR RF. The appearance of the GUI developed for the project when it is idle is shown in Figure 8. It can be seen how it consists of two different areas: the left one used to characterize the information loaded, and the right one with the appearance of the different components of the signal output. \begin{table}
\begin{tabular}{c c} \hline \hline
**Requirement** & **Description** \\ \hline Functional Requirement 1 & The GUI must have a dashboard where signal information can be visualized. \\ Functional Requirement 2 & The GUI must be able to visualize data on a map. \\ Non-functional Requirement 1 & The GUI must run on any regular laptop without having any performance issues. \\ Non-functional Requirement 2 & The GUI must show accurate data about coordinates. \\ Non-functional Requirement 3 & The GUI must show accurate data about altitude. \\ Non-functional Requirement 4 & The GUI must show accurate data about mobile network signals in terms of power. \\ \hline \hline \end{tabular}
\end{table} 
Table 6: GUI requirements. Figure 8: GUI appearance when idle. The developed GUI carries out the following functionalities:  
1. Data load: the data are generated from the measurements collected by the radio frequency sensor (that is to say, the MDAS used to collect information) and can be stored either on an external device or on a server. Files use a Comma Separated Value (CSV) extension. Once located, the file containing the data will be uploaded to the GUI and used for further processing. Note that the operating system that is used belongs to the Windows suite and does not require any further sophistication: if a MATLAB image can be installed and run on a computer, it is capable of running the GUI. MATLAB images in other operating systems will result in using the GUI on them as well. 2. Data pre-processing: due to the noisy environment (in terms of radio frequency) where the measurements are taken, it is necessary to perform a prior analysis of the recorded data to detect anomalies in the recordings. Therefore, it is mandatory to identify outliers, missing values and/or perform a normalization to create a standard data structure that can be interpreted by the GUI. Processing and analysis of measurements involves numerical analysis of the measured values and interpretation of these results. From this process the main features of the measures are extracted, defined as: (a) power levels; (b) power-to-noise ratio levels; (c) frequencies of detected carriers; (d) measurement time intervals; (e) radiofrequency sensor position (latitude, longitude, elevation). 3. Signal measurement representation over a map: this is one of the most prominent functionalities of the GUI; it consists of displaying the numerical values extracted from the measurements in a friendly environment.