
Alessandro Rossini- PhD
- Principal at The Boston Consulting Group
Alessandro Rossini
- PhD
- Principal at The Boston Consulting Group
About
50
Publications
17,652
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,101
Citations
Introduction
Alessandro Rossini is a Principal with more than 18 years of experience in information technology. During recent years, he conducted extensive research and development on cloud computing and model-driven engineering. Furthermore, he served as a member of the technical committee of the OASIS TOSCA standard. Alessandro holds a Ph.D. degree in informatics from the University of Bergen, Norway, and an M.Sc. degree in computer science from the University of L'Aquila, Italy.
Current institution
Publications
Publications (50)
Modern cloud computing environments support a relatively high degree of automation in service provisioning, which allows cloud service customers (CSC) to dynamically acquire services required for deploying cloud applications. Cloud modeling languages (CMLs) have been proposed to address the diversity of features provided by cloud computing environm...
Cloud computing provides ubiquitous networked access to a shared and virtualised pool of computing capabilities that can be provisioned with minimal management effort. Cloud applications are deployed on cloud infrastructures and delivered as services. The PaaSage project aims to facilitate the modelling and execution of cloud applications by levera...
The Cloud Modelling Framework (CloudMF) is an approach to apply model-driven engineering principles to the specification and execution of cloud-based applications. It comprises a domain-specific language to model the deployment topology of multi-cloud applications, along with a models@run-time environment to facilitate reasoning and adaptation of t...
In the landscape of cloud computing, the competition between providers has led to an ever growing number of cloud solutions offered to consumers. The ability to run and manage multi-cloud systems (i.e., applications on multiple clouds) allows exploiting the peculiarities of each cloud solution and hence optimising the performance, availability, and...
Metamodelling is one of the pillars of model-driven engineering, used for language engineering and domain modelling. Even though metamodelling is traditionally based on a two-metalevel approach, several researchers have pointed out limitations of this solution and proposed an alternative deep (also called multi-level) approach to obtain simpler sys...
Abstract Cloud computing offers a flexible pay-as-you-go model for provisioning application resources, which enables applications to scale on-demand based on the current workload. In many cases, though, users face the single vendor lock-in effect, missing opportunities for optimal and adaptive application deployment across multiple clouds. Several...
In model-driven software engineering (MDSE), models are first-class entities of software development and undergo a complex evolution during their life-cycles. As a consequence, there is a growing need for techniques and tools to support model management activities such as versioning. Traditional versioning systems target text-based artefacts and ar...
While the number of cloud solutions is continuously increasing, the development and operation of large-scale and distributed cloud applications are still challenging. A major challenge is the lack of interoperability between the existing cloud solutions, which increases the complexity of maintaining and evolving complex applications potentially dep...
Model-driven engineering promotes models and model transformations as the primary assets in software development. The models@run-time approach provides an abstract representation of a system at run-time, whereby changes in the model and the system are continuously reflected in each other. In this paper, we report on more than three years of experie...
Managing cloud applications running on IaaS is complicated and error prone. This is why DevOps tools and application description languages have been emerging. While these tools and languages enable the user to define the application and communication structure based on application components, they lack the possibility to define sophisticated commun...
Domain-specific languages (DSLs) are high-level software languages representing concepts in a particular domain. In real-world scenarios, it is common to adopt multiple DSLs to solve different aspects of a specific problem. As any other software artefact, DSLs evolve independently in response to changing requirements, which leads to two challenges....
Several modelling approaches including CloudML emerged to specify the deployment of cloud-based applications and automate the provisioning of computational resources. While CloudML was introduced in the REMICS project, its development continued by ongoing projects, i.e., ARTIST, MODAClouds, and PaaSage. As the evolution of CloudML in the three proj...
The PaaSage project delivers a platform to support the modelling, execution, and automatic adaptation of multi-cloud applications (i.e., applications deployed across multiple private, public, or hybrid cloud infrastructures). In order to cover the necessary aspects of the modelling and execution of multi-cloud applications, PaaSage adopts the Cloud...
The benefits of cloud computing have led to a proliferation of infrastructures and platforms covering the provisioning and deployment requirements of many cloud-based applications. However, the requirements of an application may change during its life cycle. Therefore, its provisioning and deployment should be adapted so that the application can de...
The market of cloud computing encompasses an ever-growing number of cloud providers offering a multitude of infrastructure-as-a-service (IaaS) and platform-as-a-service (PaaS) solutions. The heterogeneity of these solutions hinders the proper exploitation of cloud computing since it prevents interoperability and promotes vendor lock-in, which incre...
Market analysts have foreseen the emergence of cloud brokers in the mediation of cloud services. But rather than focus on current kinds of intermediary role, it is more constructive to consider the kinds of brokerage capability that could be offered in the future, which go far beyond the integration, aggregation and customization services available...
With the rise of cloud computing, enterprises increasingly rely for their daily operations on heterogeneous externally-sourced cloud services that span different levels of capability. Their IT environment is thus progressively transformed into an ecosystem of intertwined infrastructure, platform, and application services. To effectively manage the...
The PaaSage project aims at facilitating the specification and execution of cloud-based applications by leveraging upon model-driven engineering (MDE) techniques and methods, and by exploiting multiple cloud infrastructures and platforms. Models are frequently specified using domain-specific languages (DSLs), which are tailored to a specific domain...
In the future multi-cloud ecosystem, many cloud providers and consumers will interact to create, discover, negotiate and use software services. Cloud service brokers will play a central role in bringing providers and consumers together, assisting with software service creation (from abstract models to platform-specific deployments), multi-cloud tra...
Scalability and elasticity are key capabilities to tackle the variable workload of a service. Cloud elasticity offers opportunities to manage dynamically the underlying resources of a service and improve its scalability. However, managing scalability of cloud-based systems may lead to a management overhead. Self-adaptive systems are a well-known ap...
As the number of cloud service providers grows and the requirements of cloud service consumers become more complex, the latter will come to depend more and more on the intermediation services of cloud service brokers. Continuous quality assurance and optimisation of services is becoming a mission-critical objective that many consumers will find dif...
Modern software systems evolve in a highly dynamic and open environment, where their supporting platforms and infrastructures can change on demand. Designing and operating holistic controllers able to leverage the adaptation capabilities of the complete software stack is a complex task, as it is no longer possible to foresee all possible environmen...
Dynamically adaptive systems (DAS) enable the continuous design and adaptation of complex software systems, but their main focus is limited to the application itself rather than the underlying platform and infrastructure. Cloud computing, in contrast, enables the management of the complete software stack, but it lacks integration with software engi...
This paper introduces a formal approach to constraint-aware model transformation which supports specifying constraints in the definition of transformation rules. These constraints are used to control which structure to create in the target model and which constraints to add to the created structure. The proposed approach is classified under heterog...
Metamodelling is one of the pillars of model-driven engineering, used for language engineering and domain modelling. Even though metamodelling is traditionally based on a two-level approach, several researchers have pointed out limitations of this solution and proposed an alternative deep (also called multi-level) approach to obtain simpler system...
Model-driven engineering (MDE) is a branch of software engineering which aims at improving the productivity, quality and cost-effectiveness of software by shifting the paradigm from code-centric to model-centric. MDE promotes models and modelling languages as the main artefacts of the development process and model transformation as the primary tech...
Models are the primary artefacts of the software development process in Model-Driven Engineering (MDE). Like other software artefacts, models undergo a complex evolution during their life cycles. Version control is one of the key techniques which enable developers to tackle this complexity. Traditional version control systems (VCS) are based on the...
Researchers in the field of social studies advocate the need for scientific and social collaboration in the production of knowledge. In this article, the authors analyse factors preventing social engagement in the joint production of knowledge in the field of computer science. Deficient computer literacy is considered a primary obstacle to this joi...
This paper introduces a formal approach to the definition of constraint-aware model transformations. The proposed approach is based on the Diagram Predicate Framework and extends graph transformations with the ability to handle constraints in the definition and execution of model transformations. In particular, it uses non-deleting rules that are t...
In Model-Driven Engineering (MDE) models are the primary artefacts of the software development process. The usage of these models have resulted in the introduction of a variety of modelling languages and frameworks. Many of these languages and frameworks are based on the Object Management Group's (OMG) Meta-Object Facility (MOF). In addition to the...
In Model-Driven Engineering (MDE) models are the primary artefacts of the software development process. Similar to other software artefacts, models undergo a complex evolution during their life cycles. Version control is one of the key techniques which enables developers to tackle this complexity. Traditional version control systems are based on th...
Model-Driven Engineering (MDE) has been widely accepted by the academy as the new vision for software development. However, as with other new approaches, its industrial acceptance is still very limited. We believe that many of the challenges that are impairing this industrial adoption can be related to the lack of good tool support. In this paper w...
Increasingly, model driven development is being accepted as the new vision for designing software. In fact, shifting the focus from a code-centric standpoint to a model-centric one enables a better specification and understanding of domain specific concerns. Since a software system undergoes to several refinement steps during its life cycle, last y...
Increasingly, model driven development is being accepted as the new vision for designing software. In fact, shifting the focus from a code-centric standpoint to a model-centric one enables a better specification and understanding of domain specific concerns. Since a software system undergoes to several refinement steps during its life cycle, last y...
In questo articolo andremo a presentare il pattern architetturale Model-View-Controller ed introdurremo il giovane progetto ZNF che ha l’ambizione di diventare l’implementazione di riferimento per PHP5 di questo pattern.