Barbara Russo

Barbara Russo
Free University of Bozen-Bolzano | Unibolzano

About

170
Publications
28,095
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,909
Citations

Publications

Publications (170)
Article
Full-text available
ContextThe microservices architectural style is gaining momentum in the IT industry. This style does not guarantee that a target system can continuously meet acceptable performance levels. The ability to study the violations of performance requirements and eventually predict them would help practitioners to tune techniques like dynamic load balanci...
Article
Full-text available
Collaborative artificial intelligence systems (CAISs) aim to work with humans in a shared space to achieve a common goal, but this can pose hazards that could harm human beings. We identify emerging problems in this context and report our vision of and progress toward a risk-driven assurance process for CAISs.
Article
Full-text available
Effective and automated verification techniques able to provide assurances of performance and scalability are highly demanded in the context of microservices systems. In this paper, we introduce a methodology that applies specification-driven load testing to learn the behavior of the target microservices system under multiple deployment configurati...
Preprint
Full-text available
Collaborative AI systems (CAISs) aim at working together with humans in a shared space to achieve a common goal. This critical setting yields hazardous circumstances that could harm human beings. Thus, building such systems with strong assurances of compliance with requirements, domain-specific standards and regulations is of greatest importance. O...
Preprint
Industry 4.0 embodies one of the significant technological changes of this decade. Cyber-physical systems and the Internet Of Things are two central technologies in this change that embed or connect with sensors and actuators and interact with the physical environment. However, such systems-of-systems undergo additional restrictions in an endeavor...
Article
Full-text available
Industry 4.0 is changing data collection, storage, and analysis in industrial processes fundamentally, enabling novel applications such as flexible manufacturing of highly customized products. However, real-time control of these processes has not yet realized its full potential in using the collected data to drive further development. Indeed, typic...
Chapter
Full-text available
Context and motivation. Collaborative AI systems aim at working together with humans in a shared space. Building these systems, which comply with quality requirements, domain specific standards and regulations is a challenging research direction. This challenge is even more exacerbated for new generation of systems that leverage on machine learning...
Preprint
Full-text available
Collaborative AI systems aim at working together with humans in a shared space to achieve a common goal. This setting imposes potentially hazardous circumstances due to contacts that could harm human beings. Thus, building such systems with strong assurances of compliance with requirements domain specific standards and regulations is of greatest im...
Preprint
Full-text available
[Context and motivation] Collaborative AI systems aim at working together with humans in a shared space. Building these systems, which comply with quality requirements, domain specific standards and regulations is a challenging research direction. This challenge is even more exacerbated for new generation of systems that leverage on machine learnin...
Preprint
Full-text available
Anomaly detection systems aim to detect and report attacks or unexpected behavior in networked systems. Previous work has shown that anomalies have an impact on system performance, and that performance signatures can be effectively used for implementing an IDS. In this paper, we present an analytical and an experimental study on the trade-off betwe...
Conference Paper
Full-text available
The microservices architectural style is picking up more and more momentum in IT industry for the development of systems as loosely coupled, collaborating services. Companies that undergo the migration of their own applications have aspirations such as increasing maintainability and the scale of operation. Such a process is worthwhile but not easy,...
Chapter
Full-text available
Modern software systems operate in complex and changing environments and are exposed to multiple sources of uncertainty. Considering uncertainty as a first-class concern in software testing is currently on an uptrend. This paper introduces a novel methodology to deal with testing under uncertainty. Our proposal combines the usage of parametric mode...
Article
Full-text available
With the expansion of cyber-physical systems (CPSs) across critical and regulated industries, systems must be continuously updated to remain resilient. At the same time, they should be extremely secure and safe to operate and use. The DevOps approach caters to business demands of more speed and smartness in production, but it is extremely challengi...
Preprint
Industry 4.0 is changing fundamentally data collection, its storage and analysis in industrial processes, enabling novel application such as flexible manufacturing of highly customized products. Real-time control of these processes, however, has not yet realized its full potential in using the collected data to drive further development. Indeed, ty...
Article
Full-text available
Microservices have emerged as an architectural style for developing distributed applications. Assessing the performance of architecture deployment configurations — e.g., with respect to deployment alternatives — is challenging and must be aligned with the system usage in the production environment. In this paper, we introduce an approach for using...
Article
Full-text available
Anomaly detection systems aim to detect and report attacks or unexpected behavior in networked systems. Previous work has shown that anomalies have an impact on system performance, and that performance signatures can be effectively used for implementing an IDS. In this paper, we present an analytical and an experimental study on the trade-off betwe...
Preprint
Industry 4.0 is changing fundamentally the way data is collected, stored and analyzed in industrial processes, enabling novel application such as flexible manufacturing of highly customized products. Real-time control of these processes, however, has not yet realized its full potential in using the data collected to drive further development. We be...
Chapter
Full-text available
Today’s software systems like cyber-physical production systems or big data systems have to process large volumes and diverse types of data which heavily influences the quality of these so-called data-intensive systems. However, traditional software testing approaches rather focus on functional behavior than on data aspects. Therefore, the role of...
Article
Programmable logic controllers (PLCs) are the most used digital systems in manufacturing industry, but there is little support for test automation of such systems. As net result, testing is mostly done manually or not at all despite the recommendations of the IEC 61131-3 Standard. Attempts to provide an automated testing framework for PLCs have bee...
Preprint
We explore the challenges and opportunities of shifting industrial control software from dedicated hardware to bare-metal servers or cloud computing platforms using off the shelf technologies. In particular, we demonstrate that executing time-critical applications on cloud platforms is viable based on a series of dedicated latency tests targeting r...
Chapter
FLOSS projects generate big data of different types, produced throughout the development process, which is a valuable source of information on the process, product, and the organization of FLOSS projects. However, the information such data carries may sometimes be incomplete or become soon obsolete. To exemplify the potential and the limits of mini...
Article
Context A large amount of information about system behavior is stored in logs that record system changes. Such information can be exploited to discover anomalies of a system and the operations that cause them. Given their large size, manual inspection of logs is hard and infeasible in a desired timeframe (e.g., real-time), especially for critical s...
Conference Paper
Full-text available
It is mandatory to continuously assess software systems during development and operation, e.g., through testing and monitoring, to make sure that they meet their required level of performance. In our previous work, we have developed an approach to assess the degree to which configurations of a software system meet performance criteria based on a do...
Preprint
Full-text available
Today's software systems like cyber-physical production systems or big data systems have to process large volumes and diverse types of data which heavily influences the quality of these so-called data-intensive systems. However, traditional software testing approaches rather focus on functional behavior than on data aspects. Therefore, the role of...
Article
Disclosing personal data for a purpose not known by data subjects is a practice that the 2018 European Union General Data Protection Regulation (GDPR) is supposed to prevent. This article gives an overview of the major aspects of GDPR related to provision, use, and maintenance of cloud services and technologies.
Conference Paper
As a developer, it is often complex to foresee the impact of changes in source code on usage, e.g., it is time-consuming to find out all components that will be impacted by a change or estimate the impact on the usability of a failing piece of code. It is therefore hard to decide how much effort in quality assurance is justifiable to obtain the des...
Conference Paper
Full-text available
Microservices have emerged as an architectural style for developing distributed applications. Assessing the performance of architectural deployment alternatives is challenging and must be aligned with the system usage in the production environment. In this paper, we introduce an approach for using operational profiles to generate load tests to auto...
Conference Paper
Components' interactions in software systems evolve over time increasing in complexity and size. Developers might have hard time to master such complexity during their maintenance activities incrementing the risk to make mistakes. Understanding changes of such interactions helps developer plan their re-factoring activities. In this study, we propos...
Article
Software development video tutorials have seen a steep increase in popularity in recent years. Their main advantage is that they thoroughly illustrate how certain technologies, programming languages, etc. are to be used. However, they come with a caveat: there is currently little support for searching and browsing their content. This makes it diffi...
Article
The market for mobile apps is getting bigger and bigger, and it is expected to be worth over 100 Billion dollars in 2020. To have a chance to succeed in such a competitive environment, developers need to build and maintain high-quality apps, continuously astonishing their users with the coolest new features. Mobile app marketplaces allow users to r...
Article
Monitoring developers’ activity in the Integrated Development Environment (IDE) and, in general, in their working environment, can be useful to provide context to recommender systems, and, in perspective, to develop smarter IDEs. This paper reports results of a long (about 1,000 hours) observational study conducted in an industrial environment, in...
Chapter
When you call a doctor, you would expect that she would be prepared with a set of remedies for your disease. You would not be pleased to see her digging into a huge amount of clinical data while she makes a diagnosis and searches for a solution for your problem, neither would you expect her to propose a cure based on your case alone. The remedies s...
Article
Refactoring and, in particular, remodularization operations can be performed to repair the design of a software system and remove the erosion caused by software evolution. Various approaches have been proposed to support developers during the remodularization of a software system. Most of these approaches are based on the underlying assumption that...
Conference Paper
Developers have to to constantly improve their apps by fixing critical bugs and implementing the most desired features in order to gain shares in the continuously increasing and competitive market of mobile apps. A precious source of information to plan such activities is represented by reviews left by users on the app store. However, in order to e...
Conference Paper
When knowledgeable colleagues are not available, developers resort to offline and online resources, e.g., tutorials, mailing lists, and Q&A websites. These, however, need to be found, read, and understood, which takes its toll in terms of time and mental energy. A more immediate and accessible resource are video tutorials found on the web, which in...
Conference Paper
Nowadays developers heavily rely on sources of informal documentation, including Q&A forums, slides, or video tutorials, the latter being particularly useful to provide introductory notions for a piece of technology. The current practice is that developers have to browse sources individually, which in the case of video tutorials is cumbersome, as t...
Conference Paper
Technical debt is a metaphor introduced by Cunningham to indicate "not quite right code which we postpone making it right". Examples of technical debt are code smells and bug hazards. Several techniques have been proposed to detect different types of technical debt. Among those, Potdar and Shihab defined heuristics to detect instances of self-admit...
Conference Paper
Text Retrieval (TR) approaches have been used to leverage the textual information contained in software artifacts to address a multitude of software engineering (SE) tasks. However, TR approaches need to be configured properly in order to lead to good results. Current approaches for automatic TR configuration in SE configure a single TR approach an...
Book
This book constitutes the thoroughly refereed proceedings of the Fourth International Symposium on Data-Driven Process Discovery and Analysis held in Riva del Milan, Italy, in November 2014. The five revised full papers were carefully selected from 21 submissions. Following the event, authors were given the opportunity to improve their papers with...
Article
Full-text available
Context. In 2007, Aversano et al. [2] analysed the evolution of JHotDraw, ArgoUML, and Eclipse JDT between years 2000-2005 to understand the role of frequently changed design patterns. Goal. In this paper, we perform a replication of the study on more recent versions to control for artifactual results. In particular, we investigate whether maturity...
Article
Studies on fault prediction often pay little attention to empirical rigor and presentation. Researchers might not have full command over the statistical method they use, full understanding of the data they have, or tend not to report key details about their work. What does it happen when we want to compare such studies for building a theory on faul...
Article
Predicting system failures can be of great benefit to managers that get a better command over system performance. Data that systems generate in the form of logs is a valuable source of information to predict system reliability. As such, there is an increasing demand of tools to mine logs and provide accurate predictions. However, interpreting infor...
Article
Code changes propagate. Type, frequency, size of changes typically explain and even predict impact of changes in software products. What can changes tell about software processes? In this study, we propose a novel method to render software processes by graphs of linked commits as carriers of change information. Mining histories in such commit graph...
Conference Paper
This pattern was originally designed to classify sequences of events in log files by error-proneness. Sequences of events trace application use in real contexts. As such, identifying error-prone sequences helps understand and predict application use. The classification problem we describe is typical in supervised machine learning, but the composite...
Conference Paper
We present commit graphs, a graph representation of the commit history in version control systems. The graph is structured by commonly changed files between commits. We derive two analysis patterns relating to bug-fixing commits and system modularity.
Conference Paper
Full-text available
Many approaches to determine the fault-proneness of code artifacts rely on historical data of and about these artifacts. These data include the code and how it was changed over time, and information about the changes from version control systems. Each of these can be considered at different levels of granularity. The level of granularity can substa...
Conference Paper
Release Planning is the process of decision making about what features are to be implemented (or revised) in which release of a software product. While release planning for proprietary software products is well-studied, little investigation has been performed for open source products. Various types of feature dependencies are known to impact both t...
Article
Full-text available
In this study, we introduce and discuss a concept of knowledge transfer in system modeling. In a nutshell, knowledge transfer is about forming ways on how a source of knowledge (namely, an existing model) can be used in presence of new, very limited experimental evidence. In virtue of the nature of the problem at hand (a situation encountered quite...
Article
Full-text available
Purpose ‐ In this paper the authors aim to investigate the importance of factors for the adoption of free/libre open source software (FLOSS) in the public sector. They seek to evaluate how different factors impact during the initiation and implementation phases of the adoption process. Design/methodology/approach ‐ The authors base the methodologic...
Article
Full-text available
Logical couplings between files in the commit history of a software repository are instances of files being changed together. The evolution of couplings over commits' history has been used for the localization and prediction of software defects in software reliability. Couplings have been represented in class graphs and change histories on the clas...
Article
Full-text available
Context: Adopting IT innovation in organizations is a complex decision process driven by technical, social and economic issues. Thus, those organizations that decide to adopt innovation take a decision of uncertain success of implementation, as the actual use of a new technology might not be the one expected. The misalignment between planned and ef...
Conference Paper
Full-text available
Since its origins, the diffusion of the OSS phenomenon and the information about it has been entrusted to the Internet and its virtual communities of developers. This public mass of data has attracted the interest of researchers and practitioners aiming at formalizing it into a body of knowledge. To this aim, in 2005, a new series of conferences on...
Conference Paper
Full-text available
While there are many software metrics measuring the architecture of a system and its quality, few are able to assess architectural change qualitatively. Given the sheer size and complexity of current software systems, modifying the architecture of a system can have severe, unintended consequences. We present a method to measure architectural change...
Article
Full-text available
Modern software development relies on collaborative work as a means for sharing knowledge, distributing tasks and responsibilities, reducing risk of failures, and increasing the overall quality of the software product. Such objectives are achieved with a continuous share of the programmers’ daily working life that inevitably influences the programm...
Article
Full-text available
This report summarizes the research works, in particular the full and short papers, presented at the 4th International Symposium on Empirical Software Engineering and Measurement (ESEM 2010), held the 16th and 17th of September in Bolzano-Bozen, Italy. The program provided thirty full papers, twenty six short papers and three invited talks held by...
Conference Paper
Full-text available
Enterprise Resource Planning (ERP) systems are very common worldwide, but their implementation and upgrade projects are expensive, complex and often unsuccessful. A great role in their implementation is played by the consultancy firms, which provide manpower and qualified knowledge. Often, IT managers, on the preparation stage, need to know how the...
Conference Paper
Full-text available
Software usage by end-users is one of the factors used to evaluate the success of software projects. In the context of open source software, there is no single and non-controversial measure of usage, though. Still, one of the most used and readily available measure is data about projects downloads. Nevertheless, download counts and averages do not...
Conference Paper
Full-text available
Open Source Software (OSS) products are widely used although a general consensus on their quality is far to be reached. Providing results on OSS reliability - as quality indicator – contributes to shed some light on this issue and allows organizations to make informed decisions in adopting OSS products or in releasing their own OSS. In this paper,...
Article
Full-text available
We identified the role of various soil parameters and root density as drivers of soil respiration (Rs) in an apple orchard, measured during different periods of the year and at a range of distances from trees, in plots with a different history of nutrient supply. Rs was measured in April, May, August and December and studied in relation to soil tem...
Article
Full-text available
The analysis of commonalities and differences between agile technology and open source software development is needed to understand how advancement approaches have evolved and whether they produce concrete benefits in terms of software quality and customer satisfaction. Agile Technologies in Open Source Development explores the overlap between open...