Skip to main content
Top

2019 | Book

Service-Oriented Computing

17th International Conference, ICSOC 2019, Toulouse, France, October 28–31, 2019, Proceedings

Editors: Sami Yangui, Ismael Bouassida Rodriguez, Dr. Khalil Drira, Zahir Tari

Publisher: Springer International Publishing

Book Series : Lecture Notes in Computer Science

insite
SEARCH

About this book

This book constitutes the proceedings of the 17th International Conference on Service-Oriented Computing, ICSOC 2019, held in Toulouse, France, in October 2019.

The 28 full and 12 short papers presented together with 7 poster and 2 invited papers in this volume were carefully reviewed and selected from 181 submissions. The papers have been organized in the following topical sections: Service Engineering; Run-time Service Operations and Management; Services and Data; Services in the Cloud; Services on the Internet of Things; Services in Organizations, Business and Society; and Services at the Edge.

Table of Contents

Frontmatter

Service Engineering

Frontmatter
An Empirical Study of GraphQL Schemas

GraphQL is a query language for APIs and a runtime to execute queries. Using GraphQL queries, clients define precisely what data they wish to retrieve or mutate on a server, leading to fewer round trips and reduced response sizes. Although interest in GraphQL is on the rise, with increasing adoption at major organizations, little is known about what GraphQL interfaces look like in practice. This lack of knowledge makes it hard for providers to understand what practices promote idiomatic, easy-to-use APIs, and what pitfalls to avoid.To address this gap, we study the design of GraphQL interfaces in practice by analyzing their schemas – the descriptions of their exposed data types and the possible operations on the underlying data. We base our study on two novel corpuses of GraphQL schemas, one of 16 commercial GraphQL schemas and the other of 8,399 GraphQL schemas mined from GitHub projects. We make available to other researchers those schemas mined from GitHub whose licenses permit redistribution. We also make available the scripts to mine the whole corpus. Using the two corpuses, we characterize the size of schemas and their use of GraphQL features and assess the use of both prescribed and organic naming conventions. We also report that a majority of APIs are susceptible to denial of service through complex queries, posing real security risks previously discussed only in theory. We also assess ways in which GraphQL APIs attempt to address these concerns.

Erik Wittern, Alan Cha, James C. Davis, Guillaume Baudart, Louis Mandel
Automating SLA-Driven API Development with SLA4OAI

The OpenAPI Specification (OAS) is the de facto standard to describe RESTful APIs from a functional perspective. OAS has been a success due to its simple model and the wide ecosystem of tools supporting the SLA-Driven API development lifecycle. Unfortunately, the current OAS scope ignores crucial information for an API such as its Service Level Agreement (SLA). Therefore, in terms of description and management of non-functional information, the disadvantages of not having a standard include the vendor lock-in and prevent the ecosystem to grow and handle extra functional aspects.In this paper, we present SLA4OAI, pioneering in extending OAS not only allowing the specification of SLAs, but also supporting some stages of the SLA-Driven API lifecycle with an open-source ecosystem. Finally, we validate our proposal having modeled 5488 limitations in 148 plans of 35 real-world APIs and show an initial interest from the industry with 600 and 1900 downloads and installs of the SLA Instrumentation Library and the SLA Engine.

Antonio Gamez-Diaz, Pablo Fernandez, Antonio Ruiz-Cortes
On Observability and Monitoring of Distributed Systems – An Industry Interview Study

Business success of companies heavily depends on the availability and performance of their client applications. Due to modern development paradigms such as DevOps and microservice architectural styles, applications are decoupled into services with complex interactions and dependencies. Although these paradigms enable individual development cycles with reduced delivery times, they cause several challenges to manage the services in distributed systems. One major challenge is to observe and monitor such distributed systems. This paper provides a qualitative study to understand the challenges and good practices in the field of observability and monitoring of distributed systems. In 28 semi-structured interviews with software professionals we discovered increasing complexity and dynamics in that field. Especially observability becomes an essential prerequisite to ensure stable services and further development of client applications. However, the participants mentioned a discrepancy in the awareness regarding the importance of the topic, both from the management as well as from the developer perspective. Besides technical challenges, we identified a strong need for an organizational concept including strategy, roles and responsibilities. Our results support practitioners in developing and implementing systematic observability and monitoring for distributed systems.

Sina Niedermaier, Falko Koetter, Andreas Freymann, Stefan Wagner
Integrating Geographical and Functional Relevance to Implicit Data for Web Service Recommendation

Designing efficient and effective Web service recommendation, primarily based on usage feedback, has become an important task to support the prevalent consumption of services. In the mashup-API invocation scenario, the most available feedback is the implicit invocation data, i.e., the binary data indicating whether or not a mashup has invoked an API. Hence, various efforts are exploiting potential impact factors to augment the implicit invocation data with the aim to improve service recommendation performance. One significant factor affecting the context of Web service invocations is geographical location, however, it has been given less attention in the implicit-based service recommendation. In this paper, we propose a recommendation approach that derives a contextual preference score from geographical location information and functionality descriptions. The preference score complements the mashup-API invocation data for our implicit-tailored matrix factorization recommendation model. Evaluation results show that augmenting the implicit data with geographical location information and functionality description significantly increases the precision of API recommendation for mashup services.

