Next Article in Journal
Design and Evaluation of Steganographic Channels in Fifth-Generation New Radio
Previous Article in Journal
Machine Learning-Based Resource Allocation Algorithm to Mitigate Interference in D2D-Enabled Cellular Networks
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Real-Time Evaluation of the Improved Eagle Strategy Model in the Internet of Things

by
Venushini Rajendran
* and
R Kanesaraj Ramasamy
Faculty of Computing and Informatics, Multimedia University, Cyberjaya 63100, Malaysia
*
Author to whom correspondence should be addressed.
Future Internet 2024, 16(11), 409; https://doi.org/10.3390/fi16110409
Submission received: 6 September 2024 / Revised: 29 October 2024 / Accepted: 3 November 2024 / Published: 6 November 2024

Abstract

:
With the rapid expansion of cloud computing and the pervasive growth of IoT across industries and educational sectors, the need for efficient remote data management and service orchestration has become paramount. Web services, facilitated by APIs, offer a modular approach to integrating and streamlining complex business processes. However, real-time monitoring and optimal service selection within large-scale, cloud-based repositories remain significant challenges. This study introduces the novel Improved Eagle Strategy (IES) hybrid model, which uniquely integrates bio-inspired optimization with clustering techniques to drastically reduce computation time while ensuring highly accurate service selection tailored to specific user requirements. Through comprehensive NetLogo simulations, the IES model demonstrates superior efficiency in service selection compared to existing methodologies. Additionally, the IES model’s application through a web dashboard system highlights its capability to manage both functional and non-functional service attributes effectively. When deployed on real-time IoT devices, the IES model not only enhances computation speed but also ensures a more responsive and user-centric service environment. This research underscores the transformative potential of the IES model, marking a significant advancement in optimizing cloud computing processes, particularly within the IoT ecosystem.

1. Introduction

Service-Oriented Computing (SOC) emphasizes the design of reusable, modular, and loosely connected software services. These services perform specialized business operations and can be integrated to create sophisticated software systems. SOC principles are used in SOA software architecture. The SOA computing paradigm emphasizes services in application and solution development [1]. HTTP and XML are used to access web services (WS). Common SOA implementations allow apps to communicate via a standard interface. Different sectors use WS to share data between platforms [2]. Web service composition (WSC) involves combining numerous WS to produce a more complicated, multitasking service. It involves merging two or more services with different capabilities to create a more complex workflow to achieve a goal.
SOA and WS can be used to design an IoT service-oriented architecture that integrates devices into a linked ecosystem. So, it can help firms construct intelligent systems that analyze data in real-time, automate processes, and improve decision-making. The rapidly increasing Internet of Things (IoT) will affect Smart Cities [1] Cities worldwide are using IoT-enabled devices and technology to improve efficiency, lower costs, and improve quality of life. IoT-based sensors monitor traffic and alter traffic lights, while smart grids optimize energy distribution and decrease waste. As IoT technology advances, more innovative applications will make cities more sustainable, habitable, and connected [1] Smart Cities: IoT and Machine Learning for Data-centric Smart Environments, Complex & Intelligent Systems, 2023. IoT is expected to be used in smart enterprises, building and home automation, smart cities, healthcare, automotive, and other domains [3]. WSC in commercial applications is dynamic, requiring a flexible architecture to meet user needs and company standards. The edge–cloud continuum allows data to be processed closer to the source (edge) while using the cloud for larger computing duties. This hybrid method boosts IoT application response times and Quality of Service (QoS) [3].
IoT Service Composition is another name for the new paradigm that has emerged due to recent developments with the incorporation of WSC into IoT devices (IoTSC). According to [4], some approaches, such as improved genetic algorithm and Petri net approaches, fail to meet certain criteria and overlook fundamental aspects, such as real-time constraints, monitoring, and fault tolerance.
According to [5], the number of services is increasing, and the existing issues are insufficient to handle large-scale problems. Zhou and Yao proposed a multi-population parallel self-adaptive differential artificial bee colony (MPsaDABC) algorithm with NP-hard complexity, which had drawbacks due to the subjectivity of the weighted sum [6]. Author Bhushan proposed a hybrid method, Hybrid Particle Swarm Optimization (HPSO), a combination of PSO and FOA, to achieve the optimal execution time. However, the proposed method drops in performance when population time exceeds 800 [7].
In addition to the non-functional service characteristics stated in the previous paragraph, such as service unavailability, poor performance, etc., the functional attribute of service also presents problems that have not been solved. The selected and available provider cannot provide the user with the correct service specified in their request. One study [8] mentions the existing model and approaches for verifying the correctness of a single service and statically composed services. Incorrect service selection violates the Service Level Agreement (SLA) and makes the user dissatisfied, both of which are SLA violations. Invoking the incorrect service could cause a composition to be halted due to a mismatch in parameters. There is no correlation between the output/input that was requested and the output/input that was provided by the service [9]. As a result, the continuity of the system is affected. One study [4] claimed the adaptation of service to provide continuous service to the user, but the researchers overlooked this criterion. The problem statement can be summarized as follows:
  • Lack of robust implementation in IoT for efficient service selection from a large-scale repository, considering the total completion time.
  • Lack of dynamism and continuity in selecting the appropriate service during WSC.
Considering these problems, such as high computation time while selecting a service from a large-scale repository and service termination due to choosing the incorrect service, we, therefore, put forward this research with the following objectives as listed below:
  • To propose a bio-inspired hybrid model to reduce high computation time in selecting the services from a cloud-based large-scale WS repository.
  • To select the correct services from the service repository based on user requirements for WSC.
  • To evaluate the proposed bio-inspired hybrid model in a real-time environment.
While the existing literature offers valuable insights into WSC, there remains a need for methods that not only focus on computational efficiency but also ensure high availability and reliability in service selection. This gap underscores the significance of our Improved Eagle Strategy (IES), which aims to fill these voids. The edge–cloud continuum is a vital framework that enhances the capabilities of cloud computing and IoT by enabling efficient data processing and service delivery. It is crucial to integrate this concept into our paper to provide a comprehensive understanding of how these technologies interact and support each other in real-world applications.
The paper’s structure is as follows: Section 2 provides an overview of related works in the field. In Section 3, we introduce the “Improved Eagle Strategy”. Section 4 delves into the case study, focusing on the “Smart Toilet” system. Section 5 presents the methodology used for the testing and validation of our approach. Finally, in Section 6, we conclude and summarize key findings.

2. Related Works

