|Keywords:||Web service; service selection; service recommendation; decision making; machine learning; Natural Sciences; Computer and Information Science; Computer Science; Naturvetenskap; Data- och informationsvetenskap; Datavetenskap (datalogi)|
|Full text PDF:||http://urn.kb.se/resolve?urn=urn:nbn:se:lnu:diva-52733|
In the modern world, service oriented applications are becoming more and more popular from year to year. To remain competitive, these Web services must provide the high level of quality. From another perspective, the end user is interested in getting the service, which fits the user's requirements the best: for limited resources get the service with the best available quality. In this work, the model for automated service selection was presented to solve this problem. The main focus of this work was to provide high accuracy of this model during the prediction of Web service’s response time. Therefore, several machine learning algorithms were selected and used in the model as well as several experiments were conducted and their results were evaluated and analysed to select one machine learning algorithm, which coped best with the defined task. This machine learning algorithm was used in final version of the model. As a result, the selection model was implemented, whose accuracy was around 80% while selecting only one Web service as a best from the list of available. Moreover, one strategy for measuring accuracy has also been developed, the main idea of which is the following: not one but several Web services, the difference in the response time of which does not exceed the boundary value, can be considered as optimal ones. According to this strategy, the maximum accuracy of selecting the best Web service was about 89%. In addition, a strategy for selecting the best Web service from the end-user side was developed to evaluate the performance of implemented model. Finally, it should also be mentioned that with the help of specific tool the input data for the experiments was generated, which allowed not only generating different input datasets without huge time consumption but also using the input data with the different type (linear, periodic) for experiments.