Khavee Agustus Botangen, Jian Yu, Sira Yongchareon, LiangHuai Yang, Quan Z. Sheng
Towards Automated Microservices Extraction Using Muti-objective Evolutionary Search

We introduce in this paper a novel approach, named MSExtractor, that formulate the microservices identification problem as a multi-objective combinatorial optimization problem to decompose a legacy application into a set of cohesive, loosely-coupled and coarse-grained services. We employ the non-dominated sorting genetic algorithm (NSGA-II) to drive a search process towards optimal microservices identification while considering structural dependencies in the source code. We conduct an empirical evaluation on a benchmark of two open-source legacy software systems to assess the efficiency of our approach. Results show that MSExtractor is able to find relevant microservice candidates and outperforms recent three state-of-the-art approaches.

Islem Saidani, Ali Ouni, Mohamed Wiem Mkaouer, Aymen Saied
Towards Automated Planning for Enterprise Services: Opportunities and Challenges

Existing Artificial Intelligence (AI) driven automation solutions in enterprises employ machine learning, natural language processing, and chatbots. There is an opportunity for AI Planning to be applied, which offers reasoning about action trajectories to help build automation blueprints. AI Planning is a problem-solving technique, where knowledge about available actions and their consequences is used to identify a sequence of actions, which, when applied in a given initial state, satisfy a desired goal. AI Planning has successfully been applied in a number of domains ranging from space applications, logistics and transportation, manufacturing, robotics, scheduling, e-learning, enterprise risk management, and service composition. In this paper, we discuss experience in building automation solutions that employ AI planning for use in enterprise IT and business services, such as change and event management, migration and transformation and RPA composition. We discuss challenges in adoption of AI planning across the enterprise from implementation and deployment perspectives.

Maja Vukovic, Scott Gerard, Rick Hull, Michael Katz, Laura Shwartz, Shirin Sohrabi, Christian Muise, John Rofrano, Anup Kalia, Jinho Hwang, Dang Yabin, Ma Jie, Jiang Zhuoxuan

Run-Time Service Operations and Management

Frontmatter
A Model for Distributed Service Level Agreement Negotiation in Internet of Things

Internet of Things (IoT) services can provide a comprehensive competitive edge compared to traditional services by leveraging the physical devices’ capabilities through a demand-driven approach to provide a near real-time state of the world. Service provision in such a dynamic and large-scale environment needs to cope with intermittent availability of service providers, and may require negotiation to agree on Quality of Service (QoS) of a particular service. Existing negotiation approaches for IoT require a centralised perspective of the environment, which may not be practical given the scale and autonomy of service providers that rely on sensors deployed various environments to deliver their services. We propose a negotiation mechanism that uses distributed service brokers to dynamically negotiate with multiple IoT service providers on behalf of service consumers. The framework uses a hierarchical architecture to cluster service information and to manage the message flows during the negotiation process. Simulation results demonstrate the feasibility and efficiency of our proposal.

Fan Li, Andrei Palade, Siobhán Clarke
Edge User Allocation with Dynamic Quality of Service

In edge computing, edge servers are placed in close proximity to end-users. App vendors can deploy their services on edge servers to reduce network latency experienced by their app users. The edge user allocation (EUA) problem challenges service providers with the objective to maximize the number of allocated app users with hired computing resources on edge servers while ensuring their fixed quality of service (QoS), e.g., the amount of computing resources allocated to an app user. In this paper, we take a step forward to consider dynamic QoS levels for app users, which generalizes but further complicates the EUA problem, turning it into a dynamic QoS EUA problem. This enables flexible levels of quality of experience (QoE) for app users. We propose an optimal approach for finding a solution that maximizes app users’ overall QoE. We also propose a heuristic approach for quickly finding sub-optimal solutions to large-scale instances of the dynamic QoS EUA problem. Experiments are conducted on a real-world dataset to demonstrate the effectiveness and efficiency of our approaches against a baseline approach and the state of the art.

Phu Lai, Qiang He, Guangming Cui, Xiaoyu Xia, Mohamed Abdelrazek, Feifei Chen, John Hosking, John Grundy, Yun Yang
Automatic Business Process Model Extension to Repair Constraint Violations

Consider an artifact-centric business process model, containing both a data model and a process model. When executing the process, it may happen that some of the data constraints from the data model are violated. Bearing this in mind, we propose an approach to automatically generate an extension to the original business process model that, when executed after a constraint violation, repairs the contents of the data leaving it in a new consistent state.

Xavier Oriol, Giuseppe De Giacomo, Montserrat Estañol, Ernest Teniente
N2TM: A New Node to Trust Matrix Method for Spam Worker Defense in Crowdsourcing Environments

To defend against spam workers in crowdsourcing environments, the existing solutions overlook the fact that a spam worker with guises can easily bypass the defense. To alleviate this problem, in this paper, we propose a Node to Trust Matrix method (N2TM) that represents a worker node in a crowdsourcing network as an un-manipulable Worker Trust Matrix (WTM) for identifying the worker’s identity. In particular, we first present a crowdsourcing trust network consisting of requester nodes, worker nodes, and transaction-based edges. Then, we construct WTMs for workers based on the trust network. A WTM consists of trust indicators measuring the extent to which a worker is trusted by different requesters in different sub-networks. Moreover, we show the un-manipulable property and the usable property of a WTM that are crucial for identifying a worker’s identity. Furthermore, we leverage deep learning techniques to predict a worker’s identity with its WTM as input. Finally, we demonstrate the superior performance of our proposed N2TM in identifying spam workers with extensive experiments.

