FSE 2022
186 papers
- 23 shades of self-admitted technical debt: an empirical study on machine learning software
- A case study of implicit mentoring, its prevalence, and impact in Apache
- A practical call graph construction method for Python
- A retrospective study of one decade of artifact evaluations
- A study on identifying code author from real development
- AI-assisted programming: applications, user experiences, and neuro-symbolic techniques (keynote)
- API recommendation for machine learning libraries: how far are we?
- AUGER: automatically generating review comments with pre-training models
- Academic prototyping (invited tutorial)
- AccessiText: automated detection of text accessibility issues in Android apps
- Accurate method and variable tracking in commit history
- Achievement unlocked: a case study on gamifying DevOps practices in industry
- Actionable and interpretable fault localization for recurring failures in online service systems
- Adaptive fairness improvement based on causality analysis
- AgileCtrl: a self-adaptive framework for configuration tuning
- All you need is logs: improving code completion by learning from anonymous IDE usage logs
- An empirical investigation of missing data handling in cloud node failure prediction
- An empirical study of blockchain system vulnerabilities: modules, types, and patterns
- An empirical study of deep transfer learning-based program repair for Kotlin projects
- An empirical study of log analysis at Microsoft
- An exploratory study on the predominant programming paradigms in Python code
- Are elevator software robust against uncertainties? results and experiences from an industrial case study
- Are we building on the rock? on the importance of data preprocessing for code summarization
- Asynchronous technical interviews: reducing the effect of supervised think-aloud on communication ability
- AutoPruner: transformer-based call graph pruning
- AutoTSG: learning and synthesis for incident troubleshooting
- Automated capacity analysis of limitation-aware microservices architectures
- Automated generation of test oracles for RESTful APIs
- Automated unearthing of dangerous issue reports
- Automatically deriving JavaScript static analyzers from specifications using Meta-level static analysis
- Automating code review activities by large-scale pre-training
- Avgust: automating usage-based test generation from videos of app executions
- Blackbox adversarial attacks and explanations for automatic speech recognition
- CLIFuzzer: mining grammars for command-line invocations
- COREQQA: a COmpliance REQuirements understanding using question answering tool
- CORMS: a GitHub and Gerrit based hybrid code reviewer recommendation approach for modern code review
- Change-aware mutation testing for evolving systems
- CheapET-3: cost-efficient use of remote DNN models
- Clang __usercall: towards native support for user defined calling conventions
- Classifying edits to variability in source code
- Code, quality, and process metrics in graduated and retired ASFI projects
- CodeMatcher: a tool for large-scale code search based on query semantics matching
- CommentFinder: a simpler, faster, more accurate code review comments recommendation
- Context-aware code recommendation in Intellij IDEA
- Corporate dominance in open source ecosystems: a case study of OpenStack
- Correlates of programmer efficacy and their link to experience: a combined EEG and eye-tracking study
- Cross-device record and replay for Android apps
- Cross-language Android permission specification
- DeJITLeak: eliminating JIT-induced timing side-channel leaks
- Declarative smart contracts
- DeepDev-PERF: a deep learning-based approach for improving software performance
- Demystifying "removed reviews" in iOS app store
- Demystifying the underground ecosystem of account registration bots
- Detecting Simulink compiler bugs via controllable zombie blocks mutation
- Detecting non-crashing functional bugs in Android apps via deep-state differential analysis
- Diet code is healthy: simplifying programs for pre-trained models of code
- Discovering feature flag interdependencies in Microsoft office
- Discrepancies among pre-trained deep neural networks: a new threat to model zoo reliability
- Do bugs lead to unnaturalness of source code?
- DynaPyt: a dynamic analysis framework for Python
- Dynamic data race prediction: fundamentals, theory, and practice (tutorial)
- Effective and scalable fault injection using bug reports and generative language models
- Explaining and debugging pathological program behavior
- Exploring and evaluating personalized models for code generation
- Exploring the under-explored terrain of non-open source data for software engineering through the lens of federated learning
- FIM: fault injection and mutation for Simulink
- FastKLEE: faster symbolic execution via reducing redundant bound checking of type-safe pointers
- Fault localization to detect co-change fixing locations
- First come first served: the impact of file position on code review
- FlakeRepro: automated and efficient reproduction of concurrency-related flaky tests
- Fuzzing deep-learning libraries via automated relational API inference
- GFI-bot: automated good first issue recommendation on GitHub
- Generating realistic vulnerabilities via neural code editing: an empirical study
- Generic sensitivity: customizing context-sensitive pointer analysis for generics
- Group-based corpus scheduling for parallel fuzzing
- Hierarchical Bayesian multi-kernel learning for integrated classification and summarization of app reviews
- How to better utilize code graphs in semantic code search?
- How to formulate specific how-to questions in software development?
- Improving IDE code inspections with tree automata
- Improving ML-based information retrieval software with user-driven functional testing and defect class analysis
- In war and peace: the impact of world politics on software ecosystems
- Incorporating domain knowledge through task augmentation for front-end JavaScript code generation
- Industry experiences with large-scale refactoring
- Industry practice of configuration auto-tuning for cloud applications and services
- Infrastructure as code for dynamic deployments
- Input invariants
- Input splitting for cloud-based static application security testing platforms
- Investigating and improving log parsing in practice
- JSIMutate: understanding performance results through mutations
- KVS: a tool for knowledge-driven vulnerability searching
- Language-agnostic dynamic analysis of multilingual code: promises, pitfalls, and prospects
- Large-scale analysis of non-termination bugs in real-world OSS projects
- Less training, more repairing please: revisiting automated program repair via zero-shot learning
- Leveraging test plan quality to improve code review efficacy
- Lighting up supervised learning in user review-based code localization: dataset and benchmark
- MAAT: a novel ensemble approach to addressing fairness and performance bugs for machine learning software
- MANDO-GURU: vulnerability detection for smart contract source code by heterogeneous graph embeddings
- MOSAT: finding safety violations of autonomous driving systems using multi-objective genetic algorithm
- Machine learning and natural language processing for automating software testing (tutorial)
- Making Python code idiomatic by automatic refactoring non-idiomatic Python code with pythonic idioms
- Metadata-based retrieval for resolution recommendation in AIOps
- Minerva: browser API fuzzing with dynamic mod-ref analysis
- Modus: a Datalog dialect for building container images
- MpBP: verifying robustness of neural networks with multi-path bound propagation
- MultIPAs: applying program transformations to introductory programming assignments for data augmentation
- Multi-perspective representation learning for source code analytics (invited tutorial)
- Multi-phase invariant synthesis
- NL2Viz: natural language to visualization via constrained syntax-guided synthesis
- NMTSloth: understanding and testing efficiency degradation of neural machine translation systems
- Nalanda: a socio-technical graph platform for building software analytics tools at enterprise scale
- NatGen: generative pre-training by "naturalizing" source code
- NeuDep: neural binary memory dependence analysis
- Neural termination analysis
- No more fine-tuning? an experimental evaluation of prompt tuning in code intelligence
- On safety, assurance, and reliability: a software engineering perspective (keynote)
- On the vulnerability proneness of multilingual code
- On-the-fly syntax highlighting using neural networks
- Online testing of RESTful APIs: promises and challenges
- PaReco: patched clones and missed patches among the divergent variants of a software family
- Pair programming conversations with agents vs. developers: challenges and opportunities for SE community
- Parasol: efficient parallel synthesis of large model spaces
- Paving the way for mature secondary research: the seven types of literature review
- Peahen: fast and precise static deadlock detection via context reduction
- Perfect is the enemy of test oracle
- Performing large-scale mining studies: from start to finish (tutorial)
- PolyFax: a toolkit for characterizing multi-language software
- Program analysis using WALA (tutorial)
- Program merge conflict resolution via neural transformers
- Psychologically-inspired, unsupervised inference of perceptual groups of GUI widgets from GUI images
- Putting them under microscope: a fine-grained approach for detecting redundant test cases in natural language
- PyTER: effective program repair for Python type errors
- Python-by-contract dataset
- Quantifying community evolution in developer social networks
- Quantitative relational modelling with QAlloy
- RESTInfer: automated inferring parameter constraints from natural language RESTful API descriptions
- RULER: discriminative and iterative adversarial training for deep neural network fairness
- RecipeGen++: an automated trigger action programs generator
- Reflections on software failure analysis
- RegMiner: mining replicable regression dataset from code repositories
- RoboFuzz: fuzzing robotic systems over robot operating system (ROS) for finding correctness bugs
- SEDiff: scope-aware differential fuzzing to test internal function models in symbolic execution
- SFLKit: a workbench for statistical fault localization
- SPINE: a scalable log parser with feedback guidance
- SamplingCA: effective and efficient sampling-based pairwise testing for highly configurable software systems
- Scenario-based test reduction and prioritization for multi-module autonomous driving systems
- Security code smells in apps: are we getting better?
- SemCluster: a semi-supervised clustering tool for crowdsourced test reports with deep image understanding
- Semi-supervised pre-processing for learning-based traceability framework on real-world software projects
- Sentiment in software engineering: detection and application
- Software security during modern code review: the developer's perspective
- SolSEE: a source-level symbolic execution engine for solidity
- Sometimes you have to treat the symptoms: tackling model drift in an industrial clone-and-own software product line
- Static executes-before analysis for event driven programs
- SymMC: approximate model enumeration and counting using symmetry information for Alloy specifications
- TAPHSIR: towards AnaPHoric ambiguity detection and ReSolution in requirements
- TSA: a tool to detect and quantify network side-channels
- Task modularity and the emergence of software value streams (impact award paper keynote)
- Testing of autonomous driving systems: where are we and where should we go?
- Testing of machine learning models with limited samples: an industrial vacuum pumping application
- The best of both worlds: integrating semantic features with expert features for defect prediction and localization
- The evolution of type annotations in python: an empirical study
- This is your cue! assisting search behaviour with resource style properties
- Toward interactive bug reporting for (android app) end-users
- Towards developer-centered automatic program repair: findings from Bloomberg
- Trace analysis based microservice architecture measurement
- TraceCRL: contrastive representation learning for microservice trace analysis
- Tracking patches for open source software vulnerabilities
- UTANGO: untangling commits with context-aware, graph-based, code change clustering learning model
- Uncertainty-aware transfer learning to evolve digital twins for industrial elevators
- Understanding automated code review process and developer experience in industry
- Understanding performance problems in deep learning systems
- Understanding skills for OSS communities on GitHub
- Understanding why we cannot model how long a code review will take: an industrial case study
- Unite: an adapter for transforming analysis tools to web services via OSLC
- Using graph neural networks for program termination
- Using nudges to accelerate code reviews at scale
- VulCurator: a vulnerability-fixing commit detector
- VulRepair: a T5-based automated software vulnerability repair
- What did you pack in my app? a systematic analysis of commercial Android packers
- What improves developer productivity at google? code quality
- What motivates software practitioners to contribute to inner source?
- WikiDoMiner: wikipedia domain-specific miner
- Workgraph: personal focus vs. interruption for engineers at Meta
- You see what I want you to see: poisoning vulnerabilities in neural code search
- eGEN: an energy-saving modeling language and code generator for location-sensing of mobile apps
- iTiger: an automatic issue title generation tool