Domenico Bianculli
University of Luxembourg
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Domenico Bianculli.
IET Software | 2007
Luciano Baresi; Domenico Bianculli; Carlo Ghezzi; Sam Guinea; Paola Spoletini
Web services support software architectures that can evolve dynamically. In particular, in this paper the focus is on architectures where services are composed (orchestrated) through a workflow described in the business process execution language (BPEL). It is assumed that the resulting composite service refers to external services through assertions that specify their expected functional and non-functional properties. On the basis of these assertions, the composite service may be verified at design time by checking that it ensures certain relevant properties. Because of the dynamic nature of web services and the multiple stakeholders involved in their provision, however, the external services may evolve dynamically, and even unexpectedly. They may become inconsistent with respect to the assertions against which the workflow was verified during development. As a consequence, validation of the composition must extend to run time. In this work, an assertion language, called assertion language for BPEL process interactions (ALBERT), is introduced; it can be used to specify both functional and non-functional properties. An environment which supports design-time verification of ALBERT assertions for BPEL workflows via model checking is also described. At run time, the assertions can be turned into checks that a software monitor performs on the composite system to verify that it continues to guarantee its required properties. A TeleAssistance application is provided as a running example to illustrate our validation framework.
service oriented software engineering | 2007
Domenico Bianculli; Carlo Ghezzi
The dynamic nature of web service compositions demands continuous monitoring of the quality of the provided service, as perceived by the client. We focus here on monitoring functionality of conversational services, whose behavior depends on the local state resulting from the client-service interaction. We propose a monitoring approach based on an algebraic specification language and we show how this can be integrated into a run-time monitoring architecture.
service-oriented computing and applications | 2007
Domenico Bianculli; Carlo Ghezzi; Paola Spoletini
The increasing diffusion of service oriented computing in critical business transactions demands reliability and correctness of the workflow logic representing web service orchestrations. We present an approach for the formal verification of workflow-based compositions of web services, described in BPEL4WS. Workflow processes can be verified in isolation, assuming that the external services invoked are known only through their interface. It is also possible to verify that the actual composition of two or more processes behaves correctly. We can verify deadlock freedom, properties expressed as data-bound assertions written in WS-CoL, a specification language for web services, and LTL temporal properties. Our approach is based on the software model checker Bogor, whose language supports the modeling of all BPEL4WS constructs. We provide an empirical evaluation of our approach and we compare the results with other BPEL4WS model checking tools.
international world wide web conferences | 2010
Domenico Bianculli; Walter Binder; Mauro Luigi Drago
Middleware for Web service compositions, such as BPEL engines, provides the execution environment for services as well as additional functionalities, such as monitoring and self-tuning. Given its role in service provisioning, it is very important to assess the performance of middleware in the context of a SOA. This paper presents SOABench, a framework for the automatic generation and execution of testbeds for benchmarking middleware for composite Web services and for assessing the performance of existing SOA infrastructures. SOABench defines a testbed model characterized by the composite services to execute, the workload to generate, the deployment configuration to use, the performance metrics to gather, the data analyses to perform on them, and the reports to produce. We have validated SOABench by benchmarking the performance of different BPEL engines.
international conference on web services | 2007
Luciano Baresi; Domenico Bianculli; Carlo Ghezzi; Sam Guinea; Paola Spoletini
Web service based applications are expected to live in dynamically evolving settings. At run-time, services may undergo changes that could modify their expected behavior. Because of such intrinsic dynamic nature, applications should be designed by adhering to the principles of design- by-contract. Run-time monitoring is needed to check that the contract between service providers and service users is fulfilled while the collaboration is in place. We describe a language to specify the expected functional and non-functional requirements that a service provider should fulfill. The language (timed WSCoL) is a temporal extension of a previous proposal (WSCoL). We also illustrate the architecture of a run-time analyzer that checks timed WSCoL properties. Should such properties be disproved during execution, appropriate recovery and reconfiguration actions may be put in place.
international conference on software engineering | 2012
Domenico Bianculli; Carlo Ghezzi; Cesare Pautasso; Patrick Senti
Specification patterns have proven to help developers to state precise system requirements, as well as formalize them by means of dedicated specification languages. Most of the past work has focused its applicability area to the specification of concurrent and real-time systems, and has been limited to a research setting. In this paper we present the results of our study on specification patterns for service-based applications (SBAs). The study focuses on industrial SBAs in the banking domain. We started by performing an extensive analysis of the usage of specification patterns in published research case studies - representing almost ten years of research in the area of specification, verification, and validation of SBAs. We then compared these patterns with a large body of specifications written by our industrial partner over a similar time period. The paper discusses the outcome of this comparison, indicating that some needs of the industry, especially in the area of requirements specification languages, are not fully met by current software engineering research.
international conference on web services | 2008
Domenico Bianculli; Walter Binder; Luigi Drago; Carlo Ghezzi
The dependability of composite services is largely affected by their constituent Web services. Composite services have to operate in an open and dynamically changing environment in order to leverage the best performing services available at the moment. Hence, there is the need for an efficient mechanism to provide reliable service rankings. In this paper we present a novel, generic, and customizable reputation infrastructure to automatically and transparently monitor the execution of composite services, taking both functional and non-functional properties into account. The experienced Web service quality-of-service is communicated to a configurable reputation mechanism that publishes service rankings. Our reputation infrastructure supports notifications upon changes in service reputation, enabling self-tuning and self-healing properties in the execution of composite services. We implemented our architecture using standard technologies, such as BPEL and JavaEE. Performance measurements show that our infrastructure causes only moderate overhead.
international conference on service oriented computing | 2007
Domenico Bianculli; Radu Jurca; Walter Binder; Carlo Ghezzi; Boi Faltings
Service-oriented computing promotes the construction of applications by composing distributed services that are advertised in an open service market. In such an environment, individual services may change and evolve dynamically, requiring composite services to adapt to such changes. The prevailing strategy is to react on failures and replace the defective component of the composite service. However, this reactive approach does not fully exploit the opportunities of a dynamic market where older services may be replaced by better ones. In this paper we promote a novel architecture for automated, dynamic, pro-active, and transparent maintenance and improvement of composite services. We leverage fine-grained client-side monitoring techniques to generate information regarding functional and non-functional properties of service behavior. A reputation manager is responsible for collecting and aggregating this information, and provides economical incentives for honest sharing of feedback. Composite services can thus use reliable reputation information to pro-actively improve their aggregate performance.
Proceedings of the 6th International Workshop on Principles of Engineering Service-Oriented and Cloud Systems | 2014
Marcello M. Bersani; Domenico Bianculli; Schahram Dustdar; Alessio Gambi; Carlo Ghezzi; Srđan Krstić
Cloud-based elastic systems run on a cloud infrastructure and have the capability of dynamically adjusting the allocation of their resources in response to changes in the workload, in a way that balances the trade-off between the desired quality-of-service and the operational costs. The actual elastic behavior of these systems is determined by a combination of factors, including the input workload, the logic of the elastic controller determining the type of resource adjustment, and the underlying technological platform implementing the cloud infrastructure. All these factors have to be taken into account to express the desired elastic behavior of a system, as well as to verify whether the system manifests or not such a behavior. In this paper, we take a first step into these directions, by proposing a formalization, based on the CLTL^t(D) temporal logic, of several concepts and properties related to the behavior of cloud-based elastic systems. We also report on our preliminary evaluation of the feasibility to check the (formalized) properties on execution traces using an automated verification tool.
formal aspects of component software | 2012
Domenico Bianculli; Carlo Ghezzi; Pierluigi San Pietro
Service-based applications are a new class of software systems that provide the basis for enterprises to build their information systems by following the principles of service-oriented architectures. These software systems are often realized by orchestrating remote, third-party services, to provide added-values applications that are called service compositions. The distributed ownership and the evolving nature of the services involved in a service composition make verification activities crucial. On a par with verification is also the problem of formally specifying the interactions–with third-party services–of service compositions, with the related issue of balancing expressiveness and support for automated verification.