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.
Main Author: | |
---|---|
Other Authors: | |
Format: | eBook |
Language: | English |
Published: |
Cham :
Springer International Publishing AG,
2022.
|
Edition: | 1st ed. |
Series: | Lecture Notes in Computer Science Series
|
Subjects: | |
Online Access: | Click to View |
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 &
- 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 &
- 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.