Article Preview
Top1. Introduction
With globalization and today’s competitive business environment, organizations are seeking flexible and agile application systems that can respond quickly and effectively to changing business requirements. Firms recognize that meeting rapidly changing requirements is difficult when using traditional development technologies (Stathopoulos, 2017). Application developers need to be flexible and use agile approaches that can leverage rapidly evolving software technology and deployment mechanisms. The ubiquitous growth of Internet access from various devices has resulted in the proliferation of cloud computing in industry, academia, and society (Airaj, 2017; Toosi, Calheiros, & Buyya, 2014). Cloud service providers offer resources such as virtual machines, storage resources, data services, platforms for application development and deployment, and application software. A common cloud service model is a layered structure that consists of infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS) (Dikaiakos, 2009). Organizations can use full applications or partial applications that support specific business tasks such as credit card validation from a SaaS cloud. Additionally, they can use PaaS for application development and deployment or IaaS to get access to computing and storage resources (Zhan et al., 2015). Moreover, they have the option of connecting these public cloud resources with their own computing platform or infrastructure (i.e., a private cloud). This mix of cloud services, known as the hybrid cloud, is becoming popular throughout the world. The hybrid cloud mode represents a promising option, because it provides increased flexibility and allows IT personnel to respond quickly to the changing needs of business by tailoring a solution to user needs.
This paper focuses on the business and management aspects of the BP-driven task assignment and scheduling problem in hybrid clouds. Since SaaS is designed to support a single task or a full application system, SaaS cloud resources can be used to support only specific tasks. On the other hand, PaaS can support the development and deployment of multiple applications that are used by different types of tasks. Therefore, we focus on task scheduling in hybrid PaaS cloud, which can support an enterprise’s multiple business processes. We formulate the task scheduling problem as a multi-objective model.
The framework for supporting multiple business processes is based on Service-Oriented Architecture (SOA). A series of data templates for specifying tasks and resources are designed to help collect required information in standard form. We propose a multi-objective optimization model to address the problem of task scheduling in a hybrid cloud platform that considers time, cost, and trust as three objectives. Next, we develop an innovative non-dominated sorting genetic algorithm (NSGA2), which can quickly search the Pareto frontier in the solution space, to solve the multi-objective model. The algorithm uses a non-dominated sorting operator to improve the search efficiency for multi-objective problems with Pareto front constraint. Finally, we use a case study of the drop-ship business process to illustrate the applicability of our model. Several simulation experiments are conducted to test the validity of our model, and the performance of our model is compared with other leading models available in the literature.
The paper is structured as follows: Section 2 reviews the related literature. Section 3 presents the architecture of the task scheduling system. The methodology and problem formulation are presented in Section 4. Section 5 introduces the trust-based BP-driven task scheduling algorithm. The case study and the results of simulated experiments conducted to validate the algorithm and comparison with other models are presented in Section 6. Section 7 concludes the paper with a discussion of limitations and directions for future research.