Bin Ye, Yan Wang, Mehmet Orgun, Quan Z. Sheng
QoS Value Prediction Using a Combination of Filtering Method and Neural Network Regression

With increasing demand and adoption of web services in the world wide web, selecting an appropriate web service for recommendation is becoming a challenging problem to address today. The Quality of Service (QoS) parameters, which essentially represent the performance of a web service, play a crucial role in web service selection. However, obtaining the exact value of a QoS parameter of service before its execution is impossible, due to the variation of the QoS parameter across time and users. Therefore, predicting the value of a QoS parameter has attracted significant research attention. In this paper, we consider the QoS prediction problem and propose a novel solution by leveraging the past information of service invocations. Our proposal, on one hand, is a combination of collaborative filtering and neural network-based regression model. Our filtering approach, on the other hand, is a coalition of the user-intensive and service-intensive models. In the first step of our approach, we generate a set of similar users on a set of similar services. We then employ a neural network-based regression module to predict the QoS value of a target service for a target user. The experiments are conducted on the WS-DREAM public benchmark dataset. Experimental results show the superiority of our method over state-of-the-art approaches.

Soumi Chattopadhyay, Ansuman Banerjee
Harmonia: A Continuous Service Monitoring Framework Using DevOps and Service Mesh in a Complementary Manner

Software teams today are required to deliver new or updated services frequently, rapidly and independently. Adopting DevOps and Microservices support the rapid service delivery model but leads to pushing code or service infrastructure changes across inter-dependent teams that are not collectively assessed, verified, or notified. In this paper, we propose Harmonia - a continuous service monitoring framework utilizing DevOps and Service Mesh in a complementary manner to improve coordination and change management among independent teams. Harmonia can automatically detect changes in services, including changes that violate performance SLAs and user experience, notify the changes to affected teams, and help them resolve the changes quickly. We applied Harmonia to a standard application in describing Microservice management to assist with an initial understanding and strengths of Harmonia. During the demonstration, we deployed faulty and normal services alternatively and captured changes from Jenkins, Github, Istio, and Kubernetes logs to form an application-centric cohesive view of the change and its impact and notify the affected teams.

Haan Johng, Anup K. Kalia, Jin Xiao, Maja Vuković, Lawrence Chung

Services and Data

Frontmatter
ESDA: An Energy-Saving Data Analytics Fog Service Platform

The volume of heterogeneous data collected through a variety of sensors is growing exponentially. With the increasing popularity of providing real-time data analytics services at the edge of the network, the process of harvesting and analysing sensor data is thus an inevitable part of enhancing the service experience for users. In this paper, we propose a fog-empowered data analytics service platform to overcome the frequent sensor data loss issue through a novel deep autoencoder model while keeping the minimum energy usage of the managed sensors at the same time. The platform incorporates several algorithms with the purpose of training the individual local fog model, saving the overall energy consumption, as well as operating the service process. Compared with other state-of-the-art techniques for handling missing sensor data, our platform specialises in finding the underlying relationship among temporal sensor data series and hence provides more accurate results on heterogeneous data types. Owing to the superior inference capability, the platform enables the fog nodes to perform real-time data analytics service and respond to such service request promptly. Furthermore, the effectiveness of the proposed platform is verified through the real-world indoor deployment along with extensive experiments.

Tiehua Zhang, Zhishu Shen, Jiong Jin, Atsushi Tagami, Xi Zheng, Yun Yang
Leveraging AI in Service Automation Modeling: From Classical AI Through Deep Learning to Combination Models

With the advent of cloud, new generations of digital services are being conceived to respond to the ever-growing demands and expectations of the market place. In parallel, automations are becoming an essential enabler for successful management of these services. With such importance being placed on digital services, automated management of these services – in particular, automated incident resolution – becomes a key issue for both the provider and the users. The challenge facing automation providers lies in variability and the frequently changing nature of the monitoring tickets that provide the primary input to automation. Despite the value of the correct automation at the correct time, it is also important to remember that triggering an incorrect automation may damage the smooth operation of the business. In this paper, we discuss AI modeling for automation recommendations. We describe a wide range of experiments which allowed us to conclude an optimal method with respect to accuracy and speed acceptable to service providers.

Qing Wang, Larisa Shwartz, Genady Ya. Grabarnik, Michael Nidd, Jinho Hwang
A Wearable Machine Learning Solution for Internet Traffic Classification in Satellite Communications

In this paper, we present an architectural framework to perform Internet traffic classification in Satellite Communications for QoS management. Such framework is based on Machine Learning techniques. We propose the elements that the framework should include, as well as an implementation proposal. We define and validate some of its elements by evaluating an Internet dataset generated on an emulated Satellite Architecture. We also outline some discussions and future works that should be addressed in order to have an accurate Internet classification system.

Fannia Pacheco, Ernesto Exposito, Mathieu Gineste
FAME: An Influencer Model for Service-Oriented Environments

