Skip to main content

Showing 1–48 of 48 results for author: Mariani, L

Searching in archive cs. Search in all archives.
.
  1. arXiv:2405.19976  [pdf, other

    cs.SE

    Testing in the Evolving World of DL Systems:Insights from Python GitHub Projects

    Authors: Qurban Ali, Oliviero Riganelli, Leonardo Mariani

    Abstract: In the ever-evolving field of Deep Learning (DL), ensuring project quality and reliability remains a crucial challenge. This research investigates testing practices within DL projects in GitHub. It quantifies the adoption of testing methodologies, focusing on aspects like test automation, the types of tests (e.g., unit, integration, and system), test suite growth rate, and evolution of testing pra… ▽ More

    Submitted 30 May, 2024; originally announced May 2024.

    Comments: 11 pages, 3 figures, The 24th IEEE International Conference on Software Quality, Reliability, and Security (QRS) 2024

  2. arXiv:2403.12703  [pdf, other

    cs.SE

    ReProbe: An Architecture for Reconfigurable and Adaptive Probes

    Authors: Federico Alessi, Alessandro Tundo, Marco Mobilio, Oliviero Riganelli, Leonardo Mariani

    Abstract: Modern distributed systems are highly dynamic and scalable, requiring monitoring solutions that can adapt to rapid changes. Monitoring systems that rely on external probes can only achieve adaptation through expensive operations such as deployment, undeployment, and reconfiguration. This poster paper introduces ReProbes, a class of adaptive monitoring probes that can handle rapid changes in data c… ▽ More

    Submitted 22 May, 2024; v1 submitted 19 March, 2024; originally announced March 2024.

  3. Towards Model-Driven Dashboard Generation for Systems-of-Systems

    Authors: Maria Teresa Rossi, Alessandro Tundo, Leonardo Mariani

    Abstract: Configuring and evolving dashboards in complex and large-scale Systems-of-Systems (SoS) can be an expensive and cumbersome task due to the many Key Performance Indicators (KPIs) that are usually collected and have to be arranged in a number of visualizations. Unfortunately, setting up dashboards is still a largely manual and error-prone task requiring extensive human intervention. This short pap… ▽ More

    Submitted 23 February, 2024; originally announced February 2024.

    Journal ref: 2024 12th ACM/IEEE International Workshop on Software Engineering for Systems-of-Systems and Software Ecosystems

  4. Assessing AI-Based Code Assistants in Method Generation Tasks

    Authors: Vincenzo Corso, Leonardo Mariani, Daniela Micucci, Oliviero Riganelli

    Abstract: AI-based code assistants are increasingly popular as a means to enhance productivity and improve code quality. This study compares four AI-based code assistants, GitHub Copilot, Tabnine, ChatGPT, and Google Bard, in method generation tasks, assessing their ability to produce accurate, correct, and efficient code. Results show that code assistants are useful, with complementary capabilities, althou… ▽ More

    Submitted 14 February, 2024; originally announced February 2024.

    Journal ref: In Proceedings of the 46th International Conference on Software Engineering (ICSE 2024)

  5. Generating Java Methods: An Empirical Assessment of Four AI-Based Code Assistants

    Authors: Vincenzo Corso, Leonardo Mariani, Daniela Micucci, Oliviero Riganelli

    Abstract: AI-based code assistants are promising tools that can facilitate and speed up code development. They exploit machine learning algorithms and natural language processing to interact with developers, suggesting code snippets (e.g., method implementations) that can be incorporated into projects. Recent studies empirically investigated the effectiveness of code assistants using simple exemplary proble… ▽ More

    Submitted 14 February, 2024; v1 submitted 13 February, 2024; originally announced February 2024.

    Journal ref: Proceedings of the 32nd IEEE/ACM International Conference on Program Comprehension (ICPC 2024)

  6. Analyzing Prompt Influence on Automated Method Generation: An Empirical Study with Copilot

    Authors: Ionut Daniel Fagadau, Leonardo Mariani, Daniela Micucci, Oliviero Riganelli

    Abstract: Generative AI is changing the way developers interact with software systems, providing services that can produce and deliver new content, crafted to satisfy the actual needs of developers. For instance, developers can ask for new code directly from within their IDEs by writing natural language prompts, and integrated services based on generative AI, such as Copilot, immediately respond to prompts… ▽ More

    Submitted 13 February, 2024; originally announced February 2024.

    Journal ref: Proceedings of the 32nd IEEE/ACM International Conference on Program Comprehension (ICPC 2024)

  7. arXiv:2402.07460  [pdf, other

    cs.SE

    Anonymizing Test Data in Android: Does It Hurt?

    Authors: Elena Masserini, Davide Ginelli, Daniela Micucci, Daniela Briola, Leonardo Mariani

    Abstract: Failure data collected from the field (e.g., failure traces, bug reports, and memory dumps) represent an invaluable source of information for developers who need to reproduce and analyze failures. Unfortunately, field data may include sensitive information and thus cannot be collected indiscriminately. Privacy-preserving techniques can address this problem anonymizing data and reducing the risk of… ▽ More

    Submitted 12 February, 2024; originally announced February 2024.

  8. MutaBot: A Mutation Testing Approach for Chatbots

    Authors: Michael Ferdinando Urrico, Diego Clerissi, Leonardo Mariani

    Abstract: Mutation testing is a technique aimed at assessing the effectiveness of test suites by seeding artificial faults into programs. Although available for many platforms and languages, no mutation testing tool is currently available for conversational chatbots, which represent an increasingly popular solution to design systems that can interact with users through a natural language interface. Note tha… ▽ More

    Submitted 18 January, 2024; originally announced January 2024.

    Comments: 5 pages, 2 figures, 2024 IEEE/ACM 46th International Conference on Software Engineering: Companion Proceedings (ICSE-Companion '24)

  9. Automated Probe Life-Cycle Management for Monitoring-as-a-Service

    Authors: Alessandro Tundo, Marco Mobilio, Oliviero Riganelli, Leonardo Mariani

    Abstract: Cloud services must be continuously monitored to guarantee that misbehaviors can be timely revealed, compensated, and fixed. While simple applications can be easily monitored and controlled, monitoring non-trivial cloud systems with dynamic behavior requires the operators to be able to rapidly adapt the set of collected indicators. Although the currently available monitoring frameworks are equippe… ▽ More

    Submitted 21 September, 2023; originally announced September 2023.

    Journal ref: in IEEE Transactions on Services Computing, vol. 16, no. 2, pp. 969-982, 1 March-April 2023

  10. arXiv:2309.02985  [pdf, other

    cs.SE

    Supporting Early-Safety Analysis of IoT Systems by Exploiting Testing Techniques

    Authors: Diego Clerissi, Juri Di Rocco, Davide Di Ruscio, Claudio Di Sipio, Felicien Ihirwe, Leonardo Mariani, Daniela Micucci, Maria Teresa Rossi, Riccardo Rubei

    Abstract: IoT systems complexity and susceptibility to failures pose significant challenges in ensuring their reliable operation Failures can be internally generated or caused by external factors impacting both the systems correctness and its surrounding environment To investigate these complexities various modeling approaches have been proposed to raise the level of abstraction facilitating automation and… ▽ More

    Submitted 6 September, 2023; originally announced September 2023.

  11. arXiv:2309.00022  [pdf, other

    cs.SE cs.LG eess.SY

    An Energy-Aware Approach to Design Self-Adaptive AI-based Applications on the Edge

    Authors: Alessandro Tundo, Marco Mobilio, Shashikant Ilager, Ivona Brandić, Ezio Bartocci, Leonardo Mariani

    Abstract: The advent of edge devices dedicated to machine learning tasks enabled the execution of AI-based applications that efficiently process and classify the data acquired by the resource-constrained devices populating the Internet of Things. The proliferation of such applications (e.g., critical monitoring in smart cities) demands new strategies to make these systems also sustainable from an energetic… ▽ More

    Submitted 31 August, 2023; originally announced September 2023.

  12. arXiv:2307.16185  [pdf, other

    cs.SE

    Measuring Software Testability via Automatically Generated Test Cases

    Authors: Luca Guglielmo, Leonardo Mariani, Giovanni Denaro

    Abstract: Estimating software testability can crucially assist software managers to optimize test budgets and software quality. In this paper, we propose a new approach that radically differs from the traditional approach of pursuing testability measurements based on software metrics, e.g., the size of the code or the complexity of the designs. Our approach exploits automatic test generation and mutation an… ▽ More

    Submitted 30 July, 2023; originally announced July 2023.

    Comments: 11 pages, 2 figures

  13. arXiv:2301.13615  [pdf, other

    cs.SE

    Property-Based Mutation Testing

    Authors: Ezio Bartocci, Leonardo Mariani, Dejan Nickovic, Drishti Yadav

    Abstract: Mutation testing is an established software quality assurance technique for the assessment of test suites. While it is well-suited to estimate the general fault-revealing capability of a test suite, it is not practical and informative when the software under test must be validated against specific requirements. This is often the case for embedded software, where the software is typically validated… ▽ More

    Submitted 31 January, 2023; originally announced January 2023.

    Comments: Accepted at the 16th IEEE International Conference on Software Testing, Verification and Validation (ICST) 2023

  14. arXiv:2210.12155  [pdf, other

    cs.SE cs.FL

    Non-Functional Testing of Runtime Enforcers in Android

    Authors: Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Runtime enforcers can be used to ensure that running applications satisfy desired correctness properties. Although runtime enforcers that are correct-by-construction with respect to abstract behavioral models are relatively easy to specify, the concrete software enforcers generated from these specifications may easily introduce issues in the target application. Indeed developers can generate test… ▽ More

    Submitted 14 September, 2022; originally announced October 2022.

    Comments: paper accepted at the 11th International Symposium On Leveraging Applications of Formal Methods, Verification and Validation (ISoLA 2022). arXiv admin note: text overlap with arXiv:2010.04258

  15. Proactive Libraries: Enforcing Correct Behaviors in Android Apps

    Authors: Oliviero Riganelli, Ionut Daniel Fagadau, Daniela Micucci, Leonardo Mariani

    Abstract: The Android framework provides a rich set of APIs that can be exploited by developers to build their apps. However, the rapid evolution of these APIs jointly with the specific characteristics of the lifecycle of the Android components challenge developers, who may release apps that use APIs incorrectly. In this demo, we present Proactive Libraries, a tool that can be used to decorate regular libra… ▽ More

    Submitted 24 February, 2022; originally announced February 2022.

    Comments: Accepted for publication in the Proceedings of the 44th International Conference on Software Engineering (ICSE 2022). arXiv admin note: substantial text overlap with arXiv:1911.09357, arXiv:1703.08005

  16. arXiv:2201.00736  [pdf, other

    cs.SE

    Exception-Driven Fault Localization for Automated Program Repair

    Authors: Davide Ginelli, Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Automated Program Repair (APR) techniques typically exploit spectrum-based fault localization (SBFL) to identify the program locations that should be patched, making the effectiveness of APR techniques dependent on the effectiveness of fault localization. Indeed, results show that SBFL often does not localize faults accurately, hindering the effectiveness of APR. In this paper, we propose EXCEPT,… ▽ More

    Submitted 3 January, 2022; originally announced January 2022.

    Comments: In Proc. of the IEEE International Conference on Software Quality, Reliability and Security (QRS 2021). For associated video presentation, see https://youtu.be/PulKnHk-kp4

  17. arXiv:2110.03431  [pdf, other

    cs.NE cs.AI cs.LG

    Cloud Failure Prediction with Hierarchical Temporal Memory: An Empirical Assessment

    Authors: Oliviero Riganelli, Paolo Saltarel, Alessandro Tundo, Marco Mobilio, Leonardo Mariani

    Abstract: Hierarchical Temporal Memory (HTM) is an unsupervised learning algorithm inspired by the features of the neocortex that can be used to continuously process stream data and detect anomalies, without requiring a large amount of data for training nor requiring labeled data. HTM is also able to continuously learn from samples, providing a model that is always up-to-date with respect to observations. T… ▽ More

    Submitted 15 December, 2021; v1 submitted 6 October, 2021; originally announced October 2021.

    Comments: For associated video presentation, see https://youtu.be/Y6hTjEYAa-w , for associated slides, see https://www.slideshare.net/OlivieroRiganelli/cloud-failure-prediction-with-hierarchical-temporal-memory-an-empirical-assessment . In Proc. of the IEEE International Conference on Machine Learning and Applications (ICMLA 2021)

  18. arXiv:2104.05233  [pdf, other

    cs.SE

    An Evolutionary Approach to Adapt Tests Across Mobile Apps

    Authors: Leonardo Mariani, Mauro Pezzè, Valerio Terragni, Daniele Zuddas

    Abstract: Automatic generators of GUI tests often fail to generate semantically relevant test cases, and thus miss important test scenarios. To address this issue, test adaptation techniques can be used to automatically generate semantically meaningful GUI tests from test cases of applications with similar functionalities. In this paper, we present ADAPTDROID, a technique that approaches the test adaptation… ▽ More

    Submitted 12 April, 2021; originally announced April 2021.

  19. arXiv:2103.00465  [pdf, other

    cs.SE cs.LG

    On Introducing Automatic Test Case Generation in Practice: A Success Story and Lessons Learned

    Authors: Matteo Brunetto, Giovanni Denaro, Leonardo Mariani, Mauro Pezzè

    Abstract: The level and quality of automation dramatically affects software testing activities, determines costs and effectiveness of the testing process, and largely impacts on the quality of the final product. While costs and benefits of automating many testing activities in industrial practice (including managing the quality process, executing large test suites, and managing regression test suites) are w… ▽ More

    Submitted 28 February, 2021; originally announced March 2021.

  20. arXiv:2101.00274  [pdf, other

    cs.SE

    Declarative Dashboard Generation

    Authors: Alessandro Tundo, Chiara Castelnovo, Marco Mobilio, Oliviero Riganelli, Leonardo Mariani

    Abstract: Systems of systems are highly dynamic software systems that require flexible monitoring solutions to be observed and controlled. Indeed, operators have to frequently adapt the set of collected indicators according to changing circumstances, to visualize the behavior of the monitored systems and timely take actions, if needed. Unfortunately, dashboard systems are still quite cumbersome to configure… ▽ More

    Submitted 1 January, 2021; originally announced January 2021.

    Comments: A. Tundo, C. Castelnovo, M. Mobilio, O. Riganelli and L. Mariani. (2020). Declarative Dashboard Generation. In Proc. of the International Workshop on Governing Adaptive and Unplanned Systems of Systems Co-located with the 31st International Symposium on Software Reliability Engineering (ISSRE 2020)

  21. FILO: FIx-LOcus Localization for Backward Incompatibilities Caused by Android Framework Upgrades

    Authors: Marco Mobilio, Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Mobile operating systems evolve quickly, frequently updating the APIs that app developers use to build their apps. Unfortunately, API updates do not always guarantee backward compatibility, causing apps to not longer work properly or even crash when running with an updated system. This paper presents FILO, a tool that assists Android developers in resolving backward compatibility issues introduced… ▽ More

    Submitted 31 December, 2020; originally announced December 2020.

    Comments: for associated video, see http://myhost.domain/file.mpg and FILO source code can be downloaded from https://gitlab.com/learnERC/filo . In the International Conference on Automated Software Engineering (2020)

  22. A Comprehensive Study of Code-removal Patches in Automated Program Repair

    Authors: Davide Ginelli, Matias Martinez, Leonardo Mariani, Martin Monperrus

    Abstract: Automatic Program Repair (APR) techniques can promisingly help reducing the cost of debugging. Many relevant APR techniques follow the generate-and-validate approach, that is, the faulty program is iteratively modified with different change operators and then validated with a test suite until a plausible patch is generated. In particular, Kali is a generate-and-validate technique developed to inve… ▽ More

    Submitted 15 December, 2021; v1 submitted 11 December, 2020; originally announced December 2020.

    Comments: New version of the manuscript

    Journal ref: Empirical Software Engineering, Springer, 2022

  23. Data Loss Detector: Automatically Revealing Data Loss Bugs in Android Apps

    Authors: Oliviero Riganelli, Simone Paolo Mottadelli, Claudio Rota, Daniela Micucci, Leonardo Mariani

    Abstract: Android apps must work correctly even if their execution is interrupted by external events. For instance, an app must work properly even if a phone call is received, or after its layout is redrawn because the smartphone has been rotated. Since these events may require destroying, when the execution is interrupted, and recreating, when the execution is resumed, the foreground activity of the app, t… ▽ More

    Submitted 12 October, 2020; originally announced October 2020.

    Comments: for associated video presentation, see https://youtu.be/s6XZ7F8L3nY for associated slides, see https://www.slideshare.net/OlivieroRiganelli/oliviero-riganelli-data-loss-detector-automatically-revealing-data-loss-bugs-in-android-apps . In Proc. of the International Symposium on Software Testing and Analysis (ISSTA 2020)

  24. Test4Enforcers: Test Case Generation for Software Enforcers

    Authors: Michell Guzman, Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Software enforcers can be used to modify the runtime behavior of software applications to guarantee that relevant correctness policies are satisfied. Indeed, the implementation of software enforcers can be tricky, due to the heterogeneity of the situations that they must be able to handle. Assessing their ability to steer the behavior of the target system without introducing any side effect is an… ▽ More

    Submitted 13 October, 2020; v1 submitted 8 October, 2020; originally announced October 2020.

    Comments: For associated video presentation, see https://youtu.be/TcOTlo4ILmo. For associated slides, see https://www.slideshare.net/OlivieroRiganelli/test4enforcers-test-case-generation-for-software-enforcers

    Journal ref: In: Runtime Verification. RV 2020. Lecture Notes in Computer Science, vol 12399. Springer, Cham

  25. arXiv:2002.01872  [pdf, other

    cs.SE cs.PF

    CBR: Controlled Burst Recording

    Authors: Oscar Cornejo, Daniela Briola, Daniela Micucci, Leonardo Mariani

    Abstract: Collecting traces from software running in the field is both useful and challenging. Traces may indeed help revealing unexpected usage scenarios, detecting and reproducing failures, and building behavioral models that reflect how the software is actually used. On the other hand, recording traces is an intrusive activity that may annoy users, negatively affecting the usability of the applications,… ▽ More

    Submitted 8 February, 2020; v1 submitted 5 February, 2020; originally announced February 2020.

    Comments: accepted at ICST2020 https://icst2020.info/

    MSC Class: 68 ACM Class: D.2

  26. arXiv:2002.01785  [pdf, other

    cs.SE

    A Framework for In-Vivo Testing of Mobile Applications

    Authors: Mariano Ceccato, Davide Corradini, Luca Gazzola, Fitsum Meshesha Kifetew, Leonardo Mariani, Matteo Orrù, Paolo Tonella

    Abstract: The ecosystem in which mobile applications run is highly heterogeneous and configurable. All layers upon which mobile apps are built offer wide possibilities of variations, from the device and the hardware, to the operating system and middleware, up to the user preferences and settings. Testing all possible configurations exhaustively, before releasing the app, is unaffordable. As a consequence, t… ▽ More

    Submitted 5 February, 2020; originally announced February 2020.

    Comments: Research paper accepted to ICST'20, 10+1 pages

  27. In-The-Field Monitoring of Functional Calls: Is It Feasible?

    Authors: Oscar Cornejo, Daniela Briola, Daniela Micucci, Leonardo Mariani

    Abstract: Collecting data about the sequences of function calls executed by an application while running in the field can be useful to a number of applications, including failure reproduction, profiling, and debugging. Unfortunately, collecting data from the field may introduce annoying slowdowns that negatively affect the quality of the user experience. So far, the impact of monitoring has been mainly stud… ▽ More

    Submitted 20 January, 2020; originally announced January 2020.

    MSC Class: 68 ACM Class: D.2

  28. arXiv:1911.09561  [pdf, other

    cs.DC

    Predicting Failures in Multi-Tier Distributed Systems

    Authors: Leonardo Mariani, Mauro Pezzè, Oliviero Riganelli, Rui Xin

    Abstract: Many applications are implemented as multi-tier software systems, and are executed on distributed infrastructures, like cloud infrastructures, to benefit from the cost reduction that derives from dynamically allocating resources on-demand. In these systems, failures are becoming the norm rather than the exception, and predicting their occurrence, as well as locating the responsible faults, are ess… ▽ More

    Submitted 21 November, 2019; originally announced November 2019.

    Comments: Accepted for publication in Journal of Systems and Software

  29. arXiv:1911.09388  [pdf, other

    cs.SE

    FILO: FIx-LOcus Recommendation for Problems Caused by Android Framework Upgrade

    Authors: Marco Mobilio, Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Dealing with the evolution of operating systems is challenging for developers of mobile apps, who have to deal with frequent upgrades that often include backward incompatible changes of the underlying API framework. As a consequence of framework upgrades, apps may show misbehaviours and unexpected crashes once executed within an evolved environment. Identifying the portion of the app that must be… ▽ More

    Submitted 21 November, 2019; originally announced November 2019.

    Comments: accepted for inclusion in Proceedings of the International Symposium on Software Reliability Engineering (ISSRE) 2019

  30. arXiv:1911.09357  [pdf, other

    cs.SE

    Controlling Interactions with Libraries in Android Apps Through Runtime Enforcement

    Authors: Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Android applications are executed on smartphones equipped with a variety of resources that must be properly accessed and controlled, otherwise the correctness of the executions and the stability of the entire environment might be negatively affected. For example, apps must properly acquire, use, and release microphones, cameras, and other multimedia devices otherwise the behavior of the apps that… ▽ More

    Submitted 21 November, 2019; originally announced November 2019.

    Comments: accepted for publication in ACM Transactions on Autonomous and Adaptive Systems (TAAS). Special Section on Best Papers from SEAMS 2017 (The conference paper is arXiv:1703.08005)

  31. arXiv:1909.08378  [pdf, other

    cs.SE

    Anomaly Detection As-a-Service

    Authors: Marco Mobilio, Matteo Orrù, Oliviero Riganelli, Alessandro Tundo, Leonardo Mariani

    Abstract: Cloud systems are complex, large, and dynamic systems whose behavior must be continuously analyzed to timely detect misbehaviors and failures. Although there are solutions to flexibly monitor cloud systems, cost-effectively controlling the anomaly detection logic is still a challenge. In particular, cloud operators may need to quickly change the types of detected anomalies and the scope of anomaly… ▽ More

    Submitted 18 September, 2019; originally announced September 2019.

    Comments: Paper accepted at the Intl. Workshop on Governing Adaptive and Unplanned Systems of Systems (GAUSS)

  32. arXiv:1905.11040  [pdf, ps, other

    cs.SE

    A Benchmark of Data Loss Bugs for Android Apps

    Authors: Oliviero Riganelli, Marco Mobilio, Daniela Micucci, Leonardo Mariani

    Abstract: Android apps must be able to deal with both stop events, which require immediately stop** the execution of the app without losing state information, and start events, which require resuming the execution of the app at the same point it was stopped. Support to these kinds of events must be explicitly implemented by developers who unfortunately often fail to implement the proper logic for saving a… ▽ More

    Submitted 27 May, 2019; originally announced May 2019.

  33. arXiv:1903.12468  [pdf, other

    cs.SE cs.LO

    Automatic Failure Explanation in CPS Models

    Authors: Ezio Bartocci, Niveditha Manjunath, Leonardo Mariani, Cristinel Mateis, Dejan Ničković

    Abstract: Debugging Cyber-Physical System (CPS) models can be extremely complex. Indeed, only the detection of a failure is insuffcient to know how to correct a faulty model. Faults can propagate in time and in space producing observable misbehaviours in locations completely different from the location of the fault. Understanding the reason of an observed failure is typically a challenging and laborious tas… ▽ More

    Submitted 29 March, 2019; originally announced March 2019.

  34. arXiv:1902.03776  [pdf, other

    cs.SE

    COST Action IC 1402 ArVI: Runtime Verification Beyond Monitoring -- Activity Report of Working Group 1

    Authors: Wolfgang Ahrendt, Cyrille Artho, Christian Colombo, Yliès Falcone, Srdan Krstic, Martin Leucker, Florian Lorber, Joao Lourenço, Leonardo Mariani, César Sánchez, Gerardo Schneider, Volker Stolz

    Abstract: This report presents the activities of the first working group of the COST Action ArVI, Runtime Verification beyond Monitoring. The report aims to provide an overview of some of the major core aspects involved in Runtime Verification. Runtime Verification is the field of research dedicated to the analysis of system executions. It is often seen as a discipline that studies how a system run satisfie… ▽ More

    Submitted 11 February, 2019; originally announced February 2019.

  35. arXiv:1810.04893  [pdf, other

    cs.SE cs.FL

    Increasing the Reusability of Enforcers with Lifecycle Events

    Authors: Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Runtime enforcement can be effectively used to improve the reliability of software applications. However, it often requires the definition of ad hoc policies and enforcement strategies, which might be expensive to identify and implement. This paper discusses how to exploit lifecycle events to obtain useful enforcement strategies that can be easily reused across applications, thus reducing the cost… ▽ More

    Submitted 11 October, 2018; originally announced October 2018.

    Comments: International Symposium On Leveraging Applications of Formal Methods, Verification and Validation (ISoLA'18) [Invited Talk Paper]

  36. arXiv:1807.07460  [pdf, ps, other

    cs.SE

    Model-Based Monitoring for IoTs Smart Cities Applications

    Authors: Matteo Orrù, Marco Mobilio, Anas Shatnawi, Oliviero Riganelli, Alessandro Tundo, Leonardo Mariani

    Abstract: Smart Cities are future urban aggregations, where a multitude of heterogeneous systems and IoT devices interact to provide a safer, more efficient, and greener environment. The vision of smart cities is adapting accordingly to the evolution of software and IoT based services. The current trend is not to have a big comprehensive system, but a plethora of small, well integrated systems that interact… ▽ More

    Submitted 19 July, 2018; originally announced July 2018.

  37. CloudHealth: A Model-Driven Approach to Watch the Health of Cloud Services

    Authors: Anas Shatnawi, Matteo Orrù, Marco Mobilio, Oliviero Riganelli, Leonardo Mariani

    Abstract: Cloud systems are complex and large systems where services provided by different operators must coexist and eventually cooperate. In such a complex environment, controlling the health of both the whole environment and the individual services is extremely important to timely and effectively react to misbehaviours, unexpected events, and failures. Although there are solutions to monitor cloud system… ▽ More

    Submitted 14 March, 2018; originally announced March 2018.

    Comments: 8 pages, 2 figures, 1 table

  38. arXiv:1803.00356  [pdf, other

    cs.SE cs.DC

    Localizing Faults in Cloud Systems

    Authors: Leonardo Mariani, Cristina Monni, Mauro Pezzé, Oliviero Riganelli, Rui Xin

    Abstract: By leveraging large clusters of commodity hardware, the Cloud offers great opportunities to optimize the operative costs of software systems, but impacts significantly on the reliability of software applications. The lack of control of applications over Cloud execution environments largely limits the applicability of state-of-the-art approaches that address reliability issues by relying on heavywe… ▽ More

    Submitted 1 March, 2018; originally announced March 2018.

    Comments: 12 pages, 8 figures, paper accepted at ICST 2018

  39. arXiv:1708.09494  [pdf, other

    cs.SE

    An Exploratory Study of Field Failures

    Authors: Luca Gazzola, Leonardo Mariani, Fabrizio Pastore, Mauro Pezz`e

    Abstract: Field failures, that is, failures caused by faults that escape the testing phase leading to failures in the field, are unavoidable. Improving verification and validation activities before deployment can identify and timely remove many but not all faults, and users may still experience a number of annoying problems while using their software systems. This paper investigates the nature of field fail… ▽ More

    Submitted 30 August, 2017; originally announced August 2017.

  40. Fragmented Monitoring

    Authors: Oscar Cornejo, Daniela Briola, Daniela Micucci, Leonardo Mariani

    Abstract: Field data is an invaluable source of information for testers and developers because it witnesses how software systems operate in real environments, capturing scenarios and configurations relevant to end-users. Unfortunately, collecting traces might be resource-consuming and can significantly affect the user experience, for instance causing annoying slowdowns. Existing monitoring techniques ca… ▽ More

    Submitted 23 August, 2017; originally announced August 2017.

    Comments: In Proceedings PrePost 2017, arXiv:1708.06889

    ACM Class: D.2.5

    Journal ref: EPTCS 254, 2017, pp. 57-68

  41. VART: A Tool for the Automatic Detection of Regression Faults

    Authors: Fabrizio Pastore, Leonardo Mariani

    Abstract: In this paper we present VART, a tool for automatically revealing regression faults missed by regression test suites. Interestingly, VART is not limited to faults causing crashing or exceptions, but can reveal faults that cause the violation of application-specific correctness properties. VART achieves this goal by combining static and dynamic program analysis.

    Submitted 7 August, 2017; originally announced August 2017.

  42. arXiv:1708.01650  [pdf, other

    cs.SE

    BDCI: Behavioral Driven Conflict Identification

    Authors: Fabrizio Pastore, Leonardo Mariani, Daniela Micucci

    Abstract: Source Code Management (SCM) systems support software evolution by providing features, such as version control, branching, and conflict detection. Despite the presence of these features, support to parallel software development is often limited. SCM systems can only address a subset of the conflicts that might be introduced by developers when concurrently working on multiple parallel branches. In… ▽ More

    Submitted 4 August, 2017; originally announced August 2017.

  43. arXiv:1707.07473  [pdf, other

    cs.SE cs.FL

    Verifying Policy Enforcers

    Authors: Oliviero Riganelli, Daniela Micucci, Leonardo Mariani, Yliès Falcone

    Abstract: Policy enforcers are sophisticated runtime components that can prevent failures by enforcing the correct behavior of the software. While a single enforcer can be easily designed focusing only on the behavior of the application that must be monitored, the effect of multiple enforcers that enforce different policies might be hard to predict. So far, mechanisms to resolve interferences between enforc… ▽ More

    Submitted 26 July, 2017; v1 submitted 24 July, 2017; originally announced July 2017.

    Comments: Oliviero Riganelli, Daniela Micucci, Leonardo Mariani, and Yliès Falcone. Verifying Policy Enforcers. Proceedings of 17th International Conference on Runtime Verification (RV), 2017. (to appear)

  44. Dynamic Analysis of Regression Problems in Industrial Systems: Challenges and Solutions

    Authors: Fabrizio Pastore, Leonardo Mariani

    Abstract: This paper presents the result of our experience with the ap- plication of runtime verification, testing and static analysis techniques to several industrial projects. We discuss the eight most relevant challenges that we experienced, and the strategies that we elaborated to face them.

    Submitted 23 May, 2017; originally announced May 2017.

  45. arXiv:1705.08399  [pdf, other

    cs.SE

    Timed k-Tail: Automatic Inference of Timed Automata

    Authors: Fabrizio Pastore, Daniela Micucci, Leonardo Mariani

    Abstract: Accurate and up-to-date models describing the be- havior of software systems are seldom available in practice. To address this issue, software engineers may use specification mining techniques, which can automatically derive models that capture the behavior of the system under analysis. So far, most specification mining techniques focused on the functional behavior of the systems, with specific em… ▽ More

    Submitted 23 May, 2017; originally announced May 2017.

  46. arXiv:1705.06511  [pdf, other

    cs.SE

    In The Field Monitoring of Interactive Applications

    Authors: Oscar Cornejo, Daniela Briola, Daniela Micucci, Leonardo Mariani

    Abstract: Monitoring techniques can extract accurate data about the behavior of software systems. When used in the field, they can reveal how applications behave in real-world contexts and how programs are actually exercised by their users. Nevertheless, since monitoring might need significant storage and computational resources, it may interfere with users activities degrading the quality of the user exper… ▽ More

    Submitted 18 May, 2017; originally announced May 2017.

    Comments: IEEE Copyright, Accepted for pubblication in ICSE 2017, Nier Track

  47. Policy Enforcement with Proactive Libraries

    Authors: Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Software libraries implement APIs that deliver reusable functionalities. To correctly use these functionalities, software applications must satisfy certain correctness policies, for instance policies about the order some API methods can be invoked and about the values that can be used for the parameters. If these policies are violated, applications may produce misbehaviors and failures at runtime.… ▽ More

    Submitted 26 May, 2017; v1 submitted 23 March, 2017; originally announced March 2017.

    Comments: O. Riganelli, D. Micucci and L. Mariani, "Policy Enforcement with Proactive Libraries" 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS), Buenos Aires, Argentina, 2017, pp. 182-192

  48. Healing Data Loss Problems in Android Apps

    Authors: Oliviero Riganelli, Daniela Micucci, Leonardo Mariani

    Abstract: Android apps should be designed to cope with stop-start events, which are the events that require stop** and restoring the execution of an app while leaving its state unaltered. These events can be caused by run-time configuration changes, such as a screen rotation, and by context-switches, such as a switch from one app to another. When a stop-start event occurs, Android saves the state of the a… ▽ More

    Submitted 19 January, 2017; originally announced January 2017.

    Comments: IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW), 2016