Ivano Malavolta

Ivano Malavolta
Vrije Universiteit Amsterdam | VU · Department of Computer Science

PhD in Computer Science

About

174
Publications
95,830
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
4,144
Citations
Introduction
My research interests include: mobile software analysis and design, empirical software engineering, software architecture, Model-Driven Engineering, and software engineering for robotics.
Additional affiliations
April 2014 - April 2016
Gran Sasso Science Institute, L'Aquila
Position
  • Post Doc researcher
April 2012 - March 2014
University of L'Aquila
Position
  • Post Doc researcher

Publications

Publications (174)
Conference Paper
Full-text available
One of the most intriguing challenges in mobile apps development is its fragmentation with respect to mobile platforms (e.g., Android, Apple iOS, Windows Phone). Large companies like IBM and Adobe and a growing community of developers advocate hybrid mobile apps development as a possible solution to mobile platforms fragmentation. Hybrid mobile app...
Article
Full-text available
Robots are meant to replace humans for a broad variety of everyday tasks such as environmental monitoring or patrolling large public areas for security assurance. The main focus of researchers and practitioners has been on providing tailored software and hardware solutions for very specific and often complex tasks. On one hand, these solutions show...
Article
Full-text available
Software intensive systems play a crucial role in most, if not all, aspects of modern society. As such, both their sustainability and their role in supporting sustainable processes must be realized by design. To this aim, the architecture of software intensive systems should be designed to support sustainability goals; and measured to understand ho...
Conference Paper
Full-text available
Context: Architectural views serve as fundamental artefacts for designing and communicating software architectures. In the context of collaborative software development, producing sound architectural documentation, where architectural views play a central role, is a crucial aspect for effective teamwork. Despite their importance, the use of archite...
Preprint
Full-text available
In this chapter we share our experience in running ten editions of the Green Lab course at the Vrije Universiteit Amsterdam, the Netherlands. The course is given in the Software Engineering and Green IT track of the Computer Science Master program of the VU. The course takes place every year over a 2-month period and teaches Computer Science studen...
Article
Full-text available
The research field of resource and energy-efficient software is still rather young and there are uncertainties and ambiguities hindering people from conducting their own measurements. This leads to the software-induced environmental impact only rarely being considered in practice. While researchers and practitioners have produced methods, tools, gu...
Chapter
Context. Energy efficiency is gaining importance in the design of software systems, but is still marginally addressed in the area of microservice-based systems. Energy-related aspects often get neglected in favor of other software quality attributes, such as performance, service composition, maintainability, and security. Goal. The aim of this stud...
Article
Full-text available
Context Robotic systems are known to perform computation-intensive tasks with limited computational resources and battery life. Such systems might benefit from offloading heavy workloads to the Cloud; however, in some cases, this implies high network traffic that degrades performance and energy consumption. Goal In this study, we aim at evaluating...
Chapter
Measurement-based experiments are a common solution for assessing the energy consumption of complex software systems. Since energy consumption is a metric that is sensitive to several factors, data collection must be repeated to reduce variability. Moreover, additional rounds of measurements are required to evaluate the energy consumption of the sy...
Preprint
Full-text available
Web apps are built by using a combination of HTML, CSS, and JavaScript. While building modern web apps, it is common practice to make use of third-party libraries and frameworks, as to improve developers' productivity and code quality. Alongside these benefits, the adoption of such libraries results in the introduction of JavaScript dead code, i.e....
Article
Full-text available
Web apps are built by using a combination of HTML, CSS, and JavaScript. While building modern web apps, it is common practice to make use of third-party libraries and frameworks, as to improve developers' productivity and code quality. Alongside these benefits, the adoption of such libraries results in the introduction of JavaScript dead code , i...
Article
Full-text available
In this note, we report on a half-day tutorial designed to introduce software architecture practitioners and researchers to the concepts and open-source implementations of blended modeling for software architectures. The tutorial covered blended modeling motivation and principles, generation of editors, generation of the synchronization infrastruct...
Preprint
Full-text available
The World Wide Web has become increasingly complex in recent years. This complexity severely affects users in the developing regions due to slow cellular data connectivity and usage of low-end smartphone devices. Existing solutions to simplify the Web are generally evaluated using several different metrics and settings, which hinders the comparison...
Article
Full-text available
Context Fast loading web apps can be a key success factor in terms of user experience. However, improving the performance of a web app is not trivial, since it requires a deep understanding of both the browser engine and the specific usage scenarios of the web app under consideration. Aims In this paper, we present an industrial case study at 30 M...
Article
Full-text available
Real-time collaboration in model-driven software engineering is gaining increasing attention from both the research and industrial community. This is due to its potential adverse effects on the efficiency of software modeling process. However, current approaches for real-time collaboration are tightly coupled to modeling platforms and language work...
Preprint
Full-text available
Robotics software is pushing the limits of software engineering practice. The 3rd International Workshop on Robotics Software Engineering held a panel on "the best practices for robotic software engineering". This article shares the key takeaways that emerged from the discussion among the panelists and the workshop, ranging from architecting practi...
Article
Full-text available
The Robot Operating System (ROS) has become the de-facto standard framework for robotics software, and a great part of commercial robots is expected to have at least one ROS package on board in the coming years. For good quality, robotics software should rely on strong software engineering principles. In this paper, we perform a systematic mapping...
Article
Full-text available
Reference architectures (RAs) are successfully used to represent families of concrete software architectures in several domains such as automotive, banking, and the Internet of Things. RAs inspire architects when designing concrete architectures, and they help to guarantee compliance with architectural decisions, regulatory requirements, as well as...
Article
Full-text available
Context Tangled commits are changes to software that address multiple concerns at once. For researchers interested in bugs, tangled commits mean that they actually study not only bugs, but also other concerns irrelevant for the study of bugs. Objective We want to improve our understanding of the prevalence of tangling and the types of changes that...
Article
Full-text available
Blended modeling aims to improve the user experience of modeling activities by prioritizing the seamless interaction with models through multiple notations over the consistency of the models. Inconsistency tolerance, thus, becomes an important aspect in such settings. To understand the potential of current commercial and open-source modeling tools...
Article
In this paper, we present an industrial case study at 30MHz, an agricultural technology company, in which we target a large web-based dashboard.First, we design a replicable performance engineering plan, where the technical realization of each intervention is reported in detail along with its development effort.Second, we develop a benchmarking too...
Conference Paper
Full-text available
Context. With "work from home" policies becoming the norm during the COVID-19 pandemic, videoconferencing apps have soared in popularity, especially on mobile devices. However, mobile devices only have limited energy capacities, and their batteries degrade slightly with each charge/discharge cycle. Goal. With this research we aim at comparing the e...
Article
Context Nowadays the majority of all worldwide Web traffic comes from mobile devices, as we tend to primarily rely on the browsers installed on our smartphones and tablets (e.g., Chrome for Android, Safari for iOS) for accessing online services. A market of such a large scale leads to an extremely fierce competition, where it is of paramount import...
Article
Full-text available
Background. Architectural Technical Debt (ATD) in a software-intensive system denotes architectural design choices which, while being suitable or even optimal when adopted, lower the maintainability and evolvability of the system in the long term, hindering future development activities. Despite the growing research interest in ATD, how to gain an...
Article
Full-text available
Mobile robots operate in various environments (e.g. aquatic, aerial, or terrestrial), they come in many diverse shapes and they are increasingly becoming parts of our lives. The successful engineering of mobile robotics systems demands the interdisciplinary collaboration of experts from different domains, such as mechanical and electrical engineeri...
Article
Context There are many e-Health mobile apps on the apps store, from apps to improve a user’s lifestyle to mental coaching. Whilst these apps might consider user context when they give their interventions, prompts, and encouragements, they still tend to be rigid e.g., not using user context and experience to tailor themselves to the user. Objective...
Article
Several mobile apps have been released to the public in response to the COVID-19 pandemic. The majority of these apps share a similar socio-technological context: they are developed under a tight schedule, with immense social and political pressure, e.g., concerning privacy and security. This pressure can lead to malfunctions with serious consequen...
Chapter
Full-text available
Within software engineering, social sustainability is the dimension of sustainability that focuses on the “support of current and future generations to have the same or greater access to social resources by pursuing social equity.” An important domain that strives to achieve social sustainability is e-Health, and more recently e-Health mobile apps....
Conference Paper
Full-text available
Architectural technical debt (ATD) in software-intensive systems is mostly invisible to software developers , can be widespread throughout entire code-bases, and its remediation cost is often steep. In recent years, numerous approaches have been proposed to identify, keep track, and ultimately manage ATD. The variety of approaches available opens a...
Conference Paper
Full-text available
This paper reports a summary of a study on Architectural Technical Debt (ATD) published in the Journal of Software and Systems [1]. By borrowing from the 16162 definition of technical debt, we can define ATD as a collection of design or implementation constructs, present at the architectural level of software-intensive systems, that are expedient i...
Chapter
Full-text available
In software engineering, energy awareness refers to the conscious design and development of software that is able to monitor and react to energy state. Energy awareness is the key building block for energy efficiency and for other quality aspects of robotics software, such as mission completion time and safety. However, as of today, there is no gui...
Article
Full-text available
Mobile platforms are rapidly and continuously changing, with support for new sensors, APIs, and programming abstractions. Static analysis is gaining a growing interest, allowing developers to predict properties about the run-time behavior of mobile apps without executing them. Over the years, literally hundreds of static analysis techniques have be...
Article
Full-text available
Context The Robot Operating System (ROS) is the de-facto standard for robotics software. However, ROS-based systems are getting larger and more complex and could benefit from good software architecture practices. Goal We aim at (i) unveiling the state-of-the-practice in terms of targeted quality attributes and architecture documentation in ROS-bas...
Preprint
Full-text available
Robots are becoming more and more commonplace in many industry settings. This successful adoption can be partly attributed to (1) their increasingly affordable cost and (2) the possibility of developing intelligent, software-driven robots. Unfortunately, robotics software consumes significant amounts of energy. Moreover, robots are often battery-dr...
Article
Full-text available
Architectural technical debt in software-intensive systems is a metaphor used to describe the “big” design decisions (e.g., choices regarding structure, frameworks, technologies, languages, etc.) that, while being suitable or even optimal when made, significantly hinder progress in the future. While other types of debt, such as code-level technical...
Preprint
Full-text available
Context: Tangled commits are changes to software that address multiple concerns at once. For researchers interested in bugs, tangled commits mean that they actually study not only bugs, but also other concerns irrelevant for the study of bugs. Objective: We want to improve our understanding of the prevalence of tangling and the types of changes tha...
Conference Paper
Full-text available
Context. Since today mobile devices have limited battery life, the energy consumption of the software running on them can play a strong role with respect to the success of mobile-based businesses. Progressive Web Applications (PWAs) are built using common web technologies like HTML, CSS, and JavaScript and are commonly used for providing a better u...