We propose FAME (inFluencer Apis in developer coMmunitiEs), a multi-dimensional influencer model for APIs in service-oriented environments. We define influence as the extent to which an API is likely to be adopted in mashups and service-oriented applications. The proposed model helps providers increase the visibility of their APIs and developers select the best-in-class APIs. We extract more than eighteen textual and non-textual API features from various programming communities such as GitHub, StackOverflow, HackerNews, and ProgrammableWeb. We perform sentiment analysis to quantify developers’ opinions towards using APIs. We introduce a cumulative API influence score to measure the influence of APIs across communities and categorize APIs into tiers based on their influence. We introduce a linear regression technique to predict the evolution of influence scores and correlate API features to those scores. We conduct experiments on large and real-world data-sets extracted from the above mentioned programming communities to illustrate the viability of our approach.

Faisal Binzagr, Hamza Labbaci, Brahim Medjahed
Latency-Aware Deployment of IoT Services in a Cloud-Edge Environment

Efficient scheduling of data elements and computation units can help to reduce the latency of processing big IoT stream data. In many cases, moving computation turns out to be more cost-effective than moving data. However, deploying computations from cloud-end to edge devices may face two difficult situations. First, edge devices usually have limited computing power as well as storage capability, and we need to selectively schedule computation tasks. Secondly, the overhead of stream data processing varies over time and makes it necessary to adaptively adjust service deployment at runtime. In this work, we propose a heuristics approach to adaptively deploying services at runtime. The effectiveness of the proposed approach is demonstrated by examining real cases of China’s State Power Grid.

Shouli Zhang, Chen Liu, Jianwu Wang, Zhongguo Yang, Yanbo Han, Xiaohong Li
Trusted Data Integration in Service Environments: A Systematic Mapping

This paper identifies and discusses trends and open issues regarding the use of trust in data-provisioning service environments, especially cloud environments. Applying a systematic review method [2], we propose a classification scheme used to provide a quantitative view of current trust solutions insisting in open issues. Finally, using analysis results, we give the general lines of an approach for improving data provisioning in multi-cloud using Service Level Agreement (SLA) and proposing the notion of multi-level trust.

Senda Romdhani, Nadia Bennani, Chirine Ghedira-Guegan, Genoveva Vargas-Solar
CSI2: Cloud Server Idleness Identification by Advanced Machine Learning in Theories and Practice

Studies show that virtual machines (VMs) in cloud are easily forgotten with non-productive status. This incurs unnecessary cost for cloud tenants and resource waste for cloud providers. As a solution to this problem, we present our Cloud Server Idleness Identification (CSI2) system. The CSI2 system collects data from the servers in cloud, performs analytics against the dataset to identify the idle servers, then provides suggestions to the owners of the idle servers. Once the confirmation from the owners are received, the idle servers are deleted or archived. We not only design and implement the CSI2 system, but also bring it alive into production environment.How to accurately identify the idleness in cloud is the challenging part of this problem, because there is a trade-off between the cost saving and the user experience. We build a machine learning model to handle this challenge. In addition to that, we also build an advanced tool based on Bayesian optimization (BO) to help us finely tune the hyperparameters of the models. It turns out that our finely tuned models works accurately, successfully handling the aforementioned conflict, and outperforms its predecessors with a F1 score of 0.89.

Jun Duan, Guangcheng Li, Neeraj Asthana, Sai Zeng, Ivan Dell’Era, Aman Chanana, Chitra Agastya, William Pointer, Rong Yan

Services in the Cloud

Frontmatter
An Energy Efficient and Interference Aware Virtual Machine Consolidation Algorithm Using Workload Classification

Inefficient resource usage is one of the greatest causes of high energy consumption in cloud data centers. Virtual Machine (VM) consolidation is an effective method for improving energy related costs and environmental sustainability for modern data centers. While dynamic VM consolidation can improve energy efficiency, virtualisation technologies cannot guarantee performance isolation between co-located VMs resulting in interference issues. We address the problem by introducing a energy and interference aware VM consolidation algorithm. The proposed algorithm utilizes the predictive capabilities of a Machine Learning (ML) model in an attempt to classify VM workloads to make more informed consolidation decisions. Furthermore, using recent workload data from Microsoft Azure we present a comparative study of two popular classification algorithms and select the model with the best performance to incorporate into our proposed approach. Our empirical results demonstrate how our approach improves energy efficiency by 31% while also reducing service violations by 69%.

Rachael Shaw, Enda Howley, Enda Barrett
Thread-Level CPU and Memory Usage Control of Custom Code in Multi-tenant SaaS

Software-as-a-Service (SaaS) providers commonly support customization of their services to allow them to attract larger tenant bases. The nature of these customizations in practice ranges from anticipated configuration options to sophisticated code extensions. From a SaaS provider viewpoint, the latter category is particularly challenging as it involves executing untrusted tenant custom code in the SaaS production environment. Proper isolation of custom code in turn requires the ability to control the CPU and memory usage of each tenant.In current practice, OS-level virtualization tools such as hypervisors or containers are predominantly used for this purpose. These techniques, however, constrain the number of tenants that a single node can cost-effectively accommodate.In this paper, we present a practical solution for thread-level tenant isolation, vis-à-vis CPU and memory usage in presence of tenant-provided custom code. Both Java Runtime Environment (JRE) bytecode and tenant code are instrumented with usage control checkpoints which, based on data gathered using the Java Resource Consumption Management API (JSR-284), ensures that CPU and memory usage of tenants remain within their Service-level Agreements (SLA) limits.Our experiments show that the tenant accommodation capacity of single node increases 59 times with the proposed solution instead of containers. This scalability improvement comes at the average cost of $$0.31\,\mathrm{ns}$$ 0.31 ns performance overhead per control checkpoint.

