Cloud Computing Solutions. Группа авторов
Чтение книги онлайн.
Читать онлайн книгу Cloud Computing Solutions - Группа авторов страница 31
Dependability on hypervisor: As hypervisor controls all access to VMs and monitors the environment, the hypervisor failing or crashing or an attack on it by hackers may lead to performance degradation.
Standardized platform: Each organization has its own APIs, services, policies and different rules and regulations. So in a cloud platform, it’s quite difficult to maintain the combination of all those things from various organizations and interoperability of all the applications is also a mammoth task.
Energy efficiency: Although cloud computing provide various types of on-demand services and running applications, it requires a lot of power. And hypervisor monitoring system also requires a huge amount of electricity to monitor the access to VMs. So, energy efficiency is also a concern in cloud computing.
3.3 Architectural Workflow and Co-ordination of Multiple Activities
This section includes architectural workflow when an application is deployed on the cloud platform. Workflow style is presented here to help you easily understand the steps involved in executing and managing an application. The concept of workflow is not new. Workflow technologies first emerged in the mid-1970s with simple office automation prototypes at Xerox PARC and the Wharton School of the University of Pennsylvania. In the early 1990s, workflow and office automation gained new life.
According to Dave Green and John Evdemon, workflow is defined as follows:
“Workflow is fundamentally about the organization of work. It is a set of activities that coordinate people and/or software. Communicating this organization to humans and automated processes is the value-add that workflow provides to our solutions. Workflows are fractal. This means a workflow may consist of other workflows (each of which may consist of aggregated services). The workflow model encourages reuse and agility, leading to more flexible business processes.”
In their research article, Monika Bharti and Anju Bala [15] have described different categories and different functionalities. They are as follows:
“Workflow works behind cloud to manage resources, various clients, cost constraints. The concept of workflow is proposed by fixed work procedures with conformist activities. The tasks are divided into subtasks, roles, rules and processes to execute and observe the workflow; workflow system boosts the level of production of organization and work efficiency. Various types of workflows are business workflow, abstract workflow, concrete workflow, scientific workflow and so on. Business workflow allows controlled flow of execution and simplifies workflow management. It provides support for security, reliability, transactions, and performance. Its performance can be increased by use of faster server. Its workflow lifecycle is design, deployment, execution, monitoring and finally refinement. Scientific workflow supports large data flows and needs to do parameterized execution of large number of jobs. It is also to monitor and control workflow execution including ad-hoc changes. The input given to workflow is written in languages like Java, Perl, Python and the output generated is the workflow. These workflows are managed and coordinated by workflow management system, which provides the end users with the required data and the appropriate application program for their tasks. It allocates tasks to end-user based only on the performance of constraints like control flow, data flow, transition conditions or pre- and post-conditions. The issues that arise with workflow and its management are workflow scheduling, fault tolerance, energy efficiency and so on. Workflow scheduling maps and manages the execution of inter-dependent tasks on the distributed resources. Fault tolerant is when a system’s service failure can be avoided when faults are present in the system.”
3.3.1 Characteristics of Workflow
The key characteristics of workflow are co-ordination and interaction between different modules, duration of a process, and human interaction. Already we have gone through the modular approach of cloud computing architecture; there are different software-based components or modules which are assigned to different tasks. So, there is a need for workflow co-ordination and proper interaction between different modules. We can also predetermine or measure the approximate duration that can be calculated in weeks, days, hours, and even minutes. Human interaction is a considerable part of the process because, after all, cumulative work of human interaction has made all of this possible.
3.3.2 Need for Workflow
This section discusses the need for workflow.
Workflow modeling is required for monitoring schema, insight, and performance optimization. For monitoring schema, knowing which individuals are contributing work to which business process is very useful when trying to understand costs and workloads. A group of interrelated workflow models is there to be used to gain insight into the stream of the work. Through this workflow model, the service developers can provide the module-wise functionalities; so they can bring the modules together for a particular task to optimize the business process which leads to the performance optimization.
A model-driven approach describes the workflow system. Service developers are using UML diagram and other modeling techniques for implementing the workflow system. Many workflow tools are also used for that purpose only. Workflow system also provides a state machine model and sequential model; these provide an overview of how workflow is going on in the system.
Apart from that, at the end of this discussion, we can conclude that workflow management is also responsible for the following functionalities: Automation of individual business process, compliance report, customization of predefined workflows, ready-to-use forms and workflows, development and integration of company-specific processes, tool sets for graphical process modeling and simulation, transparent workflow process, and email notification for workflow process.
However, in a workflow system, one term is often used, and that is business process, which is defined as a collection of related, structured activities which provide a particular service for the customer.
Davenport [16] defines a (business) process as:
“A structured, measured set of activities designed to produce a specific output for a particular customer or market. It implies a strong emphasis on how work is done within an organization, in contrast to a product’s emphasis on what. A process is thus a specific ordering of work activities across time and space, with a beginning and an end, and clearly defined inputs and outputs: a structure for action... Taking a process approach implies adopting the customer’s point of view. Processes are the structure by which an organization does what is necessary to produce value for its customers.”
Rummler and Brache [17] use a definition that clearly encompasses a focus on the organization’s external customers, when stating that
“A business process is a series of steps designed to produce a product or service. Most processes (...) are cross-functional, spanning the ‘white space’ between the boxes on the organization chart. Some processes result in a product or service that is received by an organization’s external customer. We call these primary processes. Other processes produce products that are invisible to the external customer but essential to the effective management of the business. We call these support processes.”
Following are the basic functionalities that support the workflow system:
Build-time