# New Model for Defining and Implementing Performance Tests
## 3 Problem Formulation and Proposed Solution
### Topological Pattern of Performance Test Execution  
A precisely defined set of tests, presented in the form of the matrix presented in Figure 1, can be implemented in a real or laboratory test environment in the next step. In order to standardize this process, the authors of this work proposed the introduction of a topological pattern for the implementation of performance tests, which is shown in Figure 3. As illustrated in Figure 3, the pattern presented in this work is based on three layers: network traffic generator layer (L1), network layer (L2), and application layer (L3). The first layer (L1) includes the device/application/server that generates network/application traffic at the appropriate intensity or simulates user sessions or traffic generated by a given application. The L1 layer lists a set of elements \(G=\{g_{0},g_{1},\ldots g_{u}\},u\in\mathbb{N}\), which defines a set of tools and techniques for generating workload and is specific to a particular organization. An example element of set \(G\) is shown in Figure 4. The generated load is configurable, allowing the simulation of various network traffic scenarios, from typical loads to extreme stress conditions. All simulated traffic is redirected to the system under test through the network layer marked with a green arrow input (INPUT). Figure 2: Dependency matrix of objectives and test types for file server. The network layer (L2) is the network that transits the data flow between the traffic generator and the server/application. Within the L2 layer, a set of elements \(N=\{n_{0},n_{1},\ldots n_{r}\},r\in\mathbb{N}\) is specified, which defines a set of tools and techniques for traffic transmission and is specific to the organization. An example set \(N\) is shown in Figure 4. The main aspect when testing this layer is to monitor and analyze the behavior of the network under load, including latency, packet loss, and the performance of individual network modules. The network can be both local (LAN) or distributed (WAN) and feature varying levels of infrastructure complexity (multiple switches, routers, or firewalls). However, it should be noted that it should strive for a situation where the network layer is the least complex possible because otherwise the tester (the engineer conducting the test) must have perfect knowledge of the parameters of all network devices through which traffic passes [34; 35]. In this layer, it is possible to place additional components that will simulate adverse network conditions, packet loss, packet reordering, jitter, or introduce additional delays. The third layer is the application layer, in which the server resides along with the hardware infrastructure. By hardware architecture, the authors mean not only physical servers but also the cloud computing environment within which the application is operated. The server handles incoming requests and responds to them, allowing us to evaluate its performance, stability, and scalability. These measurements are usually performed at the L1 layer. In addition, during load testing, various parameters are measured, such as response time, throughput, and resource utilization (CPU, memory, disk)--in this case, it is necessary to access elements/agents installed in the L3 layer. Within the L3 layer, a set of elements  
Figure 4: Examples of elements of sets \(G,N,C\). Figure 3: Topological pattern of performance test execution. \(C=\{c_{0},c_{1},\ldots c_{z}\},z\in\mathbb{N}\) is specified. They correspond to the components of the hardware and software platform on which the application runs (see Figure 4). These components independently or using dedicated agents send data to the DATA COLLECTOR, to which data from the other layers, L1 and L2, are also sent. It is important that the components operating in each layer have synchronized system clocks, for example, using the Network Time Protocol (NTP) protocol. This allows the DATA ANALYZER to correlate events from each layer among themselves and draw conclusions.