Majid Makki, Dimitri Van Landuyt, Bert Lagaisse, Wouter Joosen
Optimized Application Deployment in the Fog

Fog computing uses geographically distributed fog nodes that can supply nearby end devices with low-latency access to cloud-like compute resources. If the load of a fog node exceeds its capacity, some non-latency-critical application components may be offloaded to the cloud. Using commercial cloud offerings for such offloading incurs financial costs. Optimally deciding which application components to keep in the fog node and which ones to offload to the cloud is a difficult combinatorial problem. We introduce an optimization algorithm that (i) guarantees that the deployment always satisfies capacity constraints, (ii) achieves near-optimal cloud usage costs, and (iii) is fast enough to be run online. Experimental results show that our algorithm can optimize the deployment of hundreds of components in a fraction of a second on a commodity computer, while leading to only slightly higher costs than the optimum.

Zoltán Ádám Mann, Andreas Metzger, Johannes Prade, Robert Seidl
Toward Cost Efficient Cloud Bursting

While private clouds are still widely adopted due primarily to privacy and security reasons, they are often less resilient with fluctuating workloads compared to public clouds. Workload surges in private clouds can be dealt with by offloading some workload/jobs to public clouds; this is referred to as cloud bursting. Although the dynamic use of public clouds is claimed to be cost efficient, the actual realization of such cost efficiency is highly dependent on judicious scheduling decisions. In this paper, we present Cost Efficient Cloud Bursting Scheduler (CECBS) as a new scheduling framework that optimizes cost efficiency while preserving privacy by taking advantage of benefits of each of two cloud types. In particular, CECBS schedules jobs taking into account (1) public cloud pricing policy (billing cycle), (2) privacy of data/job and (3) local electricity rates for private clouds. Based on simulation results obtained from real workload traces, CECBS achieves 20% cost savings on average compared with costs of Resource Management Service (RMS) [11].

Amirmohammad Pasdar, Young Choon Lee, Khaled Almi’ani
Optimized Renewable Energy Use in Green Cloud Data Centers

The huge energy consumption of cloud data centers not only increases costs but also carbon emissions associated with such data centers. Powering data centers with renewable or green sources of energy can reduce brown energy use and consequently carbon emissions. However, powering data centers with these energy sources is challenging, as they are variable and not available at all times. In this work, we formulate the microservices management problem as finite Markov Decision Processes (MDP) to optimise renewable energy use. By dynamically switching off non-mandatory microservices and scheduling battery usage, upon the user’s preference, our proposed method makes a trade-off between the workload execution and brown energy consumption. We evaluate our proposed method using traces derived from two real workloads and real-world solar data. Simulated experiments show that, compared with baseline algorithms, our proposed approach performs up to 30% more efficiently in balancing the brown energy usage and workload execution.

Minxian Xu, Adel N. Toosi, Behrooz Bahrani, Reza Razzaghi, Martin Singh
Operating Enterprise AI as a Service

This paper discusses the challenges in providing AI functionality “as a Service” (AIaaS) in enterprise contexts, and proposes solutions to some of these challenges. The solutions are based on our experience in designing, deploying, and testing AI services with a number of customers of ServiceNow, an Application Platform as a Service that enables digital workflows and simplifies the complexity of work in a single cloud platform. Some of the underlying ideas were developed when many of the authors were part of DxContinuum inc, a machine learning (ML) startup that ServiceNow bought in 2017 with the express purpose of embedding ML in the ServiceNow platform. The widespread adoption of ServiceNow by the majority of large corporations has given us the opportunity to interact with customers in different markets and to appreciate the needs, fears and barriers towards adopting AIaaS and to design solutions that respond to such barriers. In this paper we share the lessons we learned from these interactions and present the resulting framework and architecture we adopted, which aims at addressing fundamental concerns that are sometimes conflicting with each other, from automation to security, performance, effectiveness, ease of adoption, and efficient use of resources. Finally, we discuss the research challenges that lie ahead in this space.

Fabio Casati, Kannan Govindarajan, Baskar Jayaraman, Aniruddha Thakur, Sriram Palapudi, Firat Karakusoglu, Debu Chatterjee
Towards Automated Patch Management in a Hybrid Cloud

Software patching is routinely employed for enterprise online applications to guard against ever-increasing security risks and to keep up with customer requirements. However, in a hybrid cloud setting, where an application deployment can span across diverse cloud environments, patching becomes challenging, especially since application components may be deployed as containers or VMs or bare-metal machines. Further, application tiers may have dependencies, which need to be respected. Worse, to minimize application downtime, selected patches need to be applied in a finite time period. This paper presents an automated patching strategy for hybrid-cloud—deployed applications that leverages a greedy algorithm design to optimally patch applications. Our implementation and evaluation results highlight the efficacy of our strategy and its superiority over alternative patching strategies.

