International Journal of Emerging Technology & Research



Similar documents
Service Oriented Architecture

Toward a Unified Ontology of Cloud Computing

Getting Started with Service- Oriented Architecture (SOA) Terminology

Scientific versus Business Workflows

Evaluation Model for Internet Cloud Data Structure Audit System

Six Strategies for Building High Performance SOA Applications

10 Years of Hype Cycles - Do We Forget Knowledge?

TECHNOLOGY GUIDE THREE. Emerging Types of Enterprise Computing

Enterprise Application Designs In Relation to ERP and SOA

Service-Oriented Architecture and its Implications for Software Life Cycle Activities

Internet of Things. Reply Platform

An Ontology-enhanced Cloud Service Discovery System

Data Mining Governance for Service Oriented Architecture

CLOUD COMPUTING: A NEW VISION OF THE DISTRIBUTED SYSTEM

What You Need to Know About Transitioning to SOA

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

Service-Oriented Architectures

SOA + BPM = Agile Integrated Tax Systems. Hemant Sharma CTO, State and Local Government

How To Improve Cloud Computing With An Ontology System For An Optimal Decision Making

Introduction to Service-Oriented Architecture for Business Analysts

Challenges and Opportunities for formal specifications in Service Oriented Architectures

COMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters

A QoS-Aware Web Service Selection Based on Clustering

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Impact of Service Oriented Architecture on ERP Implementations in Technical Education

Unlocking the Power of SOA with Business Process Modeling

Supply Chain Platform as a Service: a Cloud Perspective on Business Collaboration

Introduction to Service Oriented Architectures (SOA)

A Study on Service Oriented Network Virtualization convergence of Cloud Computing

Federal Enterprise Architecture and Service-Oriented Architecture

The Service Revolution software engineering without programming languages

Secure Cloud Computing: KEVIN JACKSON

Monitoring of Business Processes in the EGI

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards)

Roles for Maintenance and Evolution of SOA-Based Systems

Cloud Computing & Service Oriented Architecture An Overview

Cloud Service Reservation using PTN mechanism in Ontology enhanced Agent-based System Remya Gopinadh #1, K. Saravanan *2

Service-oriented architecture in e-commerce applications

Fundamental Concepts and Models

SOA GOVERNANCE MODEL

An Architecture for Autonomic Web Service Process Planning

SOA CERTIFIED JAVA DEVELOPER (7 Days)

Myths About Service-Oriented Architecture Demystifying SOA. producers can coexist, and still have no dependence on each other.

Optimizing Service Levels in Public Cloud Deployments

Platform Autonomous Custom Scalable Service using Service Oriented Cloud Computing Architecture

Semantics and Ontology of Logistic Cloud Services*

Oracle SOA Suite: The Evaluation from 10g to 11g

SOA and Cloud in practice - An Example Case Study

Clouds on the Horizon: What s the Best Oracle Fusion Strategy for Those Still on Oracle 11i or R12.0?

Combining SAWSDL, OWL DL and UDDI for Semantically Enhanced Web Service Discovery

Capability Service Management System for Manufacturing Equipments in

Service-Oriented Computing and Service-Oriented Architecture

On the Standardization of Semantic Web Services-based Network Monitoring Operations

The Power Marketing Information System Model Based on Cloud Computing

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

Reverse Engineering in Data Integration Software

Definition of SOA. Capgemini University Technology Services School Capgemini - All rights reserved November 2006 SOA for Software Architects/ 2

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

Design of Data Archive in Virtual Test Architecture

UIMA and WebContent: Complementary Frameworks for Building Semantic Web Applications

2.1. The Notion of Customer Relationship Management (CRM)

OVERVIEW Cloud Deployment Services

Hadoop in the Hybrid Cloud

Oracle SOA Suite 11g: Essential Concepts Student Guide

Multi-agent System based Service Oriented Architecture for Supply Chain Management System (MAS-SOA-SCM)

Service Oriented Cloud Computing Architectures. Asher Vitek 12/3/2011 UMM CSci Senior Seminar Conference Morris, MN.

