## 1 Introduction
Depending on the work the slave will perform, there is a series of steps that must be followed to train the master modules, which are as follows:  
* Pre-programming Work Phase
* Debugging and Error Storage Phase
* Polishing and Common Error Phase
* Monitoring Startup Phase  
Once these four phases are completed, the software will be fully trained to work and resolve errors on its own. Figure 1 shows the basic operation diagram of the SiReTAAPP software. The pre-programming phase of work is when the user enters information into the slave module program for the task they want to perform for subsequent analysis. The debugging and error storage phase is the stage where the master modules will run the slave module, evaluate its performance, detect errors, and save each error with a unique ID for the future. Once the second phase is completed, the polishing and frequent error phase begins. This is where the AI is trained to find ways to resolve the errors that occurred during the execution of the slave module so that if the error occurs again in the future, the AI knows how to resolve it. Errors are stored in a database from which the user can view and resolve each one. Once the error is identified, it is classified. Subsequently, using predefined abstractions--where an abstraction involves the identification of certain characteristics that define an object or an action, and represents a sequence of actions to follow in order to resolve it--the machine is informed about how that error was resolved. The structure of the IRP (Information and Problem Resolution) modules is organized as follows in Figure 2.  
Figure 1: Basic operating diagram of the system. Figure 2: Sequence Diagram of Error Saving in the Software. The error ID is the unique identification number for each error, which the machine can use to apply the abstraction that resolves that specific error. Abstractions are pre-programmed steps that the machine follows to resolve the error. They can range from inspecting the web page you are working on to changing the reference values used by the slave module, searching and downloading necessary drivers, and rewriting the slave module. The description is the error message, the status indicates whether the error has already been resolved, and the machine ID is the identifier in case there are multiple computers in operation. Table 1 describes the main features of the proposal, and Table 2 outlines the advantages of the proposal. In this context, our work aims to contribute to the advancement of self-adaptive software systems by introducing an innovative solution that can effectively address code failures in pre-programmed Internet tasks. Leveraging cutting-edge techniques from the fields of artificial intelligence [26; 27], machine learning [28; 29], and automated reasoning [30; 31], our software possesses the unique ability to self-rewrite its code when it encounters anomalies. By reconfiguring its underlying logic, the software ensures the continuous execution of pre-programmed tasks, even in the presence of unforeseen errors. The main objective of this work is to present the architecture of our self-adaptive software, emphasizing its unique features and discussing its potential applications. Furthermore, we will showcase the results of comprehensive experiments, demonstrating the effectiveness and reliability of the software in real-world scenarios. Our findings indicate that self-adaptation significantly enhances fault tolerance and overall performance of pre-programmed Internet tasks [32; 33], making it a promising avenue for future advancements in the field. Moreover, this software distinguishes itself by its ability to work with multi-task multiprocessing modules [34; 35], which implies greater efficiency and performance in executing pre-programmed tasks. Harnessing distributed processing capability [36; 37] accelerates response times and enhances system scalability, which is particularly relevant in high-performance environments and applications that require intensive data processing.