Ubaid Ullah Hafeez, Alexei Karve, Braulio Dumba, Anshul Gandhi, Sai Zeng

Services on the Internet of Things

Frontmatter
QCF: QoS-Aware Communication Framework for Real-Time IoT Services

Routing Protocol for Low-power Lossy Networks (RPL) is designed by Internet Engineering Task Force (IETF) as the de facto routing standard for Internet of Things (IoT). Supporting mobility and providing Quality of Service (QoS) in the timeliness domain were not addressed in the IETF standard. RPL performs poorly when it comes to satisfying QoS constraints and adaptability to changes in the network topology. In this paper, we address this formidable problem by proposing QCF, a QoS-aware Communication Framework for real-time IoT services. Our proposed framework provides a lightweight practical approach to support timeliness requirements, and node mobility. It applies fuzzy logic to balance energy resources and traffic loads in the network. QCF estimates node mobility and the one-hop delay by using two novel methods. It employs two-hop neighbor information to enhance the parent selection process, and estimates the remaining time to the packet’s deadline without using synchronized clocks. We integrate QCF into the Contiki operating system and implement it on Zolerita IoT motes. Emulation results show that QCF improves the deadline delivery ratio by up to 67% and reduces the end-to-end delay by up to 63%.

Omid Tavallaie, Javid Taheri, Albert Y. Zomaya
Constraint-Aware Drone-as-a-Service Composition

We propose a novel Drone-as-a-Service (DaaS) composition framework considering the recharging constraints and the stochastic arrival of drone services. We develop a service model and a quality model for drone delivery services. A skyline approach is proposed that selects the optimal set of candidate drone services to reduce the search space. We propose a heuristic-based multi-armed bandit approach to compose drone services minimizing delivery time and cost. Experimental results prove the efficiency of the proposed approach.

Babar Shahzaad, Athman Bouguettaya, Sajib Mistry, Azadeh Ghari Neiat
An Adaptive Monitoring Service Exploiting Data Correlations in Fog Computing

In smart environments, a big amount of information is generated by sensors and monitoring devices. Moving data from the edge where they are generated to the cloud might introduce delays with the growth of data volume. We propose an adaptive monitoring service, able to dynamically reduce the amount of data moved in a fog environment, exploiting the dependencies among the monitored variables dynamically assessed through correlation analysis. The adaptive monitoring service enables the identification of dependent variables that can be transmitted at a highly reduced rate and the training of prediction models that allow deriving the values of dependent variables from other correlated variables. The approach is demonstrated in a smart city scenario.

Monica Vitali, Xuesong Peng, Barbara Pernici
The Circuit Breaker Pattern Targeted to Future IoT Applications

In the context of the Internet of Things (IoT), there is a growing trend towards increasing the integration and collaboration between IoT systems to create relevant end-to-end solutions. Accordingly, addressing dependability in the future IoT applications will surely be more challenging. In this work, we examine a popular microservices pattern known as Circuit Breaker (CB). This pattern aims at preventing failure from cascading to dependent services. In the context of IoT, it can be used as an intermediary in the communication between critical IoT nodes to increase the dependability of the whole. Notwithstanding, some particularities present in IoT must be considered to allow this pattern to yield similar benefits. Therefore, we compile several aspects concerning the design and implementation of the CB tailored to IoT applications as a taxonomy. Also, we conduct an experimental validation to compare the benefits of the CB in a prototype of a traffic light system.

Gibeon Aquino, Rafael Queiroz, Geoff Merrett, Bashir Al-Hashimi

Services in Organizations, Business and Society

Frontmatter
A Catalogue of Inter-parameter Dependencies in RESTful Web APIs

Web services often impose dependency constraints that restrict the way in which two or more input parameters can be combined to form valid calls to the service. Unfortunately, current specification languages for web services like the OpenAPI Specification provide no support for the formal description of such dependencies, which makes it hardly possible to automatically discover and interact with services without human intervention. Researchers and practitioners are openly requesting support for modelling and validating dependencies among input parameters in web APIs, but this is not possible unless we share a deep understanding of how dependencies emerge in practice—the aim of this work. In this paper, we present a thorough study on the presence of dependency constraints among input parameters in web APIs in industry. The study is based on a review of more than 2.5K operations from 40 real-world RESTful APIs from multiple application domains. Overall, our findings show that input dependencies are the norm, rather than the exception, with 85% of the reviewed APIs having some kind of dependency among their input parameters. As the main outcome of our study, we present a catalogue of seven types of dependencies consistently found in RESTful web APIs.

Alberto Martin-Lopez, Sergio Segura, Antonio Ruiz-Cortés
Simplification of Complex Process Models by Abstracting Infrequent Behaviour

Several simplification techniques have been proposed in process mining to improve the interpretability of complex processes, such as the structural simplification of the model or the simplification of the log. However, obtaining a comprehensible model explaining the behaviour of unstructured large processes is still an open challenge. In this paper, we present WoSimp, a novel algorithm to simplify processes by abstracting the infrequent behaviour from the logs, allowing to discover a simpler process model. This algorithm has been validated with more than 10 complex real processes, most of them from Business Process Management Challenges. Experiments show that WoSimp simplifies the process log and allows to discover a better process model than the state of the art techniques.

David Chapela-Campa, Manuel Mucientes, Manuel Lama
Improving IT Support by Enhancing Incident Management Process with Multi-modal Analysis

IT support services industry is going through a major transformation with AI becoming commonplace. There has been a lot of effort in the direction of automation at every human touchpoint in the IT support processes. Incident management is one such process which has been a beacon process for AI based automation. The vision is to automate the process from the time an incident/ticket arrives till it is resolved and closed. While text is the primary mode of communicating the incidents, there has been a growing trend of using alternate modalities like image to communicate the problem. A large fraction of IT support tickets today contain attached image data in the form of screenshots, log messages, invoices and so on. These attachments help in better explanation of the problem which aids in faster resolution. Anybody who aspires to provide AI based IT support, it is essential to build systems which can handle multi-modal content.In this paper we present how incident management in IT support domain can be made much more effective using multi-modal analysis. The information extracted from different modalities are correlated to enrich the information in the ticket and used for better ticket routing and resolution. We evaluate our system using about 25000 real tickets containing attachments from selected problem areas. Our results demonstrate significant improvements in both routing and resolution with the use of multi-modal ticket analysis compared to only text based analysis.

Atri Mandal, Shivali Agarwal, Nikhil Malhotra, Giriprasad Sridhara, Anupama Ray, Daivik Swarup
A Recommendation of Crowdsourcing Workers Based on Multi-community Collaboration

Currently there are problems such as fuzzy workers’ characteristics and complex human relations existing on many crowdsourcing platforms, which lead to the difficulty in the recommendation of workers to complete tasks on crowdsourcing platforms. Aiming at worker recommendations in categorical tasks on crowdsourcing platforms, this paper proposes a recommendation considering workers’ multi-community characteristics. It takes factors such as worker’s reputation, preference and activity into consideration. Finally, based on the characteristics of community intersections, it recommends Top-N workers. The results show the recommendations generated by the algorithm proposed in this paper performs the best comprehensively.

Zhifang Liao, Xin Xu, Peng Lan, Jun Long, Yan Zhang
Analysis of Resource Allocation of BPMN Processes

The approach for the modelling and analysis of resource allocation for business processes presented in this paper enables the automatic computation of measures for identifying the allocation of resources in business processes. The proposed analysis, especially suited to support decision-making strategies, is illustrated with a case study of a parcel ordering and delivery by drones that is developed throughout the paper. BPMN models are represented in Maude.

Francisco Durán, Camilo Rocha, Gwen Salaün

Services at the Edge

Frontmatter
Joint Operator Scaling and Placement for Distributed Stream Processing Applications in Edge Computing

Distributed Stream Processing (DSP) systems are well acknowledged to be potent in processing huge volume of real-time stream data with low latency and high throughput. Recently, the edge computing paradigm shows great potentials in supporting and boosting the DSP applications, especially the time-critical and latency-sensitive ones, over the Internet of Things (IoT) or mobile devices by means of offloading the computation from remote cloud to edge servers for further reduced communication latencies. Nevertheless, various challenges, especially the joint operator scaling and placement, are yet to be properly explored and addressed. Traditional efforts in this direction usually assume that the data-flow graph of a DSP application is pre-given and static. The resulting models and methods can thus be ineffective and show bad user-perceived quality-of-service (QoS) when dealing with real-world scenarios with reconfigurable data-flow graphs and scalable operator placement. In contrast, in this paper, we consider that the data-flow graphs are configurable and hence propose the joint operator scaling and placement problem. To address this problem, we first build a queuing-network-based QoS estimation model, then formulate the problem into an integer-programming one, and finally propose a two-stage approach for finding the near-optimal solution. Experiments based on real-world DSP test cases show that our method achieves higher cost effectiveness than traditional ones while meeting the user-defined QoS constraints.

Qinglan Peng, Yunni Xia, Yan Wang, Chunrong Wu, Xin Luo, Jia Lee
Graph-Based Optimal Data Caching in Edge Computing

In an edge computing environment, edge servers are deployed at base stations to offer highly accessible computing capacities and services to nearby users. Data caching is thus extremely important in edge computing environments to reduce service latency. The optimal data caching strategy in the edge computing environment will minimize the data caching cost while maximizing the reduction in service latency. In this paper, we formulate this edge data caching (EDC) problem as a constrained optimization problem (COP), prove that the EDC problem is $$\mathcal {NP}$$ NP -complete, propose an optimal approach named IPEDC to solve the EDC problem using the Integer Programming technique, and provide a heuristic algorithm named LGEDC to find near-optimal solutions. We have evaluated our approaches on a real-world data set and a synthesized data set. The results demonstrate that IPEDC and LGEDC significantly outperform two representative baseline approaches.

Xiaoyu Xia, Feifei Chen, Qiang He, Guangming Cui, Phu Lai, Mohamed Abdelrazek, John Grundy, Hai Jin
Load-Aware Edge Server Placement for Mobile Edge Computing in 5G Networks