Figure 1: Illustration of service management conceptual framework

SOA Success is Not a Matter of Luck

WHITE PAPER: STRATEGIC IMPACT PILLARS FOR EFFICIENT MIGRATION TO CLOUD COMPUTING IN GOVERNMENT

Cloud Computing Services on Provisioning Cost Approach

Air Force SOA Enterprise Service Bus Study Using Business Process Management Workflow Orchestration for C4I Systems Integration

9 Research Questions Resolved

Semantic Search in Portals using Ontologies

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.

What s New in Sonic V7.5 Rick Kuzyk

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1

Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group. Tuesday June 12 1:00-2:15

CT30A8901 Chapter 10 SOA Delivery Strategies

MULTI AGENT-BASED DISTRIBUTED DATA MINING

A Service Modeling Approach with Business-Level Reusability and Extensibility

The EMSX Platform. A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks. A White Paper.

Study on Architecture and Implementation of Port Logistics Information Service Platform Based on Cloud Computing 1

Amit Sheth & Ajith Ranabahu, Presented by Mohammad Hossein Danesh

Service Oriented Architecture and Its Advantages

Business Rule Standards -- Interoperability and Portability

Business Process Modelling Languages

Secure Semantic Web Service Using SAML

CSCI 5828 Spring 2010 Foundations of Software Engineering. - Arpit Sud

Methods and tools for data and software integration Enterprise Service Bus

DDMan: A Management System for Distributed Software Development in Cloud Computing Environments

Transcription:

International Journal of Emerging Technology & Research Volume 1, Issue 5, July-Aug, 2014 (www.ijetr.org) ISSN (E): 2347-5900 ISSN (P): 2347-6079 Proposed Improvement BPM as a Knowledge Layer into SaaS layer in Cloud Computing Miguel Vargas-Lombardo 1, Ismael Camargo-Henriguez 2, Yarisel Nuñez 3, Juan Saldaña 4, Amilkar Herrera 5, Samuel Diaz 6 1,2,3 Ciditic-Gises-Cocle Regional Center, 4,5,6 Technological University of Panama, Panama, Panama. Abstract The development and evolution of cloud computing, has identified a number of models and proposed architectures around the use of resources and the availability of services offered in implementations. The most common architectures include the use of three key models like: SaaS, IaaS and PaaS but, it is possible to explore variations in relation to the functional structure of these and therefore, derive a new set of innovative models of service organization and delivery. This article, presents a proposal to link within a layer of cloud services, Business Processes Management (BPM), by the addition of two new components to the layers of SaaS and PaaS, based in the association of different mechanisms and concepts developed to enable interoperability and definition of these business processes through ontologies techniques. The approach achieved, is a flexible structure and a highly feasible form to provide such processes on the cloud, through a layer of knowledge useful to the adaptation needs of information within the shaft of organizations and enterprises. Keyword- SaaS, PaaS, Cloud Computing, BPM as a Knowledge I. INTRODUCTION AsCloudcomputing develops, several models have been proposed to logically explain and/or organize it as a computing paradigm [1]. One of the new layers recently added is Process as a Service [2]. In this paper, we focus on thatlayer and the technologies developed to implement it. Business Process Management or BPM is concerned with integration of business processes. BPM is not concerned with traditional programming as it addresses only process flow and service invocation. In most cases BPM logic is separated from logic application. BPM logic is placed on top of the application layer as a unifying control unit that makes sure each application provides its service in the intended order and time, using the proper information and following the business rules. This paper is organized into six sections. The first section presents the problem of cloud computing regarding the creation of efficient services through the SAAS and PaaS layers in business processes. In section 2, the state of PaaS exposed a new cloud layer in architecture. Section 3, the utility layer Paas applied to business processes will be explained. In section 4, aspects of BPM technology is explained. It continues with Section 5, in which the input and opportunities semantic web for cloud computing be known. Section 6 then presents the proposal of a knowledge layer, to layer Paas and Saas. Finally, conclusions are presented. II. PROCESS AS A SERVICE: A NEW LAYER IN CLOUD ARCHITECTURE Since its conception, cloud computing has been defined by many different authors, proposing each one slightly different architectures. As with most new technologies, cloud computing has evolved gradually from previous technologies and therefore its current paradigms arebased on its predecessors [2]. One of the aspects that sets apart cloud computing from its predecessors (grid computing, clusters, etc) is the ability to allocate resources on the fly without direct intervention of a human [2]. Cloud Computing has a strong focus on commercial activities and the offering of IT resources as services on demand and this emphasis is visible in most of the architectures defined for the cloud. Based on their practice with cloud computing technologies [3] proposed Service-Oriented Architecture (SOA) and Virtualization Technologies as two of the most important enabling technologies that will play a decisive role in the future of cloud architecture [3]. As the cloud grew, new IT services were created. Different authors classified IT services differently. Some spoke of Software as a Service (SaaS), Hardware as a Service (HaaS), Database as a Service (DaaS) and Platform as a Service (PaaS) as the main services offered by the cloud [1]. Other authors Copyright reserved by IJETR (Impact Factor: 0.997) 1

