Software Institute | The website of the Software Institute, a center of excellence committed to the teaching, the research and the development of software. The SI is part of the Università della Svizzera italiana (USI).

Seminari

Da febbraio 2019, l’Istituto del Software ha iniziato una serie di seminari. Ogni giovedì pomeriggio, un ricercatore dell’Istituto terrà un breve discorso su un argomento di ingegneria del software a sua scelta, come ad esempio articoli interessanti pubblicati di recente, articoli seminali nel proprio campo di ricerca, discussioni su idee preliminari, tutorial e piccoli esperimenti.

Sulla nostra playlist YouTube potete riguardare alcuni dei seminari precedenti. Di seguito trovate ulteriori dettagli sul prossimo seminario, su quelli a venire e un archivio dei relatori precedenti.

Tutti sono invitati a partecipare ai seminari organizzati dall’Istituto del Software.

Prossimo Relatore: Gianmarco De Vita

Data: 21 novembre 2024 @ 16:30
Luogo: D1.13
Moderatore: Marco Paganoni
Topographical Deep Learning Testing

Disclaimer: The content of this seminar has been already covered in the presentation of my prospectus.
The ubiquity of Deep Learning (DL) software in various domains has triggered a substantial amount of research work related to testing of DL systems. The main challenges with DL testing lie in the nature of the inputs and of the models. In fact, the input is complex, often high dimensional, and needs proper pre-processing to reduce its dimensionality and to identify the features that can discriminate a correctly behaving model from an incorrectly behaving one. For that purpose, this research work focuses on addressing the testing procedure from a model-agnostic perspective. Specifically, we want to characterise the input space topographically for any possible model—including different model architectures—that operate on a given domain. Within the input space, we are interested in identifying the features shared by the inputs that are more likely to trigger misbehaviour in the tested DL systems. The only DL testing approach targeting explainable features, DeepHyperion, requires a deep domain knowledge as well as extensive manual effort to define domain-specific features. Instead, our approach is designed to automate the partitioning of the feature space into regions and identifying the areas where inputs share fault-revealing features. The aim of this research is to address DL testing from a topographical perspective: (i) generation of a topographical map of the input space through an automated procedure that can be generalized to diverse domains; (ii) investigation on whether the features identified in the map correlate with mutation killing capabilities of inputs; (iii) assessment of a proper prioritisation of inputs based on their features to reduce the costs of manual input labelling; (iv) input generation guided by fault-inducing features extracted from the topographical map; (v) input generation through the interpolation between existing inputs.

Biografia

Gianmarco De Vita is a Ph.D. candidate in the Faculty of Informatics at the Università della Svizzera italiana (USI), Switzerland, where he is part of the TAU Research Group. He received his Master’s degree in Informatics at USI in 2023. His current research concentrates on testing of deep learning systems and exploration of their input space.

Programma

Archivio

  • Jesper Findahl - From Pandas to Polars: Achieving 50x Speedups and Scaling Beyond Memory Limits (14 novembre 2024)
  • Cesare Pautasso - Unethical Software Engineering in 8 Easy Dark Patterns (7 novembre 2024)
  • Samuele Pasini - Evaluating and Improving the Robustness of Security Attack Detectors Generated by LLMs (24 ottobre 2024)
  • Mathieu Nassif - On-Demand Documentation via Code Examples (17 ottobre 2024)
  • Luca Chiodini - What Does It Mean To Learn? (10 ottobre 2024)
  • Hassan Atwi - Transparent Transaction Ordering in Blockchain-based Collaborative Processes (3 ottobre 2024)
  • Jinhan Kim - When Simple is Better than Complex: Coverage and Mutation for DL Testing (26 settembre 2024)
  • Guadalupe Ortiz - Context Aware Collaborative IoT Services in a Smart World (22 luglio 2024)
  • Domenico Bianculli - Signal-based temporal properties for cyber-physical systems: specification, monitoring, and diagnostics (13 giugno 2024)
  • Tahereh Zohdinasab - Exposing and Explaining Misbehaviours of Deep Learning Systems – A Summary (23 maggio 2024)
  • Paolo Falcarin - Software Systems Compliance with the AI Act (21 maggio 2024)
  • Joey Bevilacqua - Assessing the Understanding of Expressions: A Qualitative Study of Notional-Machine-Based Exam Questions (16 maggio 2024)
  • Stefano Campanella - Developers Developers Developers (2 maggio 2024)
  • Alberto Martín López - Neuro-Symbolic AI for Developing, Testing and Consuming Web APIs: An AMBIZIONE Project Proposal (25 aprile 2024)
  • Alessandro Giagnorio - Customizing deep learning models for code completion tasks (11 aprile 2024)
  • Francesco Bresciani - Abusing GitLab CI/CD to build a data engineering pipeline (14 marzo 2024)
  • Andréa Doreste - Adversarial Testing with Reinforcement Learning: A Case Study on Autonomous Driving (7 marzo 2024)
  • Carlo Ghezzi - Rethinking software engineering research and education in the light of digital humanism (29 febbraio 2024)
  • Diana Carolina Muñoz Hurtado - Exploring Security Practices in OpenAPIs (7 dicembre 2023)
  • Carmen Armenti - Data Sonification - A Survey (30 novembre 2023)
  • Mauricio Aniche - Effective developer testing: lessons I learned over time (23 novembre 2023)
  • Antonio Mastropaolo - Evaluating Code Summarization Techniques: A New Metric and an Empirical Characterization (16 novembre 2023)
  • Michele Lanza - Bibliometrics, the Great Beyond of Science? (9 novembre 2023)
  • Carlo Alberto Furia - Don't Jam the LHC: A causal analysis of Code Jam data (26 ottobre 2023)
  • Rosalia Tufano - Code Review Automation: Strengths and Weaknesses of the State of the Art (12 ottobre 2023)
  • Agnese Zamboni, Matthias Hauswirth - 'Program Your Own Castle' - Developing a Self-Guided Tutorial for the Hour of Code (5 ottobre 2023)
  • Roberto Pietrantuono (University of Naples 'Federico II') - Causal reasoning for software quality engineering (15 giugno 2023)
  • Vincenzo Orrei - Contribution-based Firing of Developers? (25 maggio 2023)
  • Patric Genfer, University of Vienna - On the Understandability of Security Tactics for Microservice APIs (16 maggio 2023)
  • Marco Paganoni - ByteBack: Deductive Functional Verification of Bytecode programs (11 maggio 2023)
  • Marco Raglianti - Research Code as Infrastructure (RCaI) (4 maggio 2023)
  • Souhaila Serbout - What about Web APIs versioning? (27 aprile 2023)
  • Paolo Tonella - Mind, consciousness and ChatGPT: can ChatGPT impute unobservable mental states to others? (6 aprile 2023)
  • Alberto Bacchelli (University of Zurich) - Exploring the Dual Nature of Code Review: Implications for Investigative Methods and Tool Development (30 marzo 2023)
  • Gabriele Bavota - On Reviewers' Regrets and Negative Results (23 marzo 2023)
  • Magnus O. Myreen (Chalmers University of Technology, Gothenburg, Sweden) - The CakeML Project: Chasing End-to-End Correctness, Verified Compilation and Applications (16 marzo 2023)
  • Luca Chiodini - Teaching problem decomposition with graphics (9 marzo 2023)
  • Dimi Racordon (Northeastern University, Boston, USA) - The bright future between immutability and aliasing restrictions (2 marzo 2023)
  • Hassan Atwi - Toward Decentralized Process Execution (1 dicembre 2022)
  • Sajad Mazraehkhatiri - Testing Drones in Simulation: Let's Be Realistic! (24 novembre 2022)
  • Csaba Nagy - Perils and Pitfalls of the Application-Database Gap (17 novembre 2022)
  • Marco D'Ambros - CodeLounge: a roller-coaster ride (10 novembre 2022)
  • Matteo Biagiola - Reinforcement Learning for Software Testing (3 novembre 2022)
  • Matthias Hauswirth - Pitfalls in Teaching Programming (20 ottobre 2022)
  • Davide Paolo Tua - An ECS Primer (13 ottobre 2022)
  • Nargiz Humbatova - DeepCrime: Mutation Testing of Deep Learning Systems Based on Real Faults (6 ottobre 2022)
  • Mohammad Rezaalipour - FauxPy: A Fault Localization Tool for Python Programs (29 settembre 2022)
  • Crista Lopes - Exercises in Programming Style (9 settembre 2022)
  • Michele Tufano - Unit Test Case Generation with Transformers and Focal Context (20 giugno 2022)
  • Valerie Burgener - React 101 (19 maggio 2022)
  • Diego Venâncio Marcílio - Towards Untangling Java Exceptions (12 maggio 2022)
  • Bin Lin - Academic Job Search: An Experience Report (28 aprile 2022)
  • Michael Weiss - Uncertainty-Wizard: Fast and User-Friendly Neural Network Uncertainty Quantification (7 aprile 2022)
  • Matteo Ciniselli - On automatically generating source code (31 marzo 2022)
  • Aron Fiechter - Creating a Domain Specific Language in Kotlin Using Type-Safe Builders (24 marzo 2022)
  • Emad Aghajani - 5 Years of Research: Lessons Learned (17 marzo 2022)
  • Andrea Stocco - Testing and Evaluation of Autonomous Driving Systems: From Simulated to Real-world Test Environments (10 marzo 2022)
  • Luca Pascarella - Fine-Grained Code Summarization (3 marzo 2022)
  • Alessio Merlo (University of Genova) - Mobile Apps: The Dark Side of the Droid (6 dicembre 2021)
  • Vincenzo Riccio - Automated Test Input Generation to Check if the Machine Actually Learned (2 dicembre 2021)
  • Jesper Findahl - What’s Up With the CodeLoungers?
    AKA what are CodeLoungers doing all day
    (25 novembre 2021)
  • Carlo Alberto Furia - When does correlation imply causation? (18 novembre 2021)
  • Antonio Mastropaolo - Supporting code-related tasks via Deep-Learning (11 novembre 2021)
  • Andrea Gallidabino - Do you understand the code you write? 'I hope the TAs won't look at this!' (4 novembre 2021)
  • Igor Moreno Santos - Towards sound notional machines: a Lambda Calculus crash course (28 ottobre 2021)
  • Gunel Jahangirova - Quality Metrics and Oracles for Autonomous Vehicles Testing (21 ottobre 2021)
  • Marco Raglianti - Visualizing Discord Servers - definitely not a virtual conference video replay (14 ottobre 2021)
  • Anthony Cleve - Analyzing and Supporting the Evolution of Data-Intensive Systems (7 ottobre 2021)
  • Bhargav Bhatt - Datalog Synthesis and Repair (30 settembre 2021)
  • Cesare Pautasso - Presentations as Code (20 maggio 2021)
  • Andrea Mocci - How does CodeLounge develop? (29 aprile 2021)
  • Michele Lanza - History is not a burden on the (computer) memory but an illumination of the (software engineering researcher's) soul (15 aprile 2021)
  • Gabriele Bavota - On Lessons Learned while Replicating my Own Research (10 dicembre 2020)
  • Matthias Hauswirth - Rainfall and LuCE: The Difficulty of Learning to Program (3 dicembre 2020)
  • Nargiz Humbatova - Mutation Testing of Deep Learning Systems (26 novembre 2020)
  • Alejandro Mazuera Rozo - Investigating types and survivability of performance bugs in mobile apps (19 novembre 2020)
  • Matteo Biagiola - Testing the plasticity of reinforcement learning based systems (12 novembre 2020)
  • Csaba Nagy - Analyzing SQL Queries Embedded in the Source Code (5 novembre 2020)
  • Mohammad Rezaalipour - Deep Neural Network Bugs and the Challenges of Repairing Them (29 ottobre 2020)
  • Luca Pascarella - Augmented Fine-Grained Defect Prediction for Code-Review (22 ottobre 2020)
  • Diego Venâncio Marcílio - SpongeBugs: Automatically Fixing Static Analysis Tools Violations (15 ottobre 2020)
  • Michael Weiss - Detecting Uncertainty in Deep Learning (27 febbraio 2020)
  • Christoph Treude - Uncovering the best parts of software documentation (28 gennaio 2020)
  • Bhargav Bhatt - DroidPLUMB: Repairing Resource-Leak bugs with Static Analysis (5 dicembre 2019)
  • Jesper Findahl - TypeScript - what is that and why should I care? (28 novembre 2019)
  • Francesco Magagnino - Envisioning the future of the customer interaction (21 novembre 2019)
  • Armin Heinzl - How Pair Programming Influences Team Performance: The Role of backup-behavior, shared mental models, and task novelty (7 novembre 2019)
  • Davide Paolo Tua - Time Evolving Voronoi Treemaps for Metrics Visualization (31 ottobre 2019)
  • Bin Lin - Program Comprehension at ICSME 2019 (24 ottobre 2019)
  • Ana Ivanchikj - Discovering Imgur API – Controlled Experiment (17 ottobre 2019)
  • Marco D'Ambros - Dashboarding your inbox for fun and profit (3 ottobre 2019)
  • Emad Aghajani - Software Documentation: How far we've come, and challenges ahead (26 settembre 2019)
  • Andrea Stocco - Black-box Confidence Estimation for Misbehavior Prediction in Autonomous Driving Systems (19 settembre 2019)
  • Jacopo Tagliabue - Less (Data) Is More: Why Small Data Holds the Key to the Future of Artificial Intelligence (24 giugno 2019)
  • David Clark - The Theory of Testing Programs - An Information Theoretic View (19 giugno 2019)
  • Jan Vitek - Getting everything wrong without doing anything right! (13 giugno 2019)
  • Hridesh Rajan - Software as Data (12 giugno 2019)
  • Alejandro Mazuera Rozo - SOFIA: An Automated Security Oracle for Black-Box Testing of SQL-Injection Vulnerabilities (23 maggio 2019)
  • Jevgenija Pantiuchina - On the Naturalness of Buggy Code (16 maggio 2019)
  • Richard Torkar - Why do we encourage even more missingness when having missing data? (9 maggio 2019)
  • Fengcai Wen - Neural-Machine-Translation-Based Commit Message Generation: How Far Are We? (2 maggio 2019)
  • Vincenzo Riccio - A Day in the (Activity) Lifecycle (18 aprile 2019)
  • Luis Mastrangelo - Casting about in the Dark (11 aprile 2019)
  • Gunel Jahangirova - Mutation Testing of Deep Learning Systems (4 aprile 2019)
  • Andrea Mocci - The Tale of 'Quattro Tabelle' (28 marzo 2019)
  • Carlo Alberto Furia - Why You Should Use Bayesian Statistics for Empirical Software Engineering (7 marzo 2019)
  • Csaba Nagy - Beauty and the Beast: True Stories of Evolving Software Systems (28 febbraio 2019)
  • Andrea Gallidabino - Liquid Software: Multi-Device Adaptation with Liquid Media Queries (21 febbraio 2019)