1,721,040 research outputs found
Energy-aware Software
Luca Ardito has focused his PhD on studying how to identify and to reduce the energy consumption caused by software. The project concentrates on the application level, with an experimental approach to discover and modify characteristics that waste energy. We can define five research goals:
RG1. Is it possible to measure the energy consumption of an application? Measuring the energy consumption of an electronic device (PC, mobile phone, etc.) is straightforward, but several applications coexist on it, possibly with very different energy needs. Usage profiles for applications are certainly important too. We will consider the most common platforms (Windows, Linux, Mac Osx).
RG2. Could Energy Efficiency be considered as a software non-
functional requirement? Research has increasingly focused on improving the Energy Efficiency of hardware, but the literature still lacks in quantifying accurately the energy impact of software. This research goal is strictly related to the following one.
RG3. Is it possible to profile the energy consumption of a software application? An empirical experiment could assess quantitatively the energetic impact of software usage by building up common application usage scenarios and executing them independently to collect power consumption data.
RG4. Is there a relationship between the way a program is written and its energy consumption? The same application, at the code level, can be written in different ways. Here the question is if the different ways have impact on energy consumption. The code should be considered at two levels: source code (programmer) and object code/byte code (compiler).
RG5. Is it possible to use the energy consumption information to
trigger self-adaptation? A software application could automatically modify its behaviour in order to reduce its energy consumption
MIMIC: a Multi Input Micro-Influencers Classifier
Micro-influencers are effective elements in the marketing strategies of companies and institutions because of their capability to create an hyper-engaged audience around a specific topic of interest. In recent years, many scientific approaches and commercial tools have handled the task of detecting this type of social media users. These strategies adopt solutions ranging from rule based machine learning models to deep neural networks and graph analysis on text, images and account information. This work compares the existing solutions and proposes an ensemble method to generalize them with different input data and social media platforms. The deployed solution combines deep learning models on unstructured data with statistical machine learning models on structured data.
We retrieve both social media accounts information and multimedia posts on Twitter and Instagram. These data are mapped into feature vectors for an eXtreme Gradient Boosting (XGBoost) classifier. Sixty different topics have been analyzed to build a rule based gold standard dataset and to compare the performance of our approach against baseline classifiers. We prove the effectiveness of our work by comparing the accuracy, precision, recall, and f1 score of our model with different configurations and architectures. We obtained an accuracy of 0.98 with our best performing model
Gamified Exploratory GUI Testing of Web Applications: a Preliminary Evaluation
In the context of Software Engineering, testing is a well-known phase that plays a critical role, as is needed to ensure that the designed and produced code provides the expected results, avoiding faults and crashes. Exploratory GUI testing allows the tester to manually define test cases by directly interacting with the user interface of the finite system. However, testers often loosely perform exploratory GUI testing, as they perceive it as a time-consuming, repetitive and unappealing activity. We defined a gamified framework for GUI testing to address this issue, which we developed and integrated into the Augmented testing tool, Scout. Gamification is perceived as a means to enhance the performance of human testers by stimulating competition and encouraging them to achieve better results in terms of both efficiency and effectiveness. We performed a preliminary evaluation of the gamification layer with a small sample of testers to assess the benefits of the technique compared with the standard version of the same tool. Test sequences defined with the gamified tool achieved higher coverage (i.e., higher efficiency) and a slightly higher percentage of bugs found. The user's opinion was almost unanimously in favor of the gamified version of the tool
Green IT - available data and guidelines for reducing energy consumption in IT Systems
Nowadays saving energy is an interdisciplinary key challenge. Green IT deals with saving energy in IT
systems, and is rapidly gaining momentum. Hardware manufacturers and designers have first considered
the problem, in the field of IT, but recently software energy efficiency gathered the interest of industry
and academic research. In this paper we aim at summarizing the available knowledge in Green IT. In
particular we:
• Introduce a taxonomy of concepts related to energy and IT.
• Present recent data on energy consumption trends organized according to the taxonomy.
• Present some guidelines to write energy efficient software organized according to the taxonomy.
• Underline what is missing and what should be done in future research
Computational Cost Analysis and Data-Driven Predictive Modeling of Cloud-based Online NILM Algorithm
Online non-intrusive load monitoring methods have captivated academia and industries as parsimonious solutions for household energy efficiency monitoring as well as safety control, anomaly detection, and demand-side management. However, despite the promised energy efficiency by providing appliance specific consumption information feed-backs, the computational energy cost for running the load monitoring systems is not explored. This study analyzes whether the energy spent to execute the non-intrusive algorithms, out-weights the expected energy efficiency gain from using the algorithms. Furthermore, we present a study on the computation costs estimation and prediction of a Cloud-based online non-intrusive load disaggregation algorithm through data-driven models. Moreover, a generic framework for an automated algorithm computational cost monitoring and the modeling methodologies are devised and proposed for meeting extensive scaling load monitoring and deployment requirements. The proposed approach was examined and validated on ls and cvs running the disaggregation algorithm. The prediction models, developed using statistical and machine learning tools, demonstrate the promising applicability of the data-driven approach with a very high prediction accuracy without detailed knowledge of the computing systems and the algorithm
Gamify: Gamification in Software Development, Verification,and Validation
In this paper we report the outcomes of the 1st and 2nd edition of the International Workshop on Gamification in Software Development, Verification, and Validation (Gamify 2022 and Gamify 2023) which were held as part of the 30th and 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2022, in Singapore, November 17, 2022 and ESEC/FSE 2023, online workshop, December 4, 2023)
Multi-device, Robust, and Integrated Android GUI Testing: A Conceptual Framework
Android GUI (Graphical User Interface) testing is often overlooked by developers, even if it holds the potential to guarantee sufficient quality for the apps. It is typically regarded as a burdensome activity. High maintenance costs, fragmentation, fragility, and flakiness of the test artifacts are the main hurdles for wider adoption in practice. This article identifies the main modules that could enable efficient and robust mobile testing in continuous development environments. On top of them, we sketch the infrastructure of a conceptual framework for the generation, execution, and maintenance of mobile test suites. We also present a call to action for software testers, developers, and researchers towards the framework realization in practice
An Automated Diagram Generator of Reference Solutions for Modeling Educators
UML class diagrams are a relevant modeling language in Software Engineering education since they can be used to teach students how to visualize and display the different entities that compose a system, with their functionalities and relationships. The definition of modeling exercises and their evaluation can be time-consuming for educators due to the need to consider possible semantic variations and alternative representations of the same system requirements. To facilitate teachers in this process, we present TIGRE (auTomated dIagram Generator of REference solutions), an online editor for the definition of UML modeling exercises where teachers can define reference solutions in the form of both diagrams and detailed structures to be used for automated evaluation. The tool is enhanced by the interaction with recent Large Language Models for the automated generation of reference solutions starting from text, facilitating the creation of early drafts. A proof-of-concept case study has been performed by having TIGRE generate reference solutions for two exercises: most of the relevant concepts have been represented correctly, but issues emerged in the form of unnecessary classes being included and incorrect understanding of associations
- …
