Oliviero Riganelli

ORCID: 0000-0003-2120-2894
Publications
Citations
Views
---
Saved
---
About
Contact & Profiles
Research Areas
  • Software Testing and Debugging Techniques
  • Software System Performance and Reliability
  • Advanced Malware Detection Techniques
  • Software Reliability and Analysis Research
  • Business Process Modeling and Analysis
  • Software Engineering Research
  • Service-Oriented Architecture and Web Services
  • Advanced Software Engineering Methodologies
  • Cloud Computing and Resource Management
  • Security and Verification in Computing
  • IoT and Edge/Fog Computing
  • E-Government and Public Services
  • Energy Efficient Wireless Sensor Networks
  • Network Security and Intrusion Detection
  • Green IT and Sustainability
  • Anomaly Detection Techniques and Applications
  • Mobile Ad Hoc Networks
  • VLSI and Analog Circuit Testing
  • Scientific Computing and Data Management
  • Model-Driven Software Engineering Techniques
  • Wireless Networks and Protocols
  • Data Stream Mining Techniques
  • Formal Methods in Verification
  • Embedded Systems Design Techniques
  • Computational Physics and Python Applications

University of Milano-Bicocca
2015-2024

University of Milan
2021

Università di Camerino
2006-2018

Stony Brook University
2008

Istituto di Matematica Applicata e Tecnologie Informatiche
2008

Automatic test case generation is a key ingredient of an efficient and cost-effective software verification process. In this paper we focus on testing applications that interact with the users through GUI, present AutoBlackTest, technique to automatically generate cases at system level. AutoBlackTest uses reinforcement learning, in particular Q-Learning, learn how application under stimulate its functionalities. The empirical results show can execute relevant portion code test, reveal...

10.1109/icst.2012.88 article EN 2012-04-01

By leveraging large clusters of commodity hardware, the Cloud offers great opportunities to optimize operative costs software systems, but impacts significantly on reliability applications. The lack control applications over execution environments largely limits applicability state-of-the-art approaches that address issues by relying heavyweight training with injected faults. In this paper, we propose LOUD, a lightweight fault localization approach relies positive only, and can thus operate...

10.1109/icst.2018.00034 article EN 2018-04-01

AI-based code assistants are promising tools that can facilitate and speed up development. They exploit machine learning algorithms natural language processing to interact with developers, suggesting snippets (e.g., method implementations) be incorporated into projects. Recent studies empirically investigated the effectiveness of using simple exemplary problems re-implementation well-known algorithms), which fail capture spectrum nature tasks actually faced by developers.

10.1145/3643916.3644402 preprint EN cc-by 2024-04-15

AI assistants can help developers by recommending code to be included in their implementations (e.g., suggesting the implementation of a method from its signature). Although useful, these recommendations may mirror copyleft available public repositories, exposing risk reusing that they are allowed reuse only under certain constraints specific license for derivative software). This paper presents large-scale study about frequency and magnitude this phenomenon ChatGPT. In particular, we...

10.48550/arxiv.2502.05023 preprint EN arXiv (Cornell University) 2025-02-07

Testing Advanced Driving Assistance Systems (ADAS), such as lane-keeping functions, requires creating road topologies or using predefined benchmarks. However, the test cases in existing ADAS benchmarks are often designed specific formats (e.g., OpenDRIVE) and tailored to models. This limits their reusability interoperability with other simulators models, making it challenging assess functionalities independently of platform-specific details used create cases. paper evaluates SensoDat, a...

10.48550/arxiv.2502.07719 preprint EN arXiv (Cornell University) 2025-02-11

Monitoring is a key feature to enhance systems with the capability anticipate, detect, predict, and mitigate failures, while providing Quality of Service (QoS) monitoring Level Agreements (SLAs) guarantee. frameworks can serve these purposes by deploying probes according many possible patterns that have different features, for instance in terms efficiency privacy. So far, probe deployment not been systematically defined, analyzed assessed. Thus, engineers who design configure their take...

10.1109/tsc.2024.3349648 article EN cc-by IEEE Transactions on Services Computing 2024-01-04

In this paper we present AutoBlackTest, a tool for the automatic generation of test cases interactive applications. AutoBlackTest interacts with application though its GUI, and uses reinforcement learning techniques to understand interaction modalities generate relevant testing scenarios. Early results show that has potential automatically discovering bugs generating useful system regression suites.

10.1145/1985793.1985979 article EN 2011-05-21

SUMMARY Testing GUI‐based applications is hard and time consuming because it requires exploring a potentially huge execution space by interacting with the graphical interface of applications. Manual testing can cover only small subset functionality provided complex interfaces, thus, automatic techniques are necessary to extensively validate systems. This paper presents AutoBlackTest, technique automatically generate test cases at system level. AutoBlackTest uses reinforcement learning, in...

10.1002/stvr.1538 article EN Software Testing Verification and Reliability 2014-05-29

Android apps must work correctly even if their execution is interrupted by external events. For instance, an app properly a phone call received, or after its layout redrawn because the smartphone has been rotated. Since these events may require destroying, when interrupted, and recreating, resumed, foreground activity of app, only way to prevent loss state information save restore it. This behavior be explicitly implemented developers, who often miss implement it properly, releasing affected...

10.1145/3395363.3397379 preprint EN 2020-07-13

Generative AI is changing the way developers interact with software systems, providing services that can produce and deliver new content, crafted to satisfy actual needs of developers. For instance, ask for code directly from within their IDEs by writing natural language prompts, integrated based on generative AI, such as Copilot, immediately respond prompts ready-to-use snippets. Formulating prompt appropriately, incorporating useful information while avoiding any overload, be an important...

10.1145/3643916.3644409 preprint EN cc-by 2024-04-15

AI-based code assistants are increasingly popular as a means to enhance productivity and improve quality. This study compares four assistants, GitHub Copilot, Tabnine, ChatGPT, Google Bard, in method generation tasks, assessing their ability produce accurate, correct, efficient code. Results show that useful, with complementary capabilities, although they rarely generate ready-to-use correct

10.1145/3639478.3643122 preprint EN cc-by-nc-nd 2024-04-14

Applications that process complex data, such as maps, personal book information, travel etc., are becoming extremely common. Testing applications is hard, because they require realistic and coherent test inputs expensive to generate manually difficult synthesize automatically. So far the research on case generation techniques has focused mostly generating sequences synthetic inputs, payed little attention of inputs.

10.1145/2610384.2610397 article EN 2014-07-11

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 values used parameters. If are violated, may produce misbehaviors failures at runtime. Although this problem is general, incorrectly more frequent in contexts. For instance, Android provides a rich rapidly evolving set of might by app...

10.1109/seams.2017.9 preprint EN 2017-05-01

Android apps should be designed to cope with stop-start events, which are the events that require stopping and restoring execution of an app while leaving its state unaltered. These can caused by run-time configuration changes, such as a screen rotation, context-switches, switch from one another. When event occurs, saves app, handles event, finally restores saved state. To let save restore correctly, must provide appropriate support. Unfortunately, developers often implement this support...

10.1109/issrew.2016.50 article EN 2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) 2016-10-01

It is a general opinion that applicative cooperation represents useful vehicle for the development of e-government. At architectural level, solutions are quite stable, but organizational and methodological problems prevent expected needed among different administrations. Moreover, introduction digital government requires considerable involvement resources can be unsustainable small public This work shows how above mentioned (partially) solved with Shared Services Center (SSC).

10.48550/arxiv.1802.07982 preprint EN other-oa arXiv (Cornell University) 2018-01-01

5G standard emerges at a particular time in technology history when cloud transforms deeply almost all industries and services: it becomes obvious that innovations have to be made cloud-native for being successful. must become the ubiquitous fabric blending universal connectivity (to humans, robots, sensors...) with versatility scalability. For realizing this vision, another model than laaS adopted, Platform as Service (PaaS), which should built support telco-grade requirements combine sort...

10.1109/ict.2018.8464838 article EN 2018-06-01

Cloud systems are large scalable distributed that must be carefully monitored to timely detect problems and anomalies. While a number of cloud monitoring frameworks available, only few solutions address the problem adaptively dynamically selecting indicators collected, based on actual needs operator. Unfortunately, these either limited infrastructure-level or technology-specific, for instance, they designed work with OpenStack but not other platforms. This paper presents VARYS framework,...

10.1145/3338906.3341185 article EN 2019-08-09

Android applications are executed on smartphones equipped with a variety of resources that must be properly accessed and controlled, otherwise the correctness executions stability entire environment might negatively affected. For example, apps acquire, use, release microphones, cameras, other multimedia devices, behavior use same compromised. Unfortunately, several do not correctly, for instance, due to faults inaccurate design decisions. By interacting these apps, users may experience...

10.1145/3368087 article EN ACM Transactions on Autonomous and Adaptive Systems 2019-06-30

Android apps share resources, such as sensors, cameras, and Global Positioning System, that are subject to specific usage policies whose correct implementation is left programmers. Failing satisfy these may cause resource leaks, is, acquire but never release resources. This might have different kinds of consequences, unable use resources or unnecessarily active wasting battery. Researchers proposed several techniques detect fix leaks. However, the unavailability public benchmarks faulty...

10.1002/spe.2672 article EN cc-by-nc Software Practice and Experience 2018-12-13

Cloud systems are complex and large where services provided by different operators must coexist eventually cooperate. In such a environment, controlling the health of both whole environment individual is extremely important to timely effectively react misbehaviours, unexpected events, failures. Although there solutions monitor cloud at granularity levels, how relate many KPIs that can be collected about system information properly reported open questions. This paper reports early results we...

10.1145/3194124.3194130 preprint EN 2018-05-28
Coming Soon ...