ICSE 2023
211 papers
- "STILL AROUND": Experiences and Survival Strategies of Veteran Women Software Developers
- (Partial) Program Dependence Learning
- A Comprehensive Study of Real-World Bugs in Machine Learning Model Optimization
- A Qualitative Study on the Implementation Design Decisions of Developers
- AChecker: Statically Detecting Smart Contract Access Control Vulnerabilities
- AI-based Question Answering Assistance for Analyzing Natural-language Requirements
- APICAD: Augmenting API Misuse Detection through Specifications from Code and Documents
- ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolutionary Search
- Adhere: Automated Detection and Repair of Intrusive Ads
- AidUI: Toward Automated Recognition of Dark Patterns in User Interfaces
- An Empirical Comparison of Pre-Trained Models of Source Code
- An Empirical Study of Deep Learning Models for Vulnerability Detection
- An Empirical Study of Pre-Trained Model Reuse in the Hugging Face Deep Learning Model Registry
- An Empirical Study on Software Bill of Materials: Where We Stand and the Road Ahead
- Analysing the Impact of Workloads on Modeling the Performance of Configurable Software Systems
- Aries: Efficient Testing of Deep Neural Networks via Labeling-Free Accuracy Estimation
- Automated Black-Box Testing of Mass Assignment Vulnerabilities in RESTful APIs
- Automated Program Repair in the Era of Large Pre-trained Language Models
- Automated Repair of Programs from Large Language Models
- Automated Summarization of Stack Overflow Posts
- Automating Code-Related Tasks Through Transformers: The Impact of Pre-training
- Autonomy Is An Acquired Taste: Exploring Developer Preferences for GitHub Bots
- BFTDETECTOR: Automatic Detection of Business Flow Tampering for Digital Content Service
- BSHUNTER: Detecting and Tracing Defects of Bitcoin Scripts
- Bad Snakes: Understanding and Improving Python Package Index Malware Scanning
- Badge: Prioritizing UI Events with Hierarchical Multi-Armed Bandits for Automated UI Testing
- Balancing Effectiveness and Flakiness of Non-Deterministic Machine Learning Tests
- Better Automatic Program Repair by Using Bug Reports and Tests Together
- CC: Causality-Aware Coverage Criterion for Deep Neural Networks
- CCRep: Learning Code Change Representations via Pre-Trained Code Model and Query Back
- CCTEST: Testing and Repairing Code Completion Systems
- CHRONOS: Time-Aware Zero-Shot Identification of Libraries from Vulnerability Reports
- Carving UI Tests to Generate API Tests and API Specification
- CoCoSoDa: Effective Contrastive Learning for Code Search
- CoLeFunDa: Explainable Silent Vulnerability Fix Identification
- CodaMosa: Escaping Coverage Plateaus in Test Generation with Pre-trained Large Language Models
- Code Review of Build System Specifications: Prevalence, Purposes, Patterns, and Perceptions
- Columbus: Android App Testing Through Systematic Callback Exploration
- Commit Message Matters: Investigating Impact and Evolution of Commit Message Quality
- Comparison and Evaluation of Clone Detection Techniques with Different Code Representations
- Compatibility Issue Detection for Android Apps Based on Path-Sensitive Semantic Analysis
- Compatible Remediation on Vulnerabilities from Third-Party Libraries for Java Projects
- Compiler Test-Program Generation via Memoized Configuration Search
- Compiling Parallel Symbolic Execution with Continuations
- Concrat: An Automatic C-to-Rust Lock API Translator for Concurrent Programs
- Context-aware Bug Reproduction for Mobile Apps
- ContraBERT: Enhancing Code Pre-trained Models via Contrastive Learning
- Coverage Guided Fault Injection for Cloud Systems
- Cross-Domain Requirements Linking via Adversarial-based Domain Adaptation
- CrossCodeBench: Benchmarking Cross-Task Generalization of Source Code Models
- DLInfer: Deep Learning with Static Slicing for Python Type Inference
- DStream: A Streaming-Based Highly Parallel IFDS Framework
- Data Quality Matters: A Case Study of Obsolete Comment Detection
- Data Quality for Software Vulnerability Datasets
- Data-driven Recurrent Set Learning For Non-termination Analysis
- Decomposing a Recurrent Neural Network into Modules for Enabling Reusability and Replacement
- DeepArc: Modularizing Neural Networks for the Model Maintenance
- DeepVD: Toward Class-Separation Features for Neural Network Vulnerability Detection
- Demystifying Exploitable Bugs in Smart Contracts
- Demystifying Issues, Challenges, and Solutions for Multilingual Software Development
- Demystifying Privacy Policy of Third-Party Libraries in Mobile Apps
- Dependency Facade: The Coupling and Conflicts between Android Framework and Its Customization
- Detecting Dialog-Related Keyboard Navigation Failures in Web Applications
- Detecting Exception Handling Bugs in C++ Programs
- Detecting Isolation Bugs via Transaction Oracle Construction
- Detecting JVM JIT Compiler Bugs via Exploring Two-Dimensional Input Spaces
- Developer-Intent Driven Code Comment Generation
- Developers' Visuo-spatial Mental Model and Program Comprehension
- Did We Miss Something Important? Studying and Exploring Variable-Aware Log Abstraction
- Diver: Oracle-Guided SMT Solver Testing with Unrestricted Random Mutations
- Do I Belong? Modeling Sense of Virtual Community Among Linux Kernel Contributors
- Do code refactorings influence the merge effort?
- Does data sampling improve deep learning-based vulnerability detection? Yeas! and Nays!
- Does the Stream API Benefit from Special Debugging Facilities? A Controlled Experiment on Loops and Streams with Specific Debuggers
- Doppelgänger Test Generation for Revealing Bugs in Autonomous Driving Software
- Duetcs: Code Style Transfer through Generation and Retrieval
- ECSTATIC: An Extensible Framework for Testing and Debugging Configurable Static Analysis
- Eadro: An End-to-End Troubleshooting Framework for Microservices on Multi-source Data
- Efficiency Matters: Speeding Up Automated Testing with GUI Rendering Inference
- Enhancing Deep Learning-based Vulnerability Detection by Building Behavior Graph Model
- Evaluating and Improving Hybrid Fuzzing
- Evaluating the Impact of Experimental Assumptions in Automated Fault Localization
- Evidence Profiles for Validity Threats in Program Comprehension Experiments
- Ex pede Herculem: Augmenting Activity Transition Graph for Apps via Graph Convolution Network
- Explaining Software Bugs Leveraging Code Structures in Neural Machine Translation
- Fairify: Fairness Verification of Neural Networks
- Faster or Slower? Performance Mystery of Python Idioms Unveiled with Empirical Evidence
- FedDebug: Systematic Debugging for Federated Learning Applications
- FedSlice: Protecting Federated Learning Models from Malicious Participants with Model Slicing
- Fill in the Blank: Context-aware Automated Text Input Generation for Mobile GUI Testing
- Finding Causally Different Tests for an Industrial Control System
- Fine-grained Commit-level Vulnerability Type Prediction by CWE Tree Structure
- Flexible and Optimal Dependency Management via Max-SMT
- Fonte: Finding Bug Inducing Commits from Failures
- From Organizations to Individuals: Psychoactive Substance Use By Professional Programmers
- Future Software for Life in Trusted Futures
- Fuzzing Automatic Differentiation in Deep-Learning Libraries
- GameRTS: A Regression Testing Framework for Video Games
- Generating Realistic and Diverse Tests for LiDAR-Based Perception Systems
- Generating Test Databases for Database-Backed Applications
- Heterogeneous Anomaly Detection for Software Systems via Semi-supervised Cross-modal Attention
- How Do Developers' Profiles and Experiences Influence their Logging Practices? An Empirical Study of Industrial Practitioners
- How Do We Read Formal Claims? Eye-Tracking and the Cognition of Proofs about Algorithms
- Identifying Key Classes for Initial Software Comprehension: Can We Do It Better?
- Impact of Code Language Models on Automated Program Repair
- Improving API Knowledge Discovery with ML: A Case Study of Comparable API Methods
- Improving Java Deserialization Gadget Chain Mining via Overriding-Guided Object Generation
- Incident-aware Duplicate Ticket Aggregation for Cloud Systems
- Information-Theoretic Testing and Debugging of Fairness Defects in Deep Neural Networks
- Is It Enough to Recommend Tasks to Newcomers? Understanding Mentoring on Good First Issues
- JITfuzz: Coverage-guided Fuzzing for JVM Just-in-Time Compilers
- KNOD: Domain Knowledge Distilled Tree Decoder for Automated Program Repair
- Keeping Pace with Ever-Increasing Data: Towards Continual Learning of Code Intelligence Models
- Keyword Extraction From Specification Documents for Planning Security Mechanisms
- Large Language Models are Few-shot Testers: Exploring LLM-based General Bug Reproduction
- Learning Deep Semantics for Test Completion
- Learning Graph-based Code Representations for Source-level Functional Similarity Detection
- Learning Seed-Adaptive Mutation Strategies for Greybox Fuzzing
- Learning to Boost Disjunctive Static Bug-Finders
- Lejacon: A Lightweight and Efficient Approach to Java Confidential Computing on SGX
- Leveraging Feature Bias for Scalable Misprediction Explanation of Machine Learning Models
- Lightweight Approaches to DNN Regression Error Reduction: An Uncertainty Alignment Perspective
- Locating Framework-specific Crashing Faults with Compact and Explainable Candidate Set
- Log Parsing with Prompt-based Few-shot Learning
- LogReducer: Identify and Reduce Log Hotspots in Kernel on the Fly
- MTTM: Metamorphic Testing for Textual Content Moderation Software
- Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
- Measuring Secure Coding Practice and Culture: A Finger Pointing at the Moon is not the Moon
- Measuring and Mitigating Gaps in Structural Testing
- Message from the ICSE 2023 Program Co-Chairs
- Metamorphic Shader Fusion for Testing Graphics Shader Compilers
- MirrorTaint: Practical Non-intrusive Dynamic Taint Tracking for JVM-based Microservice Systems
- MorphQ: Metamorphic Testing of the Qiskit Quantum Computing Platform
- Moving on from the Software Engineers' Gambit: An Approach to Support the Defense of Software Effort Estimates
- OSSFP: Precise and Scalable C/C++ Third-Party Library Detection using Fingerprinting Functions
- On Privacy Weaknesses and Vulnerabilities in Software Systems
- On the Applicability of Language Models to Block-Based Programs
- On the Reproducibility of Software Defect Datasets
- On the Robustness of Code Generation Techniques: An Empirical Study on GitHub Copilot
- On the Self-Governance and Episodic Changes in Apache Incubator Projects: An Empirical Study
- On the Temporal Relations between Logging and Code
- On-Demand Security Requirements Synthesis with Relational Generative Adversarial Networks
- One Adapter for All Programming Languages? Adapter Tuning for Code Search and Summarization
- Operand-Variation-Oriented Differential Analysis for Fuzzing Binding Calls in PDF Readers
- PExReport: Automatic Creation of Pruned Executable Cross-Project Failure Reports
- PILAR: Studying and Mitigating the Influence of Configurations on Log Parsing
- PTPDroid: Detecting Violated User Privacy Disclosures to Third-Parties of Android Apps
- PYEVOLVE: Automating Frequent Code Changes in Python ML Systems
- Practical and Efficient Model Extraction of Sentiment Analysis APIs
- Predicting Bugs by Monitoring Developers During Task Execution
- RAT: A Refactoring-Aware Traceability Model for Bug Localization
- Reachable Coverage: Estimating Saturation in Fuzzing
- Read It, Don't Watch It: Captioning Bug Recordings Automatically
- Recommending Root-Cause and Mitigation Steps for Cloud Incidents using Large Language Models
- Regression Fuzzing for Deep Learning Systems
- Reliability Assurance for Deep Neural Network Architectures Against Numerical Defects
- RepresentThemAll: A Universal Learning Representation of Bug Reports
- Responsibility in Context: On Applicability of Slicing in Semantic Regression Analysis
- Rete: Learning Namespace Representation for Program Repair
- Retrieval-Based Prompt Selection for Code-Related Few-Shot Learning
- Reusing Deep Neural Network Models through Model Re-engineering
- Revisiting Learning-based Commit Message Generation
- Revisiting Neuron Coverage for DNN Testing: A Layer-Wise and Distribution-Aware Criterion
- Robustification of Behavioral Designs against Environmental Deviations
- Rules of Engagement: Why and How Companies Participate in OSS
- Safe Low-Level Code Without Overhead is Practical
- SecBench.js: An Executable Security Benchmark Suite for Server-Side JavaScript
- SeeHow: Workflow Extraction from Programming Screencasts through Action-Aware Video Analytics
- SemParser: A Semantic Parser for Log Analytics
- Semi-Automatic, Inline and Collaborative Web Page Code Curations
- Sibyl: Improving Software Engineering Tools with SMT Selection
- Silent Vulnerable Dependency Alert Prediction with Vulnerability Key Aspect Explanation
- SkCoder: A Sketch-based Approach for Automatic Code Generation
- SmallRace: Static Race Detection for Dynamic Languages - A Case on Smalltalk
- Smartmark: Software Watermarking Scheme for Smart Contracts
- Socio-Technical Anti-Patterns in Building ML-Enabled Software: Insights from Leaders on the Forefront
- Software Engineering as the Linchpin of Responsible AI
- Source Code Recommender Systems: The Practitioners' Perspective
- Strategies, Benefits and Challenges of App Store-inspired Requirements Elicitation
- Sustainability is Stratified: Toward a Better Theory of Sustainable Software Engineering
- Syntax and Domain Aware Model for Unsupervised Program Translation
- Taintmini: Detecting Flow of Sensitive Data in Mini-Programs with Static Taint Analysis
- Tare: Type-Aware Neural Program Repair
- Template-based Neural Program Repair
- Test Selection for Unified Regression Testing
- Testability Refactoring in Pull Requests: Patterns and Trends
- Testing Database Engines via Query Plan Guidance
- Testing Database Systems via Differential Query Execution
- The Road Toward Dependable AI Based Systems
- The Smelly Eight: An Empirical Study on the Prevalence of Code Smells in Quantum Computing
- The untold story of code refactoring customizations in practice
- Tolerate Control-Flow Changes for Sound Data Race Prediction
- Towards Understanding Fairness and its Composition in Ensemble Machine Learning
- Triggers for Reactive Synthesis Specifications
- Turn the Rudder: A Beacon of Reentrancy Detection for Smart Contracts on Ethereum
- Twins or False Friends? A Study on Energy Consumption and Performance of Configurable Software
- Two Sides of the Same Coin: Exploiting the Impact of Identifiers in Neural Code Comprehension
- UPCY: Safely Updating Outdated Dependencies
- Understanding and Detecting On-The-Fly Configuration Bugs
- Understanding the Threats of Upstream Vulnerabilities to Downstream Projects in the Maven Ecosystem
- Usability-Oriented Design of Liquid Types for Java
- Using Reactive Synthesis: An End-to-End Exploratory Case Study
- VULGEN: Realistic Vulnerability Generation Via Pattern Mining and Deep Learning
- Validating SMT Solvers via Skeleton Enumeration Empowered by Historical Bug-Triggering Inputs
- Verifying Data Constraint Equivalence in FinTech Systems
- ViolationTracker: Building Precise Histories for Static Analysis Violations
- Vulnerability Detection with Graph Simplification and Enhanced Graph Representation Learning
- What Challenges Do Developers Face About Checked-in Secrets in Software Artifacts?
- When and Why Test Generators for Deep Learning Produce Invalid Inputs: an Empirical Study
- When to Say What: Learning to Find Condition-Message Inconsistencies
- Which of My Assumptions are Unnecessary for Realizability and Why Should I Care?