Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Andrea Canciani is active.

Publication


Featured researches published by Andrea Canciani.


european conference on service-oriented and cloud computing | 2015

Modelling and Analysing Cloud Application Management

Antonio Brogi; Andrea Canciani; Jacopo Soldani

Managing complex applications over heterogeneous clouds is one of the emerging problems in the cloud era. The OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA) aims at solving this problem by providing a language to describe and manage complex cloud applications in a portable and vendor-agnostic way. TOSCA permits to define an application as an orchestration of components, whose types can specify states, requirements, capabilities and management operations — but not how they interact with each other.


european conference on service-oriented and cloud computing | 2016

Fault-aware application management protocols

Antonio Brogi; Andrea Canciani; Jacopo Soldani

We introduce fault-aware management protocols, which permit modelling the management behaviour of application components by taking into account the potential occurrence of faults, and we show how such protocols can be composed to analyse the behaviour of a multi-component application and to automate its management. We also illustrate a way to recover applications that are stuck because a fault was not properly handled and/or because a component is behaving differently than expected.


T. Petri Nets and Other Models of Concurrency | 2016

A Petri Net-Based Approach to Model and Analyze the Management of Cloud Applications

Antonio Brogi; Andrea Canciani; Jacopo Soldani; PengWei Wang

How to flexibly manage complex applications over heterogeneous clouds is one of the emerging problems in the cloud era. The OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA) aims at solving this problem by providing a language to describe and manage complex cloud applications in a portable, vendor-agnostic way. TOSCA permits to define an application as an orchestration of nodes, whose types can specify states, requirements, capabilities and management operations — but not how they interact each another. In this paper we first propose how to extend TOSCA to specify the behaviour of management operations and their relations with states, requirements, and capabilities. We then illustrate how such behaviour can be naturally modelled, in a compositional way, by means of open Petri nets. The proposed modelling permits to automate different analyses, such as determining whether a deployment plan is valid, which are its effects, or which plans allow to reach certain system configurations.


FOCLASA | 2015

A Context-Oriented Extension of F#

Andrea Canciani; Pierpaolo Degano; Gian Luigi Ferrari; Letterio Galletta

Context-Oriented programming languages provide us with primitive constructs to adapt program behaviour depending on the evolution of their operational environment, namely the context. In previous work we proposed ML_CoDa, a context-oriented language with two-components: a declarative constituent for programming the context and a functional one for computing. This paper describes the implementation of ML_CoDa as an extension of F#.


Journal of Systems and Software | 2018

Fault-aware management protocols for multi-component applications

Antonio Brogi; Andrea Canciani; Jacopo Soldani

Abstract Nowadays, applications are composed by multiple heterogeneous components, whose management must be suitably coordinated by taking into account inter-component dependencies and potential failures. In this paper, we first present fault-aware management protocols, which allow to model the management behaviour of application components, and we then illustrate how such protocols can be composed to analyse and automate the overall management of a multi-component application. We also show how to recover applications that got stuck because a fault was not handled properly, or because a component is behaving differently than expected. To illustrate the feasibility of our approach, we present Barrel , a proof-of-concept application that permits editing and analysing fault-aware management protocols in multi-component applications. We also discuss the usefulness of Barrel by showing how it was fruitfully exploited it in a concrete case study and in a controlled experiment.


international conference on software engineering | 2017

Towards a Reference Dataset of Microservice-Based Applications

Antonio Brogi; Andrea Canciani; Davide Neri; Luca Rinaldi; Jacopo Soldani

The microservice-based architectural style is rising fast in enterprise IT. Tools and solutions for supporting microservices-based applications are proliferating. It is however often difficult to qualitatively/quantitatively assess and compare such tools and solutions, also because of the lack of reference datasets of microservice-based applications. The objective of this paper is precisely to set the ground of a first reference dataset of microservice-based applications.


theoretical aspects of software engineering | 2016

Behaviour-Aware Matching of Cloud Applications

Filippo Bonchi; Antonio Brogi; Andrea Canciani; Jacopo Soldani

OASIS TOSCA aims at solving the problem of managing complex applications across heterogeneous clouds by providing a standard, vendor-agnostic language to describe them. TOSCA permits defining a cloud application as an orchestration of typed components, which can be instantiated by matching other TOSCA applications. In this paper we first present two types of behaviour-aware matching of applications, based on a notion of simulation. We then relax this notion by permitting to match an operation with a sequence of available operations, and present a coinductive procedure to compute such relaxed simulation.


Concurrency and Computation: Practice and Experience | 2016

A high-level and accurate energy model of parallel and concurrent workloads

Davide Morelli; Andrea Canciani; Antonio Cisternino

The ability to predict the energy needed by a system to perform a task, or several concurrent parallel tasks, allows the scheduler to enforce energy‐aware policies while providing acceptable performance. The approaches in literature to model energy consumption of tasks usually focus on low‐level descriptors and require invasive instrumentation of the computational environment. We developed an energy model and a methodology to automatically extract features that characterize the computational environment relying only on a single power meter that measures the energy consumption of the whole system. Once the model has been built, the energy consumption of concurrent tasks can be calculated, with a statistically insignificant error, even without any power meter. We show that our model can predict with high accuracy, even only using the utilization time of the cores in a high‐performance computing enclosure, without using performance counters. Hence, the model could be easily applicable to heterogeneous systems, where collecting representative performance counters can be problematic. Copyright


european conference on service-oriented and cloud computing | 2018

True Concurrent Management of Multi-component Applications

Antonio Brogi; Andrea Canciani; Jacopo Soldani

Complex applications orchestrate multiple components and services, which are independently managed by different teams (e.g., DevOps squads). As a consequence, various services may happen to be updated, reconfigured or redeployed concurrently, possibly yielding unexpected/undesired management effects. In this paper, we show how the true concurrent management of multi-component applications can be suitably modelled, analysed and automated, also in presence of faults.


international conference on coordination models and languages | 2017

Modelling the Dynamic Reconfiguration of Application Topologies, Faults Included

Antonio Brogi; Andrea Canciani; Jacopo Soldani

Fault-aware management protocols permit modelling the management of application components (including potential faults) and analysing the management behaviour of a multi-component application. The analysis is driven by the application topology, and it assumes many-to-1 dependencies among application components, i.e. each requirement of a component can be satisfied by exactly one other component.

Collaboration


Dive into the Andrea Canciani's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Filippo Bonchi

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge