• Home
  • Alberto Sillitti
Alberto Sillitti

Alberto Sillitti
Centre for Applied Software Engineering

PhD

About

272
Publications
84,786
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
3,468
Citations
Additional affiliations
July 2016 - August 2019
Innopolis University
Position
  • Managing Director
July 2016 - August 2019
Innopolis University
Position
  • Head
May 2016 - February 2022
Innopolis University
Position
  • Professor (Full)
Education
February 2002 - April 2005
Università degli Studi di Genova
Field of study
  • Computer Engineering
September 1996 - July 2001
Università degli Studi di Genova
Field of study
  • Computer Engineering

Publications

Publications (272)
Article
Reliable estimation of the remaining useful life (RUL) of complex engineered systems plays a vital role in avoiding undue maintenance situations while guaranteeing system safety. However, efficient tracking of RUL often gets hampered by the prerequisite for prior knowledge regarding degradation characteristics of critical components, which are not...
Article
Full-text available
A strong necessity for faster mass transport with high capacities and frequent runs has put pressure on railway infrastructure. These changes require an improvement in the maintenance activities that need to be planned carefully to reduce as much as possible their impacts on the actual use of the infrastructure. As a consequence, it is crucial to c...
Chapter
Maintainability is a key factor for the evolution of an open source system due to the highly distributed development teams that contribute to many projects. In the literature there are a number of different approaches that has been developed to evaluate the maintainability of a product but almost each method has been developed in an independent way...
Chapter
Background: Measuring and understanding Technical Debt (TD) is quite complex since there are a number of different definitions and techniques that have been proposed in the last few years and it is not clear which ones should be used in which conditions. The approaches proposed are almost never based on the existing ones and their validation is oft...
Article
In smart buildings, efficient energy consumption is one of the biggest challenges to solve, which can contribute to reduce the global warming of our planet, due to its relevance. In this paper, a time series to image (TSI) based model is introduced to identify anomalous energy consumption in residential buildings. It has a novel encoding scheme to...
Book
SEDA 2018 was held at the premises of the Italian Defence General Secretariat (Segretariato Generale della Difesa) and the main military body actively supporting the conference was the Land Armament Directorate (Direzione Armamenti Terrestri). This is an important evolution of the Italian SEDA military community, as it shows that the interest for t...
Book
This book constitutes the refereed proceedings of the 16th IFIP WG 2.13 International Conference on Open Source Systems, OSS 2020, held in Innopolis, Russia, in May 2020.* The 12 revised full papers and 8 short papers presented were carefully reviewed and selected from 42 submissions. The papers cover a wide range of topics in the field of free/li...
Conference Paper
Software systems are the enabling technology for the development of sustainable systems. However, such devices consume power both from the client side and from the server side. This scenario poses to software engineering a new challenge that concerns the development of software for sustainable systems i.e. systems that explicitly characterize the r...
Chapter
Background: Customer satisfaction is one of the vital components of a successful software company. It is not possible to develop successful products with functional and/or non-functional properties that are not able to satisfy the customer’s needs. To this end, it is important to identify factors that affect customer satisfaction and approaches to...
Chapter
Tools are of paramount importance in supporting software development methods, Agile ones included. In this paper, we aim to identify the most popular tools used by the Agile developers community, studying whether there are shared opinions or there are discrepancies, that could be related to cultural or geographical differences. The study is based o...
Chapter
The Open Source Software (OSS) ecosystem and community has evolved enormously from the first edition of the OSS conference that took place in Genoa (Italy) in 2005. Such evolution happened in every aspect of OSS including research, technology, and business pushing its adoption to an unpredictable scale. Nowadays, it is almost impossible for people...
Conference Paper
An unprecedented growth of the industrial sector, has led to an exponential increase in the amount of industrial IoT (IIoT) data. This is sprouting increased interest in the data-driven predictive maintenance (PDM) of the industrial equipments in cyber-physical systems (CPS). PDM is a prominent strategy which can achieve increased reliability and s...
Conference Paper
Software metrics collection is a fundamental activity required to perform almost any empirical software engineering study. However, even if a wide range of tools exists, the collection of such fundamental data is still very time consuming. Moreover, every researcher collects almost the same data (e.g., CK metrics, McCabe Cyclomatic Complexity, etc....
Article
Full-text available
The increasing penetration of smart meters provides an excellent opportunity to monitor and analyze energy consumption in residential buildings. In this paper, we propose a framework to process the observed profiles of energy consumption to infer the household characteristics in residential buildings. Such characteristics can be used for improving...
Chapter
This paper describes our experience of training a team of developers of an East-European phone service provider. The training experience was structured in two sessions of two days each conducted in different weeks with a gap of about fifteen days. The first session was dedicated to the Continuous Integration Delivery Pipeline, and the second on Agi...
Article
Anomaly detection has attracted considerable attention from the research community in the past few years due to the advancement of sensor monitoring technologies, low-cost solutions, and high impact in diverse application domains. Sensors generate a huge amount of data while monitoring the physical spaces and objects. These huge collected data stre...
Conference Paper
Full-text available
This paper describes our experience of training a team of developers of an East-European phone service provider. The training experience was structured in two sessions of two days each conducted in different weeks with a gap of about fifteen days. The first session was dedicated to the Continuous Integration Delivery Pipeline, and the second on Agi...
Chapter
Full-text available
Software maintenance is a widely studied area of software engineering that it is particularly important in safety-critical and mission-critical applications where defects may have huge impact and code needs to be checked carefully through the analysis of data collected using a number of tools developed to investigate specific aspects. However, such...
Preprint
Full-text available
This paper describes our experience of training a team of developers of an East-European phone service provider. The training experience was structured in two sessions of two days each conducted in different weeks with a gap of about fifteen days. The first session was dedicated to the Continuous Integration Delivery Pipeline, and the second on Agi...
Conference Paper
Full-text available
This paper describes our experience of training a team of developers of an East-European phone service provider. The training experience was structured in two sessions of two days each conducted in different weeks with a gap of about fifteen days. The first session was dedicated to the Continuous Integration Delivery Pipeline, and the second on Agi...
Cover Page
Full-text available
Software Engineering aims at modeling, managing and implementing software development products and processes in a structured and supportable way, these aspects in the Defense & Security compartment assume high level of importance/criticism, where are required high reliability/quality levels, not comparable with commercial standards. DSSEA , The Ita...
Conference Paper
Even experienced developers rigorously testing their code and using state of the art tools and practices, inject every now and then bugs into the code. There is a huge amount of literature about the characterization of such bugs including the effectiveness of the reports and the fixes, the time required to fix them, etc. Existing works have already...
Conference Paper
Full-text available
Railway switches operate in harsh environmental conditions; still, their reliability requirements are high due to safety and economic factors. Once deployed, their maintenance depends on the data collected on their status, and the decisions on due corrective actions. The more regular this data collection and decision cycle is, the better confidence...
Conference Paper
Despite that non-invasive software measurement tools have proven their usefulness in software production, their adoption in software industry is still limited. Reasons for the limited distributions have been studied and analysed recently. In this paper, we propose a new architecture for non-invasive software measurement systems that address the pro...
Conference Paper
Full-text available
Analysis of data related to software development helps to increase quality, control and predictability of software development processes and products. However, collecting such data is a complex task. A non-invasive collection of software metrics is one of the most promising approaches to solve the task. In this paper we present an approach which co...
Chapter
Full-text available
In this paper we offer an overview on the topic of Microservices Science and Engineering (MSE) and we provide a collection of bibliographic references and links relevant to understand an emerging field. We try to clarify some misunderstandings related to microservices and Service-Oriented Architectures, and we also describe projects and application...
Chapter
In the last 10 years CPUs have evolved focusing on performance improvements based on the introduction of multi-core architectures forcing developers to build software in a completely different way. Concurrent programming is now the main approach to improve performances in any software product. Unfortunately, this paradigm is prone to bugs which are...
Conference Paper
Despite that non-invasive software measurement tools have proven their usefulness in software production, their adoption in software industry is still limited. Reasons for the limited distributions have been studied and analyzed in works like (Coman et al, Proceedings of 476 the 31st International Conference on Software Engineering (ICSE 2009), Van...
Chapter
Full-text available
Software development is a very complex activity in which the human factor has a paramount importance. Moreover, since this activity requires the collaboration among different stakeholders, coordination problems arise. Different development methodologies address these problems in different ways. Agile Methods address them embedding coordination mech...
Book
This book presents high-quality original contributions on new software engineering models, approaches, methods, and tools and their evaluation in the context of defence and security applications. In addition, important business and economic aspects are discussed, with a particular focus on cost/benefit analysis, new business models, organizational...
Conference Paper
Full-text available
In this paper we offer an overview on the topic of Microservices Science and Engineering (MSE) and we provide a collection of bibliographic references and links relevant to understand an emerging field. We try to clarify some misunderstandings related to microservices and Service-Oriented Architectures, and we also describe projects and application...
Article
Full-text available
In this paper we offer an overview on the topic of Microservices Science and Engineering (MSE) and we provide a collection of bibliographic references and links relevant to understand an emerging field. We try to clarify some misunderstandings related to microservices and Service-Oriented Architectures, and we also describe projects and application...
Article
Full-text available
Background Software systems are relying more and more on multi-core hardware requiring a parallel approach to address the problems and improve performances. Unfortunately, parallel development is error prone and many developers are not very experienced with this paradigm also because identifying, reproducing, and fixing bugs is often difficult. Obj...
Chapter
This chapter describes our experience of adopting agile project management in a software development project in the defense context. Adopting an agile approach for both software development and the management of the consequent project is becoming increasingly more relevant in many domains, and the defense domain is no exception. However, this relev...
Technical Report
Full-text available
Analysis of data related to software development helps to increase quality, control and predictability of software development processes and products. However, collecting such data for is a complex task. A non-invasive collection of software metrics is one of the most promising approaches to solve the task. In this paper we present an approach whic...
Conference Paper
Agile methods are now a mainstream production process and their proponents are no longer considered hackers or cowboy coders. Still, in embedded and safety critical domains there is somehow the expectation that the approach be "more" plan-based; at least, many of the current normatives seem to lean toward such approach. A definite change in attitud...
Conference Paper
Full-text available
Software Cloning is the typical example where an interdisciplinary approach may bring additional elements into the community's discussion. In fact, little research has been done in its analysis from an Intellectual Propriety Rights (IPRs) perspective, even if it is a widely studied aspect of software engineering. An interdisciplinary approach is cr...
Conference Paper
Full-text available
This paper reports on the experience of the authors in quantitatively assessing the development process of an Eastern European software SME (Small or Medium Size Enterprise). The company produces a very successful workflow and documentation tool, features about 30 full time developers and has a customer base of about 40 major organizations. It has...
Conference Paper
Full-text available
Even if reverse engineering is a well known and deeply investigated activity in software engineering, little research has been performed from an Intellectual Propriety Rights (IPRs) perspective. In this paper, we analyze some cases of reverse engineering in a IPR perspective; in particular, we survey the behavior of the major European court about r...
Chapter
Full-text available
Software development has been often considered as a “standard” manufacturing activity, whose actions can be sequenced and optimized quite like the production of cars. From this the “Waterfall Model” of software production was defined. But, like most human activities, even what people consider a “simple” production of a Cappuccino, cannot be represe...
Chapter
The study offers an introduction to the paradigm, concepts and algorithms of Computational Intelligence (CI). We elaborate on the main technologies of CI: neural networks, fuzzy sets or Granular Computing, in general, and evolutionary optimization and identify their focal points and stress an overall synergistic character of these technologies, whi...
Chapter
The prediction of the fate of a requirement has a visible impact on the use of the resources associated with it. Starting the implementation of a requirement that does not get inserted in the final product implies that we waste the resources associated with it. Moreover, we also create code and other artifacts that may be difficult to identify and...
Chapter
A lot of requirements are discarded throughout the product development process. However, resources are invested on them regardless of their fate. If it would exist a model that predicts reliably and early enough whether a requirement will be deployed or not, the overall process would be more cost-effective and the software system itself more qualit...
Chapter
As physical limits began to negate the assumption known as Moore’s law, chip manufacturers started focusing on multicore architectures as the main solution to improve the processing power in modern computers. Today, multicore CPUs are commonly found in servers, PCs, smartphone, cars, airplanes, and home appliances. As this happens, more and more pr...
Book
Full-text available
In a down-to-the earth manner, the volume lucidly presents how the fundamental concepts, methodology, and algorithms of Computational Intelligence are efficiently exploited in Software Engineering and opens up a novel and promising avenue of a comprehensive analysis and advanced design of software artifacts. It shows how the paradigm and the best p...
Book
This book presents high-quality original contributions on new software engineering models, approaches, methods, and tools and their evaluation in the context of defence and security applications. In addition, important business and economic aspects are discussed, with a particular focus on cost/benefit analysis, new business models, organizational...
Conference Paper
Today, mobile devices (e.g., smartphones, tablets, smartwatches, etc.) are the main target platforms for developers. To support the new challenges, traditional programming languages are not enough anymore and new ones are emerging to enable program-mers (and even end-users) to develop software taking advantage of the most recent hardware capabiliti...
Article
The study is concerned with a granular data description in which we propose a characterization of numeric data by a collection of information granules so that the key structure of the data, their topology and essential relationships are described in the form of a family of fuzzy sets – information granules. A comprehensive design process is introdu...
Conference Paper
We performed an industrial exploratory case study to analyze the software reuse process of a medium size company which is a technology leader in a niche market. Two unstructured interviews and code duplication analyses of four SVN dumps report about a development practice that resulted in more efficient maintenance, due to archiving complete versio...
Article
As devices like smartphones and tablets have been adopted by millions of users, the offer of mobile software products and services has as well evolved significantly. Current mobile software products require hardware resources, computer job and network connectivity that is reflected in increasing power needs. This power demand represents a major cha...
Article
Full-text available
The reputation of lightweight software development processes such as Agile and Lean is damaged by practitioners that claim benefits of such processes that are not true. Teams that want to demonstrate their seriousness, could benefit from matching their processes to the CMMI model, a recognized model by industry and the public administration. CMMI s...
Article
Cost accounting is an essential instrument to measure the efficiency of organizations in creating value for the market. Unfortunately, according to our experience, software development teams do not make use of cost accounting. They rarely know how much costs their projects generated, where resources could be saved, and which working habits potentia...
Conference Paper
Full-text available
Energy consumption on mobile devices has been studied with the objective of finding ways to extend the device’s autonomy, responding to a clear requirement from the end user. Computation offloading is an energy aware design technique that moves the execution of software routines outside the mobile device. In this paper, we illustrate a case study o...
Conference Paper
Full-text available
Publishing a product in a mobile app store implies a process that makes a software product accessible to millions of users. Developers require the means to evaluate the quality of the mobile software product from a viewpoint that considers the mobile business, users, target platforms and app stores. In this paper, we surveyed the publishing guideli...
Chapter
Full-text available
Smart Security systems are applications of the Smart City paradigm for local crime prevention. Like most Smart City tools, they consist of informational and technological components that support decision-making processes. A pre-requisite for such tools is that they are supposed to be means of ongoing management and policy innovations: we therefore...
Article
Full-text available
Measuring the energy spent by a software application is a problem that can be solved by having the proper hardware or software instruments. However, not always such tools are available or the provide resolution cannot fit the needs of the user, for instance when measuring a very small piece of code. This problem is particularly relevant on mobile s...
Conference Paper
This paper briefly presents a model for monitoring a large, heterogeneous and geographically scattered computer park. The data collection is performed by a software agent. The collected data are sent to the central server over the Internet, and stored by the storage system. An on-line portal makes up the visualization system, featuring charts, repo...
Conference Paper
The latest trend across different industries is to move towards (open) web APIs. Creating a successful API, however, is not easy. A lot depends on consumers and their interest and willingness to work with the exposed interface. Structural quality, learning difficulty, design consistency, and backwards compatibility are some of the important factors...
Conference Paper
Dalvik Virtual Machine is Open Source Software and an important part of the Android OS and its better understanding and energy optimization can significantly contribute to the overall greenness of the mobile environment. With the introduction of the OSS solution, named Android Runtime (ART) an attempt of performance and energy consumption optimizat...