Recent studies in IoT service compositions have primarily focused on enhancing execution time, scalability, and cost-effectiveness. However, aspects like service availability and reliability are also gaining attention. For instance, the use of Hybrid Particle Swarm Optimization (HPSO) demonstrates advancements in optimizing service compositions in IoT environments. These studies provide a backdrop against which the IES model’s contributions can be appreciated.
Service-oriented architecture (SOA) has gained more popularity due to the up-and-coming technologies provided to users. Figure 1 shows the roadmap of SOA, which consists of three (3) significant functionalities. Firstly, the infrastructure of the WS is at the bottom of the pyramid. Secondly, service composition and service management are positioned at the top of the pyramid [9]. The IoT will be implemented at the WSC’s second layer of SOA. The goal of architectures based on SOA is to enable the ability to utilize and reuse loosely coupled IoT services at the middleware layer to reduce the number of problems associated with system integration. A system architecture compliant with the SOA architectural pattern gives programmers and business process designers the ability to dynamically add, query, and use instances of existing modular software in the IoT context.
One of the most important fields of SOA research is the technology of WS. WS is primarily used in a distributed and heterogeneous environment to exchange and reuse software components. The web service SOA framework is shown in Figure 2. The structure contains three main functions, namely (1) Service Broker, (2) Service Requester, and (3) Service Provider [10]. The fundamental SOA is not primarily an architecture; it is also a relationship between three distinct types of participants: Find, Bind, and Publish.
The principal function of the SOA system is to manage the interactions among services. Integration is guaranteed by WS standards that promote the extensive utilization and enhanced reusability of programs due to their enforcement of WS schemas [11]. Interoperability, dependability, availability, accessibility, security, efficiency, durability, extensibility, flexibility, auditability, operability, deployability, and modifiability are identified as essential characteristics in the design of Service-Oriented Architectures (SOAs). WS facilitates the reutilization and dissemination of shared logic among diverse clients, encompassing mobile, desktop, and web applications [3]. WS frequently utilizes eXtensible Markup Language (XML) for communication with customers and other WS. Alternative methods and formats, such as JavaScript Object Notation (JSON), Representational State Transfer (REST), and Simple Object Access Protocol (SOAP), are also extensively utilized for this purpose.
A limited number of standardized technologies have been utilized to implement the application framework in Web Services (WS), including but not limited to XML, SOAP, WSDL, UDDI, and other analogous technologies [12,13,14]. WS are categorized into three distinct types: (1) static, (2) semi-dynamic, and (3) dynamic [13]. A static WS is created during the design phase, while dynamic composition occurs at runtime. Consequently, Dynamic Web Service Composition (DWSC) is more appropriate for commercial applications characterized by constantly evolving corporate laws and user demands [8]. To address significant complexity, a set of approaches for WS operations is being pursued for complete or partial automation via WSC [15].
According to [9,16], WSC has three main phases: discovery, selection, and composition. After discovering a service, the next step is selecting the best one to fit specific tasks or business needs. Finally, the chosen service is used in the composition phase to create a workflow that integrates multiple WS [16]. The IoT refers to a network of objects embedded with sensors, software, and technologies that connect and share data over the Internet. This enables two-way communication between various “things” globally. Examples of IoT applications at the commercial level include retail, industrial IoT, smart utilities, and medical services [16,17,18]. According to Gubbi, Buyya, Marusic, & Palaniswami in the IoT forum, the IoT is formed with three (3) layers: Application, Transportation, and Processor [19]. Based on existing works and the conceptual IoT framework, Figure 3 illustrates the critical building of IoT Infrastructure.
Aoudia, Benharzallah, and Kahloul identify certain obstacles in the IoT, including heterogeneity and the swift proliferation of devices [4]. They propose the implementation of an IoT monitoring system to guarantee fault tolerance and preserve system integrity. Despite the acknowledged expenses associated with service composition in IoT, numerous concerns persist unresolved. The majority of investigations have concentrated on resource accessibility and QoS elements such as reliability, resilience, and performance. The objective is dual: (1) to guarantee continuous service for users, and (2) to improve user engagement with their environment. Despite the execution of comparison research, no definitive answers have been identified due to insufficient implementation.
Service Level Agreements (SLAs) are contractual agreements between clients and cloud service providers to guarantee the fulfillment of quality-of-service standards. Asghari, Rahmani, and Javadi observed that service-oriented applications support the preservation of QoS and operational characteristics of cloud services [20]. Nevertheless, the dynamic and various characteristics of IoT render the integration of smart devices to satisfy user requirements problematic. This complicates the proper management of QoS components and SLAs by present cloud services.
Zhou and Yao presented the multi-population parallel self-adaptive differential artificial bee colony (MPsaDABC) algorithm, designed to enhance large-scale service composition in cloud manufacturing [6]. This algorithm improved the conventional method for addressing the CMfg service optimal selection (CCSOS) problem, a challenging NP-hard problem. Although the algorithm enhanced performance, it reduced the multi-objective CCSOS issue to a single-objective format by a basic additive weighting system, introducing subjectivity in the weighting variables.
In another study [21], researchers analyzed and compared different approaches to IoT service composition. They evaluated existing IoT service structures based on relevant criteria and highlighted their similarities and differences. Their findings identified key areas for further research to enhance service composition methodologies in IoT. Although most studies focused on reducing execution time, improving scalability, and lowering costs, availability, and reliability were still consistently addressed.
To find the best search, an optimization technique called Hybrid Particle Swarm Optimization (HPSO) combines PSO with FOA [7]. Based on the fitness value of service, the FOA can accelerate convergence. When the services are less than 800, the proposed method’s efficiency and execution time are better. Execution times are longer when there are more than 800 services.
Reference [22] suggested using a genetic algorithm based on skylines to solve the composition problem, reduce SLA violations, and compare the proposed approach’s computation time to the conventional genetic algorithm. However, the suggested strategy is incompatible with how the service is delivered. As a result, composition errors could happen.
For each generation after local heuristic selection creates the initial HGA population, elitism is applied to maintain superior solutions. The suggested technique outperforms the basic genetic algorithm and the fruit fly optimization algorithm in optimality, computing time, convergence speed, and feasibility rate. The strategy aims to improve implementation in dispersed cloud environments with numerous objectives, restrictions, and service correlations while addressing cloud service requirements [23].
GPSO was proposed by Faruk, Vara Prasad, and Divya. Using this method with others helped academics measure convergence’s fury. The GPSO outperforms existing methods in execution time and quality of service performance. However, higher static mutation probabilities may hinder convergence and increase implementation time [24]. Naseri and Jafari Navimipour improved the cloud services composition problem using an agent-based framework and PSO [25]. Comparisons with other algorithms show that the hybrid PSO method discovers the right composite services and succeeds. Unfortunately, the proposed method requires additional resources to succeed.
A multi-population differential Artificial Bee Colony (ABC) method for large-scale cloud manufacturing service composition optimization was described in [6]. Multiple parallel subpopulations evolved with diverse mutation strategies from differential evolution to disrupt foraging bee supplies. Subpopulation-specific mutation parameters were changed. The authors stated this strategy outperformed hybrid and single-population algorithms in the literature. A subjective additive weighting method simplified the multi-objective problem to a single-objective problem, according to current research.
Reference [5] presented the dynamic ant-colony genetic hybrid algorithm to optimize massive cloud service composition. This method used an iterative adjustment threshold to optimize algorithm characteristics and parameters in the later phases of the search process, fine-tuning the hybrid algorithm’s operations. This optimization saves computational resources and efficiently finds the optimal option. Therefore, the DAAGA algorithm’s performance on large CSCO problems can be greatly enhanced. Since the NP problem remains unsolved, future optimization and modification may include changing operational phases and parameters.
Gavvala, Jatoth, Gangadharan, and Buyya introduced the Eagle Strategy with the Whale Optimization Algorithm (ESWOA) to balance exploration and exploitation [26]. This strategy balances exploration and exploitation to avoid late or premature convergence. Experimental results show that ESWOA provides optimal global solutions faster than other recent algorithms and many service repositories to compose services from with minimal cloud-to-cloud connections.
Ghobaei-Arani, Rahmanian, Aslanpour, and Dashti developed a cuckoo-based service composition method to assess cloud service QoS [27]. Testing showed that the proposed strategy reduced costs and reaction time compared to competitors, two things that delay QoS improvement. Both availability and provider dependability QoS criteria increased. Our technique also considers multi-cloud and quick convergence. However, load balance and fault tolerance are issues.
Table 1 is summarized based on the existing literature from the respective author. As summarized, the hybrid methods of PSO and FOA have been shown to improve computation time and choose the correct service [7,25]. However, both methods lead to high computation time when a large service scale is involved. Some hybrid methods have low computation time, as proposed by [22,23], which have similarities in the type of method, such as the Genetic Algorithm (GA). The method proposed by the author [22] used the Skyline method, in which the limitation is incompatibility. Meanwhile, the method proposed by [23], with the combination of FOA, only supports a single cloud environment. Similarly, the author [26] faced the same restriction issue in a distributed cloud environment.
The identified constraints within the distributed cloud environment, specifically the lack of consideration for certain parameters, will be addressed by refining the IES methodology to prioritize and enhance QoS attributes—non-functional attributes of WS—ensuring a more responsive and user-centric service selection process.
In summary, our review of the existing literature reveals a concentrated effort on specific aspects of IoT service composition. The IES model presented in this study extends these efforts by providing a more balanced approach, focusing on both computational efficiency and service reliability, thus contributing novel insights to the field.

3. Improved Eagle Strategy

This study introduces the Improved Eagle Strategy (IES), a novel hybrid model designed to optimize the WS selection process in large-scale cloud-based environments. Unlike existing methodologies, the IES model excels in minimizing computation time while ensuring accurate service selection based on user requirements. Its unique approach evaluates service performance in real-time scenarios, setting it apart from conventional models. We employ NetLogo simulations to demonstrate the IES model’s superior time efficiency in service selection compared to other methods. Additionally, our model’s application through a web dashboard system underscores its ability to handle both non-functional and functional service attributes effectively. The results validate that the IES model not only expedites service selection but also enhances the overall user experience in WSC, marking a significant advancement in cloud computing and IoT domains. The overall progression of the Improved Eagle strategy is depicted in Figure 4.

3.1. Calculate the Semantic Similarities