only referred to Infrastructure as a Service (IaaS),PaaS and SaaS models [3],[4], [5]. Notice that Process as a Service was not usually included as an IT service or delivery method. Even in papers in which Business Process Management technologies were being discussed, the authors did not include it as an independent layer in the architecture, instead, they discussed how to deliver BPM technologies through other XaaS layers. Although BPM has been an active field of study for many years already[1], [14] it has recently gained relevance with the arrival of cloud computing and the possibility of outsourcing traditional BPM services to the cloud [3]. The movement of enterprises to the cloud has been slow; partly due to the slow evolution of the cloud itself[1], [3], [14]. In Cloud Computing and SOA Convergence in Your Enterprise, Linthicum proposes a model composed of 11 stacks or sorts : storage as-a-service, database as-a-service, information as-a-service, process as-a-service, application as-aservice, platform as-a-service, integration as-a-service, security as-a-service, management/governance as-a-service, testing asa-service and infrastructure as-a-service [6]. Based on these two technologies and their implications in practice the authors proposed a Cloud Computing Open Architecture (CCOA) which uses seven principles to define ten major architectural modules and their relationships. The fifth principle in their paper is configurable enablement for cloud offerings. Cloud offerings are alternatively defined as cloud business solutions and in their proposal it has four levels: infrastructure as a service, software as a service, application as a service and business process as a service. The authors give examples of real life implementations using CCOA in a public cloud to demonstrate how it can be used to offer Business Process as a Service. Only time and real life implementations of computational clouds will determine which architecture will [3]. Process-as-a-service refers to a remote resource that can bind many resources together, either hosted within the same cloud computing resource or remotely, to create business processes. Processes are meta-applications that bind many services and information together to form a business solution. [5]. A process can be thought as a sequence of events that must occur in a certain order, leveraging any number of services and portions of data. Processes often appear as a set of instructions intended to automate business procedures such as invoice processing, order processing, etc. When thinking of process as-a-service, these resources usually span many enterprises. The idea is to create processes common to many companies so that these can then be offered in demand to all of them. The author acknowledges that process engines are nothing new, but the idea of offering them in demand is. ) For an existing enterprise, moving its legacy BPM systems to the cloud can be beneficial as the new cloud technologies allow companies to outsource IT intensive tasks and focus its resources and efforts on the company most revenue-centered activitiesand their core competences [9]. Thisstrategy has been adopted by other companies in more traditional fields such as the manufacturing industry and has proved efficient (Jeston). However, decidingwhich processes should be moved to the cloud and which ones should stay on the company (on-premise) is an important and non-trivial decision[1],[9]. IV. BUSINESS PROCESS TECHNOLOGIES BPM technologies are usually made up of 5 components[4]: Graphic modeling tool: used to create a graphical model of the process. Business process engine: keeps track of each step of the process and controls the execution of each step. It also communicates with the middleware and sends information about which step of the process should be executed. The middleware is in charge of managing the resources of the cloud to successfully run each process. Business process monitoring interface: allows users to monitor and optimize the execution of the processes. Business process interface: allows other applications to connect and communicate with the business process engine. Integration technology or Application Integration, Middleware: allows the communication with the services. Although processes have a configuration approach, they must exist as some sort of software on the cloud. In this sense processes may be services themselves, and services can leverage processes just as processes can leverage services. WSBPEL (Web Service Business Process Execution Language) is a standard created by OASIS (Organization for the Advancement of Structured Information Standards) used to define and describe Business Processes [7]. III. PROCESS AS A SERVICE: MOVING BPM TO THE CLOUD WSBPEL uses WSDL (Web Services Definition Language) as a mean to interact with Web Services. As has been done with most standards related to web services, WSBPEL uses XML as the schema language. It has been created with a set of goals and characteristics in mind [4]: Copyright reserved by IJETR (Impact Factor: 0.997) 2

1) Defines business processes that interact with external entities through Web service operations defined using WSDL 1.1 and that manifest themselves as Web services defined using WSDL 1.1. 2) WSBPEL is an XML based language and is not concerned with the graphical representation of the business process and does not define any particular design methodology of business processes. 3) WSBPEL should define a set of Web service orchestration concepts that are meant to be used in common by both the external (abstract) and internal (executable) views of a business process. 4) It should provide both hierarchical and graph-like control regimes, and allow their usage to be blended as seamlessly as possible. 5) It should provide limited data manipulation functions that are sufficient for the simple manipulation of data that is needed to define process relevant data and control flow. 6) WSBPEL should support an identification mechanism for process instances that allows the definition of instance identifiers at the application message level. 7) WSBPEL should support the implicit creation and termination of process instances as the basic lifecycle mechanism. 8) WSBPEL should define a long-running transaction model that is based on practically proven techniques like compensation actions and scoping to support failure recovery for parts of long-running business processes 9) WSBPEL should use Web services as the model for process decomposition and assembly. 10) WSBPEL should build on compatible Web services standards and standards proposals as much as possible in a composable and modular manner. As has already been implied in the WSBPEL goals, its usage allows great flexibility as the business process logic can be modified independently from the services it invokes or control. Also, it promotes modularity of application functionalities into services which can be reused in future processes [5]. However, in the next section, be present a proposal based on knowledge discovery based on the concepts of semantic web, in which two layers are created for easy drive discovery of services in business processes. V. SEMANTIC WEB OPPORTUNITIES FOR CLOUD COMPUTING The Semantic Web is a new paradigm that promises to revolutionize the way the web operates and cloud computing[10],[11],[12]. In [16] the Semantic Web is defined as an extension of the current web in which information is given a well-defined meaning, enabling computers and humans to work in cooperation. The Semantic Web achieves this with the use of Ontologies, in which a certain domain is described with concepts; said concepts acquire meaning through properties and relations that establish the links between them. The Semantic Web provides meaning to the ontologies with the use of RDF [16] (Resource Description Framework). This language is modelled as a graph consisting of 3 components, called triplets, is very important for new services for cloudcomputing. These components are: Subject: the concept that is described. Predicate: property that defines the subject. Object: the specific value of the property. OWL (Web Ontology Language) is the language that supports all these Semantic Web tools. Several software packages have been created to work with this language; one of the most used is Protege software, an editor to develop knowledge based systems with the use of ontologies. Some of the most important experts are: resource providers; knowledge engineers and ontology experts, in charge of developing the ontological knowledge base with the provided resources; application developers, whose tasks is to define jobs and specify the needed resources to execute them; and the final user, in charge of evaluating the efficiency of the applications with the given resources. Copyright reserved by IJETR (Impact Factor: 0.997) 3 VI. PROPOSED IMPROVEMENTS BPM AS A KNOWLEDGE LAYER In order to improve the semantic discovery of resources, to be able to carry out the majority of the required services for BPM on the layer Process as a Service of cloud computing services, we propose the addition of 2 new components to the ledge layer Software as a Service (SaaS) and PaaS.These components will be named Repository of Pending Resources, from now on RPR and Resource Updater. All the required services that are not able to find needed resources, or similar ones in the ontology database, will be sent to the RPR. This repository will be in charge of storing the specifications from the resources that couldn t be found. The Resource Updater has two fundamental tasks; to verify that the unavailable resources are added to the ontology database in the future, and to notify of new updates to improve the jobs performed with existing resources. We plan on building a timer, to indicate the time frame in which the Resource Updater will look for new updates. In the first place, the Resource Updater checks what resources were not found on the RPR, it then verifies if said resources were later added to the Semantic Repository. If

that s the case, the new specifications are then transmitted to the Job Descriptor for it to update its files. Then these files are sent to the cloud services Broker to execute the tasks. The Resource Updater performs a similar task for notifications of new updates for existing resources. The updated knowledge layer incorporating these components is shown in figure 1. Fig.2: RDF Triplet for the ontological model for alternative resources. A representation of the ontology was created using Protege, as shown in figure 3. Fig. 1: Proposed improvements for the Knowledge Layer. The new features are highlighted in red. Another planned improvement is to create an ontology in the Resource Description module, which will aim to propose alternative resources for those tasks that need to be done right away, but are not able to find suitable resources. This ontology will specify another options weighted with percentage values based on the tasks to be performed. These values present the possibility to choose the resource with the highest score to perform the jobs. The model was created by using the RDF triplet shown in figure 2, in which the subject represents the missing resource; the predicate defines another available resource and also the task to be performed; and the object presents the concrete value of the alternative resource and its percentage value. The user has the ability to evaluate the job performance with the alternative resource, based on a percentage scale as well. This evaluation will be taken into consideration to update the property of the ontology which specifies the degree of success. Fig. 3: Proposed ontological model for alternative resources. The needed resources are specified in the classes, the properties define additional resources for a given task and the instances present the values from said properties. Additionally, a pseudo-code was constructed to explain the mechanism followed to use alternative resources. The pseudocode, shown below, is called Statistical Algorithm for Alternative Resource Discovery is a proposed present in [13],[14], also implement. Now see the algorithmic. Read jobs, resources, urgencyrate J = algernonquery(jobs) R = algernonquery(resources) Findresource = querydb(j,r) If(Findresource =0And UrgencyRate =1) tcount =0 While( J! = JobDB[tcount]) tcount ++ EndWhile Max =0 For(j=0, j <= AdicResources.Lenght, j++) If(Max > JobsPercentageDB [tcount, j ]) Copyright reserved by IJETR (Impact Factor: 0.997) 4

Max = JobDB [tcount, j] PoscAdicRes = j EndIf EndFor ExecuteTask (AdicResources [PoscAdicRes] Read UserSatisf JobsPercentageDB [tcount, PoscAdicRes]= (JobsPercentageDB [tcount, PoscRecAdic]+ UserSatisf)/2(6) EndIf In first place, we plan to have an interface in which the user will specify the jobs, resources and urgency rate. The variable UrgencyRate takes the value of 0 if the execution of the task can be done at a later time, else it takes a value of 1. The jobs and tasks are then translated to suitable Algernon query by the function AlgernonQuery. The function querydb is in charge of searching for the needed resources inside the Ontology located in the Resource Description module. Findresouce takes the value of 1 if the discovery is successful; else it receives the value of 0 if it isn t. If the resources are not found and the task needs to be done soon, the algorithm then proceeds to look for additional resources. The ontology has a database with previous performed jobs and additional resources with values stored in the variables AdicResources and JobsDB. There is also a matrix which specifies the percentage values of match for each resource in specific jobs. Next, we verify that the task to execute is available in the vector and we capture its position. Afterwards we enter in a for cicle, looking for the highest percentage value for the job in question. When the value is found, we also capture the index. This index indicates the exact resource that the percentage value belongs to. Once the resource is identified, we specify AdicResource as parameter in the function ExecuteTasks. Lastly, the user introduces the level of success he achieved with the additional resource (in percentage value). This information is captured by the variable UserSatisf and then is used to update the matrix values. There are several advantages to be obtained with this proposal. The implementation of these improvements guarantees a constant monitoring to ensure the assignment of resources for tasks at all times. On the other hand, the designed methodology for the knowledge layer will allow to work with the latest updated resources, meaning that tasks will be expected to produce high quality results. The possibility of considering alternative resources will allow a greater degree of precision in the process in comparison to the Parameter matchmaking algorithm because the later only evaluates 5 values. The option that enables the user to give feedback on the performance with the resources helps to evaluate them serving as a useful reference for future tasks to be performed on the services BPM in cloud layer services. CONCLUSION However, commonly they are in the habit of using architectures of cloud computing as IaaS, PaaS and SaaS, the concept of cloud is not restrictive, not rigorously in regards the implementation of one or other model, allowing this flexibility to derive hybrid and adjacent models depending on new processes and demands of services of information needed. The variety and versatility of existing architectures for cloud computing, it has allowed shaping layers around Processes as Services, for the integration of these to the business management, taking advantage of the increasing approach in the activities of commercial type and the offer of resources of IT as services under demand. The discovery of knowledge based on the semantic web and ontologies, allows the creation of additional layer for the BPM model, which improves the time of answers for the hanging processes and facilitates the access to self-services of search of the processes of business and the description of alternative resources, through elements of semantic composition like subject, predicate, object. REFERENCES [1] Wei, Y., & Blake, M. B. (2010). Service-Oriented Computing and Cloud Computing: Challenges and Opportunities. IEEE Internet Computing, 14(6). [2] Aymerich, F. M., Fenu, G., & Surcis, S. (2008). An approach to a cloud computing network. Paper presented at the Applications of Digital Information and Web Technologies, 2008. ICADIWT 2008. First International Conference. [3] Zhou, Y. C., Liu, X. P., Wang, X. N., Xue, L., Liang, X. X., & Liang, S. (2010, July). Business process centric platform-as-a-service model and technologies for cloud enabled industry solutions. In Cloud computing (cloud), 2010 ieee 3rd international conference on (pp. 534-537). IEEE. [4] Leymann, Frank, D. R., and Satish Thatte. Goals of the BPEL4WS Specification. Retrieved from http://xml.coverpages.org website: http://xml.coverpages.org/bpel4ws-designgoals.pdf [5] Anstett T.,F.Leymann, R. Mietzner, and S.Strauch, Towards BPEL in the Cloud: Exploiting Different Delivery Models for the Execution of Business Processes, in Proc.SERVICES 09, 2009, pp. 670-677. [6] Linthicum, D. S. (2010). Cloud Computing and SOA Convergence in Your. [7] OASIS. (2007). Web Services Business Process Execution Language Retrieved August 25th of 2013, 2013, from https://www.oasisopen.org/committees/tc_home.php?wg_abbrev=wsbpel#technical [8] Zhou, L.-J. Z. a. Q. (2009). CCOA: Cloud Computing Open Architecture. IEEE International Conference on Web Services. [9] Fang, Z., & Yin, C. (2010). BPM Architecture Design Based on Cloud Computing. Intelligent Information Management, 2(5). [10] Chapke, P. P., & Keole, R. R. (2012). Ontology of Cloud Computing.International Journal of Computer Technology & Applications, 3(3). [11] Youseff, Lamia, Maria Butrico, and Dilma Da Silva. "Toward a unified ontology of cloud computing." Grid Computing Environments Workshop, 2008. GCE'08. IEEE, 2008. [12] Han, T., & Sim, K. M. (2010). An ontology-enhanced cloud service discovery system. In Proceedings of the International MultiConference of Engineers and Computer Scientists (Vol. 1, pp. 17-19). [13] Easwarakumar, K. S. (2013). An efficient fault tolerant hypercubic p2p grid resource management system. [14] Fayyad, U., Piatetsky-Shapiro, G., & Smyth, P. (1996). From data mining to knowledge discovery in databases. AI magazine, 17(3), 37. [15] Jeston, J., & Nelis, J. (2014). Business process management. Routledge. [16] Berners-Lee, T. (2006). The semantic Web Revisited, IEEE Inteligent Systems, 96-101. Copyright reserved by IJETR (Impact Factor: 0.997) 5