Fundamental Approaches to Software Engineering : : 25th International Conference, FASE 2022, Held As Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022, Munich, Germany, April 2-7, 2022, Proceedings.

Saved in:
Bibliographic Details
Superior document:Lecture Notes in Computer Science Series ; v.13241
:
TeilnehmendeR:
Place / Publishing House:Cham : : Springer International Publishing AG,, 2022.
©2022.
Year of Publication:2022
Edition:1st ed.
Language:English
Series:Lecture Notes in Computer Science Series
Online Access:
Physical Description:1 online resource (357 pages)
Tags: Add Tag
No Tags, Be the first to tag this record!
Table of Contents:
  • Intro
  • ETAPS Foreword
  • Preface
  • Organization
  • Contents
  • FASE Contributions
  • Information-flow Interfaces
  • 1 Introduction
  • 2 Application Example
  • 3 Stateless Information-flow Interfaces
  • 3.1 Composition and Incremental Design
  • 3.2 Refinement and Independent Implementability
  • 3.3 Discussion
  • 4 Stateful Information-Flow Interfaces
  • 5 Related Work
  • 6 Conclusion
  • References
  • A Survey-driven Feature Model for Software Traceability Approaches
  • 1 Introduction
  • 2 State of the art of software traceability
  • 3 Towards a common traceablility terminology
  • 3.1 Traceability components
  • 3.2 Traceability glossary
  • 4 Traceability Survey method
  • 4.1 Data source and search strategy
  • 4.2 Pruning
  • 4.3 Snowballing
  • 4.4 Threats to validity in the selection process
  • 5 A feature model to characterize software traceability
  • 5.1 Introduction to feature modelling
  • 5.2 Trace definition and representation
  • 5.3 Trace identification
  • 5.4 Trace management
  • 6 Discussion
  • 7 Conclusion
  • References
  • Construction of Verifier Combinations Based on Off-the-Shelf Verifiers
  • 1 Introduction
  • 2 Improving Verification by Verifier Combinations
  • 3 Construction of Verifier Combinations with CoVeriTeam
  • 3.1 Verifier Based on Sequential Portfolio
  • 3.2 Verifier Based on Parallel Portfolios
  • 3.3 Verifier Based on Algorithm Selection
  • 3.4 Extensibility
  • 4 Evaluation
  • 4.1 Experimental Setup
  • 4.2 Results of Existing Verifiers as Standalone
  • 4.3 RQ 1: Evaluation of Sequential-Portfolio Verifier
  • 4.4 RQ 2: Evaluation of Parallel-Portfolio Verifier
  • 4.5 RQ 3: Evaluation of Algorithm Selection Verifier
  • 4.6 Discussion
  • 5 Threats to Validity
  • 6 Related Work
  • 7 Conclusion
  • References
  • On the Detection of Doped Software by Falsification
  • 1 Introduction
  • 2 Background
  • 2.1 Temporal Logics.
  • 2.2 Software Doping
  • 3 Logical characterisation for mixed IO
  • 4 Diesel Emissions
  • 5 Conclusion &amp
  • Future Work
  • References
  • Estimating Worst-case Resource Usage by Resource-usage-aware Fuzzing
  • 1 Introduction
  • 2 Approach
  • 2.1 Static analysis and instrumentation
  • 2.2 Fuzzing loop
  • 3 Experiments
  • 4 Related Work
  • 5 Conclusion and Future Work
  • References
  • Quantitative Program Sketching using Lifted Static Analysis
  • 1 Introduction
  • 2 Motivating Examples
  • 3 Transforming Sketches to Program Families
  • 4 Decision Tree-based Lifted Analyses
  • 4.1 Abstract domain for decision nodes
  • 4.2 Abstract domain for leaf nodes
  • 4.3 Decision tree lifted domains
  • 4.4 Decision tree-based lifted analysis
  • 5 Synthesis Algorithm
  • 6 Evaluation
  • 7 Related Work
  • 8 Conclusion
  • References
  • SixthSense: Debugging Convergence Problems in Probabilistic Programs via Program Representation Learning
  • 1 Introduction
  • 1.1 SixthSense
  • 1.2 Results
  • 1.3 Contributions
  • 2 Example
  • 3 Overview
  • 4 Learning Program Features
  • 4.1 Extracting Features from Programs
  • 4.2 Data Features
  • 4.3 Runtime Features
  • 5 Program Generation for Training Set Augmentation
  • 5.1 Code Mutations
  • 5.2 Data Mutations
  • 5.3 Adaptive Algorithm for Mutant Generation
  • 6 Methodology
  • 6.1 Baselines, Metrics, and Classification
  • 6.2 Evaluation Experimental Setup
  • 7 Evaluation
  • 7.1 Predicting Convergence of Inference
  • 7.2 Debugging Non-Converging Programs
  • 8 Sensitivity Analysis
  • 9 Related Work
  • 10 Conclusion
  • References
  • Finding Semantic Bugs Fast
  • 1 Introduction
  • 2 Validating Program Runs
  • 2.1 Syntax
  • 2.2 Validation Procedure
  • 3 Checking/Verification
  • 4 Examples
  • 5 Conclusion and Related Work
  • References
  • SMC4PEP: Stochastic Model Checking of Product Engineering Processes
  • 1 Introduction.
  • 2 Related Tools
  • 3 SMC4PEP Architecture andWorkflow
  • 4 Case Studies
  • 5 Conclusion
  • References
  • Symbolic Predictive Cache Analysis for Out-of-Order Execution
  • 1 Introduction
  • 2 Motivation
  • 2.1 The Example Program
  • 2.2 The Execution Order
  • 2.3 The Cache State
  • 2.4 The Side-channel Leak
  • 3 Preliminaries
  • 3.1 The Execution Model
  • 3.2 The Cache Model
  • 4 Analyzing the In-Order Execution
  • 4.1 Computing the Dependencies
  • 4.2 Computing the Default Cache States
  • 5 Analyzing the Out-of-Order Executions
  • 5.1 Symbolic Encoding
  • 5.2 The Overall Algorithm
  • 5.3 Optimizations of the Symbolic Encoding
  • 6 Experiments
  • 6.1 Benchmarks
  • 6.2 Leakage Detection Results
  • 6.3 Scalability Results
  • 7 Related Work
  • 8 Conclusions
  • References
  • PEQtest: Testing Functional Equivalence
  • 1 Introduction
  • 2 Background
  • 3 Generating Test Programs with PEQtest
  • 4 Evaluation
  • 4.1 Experimental Setup
  • 4.2 Experiments
  • 5 Related Work
  • 6 Conclusion
  • References
  • An Institutional Approach to Communicating UML State Machines
  • 1 Introduction
  • 2 Background on Institutions and Casl
  • 2.1 Institutions and Theoroidal Institution Comorphisms
  • 2.2 Casl and the Institution CFOL=
  • 3 The Hybrid Modal LogicM#D for Event/Data Systems
  • 3.1 Data States and Transitions
  • 3.2 Events and Messages
  • 3.2 Events/Data Signatures
  • 3.4 Event/Data Structures
  • 3.5 Event/Data Formulæ and Sentences
  • 3.6 Satisfaction Relation forM#
  • 3.7 A Theoroidal Comorphism fromM#D to Casl
  • 4 Simple UML State Machines with Outputs
  • 5 Simple UML Composite Structures
  • 6 Verification Example: Communication between User, ATM and Bank
  • 7 Conclusion
  • References
  • Semantic Code Search in Software Repositories using Neural Machine Translation
  • 1 Introduction
  • 2 Related Work
  • 3 Semantic Code Search using Machine Translation.
  • 3.1 Data Preprocessor
  • 3.2 Neural Network
  • 3.3 Index Builder
  • 4 Evaluation
  • 4.1 Evaluation using CodeSearchNet Queries
  • 4.2 Evaluation using Stack Overflow Questions
  • 5 Conclusion
  • References
  • AequeVox: Automated Fairness Testing of Speech Recognition Systems
  • 1 Introduction
  • 2 Background
  • 3 Methodology
  • 4 Datasets and Experimental Setup
  • 5 Results
  • 6 Threats to Validity
  • 7 Related Work
  • 8 Conclusion
  • References
  • SMT-Based Planning Synthesis for Distributed System Reconfigurations
  • 1 Introduction
  • 2 Reconfiguration With Concerto
  • 3 Reconfiguration Script Synthesis
  • 3.1 Determining Sequences of Component Behaviors
  • 3.2 Assembly-Level Reconfiguration Scheduling
  • 3.3 Determining Missing Behaviors
  • 3.4 Relaxation of Synchronization Barriers
  • 4 Experiments
  • 4.1 Implementation
  • 4.2 Results Over Synthetic Examples
  • 4.3 OpenStack Use Case
  • 5 Related work
  • 6 Conclusion
  • References
  • Semantic Clone Detection via Probabilistic Software Modeling
  • 1 Introduction
  • 2 Background
  • 2.1 Clone Detection
  • 2.2 Programs &amp
  • Code Elements
  • 2.3 Probabilistic Software Modeling
  • 3 Semantic Clones
  • 4 Approach
  • 4.1 Modeling
  • 4.2 Search Space
  • 4.3 Static Similarity
  • 4.4 Dynamic Similarity
  • 4.5 Model Similarity
  • 5 Study
  • 5.1 Setup
  • 5.2 Dataset
  • 5.3 Controlled Variables
  • 5.4 Response Variables
  • 5.5 Comparison of Clone Detectors
  • 5.6 Experiment Results
  • 6 Discussion
  • 6.1 Research Question 1 - Detection Performance
  • 6.2 Research Question 2 - Skip Evaluation Scalability
  • 6.3 Research Question 3 - Skip Evaluation Effects
  • 7 Limitations
  • 8 Threats to Validity
  • 9 Related Work
  • 10 Conclusions and Future Work
  • References
  • QMaxUSE: A Query-based Verification Tool for UML Class Diagrams with OCL Invariants
  • 1 Introduction
  • 2 Architecture
  • 3 Design
  • 3.1 Query.
  • 3.2 Concurrent Verification
  • 4 Results
  • 5 Conclusion
  • References
  • Test-Comp Contributions
  • Advances in Automatic Software Testing: Test-Comp 2022
  • 1 Introduction
  • 2 Definitions, Formats, and Rules
  • 3 Categories and Scoring Schema
  • 4 Reproducibility
  • 5 Results and Discussion
  • 6 Conclusion
  • References
  • FuSeBMC v4: Smart Seed Generation for Hybrid Fuzzing
  • 1 Overview
  • 2 Test Generation Approach
  • 3 Strengths and Weaknesses
  • 4 Tool Setup and Configuration
  • 5 Software Project
  • References
  • VeriFuzz: Good Seeds for Fuzzing
  • 1 Introduction
  • 1.1 Enhancement 1 : New Seed Generation Approach
  • 1.2 Enhancement 2: Remedying A Stuck or Failed BMC
  • 2 Tool Architecture and Flow
  • 3 Strengths and Weaknesses
  • 4 VeriFuzz Tool Configuration and Setup
  • 5 Software Project and Contributors
  • References
  • Author Index.