15 research outputs found

    Exploiting rules and processes for increasing flexibility in service composition

    Get PDF
    Recent trends in the use of service oriented architecture for designing, developing, managing, and using distributed applications have resulted in an increasing number of independently developed and physically distributed services. These services can be discovered, selected and composed to develop new applications and to meet emerging user requirements. Service composition is generally defined on the basis of business processes in which the underlying composition logic is guided by specifying control and data flows through Web service interfaces. User demands as well as the services themselves may change over time, which leads to replacing or adjusting the composition logic of previously defined processes. Coping with change is still one of the fundamental problems in current process based composition approaches. In this paper, we exploit declarative and imperative design styles to achieve better flexibility in service composition

    Nonblocking Scheduling for Web Service Transactions

    Get PDF

    An Environment for Flexible Advanced Compensations of Web Service Transactions

    Get PDF

    An event model for WS-BPEL 2.0

    Get PDF
    This report presents an engine-independent WS-BPEL 2.0 event model. It supports both passive monitoring and active control of process execution by external applications. Some of the assumptions in the presented event model are inspired by a particular implementation, e.g. fault handling and compensation; however they are kept as general as possible, so that they can be mapped on other engine-specific approaches to tackle faults and support compensation. In addition, the report draws on the experience of some of the authors in business process management and software development. The overall BPEL event model consists of a set of event models for the different types of BPEL entities that change their states: processes, process instances, general activities, scope activities, invoke activities, loops, links, variables, partner links, and correlation sets. The event model is used by the authors of the report in several projects, all utilizing process life cycle events in different scenarios

    Internet das coisas nos processos de negócio

    Get PDF
    Tese de mestrado em Engenharia Informática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2013A Internet das Coisas (IoT) é um paradigma emergente que pretende integrar as “coisas” do mundo real no mundo informático. Os processos de negócios conseguem beneficiar deste paradigma utilizando informação de contexto relevante durante a sua execução. Esta informação, disponibilizada por exemplo sensores, permite que os processos reajam a alterações no contexto em tempo real. Web Service Business Process Execution Language (WS-BPEL) é uma linguagem utilizada para definir processos através da composição de serviços web. Esta linguagem é baseada num paradigma de orquestração de serviços, o que dificulta a inclusão da informação de contexto nos processos. Assim, o modelador de processos é obrigado a incluir operações adicionais para obter informação da IoT. Para além disto, os construtores da linguagem são limitados no que diz respeito ao refrescamento desta informação, que poderá estar em constante actualização. Esta dissertação tem como objectivo estender a linguagem WS-BPEL e o seu ambiente de execução de forma a facilitar o desenvolvimento de processos de negócio que usam informação de contexto. Com esta extensão, a linguagem passará a incluir o conceito de variáveis de contexto que mantêm os valores dos sensores e cuja actualização será feita automaticamente através do paradigma publicação/subscrição ou periodicamente, através do paradigma pedido/reposta. Esta extensão inclui também um novo construtor, o When, que permite a definição do comportamento dos processos para excepções previstas com condições que incluem as variáveis de contexto. Por último, reagir a eventos não previstos requer o suporte a alterações ad-hoc aos processos. De forma a satisfazer estes requisitos são definidas as condições de correcção das instâncias de processos para a extensão proposta nesta dissertação.The Internet of Things (IoT) is an emerging paradigm that aims at integrating the state of "things" of the real world into the computer world. Business processes can benefit from this paradigm using relevant context information during their execution. This information, provided for instance by sensors, allows processes to react to situations arising in real time. The Web Service Business Process Execution Language (WS-BPEL) is a language used to define processes through the composition of web services. This language is based on the service orchestration paradigm, which makes the inclusion of context information in the processes difficult. Thus, the process modeler is forced to include additional operations to obtain information from the IoT. In addition, the language constructs are limited with regard to refresh this information, which may be continuously updated. The objective of this thesis is to extend the WS-BPEL language and its runtime environment to facilitate the development of business processes that use context information. With this extension, the language includes the concept of context variables that store sensor values and whose update is made automatically through the publish/subscribe paradigm or, periodically, through the request/reply paradigm. This extension also includes a new constructor, the When, allowing the definition of expected exceptions with conditions that include context variables. Finally, responding to unexpected events requires the support of ad-hoc changes of processes. To meet these requirements, we define the process instances correction conditions for the extension we propose in this dissertation

    Dynamic process fragment injection in a service orchestration engine

    Get PDF
    The EU Project Allow Ensembles aims to develop a new design principle for large-scale collective systems (CAS) based on the concepts of cells and ensembles, where cells represent a concrete functionality in a system, and the ensembles are collections of cells which collaborate in order to fulfill a certain goal in a given context. Adaptive Pervasive Flows (APF) are based on workflow technology and utilized in pervasive environments to model the cell's behavior. During runtime, APF instances must be able to adapt their behavior, e.g. due to failures or changes in their environment, in order to be able to fulfill a certain goal. For this purpose, APFs may contain a particular type of activities, known as abstract activities. Abstract activities partially specify the flow behavior, which must then be resolved during runtime into one or multiple concrete activities, which in turn must be injected into the running flow. In the scope of this thesis, APFs are specified using an extension of the WS-BPEL language. The WS-BPEL language, provide the necessary mechanisms for extending the language for modeling custom process activities and specifying their behavior. In this thesis we focus on the WS-BPEL language and on an extended version of the Apache ODE orchestration engine, for business process modeling and execution respectively. With respect to the injection of pervasive process fragments, which contain one or multiple activities and properties, the language and execution engine requirements and constraints are investigated. For this purpose, a State-of-the-Art analysis on generic process fragment injection approaches is first driven. Once the constraints are detected, we present the formalization of the required language extension based on WS-BPEL language, and conduct a specification of requirements and architectural design of the final prototype based on the Apache Orchestration Director Engine (Apache ODE). For integration purposes in the overall required execution environment, the Enterprise Service Bus Apache ServiceMix 4.3 is used

    Supporting Quality of Service in Scientific Workflows

    Get PDF
    While workflow management systems have been utilized in enterprises to support businesses for almost two decades, the use of workflows in scientific environments was fairly uncommon until recently. Nowadays, scientists use workflow systems to conduct scientific experiments, simulations, and distributed computations. However, most scientific workflow management systems have not been built using existing workflow technology; rather they have been designed and developed from scratch. Due to the lack of generality of early scientific workflow systems, many domain-specific workflow systems have been developed. Generally speaking, those domain-specific approaches lack common acceptance and tool support and offer lower robustness compared to business workflow systems. In this thesis, the use of the industry standard BPEL, a workflow language for modeling business processes, is proposed for the modeling and the execution of scientific workflows. Due to the widespread use of BPEL in enterprises, a number of stable and mature software products exist. The language is expressive (Turingcomplete) and not restricted to specific applications. BPEL is well suited for the modeling of scientific workflows, but existing implementations of the standard lack important features that are necessary for the execution of scientific workflows. This work presents components that extend an existing implementation of the BPEL standard and eliminate the identified weaknesses. The components thus provide the technical basis for use of BPEL in academia. The particular focus is on so-called non-functional (Quality of Service) requirements. These requirements include scalability, reliability (fault tolerance), data security, and cost (of executing a workflow). From a technical perspective, the workflow system must be able to interface with the middleware systems that are commonly used by the scientific workflow community to allow access to heterogeneous, distributed resources (especially Grid and Cloud resources). The major components cover exactly these requirements: Cloud Resource Provisioner Scalability of the workflow system is achieved by automatically adding additional (Cloud) resources to the workflow system’s resource pool when the workflow system is heavily loaded. Fault Tolerance Module High reliability is achieved via continuous monitoring of workflow execution and corrective interventions, such as re-execution of a failed workflow step or replacement of the faulty resource. Cost Aware Data Flow Aware Scheduler The majority of scientific workflow systems only take the performance and utilization of resources for the execution of workflow steps into account when making scheduling decisions. The presented workflow system goes beyond that. By defining preference values for the weighting of costs and the anticipated workflow execution time, workflow users may influence the resource selection process. The developed multiobjective scheduling algorithm respects the defined weighting and makes both efficient and advantageous decisions using a heuristic approach. Security Extensions Because it supports various encryption, signature and authentication mechanisms (e.g., Grid Security Infrastructure), the workflow system guarantees data security in the transfer of workflow data. Furthermore, this work identifies the need to equip workflow developers with workflow modeling tools that can be used intuitively. This dissertation presents two modeling tools that support users with different needs. The first tool, DAVO (domain-adaptable, Visual BPEL Orchestrator), operates at a low level of abstraction and allows users with knowledge of BPEL to use the full extent of the language. DAVO is a software that offers extensibility and customizability for different application domains. These features are used in the implementation of the second tool, SimpleBPEL Composer. SimpleBPEL is aimed at users with little or no background in computer science and allows for quick and intuitive development of BPEL workflows based on predefined components

    Ontology based contextualization and context constraints management in web service processes

    Get PDF
    The flexibility and dynamism of service-based applications impose shifting the validation process to runtime; therefore, runtime monitoring of dynamic features attached to service-based systems is becoming an important direction of research that motivated the definition of our work. We propose an ontology based contextualization and a framework and techniques for managing context constraints in a Web service process for dynamic requirements validation monitoring at process runtime. Firstly, we propose an approach to define and model dynamic service context attached to composition and execution of services in a service process at run-time. Secondly, managing context constraints are defined in a framework, which has three main processes for context manipulation and reasoning, context constraints generation, and dynamic instrumentation and validation monitoring of context constraints. The dynamic requirements attached to service composition and execution are generated as context constraints. The dynamic service context modeling is investigated based on empirical analysis of application scenarios in the classical business domain and analysing previous models in the literature. The orientation of context aspects in a general context taxonomy is considered important. The Ontology Web Language (OWL) has many merits on formalising dynamic service context such as shared conceptualization, logical language support for composition and reasoning, XML based interoperability, etc. XML-based constraint representation is compatible with Web service technologies. The analysis of complementary case study scenarios and expert opinions through a survey illustrate the validity and completeness of our context model. The proposed techniques for context manipulation, context constraints generation, instrumentation and validation monitoring are investigated through a set of experiments from an empirical evaluation. The analytical evaluation is also used to evaluate algorithms. Our contributions and evaluation results provide a further step towards developing a highly automated dynamic requirements management system for service processes at process run-time

    Providing Context in WS-BPEL Processes

    Get PDF
    Business processes are increasingly used by organizations to automate their activities. Written in languages like WS-BPEL, they allow an institution to describe precisely its internal operations. As the pace of change increases, however, both organizations and their internal processes are required to be more flexible; they have to account for an increasing amount of externally-driven environment state, or context, and modify their behavior accordingly. This puts a significant burden on business-process programmers, who now have to source, track, and update context from multiple entities, in addition to implementing and maintaining core business logic. Implementing this state-maintenance logic in a WS-BPEL business process is involved. This is because WS-BPEL business processes are modeled as if they were the only thing operating in, and making changes to, the business environment. This mental model does not reflect the real world, where organizations and entities depend on state that is outside their control – state that is modified independent of, and concurrent with, the organization’s activities. This makes it hard for business-process programmers to write context-dependent processes in a concise manner. This thesis presents a solution to this problem based on the notion of a context variable for WS-BPEL business processes. It describes how context variables are designed using the WS-BPEL language-extension mechanism, and how these variables can be used in business processes. It also outlines an architecture for offering context in the web services environment that uses constructs from the WS-Resource Framework specification. It shows how changes in context can be propagated from these context sources to WS-BPEL context variables using WS-Notification-based publish/subscribe. The design also includes a standards-compliant method for extending web-service responses with references to context sources. Finally, a prototype validating the overall system is described, and enhancements for increasing the utility of context variables proposed. This solution offers significant advantages: it builds on established practices and well-understood message-exchange patterns, leverages widely used languages, frameworks and specifications, is standards compliant, and has a low barrier-to-entry for business-process programmers. Moreover, when compared to existing alternatives, this solution requires significantly less process logic and fewer interface changes to maintain constantly changing environment state

    Replicated execution of workflows

    Get PDF
    Workflows are the de facto standard for managing and optimizing business processes. Workflows allow businesses to automate interactions between business locations and partners residing anywhere on the planet. This, however, requires the workflows to be executed in a distributed and dynamic environment, where device and communication failures occur quite frequently. In case that a workflow execution becomes unavailable through such failures, the business operations that rely on the workflow might be hindered or even stopped, implying the loss of money. Consequently, availability is a key concern when using workflows in dynamic environments. In this thesis, we propose replication schemes for workflow engines to ensure the availability of the workflows that are executed by these engines. Of course, a workflow that is executed by a replicated workflow engine has to yield the same result as a non-replicated execution of that workflow. To this end, we formally define the equivalence of a replicated and a non-replicated execution called Single-Execution-Equivalence. Subsequently, we present replication schemes for both imperative and declarative workflow languages. Imperative workflow languages, such as the Web Service Business Process Execution Language (WS-BPEL), specify the execution order of activities through an ordering relation and are the predominant way of specifying workflow models. We implement a proof-of-concept for demonstrating the compatibility of our replication schemes with current (imperative) workflow technology. Declarative workflow languages provide greater flexibility by allowing the reordering of the activities within a workflow at run-time. We exploit this by executing differently ordered replicas on several nodes in the network for improving availability further
    corecore