Building upon the foundational concepts introduced, we now delve into the specific algorithms and processes that underpin the IES model. The IES is developed in a few steps by determining the semantic similarity between the WS. To perform the semantic similarities calculation, the repository of the WS should be prepared. The WS-DREAM repository (Team, WS DREAM. Retrieved from http://wsdream.github.io/dataset/wsdream_dataset1.html/ accessed on 5 September 2024) used an open dataset that contained services from different countries and was collected from real-world WS. As this dataset has been widely used in research, the validation would be much more accurate for comparing the outcome. The benefit of using this dataset is that WS Dream makes the dataset and source code available to the public for WS research.
The ping method was first used to check the responsiveness and availability of a WS. Ping functions as a computer network administration tool that assesses the duration required for a signal to traverse from its origin point to its target destination. The response time of QoS will serve as a metric to evaluate the effectiveness of the WS. Response time, which is the overall amount of time it takes to execute a WS, is frequently measured in milliseconds (ms). Both availability and response time will be predicted or observed when the WS is evaluated. Ping’s response is shown below:
α = availability of service
t = ping response time
α.t = [(1, “ping responded”), (0, “no ping respond”)]
As shown in the algorithm above, all available services were marked “Read Complete”. In contrast, unavailable services were marked “Error” in the Status column, and the round-trip response time from the Ping method was recorded in the Elapsed Time column. The method names of all available services were retrieved. Many method names can be found in a single WS.
The document that holds the Web Service Description Language (WSDL), as referenced in [10], underwent parsing to extract the method name, as well as the input and output parameters, for each service. To gauge the semantic similarities among the services, the Wordnet 3.0 algorithm was employed. The only thing that the similarity measures were used on were the names of the operations and methods. The method names were extracted from the WSDL document and compared using the Wordnet algorithm to determine their similarity scores. Because the clustering of WS requires measuring the distance between different services, calculating semantic similarities was a key stage in the process. A more in-depth analysis and a comparison of other techniques for similarity measurement and clustering are not included in the scope of this work.
WordNet is a conceptually organized dictionary of English words described by [28]. This dictionary follows a hierarchical structure for its organization. At Princeton, a group led by Miller is responsible for developing Wordnet [29]. If there are two words, namely, w1 and w2, the algorithm used to determine semantic similarities is sim (w1, w2). The algorithm employed to assess semantic similarities between two words, denoted as w1 and w2, is represented as sim (w1, w2). The resulting value falls within the range of 0 to 1, where a value of 0 signifies no similarity whatsoever, and a value of 1 indicates a perfect or exact similarity.

3.2. Calculate the Service Based on Method Names

The second set of activities involved clustering or grouping the services into categories according to the names of their methods. The clustering method was used to narrow the search space to make the process of choosing a service more manageable. That is done to the advantage of the benefits offered by the traditional ES. The proposed method could select the service in less time than it would have taken using a more prominent search space because it narrowed the search. Clustering is the process of grouping data into groups based on their similarity. According to Mora, Santillan-Perez, & Bravo (2016), the primary objective of clustering is to classify similar kinds of data into the same cluster when those data types are comparable in terms of precise metric similarities [30,31].
The K-Means algorithm significantly emphasized the value of distance to determine the length from one WS to another. According to the research in [32], Manhattan distance results are superior to Minkowski and Euclidean distances. The amount of space that separates two points, as measured by the Manhattan distance function, is equal to the sum of the absolute differences in their Cartesian coordinates. It is usually determined by adding the x-coordinate difference to the y-coordinate difference and subtracting it from 100. Accordingly, the Manhattan distance, denoted by d(x, y), can be defined in the following way [32,33]. The algorithm for calculating the Manhattan distance is shown in Table 2 below.
x , y = i = 1 k | x 1 y 1 |
Clustering generally analyses and categorizes available data based on criteria, with the same samples in one category finding the most differences with samples in other types. Clustering is typically considered an unsupervised method because connection and subsequent grouping are examined without prior knowledge of the class label patterns. WS clustering is all about selecting and extracting the features of WS and discovering the commonalities between them to construct groups or classes based on those qualities [32].
The K-means clustering method is one of the most extensively used algorithms for clustering implementation. That is primarily attributable to its performing exceptionally well for large datasets [33,34]. The K-means clustering method is one of the most popular algorithms for clustering [32]. K-means is a method that measures the distance between each point in a dataset and the centroids of clusters to locate data objects that are similar to one another and assign them to the cluster that is closest to them.
The K-Means algorithm is based on the idea that k clusters are generated in such a way that the centroids of their clusters are closer than the centroids of other clusters. The algorithm’s operation begins with choosing k points as the centroids. After choosing the k points, all points are assigned to the nearest centroid, forming k clusters. After that, a centroid is calculated by taking the average of each cluster’s points. The mean vector comprises these centroids, each vector field equaling a cluster centroid. Finally, the new centroid creates additional clusters due to this process. The process will be completed if the centroids do not change.
The proposed method used the K-Means clustering technique to achieve its desired results [35]. The Python programming language is used to determine the K value. According to the findings of [31], text-based clustering methods such as K-Means produce better results regarding both accuracy and F-measure. F-Measure, also known as F-Score, is a metric used to evaluate the quality of clustering results. It measures the clustering’s accuracy, combining Precision (PC) and Recall (RE) into a single metric. Precision measures how many of the items assigned to a cluster are members of that cluster. Recall measures how many of the things that belong to a cluster are correctly assigned to that cluster. The F-measure ranges between 0 and 1, with 1 indicating perfect clustering results. A high F-measure suggests that the clustering is accurate, and the clusters are well-defined [36]. RE and PC are dimensions that are frequently used in the field of text mining. The RE and PC values are presented in the following formula.
P C u , v = x u , v x v
R E u , v = x u , v x u
where xu,v is the number of services of class u in cluster v, xv is the number of services of cluster v, and xu is the number of services of class u.
F M ( v ) = 2 × P C ( u , v ) × R E ( u , v ) C ( u , v ) × R E ( u , v )
where PC(u, v) is the PC of services of class u in cluster v, RE(u, v) is the RE of services of class u in cluster v, and FM for all clusters is calculated at (9):
F M = v x v x   m a x u { x ( u , v ) }
Figure 5 illustrates how WS clustering takes place. Clustering web services involves dividing the total number of web services in a collection into the right number of groups or clusters based on some similarity metric. In this research, Wordnet 3.0 was used to calculate semantic similarities.
The implementation of our proposed algorithm as a WS was the next step, and it was accomplished with the help of Microsoft Visual Studio, which is also where the service selection took place. Developing a Windows workflow composition for 24 Smart Toilet microcontrollers was the final stage of the development phase. This was accomplished by utilizing the Windows Communication Foundation (WCF).
The advantage of using the Eagle Strategy is discussed, where the Eagle Strategy outperforms the standard algorithms like the “Genetic Algorithm”, “Whale Optimization Algorithm”, “Discrete Guided Artificial Bee Colony”, “Hybrid Genetic Algorithm”, and “Greedy Randomized Adaptive Search Procedure” according to [26]. The disadvantage is its constraint in the distributed cloud environment without considering the parameter. The IES will select the service from the service repository with few conditions, considering the QoS attribute of services and selecting the correct service, as shown in Figure 6 below.
The IES will be able to select the WS from a large-scale distributed cloud-based repository according to the users’ requirements. The proposed method accomplishes the first objective: select the service with a lesser response time than WOA and ES. As per related works, the Eagle Strategy is proven to select the service with lower response time compared to another bio-inspired method. Therefore, the advantage and improvement of the technique is the ability to select services based on user requirements and the services’ response time is fully utilized. The first objective is to emphasize the QoS attributes, which are non-functional attributes of WS. Functional attributes, focusing on the second objective, are then used to select the correct service based on user requirements. During the process of selecting a WS, the IES emphasizes both the functional and non-functional aspects of the service.
While the output and input sections describe the abstract message format for the solicited request and response, the method name will be a WS functionality. It is necessary to retrieve the capabilities of the WS to accommodate the preferences of user requests. This is done so that the system can identify the appropriate service for the user and then provide that service to them. Because of this, the Service Level Agreement (SLA) will be improved because of the users’ dissatisfaction [7]. When it comes to service composition, most currently available methods focus solely on quality-of-service qualities, resulting in incompatibility between the various services. This not only violates the criteria of the users, but also decreases user satisfaction.

3.3. Classification High Fitness and Low Fitness Value

Apart from that, the non-functional attribute, which is the QoS attribute of the service, is focused on selecting the available services and ensuring a high response time for the services. The IES additionally chooses the services with a high fitness value during the service selection process. The low-fitness value services are least prioritized as they have lower response times to achieve high performance during the service invocation. The fitness value is determined by the QoS attributes of services, followed by the threshold value calculation. Once the threshold value is determined, the services that have a higher fitness value compared to the threshold value are determined to have a high fitness value.
On the other hand, the services with lesser value than the threshold value are determined to be low-fitness value services. The threshold value is determined by calculating the average value of services. The equation below shows the formula to calculate the fitness value for each service, where β is the fitness value, λ is the QoS of the attribute value, and a, b, and c are the weightage based on percentage. Weightage is the value set by the user based on their requirement.
   Rule 1: Total Weightage = ( a + b + c + = n )    Rule 2: Total Weightage = 100 β = λ 1 λ 1 m a x a % + λ 2 λ 2 m a x b % + λ 3 λ 3 m a x c % + λ n λ n m a x n % β = Fitness Value of service λ = QoS attribute value a , b , c = Weightage based on the percentage
Equation (11) below shows the formula to calculate the threshold value of the available services, where τ represents the threshold value and β represents the fitness value.
τ = β T o t a l   n u m b e r   o f   s e r v i c e s
I f , β τ = H i g h F i t n e s s V a l E l s e , β < τ = L o w F i t n e s s V a l
The overall structure of the IES, as shown in Figure 7, demonstrates how the services are grouped and classified according to the names of the methods and their respective fitness values. In addition, the cloud-based environment serves as the storage location for the services. The functions are described in the flowchart above, and IoT devices call upon the set of flowcharts. Each circle represents a different workflow feature; some of the services invoke other WS stored in the cloud repository.
Figure 8 depicts a Venn diagram featuring variables that elucidate the IES formula and the retrieval of services from the repository. The notation ∈∂ signifies services within the repository, while ∈(∂(α)) pertains to the accessible web service. ∈(∂. α(c)) denotes services clustered based on method name similarity. The fitness value of a web service, β, is a measure of its performance, which is reflected in its response time. Ultimately, services are categorized into high and low fitness values utilizing an if-else statement that compares them with the threshold value, τ.
Rule 1:
α = available service, when ping value returns value 1, read complete
Rule 2:
c = clustered services from the list of available services
Rule 3:
β = fitness value, the service response time, calculated based on the ping value.
Rule 4:
τ = threshold value is the mean value of fitness value for each cluster.
ω = . α c . β > τ

3.4. Service Selection and Dynamic Composition

While the above algorithmic details provide a deep dive into the IES’s functionality, the essence lies in its ability to dynamically adapt to changing service demands, ensuring optimal performance for end-users.
Figure 9 illustrates dynamic WS selection. The IES automatically selects a service; if any fail during the invocation process, the substitution technique replaces the current workflow service [13,37]. The symbol X in the diagram at the send email service illustration indicates the service failed to respond. Therefore, the IES will dynamically select the other service available with a high response value from the clustered service repository without human interaction. This is to maintain the dynamism and continuity of the workflow.
Figure 10 shows the dynamic flowchart for WS selection. Dynamic service substitution is performed under two distinct conditions. First, it occurs when a service is unavailable. Second, substitution is initiated when the response time of a service falls below the specified threshold value.
Table 3 shows the algorithm for the IES. The IES surpasses other bio-inspired optimization techniques such as PSO and Artificial Bee Colony (ABC) through its unique combination of real-time adaptability and reduced computational complexity in large-scale cloud environments. While traditional methods like PSO excel in convergence speed, they suffer from high computation times when dealing with large datasets, and techniques like ABC face limitations in handling multi-objective service selection, especially in dynamic IoT environments. In contrast, the IES leverages a hybrid approach that dynamically adapts to varying user requirements and optimizes both functional and non-functional attributes. This not only reduces overall computation time but also enhances service accuracy in large-scale, distributed environments. The clustering-based reduction of search space further distinguishes the IES, making it significantly more efficient and scalable than traditional methods, particularly in cloud and IoT ecosystems.

4. Case Study

The IoT is the foundation of the Smart Toilet system, which was developed to collect real-time data from sensors installed in toilet facilities to improve the efficiency with which toilet cleaning resources and peripherals are sourced. Figure 11 shows the overall architecture of a Smart Toilet, where the sensors are connected to the IoT device to get information and prompt the WS.
There are three phases of Smart Toilet systems, namely (1) the Sensory Phase, (2) the Cloud Management Phase, and lastly, (3) Mobile Application and Web Development [38]. The sensory phase is where the IoT programming and sensor installation occurs. Figure 12 illustrates the electrical diagram of the Smart Toilet system, where the sensors are connected to the IoT device to get information and prompt the WS.
Referring to Figure 12, TTGO is a brand of development boards based on the ESP32 microcontroller. TTGO boards typically include an ESP32 microcontroller, additional components such as an OLED display, a battery management circuit, and various sensors and communication modules. The specific features of each board vary depending on the model, but all of them are designed to be easy to use and provide a convenient platform for developing IoT projects.
TTGO is a powerful, low-cost, low-power system-on-a-chip (SoC) microcontroller with integrated Wi-Fi and Bluetooth capabilities [39]. It is designed for the IoT and other wireless communication applications. Microcontrollers use traditional methods to work on low-dimensional structured sensor data (for example, temperature and humidity). They make simple inferences at the edge of their processing [40].
Within the Smart Toilet system, the IES model plays a pivotal role in enhancing the software-driven capabilities of the IoT architecture. By integrating the IES model, we ensure robust system security and a user-responsive service by efficiently selecting optimal WS based on predefined QoS attributes. This focus on software optimization allows for predictive maintenance and effective resource management, contributing to the system’s overall performance and reliability.
In the sensory phase of the Smart Toilet system, sensors collect real-time data essential for service optimization. The IES model utilizes this sensory data to enhance the decision-making process for service selection. By analyzing the data in the context of user requirements and service response times, the IES model ensures the selection of the most efficient services. This software-focused approach allows for a more intelligent and responsive Smart Toilet system, highlighting the practical application of the IES model in a real-world scenario.
The next phase is cloud management. The raw data gathered from IoT devices, which are also known as “real-time data”, are stored in Open Innovation Platform (OIP) cloud telemetry storage [13]. The IR sensor captures the distance data and the date and time the distance is captured and transmitted via the TTGO module into cloud storage. MQTT or HTTP is the available protocol to transmit the data via the network connection. Cloud storage is used not only to store data but also to process the stored data for end-user use.
Every IR sensor installed is differentiated by “device ID”, programmed in the TTGO module. Based on the device ID, the data frequency can be analyzed. OIP cloud storage also provides the device’s dashboard to ease the process. Figure 13 illustrates the installation of IoT devices in each toilet.
When the data is processed as meaningful information, the system extends to provide the toilet availability for the end user, such as giving the toilet occupancy status. A mobile app was developed to show meaningful data status to the end user. The mobile application uses the Application Programming Interface (API) to POST and GET the data from cloud storage. POST is used to send data, while GET retrieves data.
Two different applications were developed to monitor the Smart Toilet system. Firstly, the mobile application. Figure 14 shows a screenshot of the mobile application developed. A mobile application was developed to authenticate to the user the toilet occupancy status. Additionally, the mobile application allows users to rate each cubicle based on toilet cleanliness by simply tapping on the star symbols to rate.
Another application is the web application. The web application was developed for facility management to manage the peripherals and view the janitor scheduling system. Also, the overall diagram of faculty and the occupancy status is shown on the main screen. Figure 15 shows a screenshot of the web dashboard.
To summarize, the Improved Eagle Strategy represents a significant advancement in service selection within distributed cloud environments. Its unique attributes, namely responsiveness and reliability, position it as a valuable tool in the evolving landscape of WS. The Improved Eagle Strategy (IES) builds upon traditional bio-inspired optimization methods, such as PSO and ABC, by integrating a dynamic service selection mechanism that optimizes both functional and non-functional attributes in real-time IoT environments. Unlike PSO, which focuses solely on convergence speed, or ABC, which is often constrained by limited multi-objective service selection efficacy, IES excels in both speed and adaptability. Its unique clustering-based reduction of search space further decreases computation time, positioning it as a novel and scalable solution for cloud-based IoT systems.

5. Testing and Validation

The methodological framework for testing and validating the IES, detailed in Section 5, provides a comprehensive understanding of its performance metrics and benefits. Figure 16 depicts the three different phases of activity that were carried out.

5.1. Evaluate the Execution Time for Selecting the Services from the Large-Scale Repository

The existing method was simulated using NetLogo as a proof of concept. The results were compared to the proposed approach to determine the milliseconds (ms) needed to choose a service from the huge repository. The simulation allowed the same number of datasets to reflect the number of WS in the same environment regardless of the methodologies utilized.
A large-scale repository can be mimicked by declaring the number of services. The simulation was repeated three times for each number of WS to get an approximate estimate of the value of search time, and the mean value was calculated from the results. Equation (12) below shows the formula for calculating the mean value.
M e a n = o f   t h e   t e r m s n u m b e r   o f   t e r m s
Table 4 provides an overview of the time required (in milliseconds) to select the high-fitness value service for the Whale Optimization Algorithm (WOA), followed by a graphical illustration shown in Figure 17.
Table 5 below shows the overview of the time required (in milliseconds) to select the service for the proposed method, the Improved Eagle Strategy, and a graphical illustration is shown in Figure 18.
Table 6 below shows the overview of the time required (in milliseconds) to select the service for the proposed method, the Improved Eagle Strategy, and a graphical illustration is shown in Figure 19.
To calculate the amount of time needed to choose a service, the proposed approach, known as the IES, was judged against two other bio-inspired methods that already exist: WOA and ES. The above table and graph for ES, WOA, and the IES show that the suggested method revealed that the IES can select a service from a large-scale repository in a shorter amount of time. Figure 19 below compares the time taken for the three methods tested in the same environment using NetLogo Simulation.
The IES model results were better than those for the WOA and ES, as shown by the comparison result in Figure 20. As can be concluded by the author [7], the ES has the potential to select a service faster than another service, but when the search space is bigger, the time taken to select a service is less. At the same time, the ES only focuses on the non-functional attributes of WS. The IES, on the other hand, focuses on both functional and non-functional attributes. The service selection is lesser than other methods because the search space for service selection is reduced using the K-Means clustering algorithm.
The Improved Eagle Strategy (IES) demonstrates superior performance compared to the Whale Optimization Algorithm (WOA) and Eagle Strategy (ES), as evidenced in Figure 19 [41]. The IES model excels in selecting services more rapidly, especially in larger search spaces. Unlike the ES [26], which primarily concentrates on non-functional WS attributes, the IES comprehensively addresses both functional and non-functional aspects. This holistic approach, coupled with the use of K-Means clustering, reduces the search space, thereby enhancing service selection efficiency.
When compared to the Skyline + Genetic Algorithm (GA) approach by [22], the IES stands out due to its superior compatibility capabilities, addressing the key limitations of the GA method’s scalability and computation time. Furthermore, the IES’s adaptable framework allows it to function effectively in distributed cloud environments, overcoming the limitations of the GA + FOA combination, which is mainly efficient in single cloud setups.
Additionally, methods like PSO + GA [24] and ABC + DE [6], although known for their high-speed convergence, grapple with challenges such as high time complexity and constraints in multi-objective service selection. The IES addresses these challenges by offering a balanced solution that optimizes both speed and multi-objective service selection capabilities.

5.2. Evaluate the Correctness of the Service Selected

At this stage, the correct WS selection was evaluated. The functional attribute of the selected services was tested by using test cases. By testing the correctness of the service selected, the continuity of the system flow was achieved. The robustness and capabilities of selecting the correct services were evaluated in any environment. The activities carried out to test the correct service are shown in Figure 21 below.
The web-based system was developed with Microsoft Visual Studio 2019 and is hosted on a Windows Server 2022 in the Multimedia University (MMU) Cyberjaya, Faculty of Computing and Information (FCI). By establishing a connection with the remote, the system is managed. Using TeamViewer software version 14.7.48671 and a login and password, you can remotely access the computer from any device, anywhere, at any time.
The system was developed for service selection. Based on the selected service, the integrity of the service is examined. The criteria, or requirements, are the WS functionalities. If a relevant service is available, the system will provide a selection of services pertinent to the user’s requirement, which is the keyword entered. In all other cases, if the services are not found during a search, the repository will indicate that the service is not present.
Given the list of available services, it sorts the available services based on their fitness value. The web-based system will display the selected service and the alternative service(s) that the IES will choose if the selected service fails. Figure 21 demonstrates the web-based system used to test the IES based on the services’ correct service and fitness value.
The keyword or requirement is keyed in the system in the search column, as shown in Figure 22. After that, a list of currently available services that match the exact keyword are displayed. The address of the WS that is invoked is then displayed as the URL. If the first chosen WS is unsuccessful, the next service is shown for selection. The correctness of the service is examined using the service description provided by the WSDL. The fitness value of the service is displayed next to its name in the list as “fitness value”.
To verify that the dynamism of service selection was operating as expected, the URL of the chosen service was then manually removed from the database. This signals to the IES that the service selected is unavailable. The subsequent WS was invoked by the IES automatically, without any human intervention. The currently selected service was then checked for validity to see if it met the user’s requirements by comparing the method name to the retrieval method name from the WS, as discussed earlier.
Based on the keyword or requirement, test cases are generated. The testing instrument is used to analyze the specifications to extract the required data, such as the input and output parameters of the services. Evaluation of the validity of the services is successful when the expected output and the actual output of the services correspond. This technique is known as functional testing, as per [5]. The WS endpoints are also examined in functional testing to ensure the correct data is returned. It is also performed to evaluate the WS input validation and determine whether invalid inputs are rejected.
Additionally, to validate the WS output validation and ensure that the responses are correctly formatted, the accessibility verification of the WS returns the expected HTTP response code. A server sends three-digit numbers known as HTTP response codes in response to an HTTP protocol request from a client, as shown in Table 7. These status codes help customers comprehend the status of their requests by indicating their current state [42].
Smartbear ReadyAPI by SmartBear allowed testing of the WS functionally [43]. This application supports multiple protocols such as WDSL, SOAP, etc. To evaluate the correctness of the services, ReadyAPI was used [42]. In our research, we employed the SOAP protocol, primarily due to its robust security features and well-defined standards, which were crucial for our application’s specific requirements. SOAP’s capability for built-in error handling and support for ACID-compliant transactions was particularly aligned with the needs of our Improved Eagle Strategy (IES) model. For the Smart Toilet System, the intricate nature of transactions and the necessity for detailed error reporting made SOAP an ideal choice.
Its ability to efficiently manage complex transactions ensured the reliable execution of critical functions, including the ‘send SMS’ service. Although the superior performance and flexibility of RESTful services and GraphQL are recognized, these protocols did not meet the stringent criteria for security and transactional integrity. The rigorous security standards and reliable transaction support provided by SOAP were indispensable for maintaining the integrity and reliability of the IES model, especially in scenarios demanding high-stakes data handling and communication. Figure 23 illustrates the flowchart for using the send SMS function of the WS. Sending an SMS when the alarm is triggered is part of the flowchart of the Smart Toilet System.
A test case was run to verify the selected service by the IES. This was done to ensure that the IES selected the correct service. The method name needed to be provided based on the requirement. As per the case study, sending an SMS service was required. Therefore, the keyword that was provided in the IES system was “SMS”. Figure 24 below shows the user interface for keying in the keyword.
Once the search was complete, the first list shown in the services to be invoked was selected to perform the test case. The selected WS was tested to see if the service produced the expected output per requirement. Table 8 shows the test objective for the keyword “SMS”. The expected and actual outputs of the test cases are presented in Table 9.
Send SMS services successfully passed the test cases as the objective of the selected service was achieved, as shown in TC1, Table 9. The selected service can send messages to the stated phone number. To validate the process further, test cases were conducted on an additional two (2) services. The keyword was provided randomly. The keywords used to perform test cases were “weather” and “currency”. The table below shows the weather service test objective and test cases.
Table 10 shows the test objective for the weather conversion. The test aimed to ensure the value keyed in the Celsius column can be converted to Fahrenheit. Test case details are presented in the following table.
According to the test cases for the weather Table 11, the conversion was successful if the input value is an integer. If not, the error message was displayed. The weather conversion was successfully providing the output. Table 12 shows the test objective for the currency keyword. The test aimed to list the details of a country based on the currency chosen. Test case details are presented in Table 13. The test case’s result was successful, as the expected and actual outcomes matched.
The overall evaluation for selecting the correct service was validated. The keyword was entered into the web-based system. Based on the output, the first listed service was chosen for evaluation. To validate the functionality of the service, the ReadyAPI application was used. The application was used to test the parameters, output, and response code of the service. The testing on WS was conducted by following the test procedure to test the service. The expected output and actual output were compared to ensure that the service output matched the test objective. Based on the testing conducted and presented in the test cases, the services returned the correct output as stated in the WSDL document. To conclude, the IES was able to select the functionally correct service based on the keyword provided.

5.3. Evaluate the IES Model in a Real-Time Environment

The proposed approach was tested in a real-time environment to ensure the dynamism and continuity of the system. This study employed the Smart Toilet system. A Smart Toilet system was installed to monitor the usage of toilets and provide predictive maintenance and a janitor schedule to optimize resources. Additionally, this system provides an option for the user to report if the toilet is unhygienic and provides the toilet availability status. This system also sends a short message service (SMS) if any user reports that the toilet needs attention directly to the janitor on duty.
The IES system is invoked inside the IoT device to maintain the system security level. If any user performs vandalism on the system, the alarm is triggered, and an SMS is sent to the security department for further action. The send SMS function is invoked by WS. During the system design, security measures are embedded into the IoT system. While developing WS for the Smart Toilet IoT system, the IES model accounted for reduced response times and service correctness. The first step in WSC is to design the architecture of the WSC, where Business Process Model Notation (BPMN) is designed. Figure 25 below shows the overall BPNM diagram for the Smart Toilet IoT system.
Figure 26 below shows the workflow of Business Process Execution Language (BPEL). BPEL is a workflow designed using Microsoft Visual Studio. The workflow is designed using sequential order, invoking the IES to perform the task once the action is triggered.

6. Conclusions

This research introduced the Improved Eagle Strategy (IES), a novel hybrid method for optimizing service selection in cloud-based environments, with promising results regarding both functional and non-functional requirements. While the approach demonstrates superiority over traditional bio-inspired methods, its potential extends beyond the immediate findings.
Future applications of the IES could explore its integration into other dynamic and critical IoT-driven environments, such as healthcare, smart cities, and autonomous systems. By adapting the model to sector-specific requirements, the IES could address unique challenges, such as real-time decision-making in life-critical applications or efficient resource management in large-scale IoT ecosystems.
Additionally, future advancements in this research could focus on incorporating machine learning techniques to enhance the adaptability of the IES in handling more complex, large-scale service compositions. Exploring the integration of reinforcement learning or other bio-inspired algorithms may further improve its accuracy and speed in varying scenarios.
Security enhancements within the IES framework are also critical, given the growing concerns regarding the data privacy and integrity of IoT networks. Developing a more robust, secure infrastructure will ensure that the method is sustainable in environments requiring stringent data protection.
In conclusion, the contributions of this research lay a solid foundation for further advancements, positioning the IES as a flexible and adaptive tool with broad applicability across industries. The continuous development of this approach could significantly contribute to the evolution of IoT services, facilitating the implementation of more efficient, secure, and scalable service-oriented architectures.

Author Contributions

V.R. contributed to the conceptualization of the study and the design of experiments. During the testing phase, V.R. actively participated in conducting experiments, ensuring the accuracy of data collection, and managing the experimental procedures. Additionally, V.R. was involved in the analysis of data, interpretation of results, and drafting of the manuscript. R.K.R. played a significant role in the testing phase of the research and provided valuable insights during the final review of the manuscript. R.K.R.’s contributions included conducting experiments, analyzing data, providing critical feedback on the manuscript drafts, and ensuring the accuracy and clarity of the final version. All authors have read and agreed to the published version of the manuscript.

Funding

The APC was funded by Multimedia University, Malaysia.

Data Availability Statement

The original contributions presented in the study are included in the article, further inquiries can be directed to the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Papazoglou, M.P. Service-oriented computing: Concepts, characteristics, and directions. In Proceedings of the 4th International Conference on Web Information Systems Engineering, WISE 2003, Roma, Italy, 10–12 December 2003; pp. 3–12. [Google Scholar] [CrossRef]
  2. Chung, F.I.; Lo, C.L. Service-Oriented Architecture Application in Long-Term Care Institution: A Case Study on an Information System Project Based on the Whole Person Concept in Taiwan. Int. J. Comput. Sci. Res. 2018, 1, 17–37. [Google Scholar]
  3. Akasiadis, C.; Tzortzis, G.; Spyrou, E.; Spyropoulos, C. Developing complex services in an IoT ecosystem. In Proceedings of the IEEE World Forum on Internet of Things, WF-IoT 2015, Milan, Italy, 14–16 December 2015; pp. 52–56. [Google Scholar] [CrossRef]
  4. Aoudia, I.; Benharzallah, S.; Kahloul, L.; Kazar, O. A comparative analysis of IoT service composition approaches. In Proceedings of the International Arab Conference on Information Technology, Yassmine Hammamet, Tunisia, 22–24 December 2017; pp. 1–7. [Google Scholar]
  5. Yang, Y.; Yang, B.; Wang, S.; Liu, F.; Wang, Y.; Shu, X. A dynamic ant-colony genetic algorithm for cloud service composition optimization. Int. J. Adv. Manuf. Technol. 2019, 102, 355–368. [Google Scholar] [CrossRef]
  6. Zhou, J.; Yao, X. Multi-population parallel self-adaptive differential artificial bee colony algorithm with application in large-scale service composition for cloud manufacturing. Appl. Soft Comput. J. 2017, 56, 379–397. [Google Scholar] [CrossRef]
  7. Bhushan, S.B.; Reddy, P.C.H. A hybrid meta-heuristic approach for QoS-aware cloud service composition. Int. J. Web Serv. Res. 2018, 15, 1–20. [Google Scholar] [CrossRef]
  8. Saranya Jothi, C.; Ravikumar, S.; Kumar, K.A.; Suresh, A. An approach for verifying correctness of web service compositions. Int. J. Eng. Technol. 2018, 7, 5. [Google Scholar] [CrossRef]
  9. Driss, M.; Ben Atitallah, S.; Albalawi, A.; Boulila, W. Req-WSComposer: A novel platform for requirements-driven composition of semantic web services. J. Ambient Intell. Humaniz. Comput. 2022, 13, 849–865. [Google Scholar] [CrossRef]
  10. Yin, X. Study on a dynamic E-business application framework based on Web service-based SOA. Int. J. Secur. Its Appl. 2016, 10, 55–64. [Google Scholar] [CrossRef]
  11. Silva, L.D.J.; Claro, D.B.; Pav, D.C.; Lopes, A. Semantic-based clustering of web services. J. Web Eng. 2015, 14, 325–345. [Google Scholar]
  12. Serrai, W.; Abdelli, A.; Mokdad, L.; Hammal, Y. Towards an efficient and a more accurate web service selection using MCDM methods. J. Comput. Sci. 2017, 22, 253–267. [Google Scholar] [CrossRef]
  13. Rajendran, V.; Chua, F.F.; Chan, G.Y. Self-healing in dynamic web service composition. In Proceedings of the 2017 IEEE 5th International Conference on Future Internet of Things and Cloud, FiCloud 2017, Prague, Czech Republic, 21–23 August 2017; pp. 206–211. [Google Scholar] [CrossRef]
  14. Rao, J.; Su, X. A survey of automated Web service composition methods. Lect. Notes Comput. Sci. 2005, 3387, 43–54. [Google Scholar] [CrossRef]
  15. Moghaddam, M.; Davis, J.G. Service selection in web service composition: A comparative review of existing approaches. In Web Services Foundations; Springer: New York, NY, USA, 2013; pp. 321–346. [Google Scholar]
  16. Younas, M.; Awan, I.; Duce, D. An efficient composition of Web services with active network support. Expert Syst. Appl. 2006, 31, 859–869. [Google Scholar] [CrossRef]
  17. Aldossari, M.Q.; Sidorova, A. Consumer acceptance of Internet of Things (IoT): Smart home context. J. Comput. Inf. Syst. 2020, 60, 507–517. [Google Scholar] [CrossRef]
  18. Kim, T.; Chiu, W. Consumer acceptance of sports wearable technology: The role of technology readiness. Int. J. Sports Mark. Spons. 2018, 20, 109–126. [Google Scholar] [CrossRef]
  19. Gubbi, J.; Buyya, R.; Marusic, S.; Palaniswami, M. Internet of Things (IoT): A vision, architectural elements, and future directions. Future Gener. Comput. Syst. 2013, 29, 1645–1660. [Google Scholar] [CrossRef]
  20. Asghari, P.; Rahmani, A.M.; Javadi, H.H.S. Service composition approaches in IoT: A systematic review. J. Netw. Comput. Appl. 2018, 120, 61–77. [Google Scholar] [CrossRef]
  21. Hamzei, M.; Navimipour, N.J. Toward efficient service composition techniques in the internet of things. IEEE Internet Things J. 2018, 5, 3774–3787. [Google Scholar] [CrossRef]
  22. Wang, D.; Yang, Y.; Mi, Z. A genetic-based approach to web service composition in geo-distributed cloud environment. Comput. Electr. Eng. 2015, 43, 129–141. [Google Scholar] [CrossRef]
  23. Seghir, F.; Khababa, A. A hybrid approach using genetic and fruit fly optimization algorithms for QoS-aware cloud service composition. J. Intell. Manuf. 2018, 29, 1773–1792. [Google Scholar] [CrossRef]
  24. Faruk, M.N.; Vara Prasad, G.L.; Divya, G. A Genetic PSO Algorithm with QoS-Aware Cluster Cloud Service Composition. Adv. Intell. Syst. Comput. 2016, 425, 395–405. [Google Scholar] [CrossRef]
  25. Naseri, A.; Jafari Navimipour, N. A new agent-based method for QoS-aware cloud service composition using particle swarm optimization algorithm. J. Ambient Intell. Humaniz. Comput. 2018, 10, 1851–1864. [Google Scholar] [CrossRef]
  26. Gavvala, S.K.; Jatoth, C.; Gangadharan, G.R.; Buyya, R. QoS-aware cloud service composition using eagle strategy. Future Gener. Comput. Syst. 2019, 90, 273–290. [Google Scholar] [CrossRef]
  27. Ghobaei-Arani, M.; Rahmanian, A.A.; Aslanpour, M.S.; Dashti, S.E. CSA-WSC: Cuckoo search algorithm for web service composition in cloud environments. Soft Comput. 2018, 22, 8353–8378. [Google Scholar] [CrossRef]
  28. Ren, K.; Xiao, N.; Chen, J. Building quick service query list using wordnet and multiple heterogeneous ontologies toward more realistic service composition. IEEE Trans. Serv. Comput. 2011, 4, 216–229. [Google Scholar] [CrossRef]
  29. Liu, X.Y.; Zhou, Y.M.; Zheng, R.S. Measuring semantic similarity in WordNet. In Proceedings of the 2007 International Conference on Machine Learning and Cybernetics, Hong Kong, China, 19–22 August 2007; Volume 6, pp. 3431–3435. [Google Scholar]
  30. Mora, R.; Santillan-Perez, S.; Bravo, M. Web Services Clustering Using a Bio-inspired Algorithm. In Proceedings of the International Workshop on Database and Expert Systems Applications, DEXA, Porto, Portugal, 5–8 September 2016; pp. 191–194. [Google Scholar] [CrossRef]
  31. Abualigah, L.M.; Khader, A.T. Unsupervised text feature selection technique based on hybrid particle swarm optimization algorithm with genetic operators for the text clustering. J. Supercomput. 2017, 73, 4773–4795. [Google Scholar] [CrossRef]
  32. Ghazal, T.M.; Hussain, M.Z.; Said, R.A.; Nadeem, A.; Hasan, M.K.; Ahmad, M.; Khan, M.A.; Naseem, M.T. Performances of k-means clustering algorithm with different distance metrics. Intell. Autom. Soft Comput. 2021, 30, 735–742. [Google Scholar] [CrossRef]
  33. Bora, D.J.; Gupta, A.K. Effect of Different Distance Measures on the Performance of K-Means Algorithm: An Experimental Study in Matlab. Int. J. Comput. Sci. Inf. Technol. 2014, 5, 2501–2506. [Google Scholar]
  34. Xie, J.; Jiang, S.; Xie, W.; Gao, X. An Efficient Global K-means Clustering Algorithm. J. Comput. 2011, 6, 271–279. [Google Scholar] [CrossRef]
  35. Bravo, M.; Alvarado, M. Similarity measures for substituting Web services. Int. J. Web Serv. Res. (IJWSR) 2010, 7, 1–29. [Google Scholar] [CrossRef]
  36. Kumar, S.; Singh, M. A novel clustering technique for efficient clustering of big data in Hadoop Ecosystem. Big Data Min. Anal. 2019, 2, 240–247. [Google Scholar] [CrossRef]
  37. Yousefian, F.; Nazemi, E. Self-Healing in Web Services Using Genetic Algorithm. J. Soft Comput. Decis. Support Syst. 2015, 2, 60–65. [Google Scholar]
  38. Raendran, V.; Ramasamy, R.K.; Rosdi, I.S.; Razak, R.A.; Fauzi, N.M. IoT technology for facilities management: Understanding end user perception of the smart toilet. Int. J. Adv. Comput. Sci. Appl. 2020, 11, 353–359. [Google Scholar] [CrossRef]
  39. Lokman, A.; Ramasamy, R.K.; Ting, C.Y. Scheduling and Predictive Maintenance for Smart Toilet. IEEE Access 2023, 11, 17983–17999. [Google Scholar] [CrossRef]
  40. Saha, S.S.; Sandha, S.S.; Srivastava, M. Machine Learning for Microcontroller-Class Hardware—A Review. IEEE Sensors J. 2022, 22, 21362–21390. [Google Scholar] [CrossRef] [PubMed]
  41. Rajendran, V.; Ramasamy, R.K.; Mohd-Isa, W.N. Improved eagle strategy algorithm for dynamic web service composition in the IoT: A conceptual approach. Future Internet 2022, 14, 56. [Google Scholar] [CrossRef]
  42. Mahmood, R.; Pennington, J.; Tsang, D.; Tran, T.; Bogle, A. A Framework for Automated API Fuzzing at Enterprise Scale. In Proceedings of the 2022 IEEE Conference on Software Testing, Verification and Validation (ICST), Valencia, Spain, 4–13 April 2022; pp. 377–388. [Google Scholar]
  43. About ReadyAPI. ReadyAPI Documentation. n.d. Available online: https://support.smartbear.com/readyapi/docs/general-info/about.html (accessed on 19 February 2023).
Figure 1. Service-Oriented Computing Research Roadmap.
Figure 1. Service-Oriented Computing Research Roadmap.
Futureinternet 16 00409 g001
Figure 2. Web Service SOA-based framework.
Figure 2. Web Service SOA-based framework.
Futureinternet 16 00409 g002
Figure 3. The Skeleton of IoT Infrastructure.
Figure 3. The Skeleton of IoT Infrastructure.
Futureinternet 16 00409 g003
Figure 4. The overall progression of the IES.
Figure 4. The overall progression of the IES.
Futureinternet 16 00409 g004
Figure 5. Clustering process of WS.
Figure 5. Clustering process of WS.
Futureinternet 16 00409 g005
Figure 6. Process of a service request by the user.
Figure 6. Process of a service request by the user.
Futureinternet 16 00409 g006
Figure 7. Overall Architecture of Improved Eagle Strategy.
Figure 7. Overall Architecture of Improved Eagle Strategy.
Futureinternet 16 00409 g007
Figure 8. Venn diagram illustrating the IES algorithm.
Figure 8. Venn diagram illustrating the IES algorithm.
Futureinternet 16 00409 g008
Figure 9. Dynamic Web Service Composition Scenario with IES.
Figure 9. Dynamic Web Service Composition Scenario with IES.
Futureinternet 16 00409 g009
Figure 10. Flowchart for substitution of service.
Figure 10. Flowchart for substitution of service.
Futureinternet 16 00409 g010
Figure 11. Overall Architecture of Smart Toilet.
Figure 11. Overall Architecture of Smart Toilet.
Futureinternet 16 00409 g011
Figure 12. Electrical diagram of Smart Toilet System.
Figure 12. Electrical diagram of Smart Toilet System.
Futureinternet 16 00409 g012
Figure 13. Illustration of the installation of IoT.
Figure 13. Illustration of the installation of IoT.
Futureinternet 16 00409 g013
Figure 14. Screenshot of mobile application.
Figure 14. Screenshot of mobile application.
Futureinternet 16 00409 g014
Figure 15. Screenshot of web dashboard.
Figure 15. Screenshot of web dashboard.
Futureinternet 16 00409 g015
Figure 16. Phases of Testing and Validation.
Figure 16. Phases of Testing and Validation.
Futureinternet 16 00409 g016
Figure 17. Graphical illustration for WOA service selection.
Figure 17. Graphical illustration for WOA service selection.
Futureinternet 16 00409 g017
Figure 18. Graphical illustration for ES service selection.
Figure 18. Graphical illustration for ES service selection.
Futureinternet 16 00409 g018
Figure 19. Graphical illustration for IES service selection.
Figure 19. Graphical illustration for IES service selection.
Futureinternet 16 00409 g019
Figure 20. Comparison of time taken to select the services.
Figure 20. Comparison of time taken to select the services.
Futureinternet 16 00409 g020
Figure 21. The activities are carried out to evaluate the correct service.
Figure 21. The activities are carried out to evaluate the correct service.
Futureinternet 16 00409 g021
Figure 22. Web-based system for IES.
Figure 22. Web-based system for IES.
Futureinternet 16 00409 g022
Figure 23. Flowchart of “send SMS” function.
Figure 23. Flowchart of “send SMS” function.
Futureinternet 16 00409 g023
Figure 24. Perform searches for the send SMS keyboard.
Figure 24. Perform searches for the send SMS keyboard.
Futureinternet 16 00409 g024
Figure 25. BPMN of Smart Toilet IoT System.
Figure 25. BPMN of Smart Toilet IoT System.
Futureinternet 16 00409 g025
Figure 26. BPEL of Smart Toilet IoT System.
Figure 26. BPEL of Smart Toilet IoT System.
Futureinternet 16 00409 g026
Table 1. Summary and Comparative Analysis of Proposed IES with Existing Methods.
Table 1. Summary and Comparative Analysis of Proposed IES with Existing Methods.
AuthorMethodsAdvantagesDisadvantages
[7]PSO & FOAImproves the convergence speedHigh computation time in large-scale
[22]Skyline + GALow computation time; high scalabilityLack of compatibility
[23]GA + FOALow computation timeRestriction is in the distributed cloud environment
[24]PSO + GAHigh-speed convergenceHigh time complexity
[25]PSO + FOAChoose the right serviceMore resources needed
[6]ABC + DEHigh-speed convergenceRestrictions in multi-objective service selection
[5]ABC + GALow computation timeWithout considering the QoS parameter
[26]ES + WOAHigh-speed convergenceRestriction is in the distributed cloud environment.
[27]CSAHigh-speed convergenceLack of fault tolerance
This paperIESReduced computation time in large-scale environments; balances functional and non-functional attributesTesting needed for scalability in different cloud environments
Table 2. Algorithm of ping response for service availability using Manhattan.
Table 2. Algorithm of ping response for service availability using Manhattan.
Algorithm of Ping Response for Service Availability Using Manhattan
1:In random 2D dataset points:
2:Select K number of clusters.
3:Select randomly initial centroid points.
4:Commute the distance with the Manhattan distance metric of each point from selected cluster centers.
5:Steps of Manhattan distance metric:
6:Dist1 = [points − centroid]
7:Dist = sum(abs(Dist1))
8:return Dist
9:Grouping based on minimum distance.
10:If no data points need to be moved, then stop; otherwise, repeat Steps 3
Table 3. Algorithm of Improved Eagle Strategy.
Table 3. Algorithm of Improved Eagle Strategy.
Algorithm of Improved Eagle Strategy
1:Set initial population size to 5824.
2:Set initial lowest cluster similarity score to 0.
3:Choose a service randomly and get its similarity score with the user’s requirement.
4:Divide the population into 4 clusters using the k-means algorithm.
5:Get the user requirement and iterate over each cluster.
6:  If similarity score is less than 0.9:
7:    Choose a new service randomly.
8:  Else:
9:    Compose the chosen service.
10:  Choose another service randomly.
11:Select a service with high fitness value by sorting services in each cluster by fitness value in ascending order and randomly selecting a service with the highest fitness value.
12:Return the selected service
Table 4. Time taken to select the service by WOA.
Table 4. Time taken to select the service by WOA.
Whale Optimization Algorithm (WOA)
NOS 1Time Taken (ms)Mean (ms)
30019.24620.33615.79918.4603
40021.34120.81121.66921.2737
50024.7127.52724.50625.5810
60032.74931.81628.64331.0693
70033.4632.22433.79233.1587
80047.33238.26237.7141.1013
90044.68940.0742.05642.2717
100056.17645.57844.30548.6863
200084.53994.2482.70787.1620
3000125.118125.171124.55124.9463
1 Number of services.
Table 5. Time taken to select the service by ES.
Table 5. Time taken to select the service by ES.
Eagle Strategy (ES)
NOS 1Time Taken (ms)Mean (ms)
3004.3544.9125.1784.81467
4005.2915.555.8325.55767
5005.9936.1186.4876.19933
6007.217.457.6287.42933
7007.5717.6697.9037.71433
8007.9818.32110.4848.92867
9009.5319.77910.79810.03600
100012.32811.96513.35412.54900
200025.89228.94530.45628.43100
3000125.118125.171124.55124.9463
1 Number of services.
Table 6. Time taken to select the service by IES.
Table 6. Time taken to select the service by IES.
Improved Eagle Strategy (ES)
NOS 1Time Taken (ms)Mean (ms)
3000.0020.0020.0030.0023
4000.0030.0020.0030.0027
5000.0050.0030.0060.0047
6000.0060.0050.0040.0050
7000.0070.0060.0070.0067
8000.0070.0070.0070.0070
9000.0070.0060.0090.0073
10000.0070.0140.0080.0097
20000.0170.00180.020.0129
30000.0170.0150.020.0173
1 Number of services.
Table 7. HTTP response state.
Table 7. HTTP response state.
Response CodeMeaningDescription
200OKThe request was successful, and the server returned the requested data.
404Not FoundThe requested resource could not be found on the server.
401UnauthorizedThe client attempted to access a protected resource without proper authentication credentials.
403ForbiddenThe server refused to fulfill the request, likely because the client did not have proper permission to access the resource.
500Internal Server ErrorThe server encountered an error while attempting to fulfill the request.
Table 8. Test objective for the send SMS function.
Table 8. Test objective for the send SMS function.
Response CodeDescription
Test ObjectiveTo send an SMS to the provided phone number
Test KeywordSMS
Test DescriptionTo send an SMS to the respective phone number if the alarm is triggered
Test Procedure
  • Provide the keyword in the Keyword search text box.
  • Then, click the search button.
  • At the services to be invoked in the WSC column, copy the first service URL.
  • Paste the copied service URL into ReadyAPI.
  • Provide the parameters required in the request column.
  • Then, click the “Send” button.
  • Check the response code and the message-sending status in the response column.
Table 9. Test cases for SMS Function.
Table 9. Test cases for SMS Function.
TC#InputExpected OutputActual outputPass/Fail
11.To: +60149331244
2.Key: 882b8998
3.api_secret: eKNzejpzE3djZ18N
4.api_key: 9be3cf20
5.text: “WhatsApp please by Venu”.
Response Code:
200-OK
SMS should be sent to the stated phone number and the text message.
Response Code:
200-OK
Once the SMS service is invoked, the parameter that passed at the “text” input is sent to the parameter to the “to” input
PASS
21.To: abc
2.Key: 882b8998
3.api_secret: eKNzejpzE3djZ18N
4.api_key: 9be3cf20
5.text: “WhatsApp please by Venu”.
Response Code: 500
Error messages are produced, and SMS should not be sent.
Response Code: 200-OK
No error message
FAIL
Table 10. Test objective for the send Weather function.
Table 10. Test objective for the send Weather function.
Response CodeDescription
Test ObjectiveTo convert Celsius value to Fahrenheit value.
Test Keywordweather
Test DescriptionTo convert the Celsius to Fahrenheit based on the Celsius degree provided.
Test Procedure
  • Provide the keyword in the Keyword search text box.
  • Then, click the search button.
  • At the services to be invoked in the WSC column, copy the first service URL.
  • Paste the copied service URL into ReadyAPI.
  • Provide the parameters required in the request column.
  • Then, click the “Send” button.
  • Check the response code and the message-sending status in the response column.
Table 11. Test cases for Weather function.
Table 11. Test cases for Weather function.
TC#InputExpected OutputActual OutputPass/Fail
1Celsius: 50Response Code: 200-OKResponse Code: 200-OKPASS
2Celsius: ABCResponse Code: 200-OK
Error message produce
Response Code: 200-OK
Error
PASS
Table 12. Test objective for the send currency service.
Table 12. Test objective for the send currency service.
Response CodeDescription
Test ObjectiveTo retrieve the countries’ information.
Test KeywordCurrency
Test DescriptionTo retrieve the country information based on the selected country.
Test Procedure
  • Provide the keyword in the Keyword search text box.
  • Then, click the search button.
  • At the services to be invoked in the WSC column, copy the first service URL.
  • Paste the copied service URL into ReadyAPI.
  • Provide the parameters required in the request column.
  • Then, click the “Send” button.
  • Check the response code and the message-sending status in the response column.
Table 13. Test cases for currency service.
Table 13. Test cases for currency service.
TC#InputExpected OutputActual OutputPass/Fail
1Country ISO Code: MYSResponse Code: 200-OK
ISO Code: MY
Name: Malaysia
Phone Code: 60
Capital City: Kuala Lumpur
Currency Code: MYR
Response Code: 200-OK
ISO Code: MY
Name: Malaysia
Phone Code: 60
Capital City: Kuala Lumpur
Currency Code: MYR
PASS
2Country ISO Code: 1234Response Code: 200-OK
Country not exist
Response Code: 200-OK
Country not found in the database
PASS
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Rajendran, V.; Ramasamy, R.K. Real-Time Evaluation of the Improved Eagle Strategy Model in the Internet of Things. Future Internet 2024, 16, 409. https://doi.org/10.3390/fi16110409

AMA Style

Rajendran V, Ramasamy RK. Real-Time Evaluation of the Improved Eagle Strategy Model in the Internet of Things. Future Internet. 2024; 16(11):409. https://doi.org/10.3390/fi16110409

Chicago/Turabian Style

Rajendran, Venushini, and R Kanesaraj Ramasamy. 2024. "Real-Time Evaluation of the Improved Eagle Strategy Model in the Internet of Things" Future Internet 16, no. 11: 409. https://doi.org/10.3390/fi16110409

APA Style

Rajendran, V., & Ramasamy, R. K. (2024). Real-Time Evaluation of the Improved Eagle Strategy Model in the Internet of Things. Future Internet, 16(11), 409. https://doi.org/10.3390/fi16110409

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop