Using Cloud Computing with RETE Algorithms in a Platform As a Service (Paas) for Business Systems Development
Total Page:16
File Type:pdf, Size:1020Kb
Using Cloud Computing with RETE Algorithms in a Platform as a Service (PaaS) for Business Systems Development Richard Poblete 1, David de la Fuente 2, and Margarita Alonso 3 1Department of Business Administration, Cantabria University, Santander, Spain [email protected] 2Department of Business Administration, Oviedo University, Gijón, Asturias, Spain [email protected] 1Department of Business Administration, Cantabria University, Santander, Spain [email protected] this technology is the Virtualization and its model of operative Abstract - Given that companies operate in an environment of business is varied and can include: Pay per Use Models; Free continuous evolution it requires information systems to have Models; Fee for Service Models and Free Use Models, greater adaptation, flexibility, scalability and reliability of sharing utilities. incorporation of these changes. Cloud Computing can be regarded as a paradigm and key element of recent computing in business management solutions. A business solution arises 1.1 Cloud Computing in the cloud; this solution includes both the environmental Cloud Computing is defined by the way in which the dynamics and the changes needed in the business logic service provider and the consumer of that service are related. assuring speed of response, efficiency in the solution and In this context it is very common that the consumers are not maintenance of the application. This article shows a design the owners of the infrastructure, they do not incur CAPEX 1, model of Saas applications based on a platform (PaaS) which since they are under a modality of rent and use from a has the business logic as central element and is subdivided in provider. The customers consume resources and only pay for "Business Objects", "Business Processes" and "Business resources used. This model is very similar to what happens Rules." According to the business rules, and in order to with the payment and consumption of energy in our homes. resolve the problem based on facts and inferences from the This business model is possible because of the following knowledge as an essential part of the construction of the features: system, expert systems are applied through the use of the RETE algorithms (Forward Chaining). 1) Virtualization: Cloud Computing allows the user to access the service in any place through any kind of terminal or device. The required resources come from the Cloud instead Keywords: Cloud Computing, SaaS, PaaS, RETE of a visible entity. 2) Reliability: The Cloud uses various methods for the fault 1 Introduction tolerance. Computing based on interchangeable isomorphic The competitive business environment demands nodes guarantees the service reliability. The Use of the companies to concentrate in business management and not in Computing Cloud is more reliable than in a local station [2]. the technological aspects of their company which may be 3) Versatility: The Cloud can stand different applications, complex because of a changing environment. It is therefore execute them at the same time and reuse their own resources. necessary to constantly redefine the Business Logic Systems. 4) Elasticity: The Cloud scale can expand dynamically in Having a platform which can adapt quickly to these conditions order to satisfy the growing demand for requirements. is extremely important. 5) “On-Demand” Service: The Cloud is a wide group of Cloud Computing is changing the traditional way of how resources that can be rented according to the customer hardware and software providers sell their products to their necessity. customers. This is another kind of business in which the product is not sold as such, but a service is sold [2]. Mainly, this platform allows sharing resources as a service. These 1 resources include infrastructure (IaaS), software (SaaS), CAPital EXpenditures (CAPEX or capex) are capital inversions or applications (PaaS), and data storage (dSaaS). At the heart of expenditures which create benefits. 6) Economic: cost reduction is given by the fault tolerance system consists of one or more conditions and different feature which has the Cloud “per se”, (very cheap isomorphic actions which may be undertaken for each complete set of nodes). The versatility, elasticity and "On Demand” Service facts that match the condition. The RETE algorithm RETE make the resources’ availability easy [2] compared to the exhibits the following major characteristics: traditional system, so the user can enjoy this low-cost advantage. • It reduces or eliminates certain types of redundancy through the use of node sharing. The article starts explaining the relevant concepts, a proposed method, and analyzing the implications of using RETE as an • essential part of such a model. It stores partial matches when performing joins between different fact types. At the same time, it allows production rule systems to avoid complete revaluation of all facts each time changes are made 2 Expert Systems (ES) in the nodes which are stored in the working Expert systems as techniques within the area of Artificial memory. Instead, the production system has to Intelligence are presented as computer programs that can evaluate the changes (deltas) in the working memory. perform various tasks: • It allows for efficient removal of memory elements • Efficiently carrying out search and recovery when facts are retracted or moved from working processes for interrelated information stored on a memory. large scale. The RETE algorithm is widely used to implement matching • functionality within pattern-matching engines to support the Formal representation of symbolic knowledge on 2 the field in which the system acts. Chain Forward and useful to interface in the formulation and use of the business rules. • Allowing inferences and heuristics to complete knowledge. 4 PaaS Model focused on the business logic • Explanation of the conclusions reached, interacting with the user explaining the line of reasoning We propose a Cloud Computing model [8] that attempts pursued. to conceptualize the development of a platform as a service (PaaS) to support software solutions as a service (SaaS). The Expert Systems constitute efficient help when requiring a model is essentially based on the business layer, taking into good interpretation of complex information, advice on the account that it is in this good level where the development of field in which the expert system works, demanding the main processes and algorithms of the SaaS solution are comparable output from the system to that from human required, leaving a secondary and subordinated rule to the experts. other two layers (Data and interface) in the business layer. Expert Systems are based on the declarative knowledge (facts In the model, the interface will depend on how we access the about objects, situations) and control knowledge (information SaaS solution (as Internet navigators, mobile devices, about the monitoring of an action). [3] [4]. Expert Systems business logic web services). Data layer is only the object incorporate capacities of explaining the reasoning followed in persistence, the metadata storage of the process structures and the resolution of problems and the acquisition of new the business rules. Figure 1 presents the general scheme of the knowledge, and also they present simple interaction model: procedures with the users [9]. 3 RETE Algorithm The RETE algorithm is a pattern matching algorithm for implementing production rule systems. It was designed by Dr. Charles L. Forgy of Carnegie Mellon University. RETE has become the basis for many popular expert systems, including CLIPS, Jess, Drools, and Soar. 2 The RETE algorithm provides a logical description Forward chaining is one of the main methods of reasoning when rules of responsible for matching data tuples (“facts”) against rules in inference (in artificial intelligence) are used and can be logically described as a pattern-matching production system. A production rule repeated applications of "modus ponens". Its implementation in expert systems and business and productive rule systems is popular. 4.1.3 Business Processes: The Workflow Reference Model defines a business process as a group of one or more connected activities, which collectively make a business goal, normally within the functional structure of an organisation [11]. Business Processes are responsible for organizing the resources of the system by means of the integration of the business rules and business objects and workflow, understanding workflows not only as automata tasks through forms of task assignation to users or roles. The model proposes the management of these BPM 5 processes which are implemented and modelled through BMPN 6. 4.1.4 Interface and Data Layer Interface Layer consists of interfaces or screens showed in the browsers, mobile devices or interfaces to other systems that consume these services. This presentation layer makes Figure 1: Model based on the business logic reference to the web service interface and sends encapsulated 4.1 Business Logic Layer: data in XML messages that only the interface knows. This layer must know the different kind of data and messages that It contains the heart of the system. It is a group of layers can be received by the service interface. with subroutines developing the last goal of the application. It Data Layer is the responsible for passive storage of the object uses interfaces among layers and management interfaces persistence, process structures and businesses rules. The Data oriented to the user in order to produce the parametrical