Publications
Publications by categories in reversed chronological order. generated by jekyll-scholar.
2024
- SCAMMigrating Unit Tests Across Java ApplicationsIn Proceedings of IEEE International Working Conference on Source Code Analysis & Manipulation (SCAM ’24’) , 2024
- ESEMAn Empirical Study of API Misuses of Data-Centric LibrariesIn Proceedings of the ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM ’24), 2024
- MSRAnalyzing Developer Use of ChatGPT Generated Code in Open Source GitHub ProjectsIn Proceedings of the 21st ACM International Conference on Mining Software Repositories (MSR) – Mining Challenge Track , 2024
- ESEC/FSECharacterizing Python Library MigrationsIn Proceedings of the ACM International Conference on the Foundations of Software Engineering (FSE), 2024
2023
- SecDevSecuring Your Crypto-API Usage Through Tool Support - A Usability StudyIn IEEE Secure Development Conference (SecDev), 2023
- MSRPyMigBench: A Benchmark for Python Library MigrationIn Proceedings of the 20th ACM International Conference on Mining Software Repositories (MSR) – Data Showcase Track , 2023
- ICSMEAn Empirical Study on Bugs Inside PyTorch: A Replication StudyIn Proceedings of the 39th IEEE International Conference on Software Maintenance and Evolution (ICSME ’23), 2023
- MSREvaluating Software Documentation QualityIn Proceedings of the 20th ACM International Conference on Mining Software Repositories (MSR), 2023
- ICSMEFinding an Optimal Set of Static Analyzers To Detect Software VulnerabilitiesIn International Conference on Software Maintenance and Evolution, Sep 2023
- MSREnergy Consumption Estimation of API-usage in Mobile Apps via Static AnalysisIn International Conference on Mining Software Repositories, May 2023
- GASExploring Quality Assurance Practices and Tools for Indie GamesIn International ICSE Workshop on Games and Software Engineering, May 2023
2022
- EMSESelecting Third-party Libraries: The Data Scientist’s PerspectiveEmpirical Software Engineering Journal (EMSE), May 2022
- CASCONA Human-in-the-loop Approach to Generate Annotation Usage Rules: A Case Study with MicroProfileIn Annual International Conference on Computer Science and Software Engineering (CASCON ’22), May 2022
- ICSMEMining Annotation Usage Rules: A Case Study with MicroProfileIn Proceedings of the 38th IEEE International Conference on Software Maintenance and Evolution – Industry Track, May 2022
- EMSEReuse and Maintenance Practices among Divergent Forks in Three Software EcosystemsEmpirical Software Engineering, May 2022
- MSRDoes This Apply to Me? An Empirical Study of Technical Context in Stack OverflowIn Proceedings of the 19th ACM International Conference on Mining Software Repositories (MSR) , May 2022
- MSRAn Empirical Evaluation of GitHub Copilot’s Code SuggestionsIn Proceedings of the 19th ACM International Conference on Mining Software Repositories (MSR) , May 2022
- TSEWhy Do Software Developers Use Static Analysis Tools? A User-Centered Study of Developer Needs and MotivationsIEEE Transactions on Software Engineering, Jun 2022
- ICSEA Black Box Technique to Reduce Energy Consumption of Android AppsIn International Conference on Software Engineering New Ideas and Emerging Results Track (ICSE NIER ’22, May 2022
- Designing UIs for Static Analysis ToolsCommunications of the ACM, May 2022
2021
- EMSEFACER: An API Usage-based Code-example Recommender for Opportunistic ReuseEmpirical Software Engineering, May 2021
- ICSEChallenges of Implementing Software Variability in Eclipse OMR: An Interview StudyIn 43rd IEEE/ACM International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP), May 2021
- ICSEConfigFix: Interactive Configuration Conflict Resolution for the Linux KernelIn 43rd IEEE/ACM International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP), May 2021
- EMSEOn Using Stack Overflow Comment-Edit Pairs to Recommend Code Maintenance ChangesEmpirical Software Engineering, May 2021
- TSEA Study of Call Graph Construction for JVM-Hosted LanguagesIEEE Transactions on Software Engineering, Nov 2021
- TSECrySL: An Extensible Approach to Validating the Correct Usage of Cryptographic APIsIEEE Transactions on Software Engineering, Oct 2021
- CASCONHotfixing Misuses of Crypto APIs in Java ProgramsIn International Conference on Computer Science and Software Engineering, Nov 2021
- CASCONU Can’t Inline This!In International Conference on Computer Science and Software Engineering, Nov 2021
- ICSMEEnergy Efficient Guidelines for iOS Core Location FrameworkIn International Conference on Software Maintenance and Evolution, Jun 2021
- Assessment of the Benefit of Post-Inlining Program Transformation in Inlining DecisionsJun 2021
- Hybrid Computing Device Selection AnalysisJun 2021
- Designing UIs for Static Analysis Tools: Evaluating Tool Design Guidelines with SWANACM Queue, Jun 2021
2020
- ICSMEA Large-scale Data Set and an Empirical Study of Docker Images Hosted on Docker HubIn Proceedings of the 36th IEEE International Conference on Software Maintenance and Evolution (ICSME), Jun 2020
- SCAMAnnotation practices in Android appsIn Proceedings of 30th IEEE International Working Conference on Source Code Analysis & Manipulation (SCAM) , Jun 2020
- SBESA Semi-Automated Iterative Process for Detecting Feature InteractionsIn Proceedings of the 34th Brazilian Symposium on Software Engineering (SBES), Oct 2020
- ESEC/FSELibComp: An IntelliJ Plugin for Comparing Java LibrariesIn Proceedings of the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE ’20), Oct 2020
- SANEREssential Sentences for Navigating Stack OverflowIn Proceedings of the IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER ’20), Oct 2020
- EMSEOn the Time-Based Conclusion Stability of Software Defect Prediction ModelsInternational Journal on Empirical Software Engineering, Aug 2020
- TSEDebugging Static AnalysisIEEE Transactions on Software Engineering, Jan 2020
- ESEC/FSESWAN: A Static Analysis Framework for SwiftIn ACM International Conference on the Foundations of Software Engineering, Aug 2020
- CGO\textscCogniCrypt_GEN - Generating Code for the Secure Usage of Crypto APIsIn International Symposium on Code Generation and Optimization, Feb 2020
- CGOCognicrypt gen: generating code for the secure usage of crypto apisIn Proceedings of the 18th ACM/IEEE International Symposium on Code Generation and Optimization, Feb 2020
2019
- ESEMPredicting Merge Conflicts in Collaborative Software DevelopmentIn Proceedings of the ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM ’19), Feb 2019
- MSRA Dataset of Non-Functional BugsIn Proceedings of the 16th International Conference on Mining Software Repositories (MSR ’19) – Data Showcase Track, Feb 2019
- MSRAnalyzing Comment-induced Updates on Stack OverflowIn Proceedings of the 16th International Conference on Mining Software Repositories (MSR ’19) – Challenge Track, Feb 2019
- MSRInvestigating Next-Steps in Static API-Misuse DetectionIn Proceedings of the 16th International Conference on Mining Software Repositories (MSR ’19) , Feb 2019
- MSRScalable Software Merging Studies with MERGANSERIn Proceedings of the 16th International Conference on Mining Software Repositories (MSR ’19) , Feb 2019
- SANERAre Refactorings to Blame? An Empirical Study of Refactorings in Merge ConflictsIn Proc. of the 26th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER ’19), Feb 2019
- MSRWhat do developers know about machine learning: a study of ML discussions on StackOverflowIn International Conference on Mining Software Repositories, May 2019
- HIPSToward an Analytical Performance Model to Select between GPU and CPU ExecutionIn IEEE International Workshop on High-Level Parallel Programming Models and Supportive Environments, Feb 2019
- POPLContext-, Flow-, and Field-Sensitive Data-Flow Analysis Using Synchronized Pushdown SystemsIn ACM SIGPLAN Symposium on Principles of Programming Languages, Jan 2019
2018
- PROMISEAn Empirical Study of Metric-based Comparisons of Software LibrariesIn Proc. of the 14th International Conference on Predictive Models and Data Analytics in Software Engineering (PROMISE ’18), Jan 2018
- SPLCUsing Static Analysis to Support Variability Implementation Decisions in C++In Proceedings of the 22nd International Systems and Software Product Line Conference (SPLC ’18) – Industrial Track, Jan 2018
- GPCEExploring Feature Interactions Without Specifications: A Controlled ExperimentIn Proceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, Boston, MA, USA, Jan 2018
- ICSMEClone-Based Variability Management in the Android EcosystemIn Proc. of the 34th International Conference on Software Maintenance and Evolution (ICSME ’18) – Industry Track, Jan 2018
- TSEA Systematic Evaluation of Static API-Misuse DetectorsIEEE Transactions on Software Engineering, Jan 2018
- MSRThe Android Update Problem: An Empirical StudyIn Proceedings of the 15th International Conference on Mining Software Repositories (MSR ’18), Jan 2018
- ICSEWhich library should I use? A metric-based comparison of software librariesIn Proceedings of the 40th International Conference on Software Engineering New Ideas and Emerging Results Track (ICSE NIER ’18), Jan 2018
- VaMoSVarXplorer: Lightweight Process for Dynamic Inspection of Feature InteractionsIn Proceedings of the 12nd International Workshop on Variability Modelling of Software-Intensive Systems (VaMoS), Jan 2018
- ECOOPCrySL: An Extensible Approach to Validating the Correct Usage of Cryptographic APIsIn European Conference on Object-Oriented Programming, Jul 2018
- ICSEVISUFLOW: A Debugging Environment for Static AnalysesIn International Conference on Software Engineering Demonstrations Track (ICSE DEMO ’18), May 2018
2017
- ASECogniCrypt: Supporting Developers in using CryptographyIn Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE ’17) – Tool Demo Track, May 2017
- CASCONSoftware Variability Through C++ Static Polymorphsim: A Case Study of Challenges and Open Problems in Eclipse OMRIn Proceedings of the 27th Annual International Conference on Computer Science and Software Engineering (CASCON ’17) – Position Paper, May 2017
- TSEOn the Positive Effect of Reactive Programming on Software Comprehension: An Empirical StudyIEEE Transactions on Software Engineering, May 2017
- SANEREnriching In-IDE Process Information with Fine-grained Source Code HistoryIn Proceedings of the 24th IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER ’17), May 2017
- OOPSLAIDE\(^a\)\(^l\): Efficient and Precise Alias-Aware Dataflow AnalysisIn ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages and Applications, Oct 2017
- SCAMDetecting Security Vulnerabilities in Object-Oriented PHP ProgramsIn IEEE International Conference on Source Code Analysis and Manipulation, Sep 2017
- FSPA Case for Better Integration of Host and Target Compilation When Using OpenCL for FPGAsIn International Workshop on FPGAs for Software Programmers, Aug 2017
- ISSTAJust-in-Time Static AnalysisIn International Symposium on Software Testing and Analysis, Jul 2017
- ICSECheetah: Just-in-Time Taint Analysis for Android AppsIn International Conference on Software Engineering Demonstrations Track (ICSE DEMO ’17), May 2017
2016
- ASEEvaluating the Evaluations of Code Recommender Systems: A Reality CheckIn Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering (ASE ’16), Singapore, Singapore, May 2016
- Addressing Scalability in API Method Call AnalyticsIn 2nd International Workshop on Software Analytics (SWAN ’16), May 2016
- ICPCFeedBaG: An Interaction Tracker for Visual StudioIn Proceedings of the 24th International Conference on Program Comprehension – Tool Track (ICPC ’16), May 2016
- VaMoS
- SANERA Study of Visual Studio Usage in PracticeIn Proceedings of the 23rd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER ’16), May 2016
- MSRMUBench: A Benchmark for API-Misuse DetectorsIn Proceedings of the 13th International Conference on Mining Software Repositories – Data Showcase Track (MSR ’16), May 2016
- MSRA Dataset of Simplified Syntax Trees for C#In Proceedings of the 13th International Conference on Mining Software Repositories – Data Showcase Track (MSR ’16), May 2016
- ECOOPBoomerang: Demand-Driven Flow-Sensitive, Field-Sensitive, and Context-Sensitive Pointer AnalysisIn European Conference on Object-Oriented Programming, May 2016
2015
- ONWARDTowards Secure Integration of Cryptographic SoftwareIn Proceedings of the SIGPLAN Symposium on New Ideas in Programming and Reflections on Software at SPLASH (ONWARD ’15), Pittsburg, PA, USA, May 2015(Acceptance Rate: 17/37 = 35%)
- ECOOPThe Love/Hate Relationship with the C Preprocessor: An Interview StudyIn Proceedings of the 29th European Conference on Object-Oriented Programming (ECOOP ’15), May 2015(Acceptance Rate: 31/136 = 23%)
- TSEWhere do configuration constraints stem from? An extraction approach and an empirical studyIEEE Transactions on Software Engineering (TSE), May 2015
- RELENGExtracting Configuration Knowledge from Build Files with Symbolic Analysis, Florence, Italy, May 2015
- TOSEMType-Based Call Graph Construction Algorithms for ScalaACM Transactions on Software Engineering and Methodology, May 2015
2014
- ICSEMining configuration constraints: Static analyses and empirical resultsIn Proceedings of the 36th International Conference on Software Engineering (ICSE ’14), Hyderabad, India, May 2014(Acceptance Rate: 99/495 = 20%)
- ECOOPConstructing Call Graphs of Scala ProgramsIn European Conference on Object-Oriented Programming, May 2014
2013
- MSRThe MSR cookbook: Mining a decade of researchIn Proceedings of the 10th Working Conference on Mining Software Repositories (MSR ’13), San Francisco, CA, USA, May 2013(Acceptance Rate: 31/81 = 38%)
- MSRLinux variability anomalies: What causes them and how do they get fixed?In Proceedings of the 10th Working Conference on Mining Software Repositories (MSR ’13), San Francisco, CA, USA, May 2013(Acceptance Rate: 31/81 = 38%)
- ICSEA study of variability spaces in Open Source Software, San Francisco, CA, USA, May 2013(Acceptance Rate: 19/35 = 54%)
- The Linux kernel: A case study of build system variabilityJournal of Software: Evolution and Process (JSEP), May 2013
- ECOOPAverroes: Whole-Program Analysis without the Whole ProgramIn European Conference on Object-Oriented Programming, May 2013
2012
- JSEPMining Kbuild to detect variability anomalies in LinuxIn Proceedings of the 16th European Conference on Software Maintenance and Reengineering (CSMR ’12), May 2012(Acceptance Rate: 30/108 = 27%). Invited for a special issue of JSEP
- ECOOPApplication-Only Call Graph ConstructionIn European Conference on Object-Oriented Programming, May 2012
2011
- WCREMake it or break it: Mining anomalies from Linux KbuildIn Proceedings of the 18th Working Conference on Reverse Engineering (WCRE ’11), May 2011(Acceptance Rate: 27/104 = 26%)
2010
- CSMRDoes the past say it all? Using history to predict change sets in a CMDBIn Proceedings of the 14th European Conference on Software Maintenance and Reengineering (CSMR ’10), May 2010(Acceptance Rate: 21/80 = 26%)
2009
- CASCONDRACA: Decision support for root cause analysis and change impact analysis for CMDBsIn Proceedings of the 2009 Conference of the Center for Advanced Studies on Collaborative Research (CASCON ’09), Ontario, Canada, May 2009(Acceptance Rate: 22/88 = 25%). Best Paper Award
- GIISP2P-AIS: A P2P Artificial Immune Systems architecture for detecting DDoS flooding attacksIn Global Information Infrastructure Symposium, May 2009
- GIISApplying Kernel Methods to Anomaly-based Intrusion Detection SystemsIn Global Information Infrastructure Symposium, May 2009
2008
- IJCSNSA Java-Based programming language support of location management in pervasive systemsInternational Journal of Computer Science and Network Security (IJCSNS), May 2008