# QoS-Based Pattern Recognition Approach for Web Service Discovery: Ar_WSDS
## 6 Evaluation and Results
### Ar_WSDS Test with Ranking and Selection Algorithms  
Ar_WSDS was compared to OAEQoS [16] and a generic discovery and selection algorithm (GDSA). The first algorithm was a simple method for calculating and analyzing QoS parameters, with the additional factor of checking the access and performance of the service; in the second one, a trivial solution through an exhaustive search was obtained. It consisted of analyzing each service to choose the candidates for the solution to the problem. This process meant that each possible solution was checked with the other ones. OAEQoS was customized such that its input and output parameters generated the list of candidate web services. The frameworks for OAEQoS and GDSA are shown in Algorithms 2 and 3, respectively. Each of the algorithms used similar inputs to Ar_WSDS. However, the ACM was decomposed into more specific data, in order to load the required WS list and its QoS. ```
Input:service_list,service_list_required, and QoS_list_required Result:service_list_candidate with QoS and rank Read service_list_service_list_required, and QoS_list_required; Select WS from service_list, considering service_list_required; fors\(\in\) service_listdo ifs invoked process = truethen  Evaluate invoked failed and bounced;  Update reliability, availability, and response_time;  Calculate OAEQoS value; ifOAEQoS is within the expected QoS_listthen  Calculate rank with the value of OAEQoS;  Append \(s\) and its rank to service_list_candidate;  end if else \(s\) is rejected as a candidate;  end if  end for
```  
**Algorithm 2**OAEQoS algorithm (adapted from [16]). The input QWS Data set (_service_list_) was used. The reliability, availability, and response_time parameters were analyzed. Test 1 was executed using key signal recognition, while test 2 was executed using partial signals. Table 7 shows the WS names used in the test and their corresponding IDs. As already mentioned, these services had replicas that created a significant discovery space. Figure 10: Solution pathways of the case study. ```
Input:\(service\_list\_service\_list\_required\), and QoS\(\_list\_required\) Result:\(service\_list\_candidate\) with Qos and rank Read\(service\_list\_service\_list\_required\), and QoS\(\_list\_required\); Select WS from \(service\_list\), considering \(service\_list\_required\); for\(s\in service\_list\)do  Calculate average reliability, availability, and response\(\_time\) for \(s\);  Calculate expected average from QoS\(\_list\_required\); ifaverage is within the expected averagethen  Append \(s\) and its average to \(service\_list\_candidate\); else \(s\) is rejected as a candidate;  end if  end for Sort \(service\_list\_candidate\) for each candidate service by its average value; Rank based on the candidate's position in \(service\_list\_candidate\);
```  
**Algorithm 3**Generic discovery and selection algorithm. Tables 8 and 9 show the selection process evaluation concerning the expected services (effective WSs). The data in Table 8 only include the services recognized by analyzing their QoS parameters and determining which complied with the quality constraints. Table 9 shows the number of errors in the selection process. This result did not provide an analysis of the order, according to the rank of the service; it only analyzed the quantity and relevance of the service with the predicted WSs. \begin{table}
\begin{tabular}{c c c} \hline \hline
**WS ID** & **WS Name** & **WS Quantity** \\ \hline
1 & GoogleSearchService & 43 \\
2 & MathService & 9 \\
3 & AWSECommerceService & 25 \\
4 & OnlineMessenger & 5 \\
5 & DownloadService & 17 \\
6 & LandmarkService & 8 \\
7 & WSDLInteropTestDocLitService & 13 \\
8 & AmazonSearchService & 13 \\
9 & TimeService & 4 \\ \hline \hline \end{tabular}
\end{table} 
Table 7: Descriptions of the WSs used for testing. \begin{table}
\begin{tabular}{c c c c c c} \hline \hline
**WS ID** & \begin{tabular}{c} **Ar\_WSDS** \\ **Key** \\ \end{tabular}  & \begin{tabular}{c} **Ar\_WSDS** \\ **Partial** \\ \end{tabular}  & \begin{tabular}{c} **OAEQoS** \\ \end{tabular}  & \