Edge computing is a promising technique for 5G networks to collect a wide range of environmental information from mobile devices and return real-time feedbacks to the mobile users. Generally, the edge servers (ESs) are both contributing in macro-base station (MABS) sites for large-scale resource provisioning and micro-base station (MIBS) sites for light-weighted resource response. However, to lower the investment of construing the edge computing systems in the MIBS sites, limited number of ESs are employed, since there is an intensive distribution of MIBSs in 5G networks. Thus, it remains challenging to guarantee the execution efficiency of the edge services and the overall performance of the edge computing systems with limited ESs. In view of this challenge, a load-aware edge server placement method, named LESP, is devised for mobile edge computing in 5G networks. Technically, a decision tree is constructed to identify the MIBSs served by a definite ES and confirm the data transmission routes across MIBSs. Then, the non-dominated sorting genetic algorithm II (NSGA-II) is employed to obtain the balanced ES placement strategies. Furthermore, simple additive weighting (SAW) and multiple criteria decision making (MCDM) techniques are leveraged to recognize the optimal ES placement strategy. Finally, the experimental evaluations are implemented and the observed simulation results verify the efficiency and effectiveness of LESP.

Xiaolong Xu, Yuan Xue, Lianyong Qi, Xuyun Zhang, Shaohua Wan, Wanchun Dou, Victor Chang
PAPS: A Framework for Decentralized Self-management at the Edge

The emergence of latency-sensitive and data-intensive applications requires that computational resources be moved closer to users on computing nodes at the edge of the network (edge computing). Since these nodes have limited resources, the collaboration among them is critical for the robustness, performance, and scalability of the system. One must allocate and provision computational resources to the different components, and these components must be placed on the nodes by considering both network latency and resource availability. Since centralized solutions could be impracticable for large-scale systems, this paper presents PAPS (Partitioning, Allocation, Placement, and Scaling), a framework that tackles the complexity of edge infrastructures by means of decentralized self-management and serverless computing. First, the large-scale edge topology is dynamically partitioned into delay-aware communities. Community leaders then provide a reference allocation of resources and tackle the intricate placement of the containers that host serverless functions. Finally, control theory is used at the node level to scale resources timely and effectively. The assessment shows both the feasibility of the approach and its ability to tackle the placement and allocation problem for large-scale edge topologies with up to 100 serverless functions and intense and unpredictable workload variations.

Luciano Baresi, Danilo Filgueira Mendonça, Giovanni Quattrocchi
Measuring the Fog, Gently

The availability of suitable monitoring tools and techniques will be crucial to orchestrate multi-service applications in a context- and QoS-aware manner over new Fog infrastructures. In this paper, we propose FogMon, a lightweight distributed prototype monitoring tool, which measures data about hardware resources (viz., CPU, RAM, HDD) at the available Fog nodes, end-to-end network QoS (viz., latency and bandwidth) between those nodes, and detects connected IoT devices. FogMon is organised into a peer-to-peer architecture and it shows a very limited footprint on both hardware and bandwidth. The usage of FogMon on a real testbed is presented.

Antonio Brogi, Stefano Forti, Marco Gaglianese
Mobile Apps with Dynamic Bindings Between the Fog and the Cloud

The back-ends of mobile apps usually use services executed on remote (e.g., cloud) machines. The transmission latency may though make the usage of remote machines a less efficient solution for data that need short analysis time. Thus, apps should further use machines located near the network edge, i.e., on the Fog. However, the combination of the Fog and the Cloud introduces the research question of when and how the right binding of the front-end to an edge instance or a remote instance of the back-end can be decided. Such a decision should not be made at the development or the deployment time of apps, because the response time of the instances may not be known ahead of time or cannot be guaranteed. To make such decisions at run-time, we contribute the conceptual model and the algorithmic mechanisms of an autonomic controller as a service. The autonomic controller predicts the response time of edge/remote instances of the back-end and dynamically decides the binding of the front-end to an instance. The evaluation results of our approach on a real-world app for a large number of datasets show that the autonomic controller makes efficient binding-decisions in the majority of the datasets, decreasing significantly the response time of the app.

Dionysis Athanasopoulos, Mitchell McEwen, Austen Rainer
Re-deploying Microservices in Edge and Cloud Environment for the Optimization of User-Perceived Service Quality

Deploying microservices in edge computing environment shortens the distance between users and services, and consequently, improves user-perceived service quality. Because of resource constraints of edge servers, the number and Service Level Agreement (SLA) of microservices that could be deployed on one edge server are limited. This paper considers user mobility, i.e., location changes of massive users might significantly result in deterioration of user-perceived service quality. We propose a method of looking for an optimized microservice re-deployment solution by means of add, remove, adjust, and switch, to make sure service quality that massive users perceive always conforms to their expectations. Three algorithms are adopted for this purpose, and an experiment in real-world edge-cloud environment is also conducted based on Kubernetes to re-deploy microservice systems automatically.

Xiang He, Zhiying Tu, Xiaofei Xu, Zhongjie Wang
Backmatter
Metadata
Title
Service-Oriented Computing
Editors
Sami Yangui
Ismael Bouassida Rodriguez
Dr. Khalil Drira
Zahir Tari
Copyright Year
2019
Electronic ISBN
978-3-030-33702-5
Print ISBN
978-3-030-33701-8
DOI
https://doi.org/10.1007/978-3-030-33702-5

Premium Partner