Skip to main content

Showing 1–50 of 61 results for author: Poshyvanyk, D

Searching in archive cs. Search in all archives.
.
  1. arXiv:2407.08983  [pdf, other

    cs.SE cs.AI cs.LG

    Towards More Trustworthy and Interpretable LLMs for Code through Syntax-Grounded Explanations

    Authors: David N. Palacio, Daniel Rodriguez-Cardenas, Alejandro Velasco, Dipin Khati, Kevin Moran, Denys Poshyvanyk

    Abstract: Trustworthiness and interpretability are inextricably linked concepts for LLMs. The more interpretable an LLM is, the more trustworthy it becomes. However, current techniques for interpreting LLMs when applied to code-related tasks largely focus on accuracy measurements, measures of how models react to change, or individual task performance instead of the fine-grained explanations needed at predic… ▽ More

    Submitted 12 July, 2024; originally announced July 2024.

    Comments: Under Review to appear in ACM Transactions on Software Engineering and Methodology (TOSEM)

  2. arXiv:2407.08610  [pdf, other

    cs.SE cs.LG

    Semantic GUI Scene Learning and Video Alignment for Detecting Duplicate Video-based Bug Reports

    Authors: Yanfu Yan, Nathan Cooper, Oscar Chaparro, Kevin Moran, Denys Poshyvanyk

    Abstract: Video-based bug reports are increasingly being used to document bugs for programs centered around a graphical user interface (GUI). However, developing automated techniques to manage video-based reports is challenging as it requires identifying and understanding often nuanced visual patterns that capture key information about a reported bug. In this paper, we aim to overcome these challenges by ad… ▽ More

    Submitted 11 July, 2024; originally announced July 2024.

    Comments: 13 pages, accepted to 46th International Conference on Software Engineering (ICSE 2024)

  3. arXiv:2403.14927  [pdf, other

    cs.SE

    "The Law Doesn't Work Like a Computer": Exploring Software Licensing Issues Faced by Legal Practitioners

    Authors: Nathan Wintersgill, Trevor Stalnaker, Laura A. Heymann, Oscar Chaparro, Denys Poshyvanyk

    Abstract: Most modern software products incorporate open source components, which requires compliance with each component's licenses. As noncompliance can lead to significant repercussions, organizations often seek advice from legal practitioners to maintain license compliance, address licensing issues, and manage the risks of noncompliance. While legal practitioners play a critical role in the process, lit… ▽ More

    Submitted 21 March, 2024; originally announced March 2024.

    Comments: 24 pages, 2 figures, FSE 2024

  4. Which Syntactic Capabilities Are Statistically Learned by Masked Language Models for Code?

    Authors: Alejandro Velasco, David N. Palacio, Daniel Rodriguez-Cardenas, Denys Poshyvanyk

    Abstract: This paper discusses the limitations of evaluating Masked Language Models (MLMs) in code completion tasks. We highlight that relying on accuracy-based measurements may lead to an overestimation of models' capabilities by neglecting the syntax rules of programming languages. To address these issues, we introduce a technique called SyntaxEval in which Syntactic Capabilities are used to enhance the e… ▽ More

    Submitted 21 February, 2024; v1 submitted 2 January, 2024; originally announced January 2024.

  5. BOMs Away! Inside the Minds of Stakeholders: A Comprehensive Study of Bills of Materials for Software Systems

    Authors: Trevor Stalnaker, Nathan Wintersgill, Oscar Chaparro, Massimiliano Di Penta, Daniel M German, Denys Poshyvanyk

    Abstract: Software Bills of Materials (SBOMs) have emerged as tools to facilitate the management of software dependencies, vulnerabilities, licenses, and the supply chain. While significant effort has been devoted to increasing SBOM awareness and developing SBOM formats and tools, recent studies have shown that SBOMs are still an early technology not yet adequately adopted in practice. Expanding on previous… ▽ More

    Submitted 22 September, 2023; v1 submitted 21 September, 2023; originally announced September 2023.

    Comments: 11 pages, ICSE 2024

  6. arXiv:2308.15669  [pdf, other

    cs.SE

    ACER: An AST-based Call Graph Generator Framework

    Authors: Andrew Chen, Yanfu Yan, Denys Poshyvanyk

    Abstract: We introduce ACER, an AST-based call graph generator framework. ACER leverages tree-sitter to interface with any language. We opted to focus on generators that operate on abstract syntax trees (ASTs) due to their speed and simplicitly in certain scenarios; however, a fully quantified intermediate representation usually provides far better information at the cost of requiring compilation. To evalua… ▽ More

    Submitted 29 August, 2023; originally announced August 2023.

    Comments: 6 pages, 3 tables, 4 figures, 1 algorithm, accepted by SCAM'23

  7. arXiv:2308.12415  [pdf, other

    cs.SE cs.AI

    Benchmarking Causal Study to Interpret Large Language Models for Source Code

    Authors: Daniel Rodriguez-Cardenas, David N. Palacio, Dipin Khati, Henry Burke, Denys Poshyvanyk

    Abstract: One of the most common solutions adopted by software researchers to address code generation is by training Large Language Models (LLMs) on massive amounts of source code. Although a number of studies have shown that LLMs have been effectively evaluated on popular accuracy metrics (e.g., BLEU, CodeBleu), previous research has largely overlooked the role of Causal Inference as a fundamental componen… ▽ More

    Submitted 23 August, 2023; originally announced August 2023.

    Comments: 6 pages, 4 tables, 3 figures, accepted to ICSME 2023

  8. Helion: Enabling Natural Testing of Smart Homes

    Authors: Prianka Mandal, Sunil Manandhar, Kaushal Kafle, Kevin Moran, Denys Poshyvanyk, Adwait Nadkarni

    Abstract: Prior work has developed numerous systems that test the security and safety of smart homes. For these systems to be applicable in practice, it is necessary to test them with realistic scenarios that represent the use of the smart home, i.e., home automation, in the wild. This demo paper presents the technical details and usage of Helion, a system that uses n-gram language modeling to learn the reg… ▽ More

    Submitted 13 August, 2023; originally announced August 2023.

    Comments: To be published in Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering. arXiv admin note: text overlap with arXiv:1907.00124

  9. arXiv:2308.03873  [pdf, other

    cs.SE cs.LG

    Evaluating and Explaining Large Language Models for Code Using Syntactic Structures

    Authors: David N Palacio, Alejandro Velasco, Daniel Rodriguez-Cardenas, Kevin Moran, Denys Poshyvanyk

    Abstract: Large Language Models (LLMs) for code are a family of high-parameter, transformer-based neural networks pre-trained on massive datasets of both natural and programming languages. These models are rapidly being employed in commercial AI-based developer tools, such as GitHub CoPilot. However, measuring and explaining their effectiveness on programming tasks is a challenging proposition, given their… ▽ More

    Submitted 7 August, 2023; originally announced August 2023.

  10. MASC: A Tool for Mutation-Based Evaluation of Static Crypto-API Misuse Detectors

    Authors: Amit Seal Ami, Syed Yusuf Ahmed, Radowan Mahmud Redoy, Nathan Cooper, Kaushal Kafle, Kevin Moran, Denys Poshyvanyk, Adwait Nadkarni

    Abstract: While software engineers are optimistically adopting crypto-API misuse detectors (or crypto-detectors) in their software development cycles, this momentum must be accompanied by a rigorous understanding of crypto-detectors' effectiveness at finding crypto-API misuses in practice. This demo paper presents the technical details and usage scenarios of our tool, namely Mutation Analysis for evaluating… ▽ More

    Submitted 13 August, 2023; v1 submitted 4 August, 2023; originally announced August 2023.

    Comments: To be published in Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering

  11. "False negative -- that one is going to kill you": Understanding Industry Perspectives of Static Analysis based Security Testing

    Authors: Amit Seal Ami, Kevin Moran, Denys Poshyvanyk, Adwait Nadkarni

    Abstract: The demand for automated security analysis techniques, such as static analysis based security testing (SAST) tools continues to increase. To develop SASTs that are effectively leveraged by developers for finding vulnerabilities, researchers and tool designers must understand how developers perceive, select, and use SASTs, what they expect from the tools, whether they know of the limitations of the… ▽ More

    Submitted 18 June, 2024; v1 submitted 30 July, 2023; originally announced July 2023.

    Comments: Published at the IEEE Symposium on Security and Privacy 2024

  12. arXiv:2302.06050  [pdf, other

    cs.SE

    BURT: A Chatbot for Interactive Bug Reporting

    Authors: Yang Song, Junayed Mahmud, Nadeeshan De Silva, Ying Zhou, Oscar Chaparro, Kevin Moran, Andrian Marcus, Denys Poshyvanyk

    Abstract: This paper introduces BURT, a web-based chatbot for interactive reporting of Android app bugs. BURT is designed to assist Android app end-users in reporting high-quality defect information using an interactive interface. BURT guides the users in reporting essential bug report elements, i.e., the observed behavior, expected behavior, and the steps to reproduce the bug. It verifies the quality of th… ▽ More

    Submitted 12 February, 2023; originally announced February 2023.

    Comments: Accepted by the Demonstrations Track of the 45th International Conference on Software Engineering (ICSE'23). arXiv admin note: substantial text overlap with arXiv:2209.10062

  13. arXiv:2302.03788  [pdf, other

    cs.SE cs.AI cs.LG stat.ME

    Toward a Theory of Causation for Interpreting Neural Code Models

    Authors: David N. Palacio, Alejandro Velasco, Nathan Cooper, Alvaro Rodriguez, Kevin Moran, Denys Poshyvanyk

    Abstract: Neural Language Models of Code, or Neural Code Models (NCMs), are rapidly progressing from research prototypes to commercial developer tools. As such, understanding the capabilities and limitations of such models is becoming critical. However, the abilities of these models are typically measured using automated metrics that often only reveal a portion of their real-world performance. While, in gen… ▽ More

    Submitted 27 March, 2024; v1 submitted 7 February, 2023; originally announced February 2023.

    Comments: Accepted to appear in IEEE Transactions on Software Engineering

  14. arXiv:2301.01224  [pdf, other

    cs.SE cs.AI cs.CV cs.LG

    An Empirical Investigation into the Use of Image Captioning for Automated Software Documentation

    Authors: Kevin Moran, Ali Yachnes, George Purnell, Junayed Mahmud, Michele Tufano, Carlos Bernal-Cárdenas, Denys Poshyvanyk, Zach H'Doubler

    Abstract: Existing automated techniques for software documentation typically attempt to reason between two main sources of information: code and natural language. However, this reasoning process is often complicated by the lexical gap between more abstract natural language and more structured programming languages. One potential bridge for this gap is the Graphical User Interface (GUI), as GUIs inherently e… ▽ More

    Submitted 3 January, 2023; originally announced January 2023.

    Comments: Published in the Proceedings of the 29th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER'22), Honolulu, Hawaii, March 15-18, 2022, pp. 514-525

  15. arXiv:2301.01191  [pdf, other

    cs.SE

    Translating Video Recordings of Complex Mobile App UI Gestures into Replayable Scenarios

    Authors: Carlos Bernal-Cárdenas, Nathan Cooper, Madeleine Havranek, Kevin Moran, Oscar Chaparro, Denys Poshyvanyk, Andrian Marcus

    Abstract: Screen recordings of mobile applications are easy to obtain and capture a wealth of information pertinent to software developers (e.g., bugs or feature requests), making them a popular mechanism for crowdsourced app feedback. Thus, these videos are becoming a common artifact that developers must manage. In light of unique mobile development constraints, including swift release cycles and rapidly e… ▽ More

    Submitted 3 January, 2023; originally announced January 2023.

    Comments: Accepted to IEEE Transactions on Software Engineering. arXiv admin note: substantial text overlap with arXiv:2005.09057

  16. Toward Interactive Bug Reporting for (Android App) End-Users

    Authors: Yang Song, Junayed Mahmud, Ying Zhou, Oscar Chaparro, Kevin Moran, Andrian Marcus, Denys Poshyvanyk

    Abstract: Many software bugs are reported manually, particularly bugs that manifest themselves visually in the user interface. End-users typically report these bugs via app reviewing websites, issue trackers, or in-app built-in bug reporting tools, if available. While these systems have various features that facilitate bug reporting (e.g., textual templates or forms), they often provide limited guidance, co… ▽ More

    Submitted 20 September, 2022; originally announced September 2022.

    Comments: Accepted by the Research Papers Track of the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE'22)

  17. arXiv:2206.08574  [pdf, other

    cs.SE

    Using Transfer Learning for Code-Related Tasks

    Authors: Antonio Mastropaolo, Nathan Cooper, David Nader Palacio, Simone Scalabrino, Denys Poshyvanyk, Rocco Oliveto, Gabriele Bavota

    Abstract: Deep learning (DL) techniques have been used to support several code-related tasks such as code summarization and bug-fixing. In particular, pre-trained transformer models are on the rise, also thanks to the excellent results they achieved in Natural Language Processing (NLP) tasks. The basic idea behind these models is to first pre-train them on a generic dataset using a self-supervised task (e.g… ▽ More

    Submitted 17 June, 2022; originally announced June 2022.

    Comments: arXiv admin note: substantial text overlap with arXiv:2102.02017

  18. arXiv:2203.12093  [pdf, other

    cs.SE

    Enhancing Mobile App Bug Reporting via Real-time Understanding of Reproduction Steps

    Authors: Mattia Fazzini, Kevin Moran, Carlos Bernal Cardenas, Tyler Wendland, Alessandro Orso, Denys Poshyvanyk

    Abstract: One of the primary mechanisms by which developers receive feedback about in-field failures of software from users is through bug reports. Unfortunately, the quality of manually written bug reports can vary widely due to the effort required to include essential pieces of information, such as detailed reproduction steps (S2Rs). Despite the difficulty faced by reporters, few existing bug reporting sy… ▽ More

    Submitted 22 March, 2022; originally announced March 2022.

  19. arXiv:2201.06850  [pdf, other

    cs.SE

    Using Pre-Trained Models to Boost Code Review Automation

    Authors: Rosalia Tufano, Simone Masiero, Antonio Mastropaolo, Luca Pascarella, Denys Poshyvanyk, Gabriele Bavota

    Abstract: Code review is a practice widely adopted in open source and industrial projects. Given the non-negligible cost of such a process, researchers started investigating the possibility of automating specific code review tasks. We recently proposed Deep Learning (DL) models targeting the automation of two tasks: the first model takes as input a code submitted for review and implements in it changes like… ▽ More

    Submitted 18 January, 2022; originally announced January 2022.

    Comments: Accepted for publication at ICSE 2022

  20. An Empirical Study on the Usage of Transformer Models for Code Completion

    Authors: Matteo Ciniselli, Nathan Cooper, Luca Pascarella, Antonio Mastropaolo, Emad Aghajani, Denys Poshyvanyk, Massimiliano Di Penta, Gabriele Bavota

    Abstract: Code completion aims at speeding up code writing by predicting the next code token(s) the developer is likely to write. Works in this field focused on improving the accuracy of the generated predictions, with substantial leaps forward made possible by deep learning (DL) models. However, code completion techniques are mostly evaluated in the scenario of predicting the next token to type, with few e… ▽ More

    Submitted 18 November, 2021; v1 submitted 3 August, 2021; originally announced August 2021.

    Comments: arXiv admin note: substantial text overlap with arXiv:2103.07115

  21. Why Crypto-detectors Fail: A Systematic Evaluation of Cryptographic Misuse Detection Techniques

    Authors: Amit Seal Ami, Nathan Cooper, Kaushal Kafle, Kevin Moran, Denys Poshyvanyk, Adwait Nadkarni

    Abstract: The correct use of cryptography is central to ensuring data security in modern software systems. Hence, several academic and commercial static analysis tools have been developed for detecting and mitigating crypto-API misuse. While developers are optimistically adopting these crypto-API misuse detectors (or crypto-detectors) in their software development cycles, this momentum must be accompanied b… ▽ More

    Submitted 24 July, 2022; v1 submitted 14 July, 2021; originally announced July 2021.

    Comments: 18 pages, 2 figures, 2 tables; paper published at 2022 IEEE Symposium on Security and Privacy (S&P)

  22. arXiv:2103.07115  [pdf, other

    cs.SE

    An Empirical Study on the Usage of BERT Models for Code Completion

    Authors: Matteo Ciniselli, Nathan Cooper, Luca Pascarella, Denys Poshyvanyk, Massimiliano Di Penta, Gabriele Bavota

    Abstract: Code completion is one of the main features of modern Integrated Development Environments (IDEs). Its objective is to speed up code writing by predicting the next code token(s) the developer is likely to write. Research in this area has substantially bolstered the predictive performance of these techniques. However, the support to developers is still limited to the prediction of the next few token… ▽ More

    Submitted 12 March, 2021; originally announced March 2021.

    Comments: Accepted to the 18th International Conference on Mining Software Repositories (MSR 2021)

  23. Systematic Mutation-based Evaluation of the Soundness of Security-focused Android Static Analysis Techniques

    Authors: Amit Seal Ami, Kaushal Kafle, Kevin Moran, Adwait Nadkarni, Denys Poshyvanyk

    Abstract: Mobile application security has been a major area of focus for security research over the course of the last decade. Numerous application analysis tools have been proposed in response to malicious, curious, or vulnerable apps. However, existing tools, and specifically, static analysis tools, trade soundness of the analysis for precision and performance and are hence soundy. Unfortunately, the spec… ▽ More

    Submitted 17 July, 2021; v1 submitted 12 February, 2021; originally announced February 2021.

    Comments: Published in ACM Transactions on Privacy and Security, extends USENIX'18 paper (arXiv:1806.09761)

    Journal ref: ACM Transactions on Privacy and Security, Volume 24, Issue 3, Article No. 15, 2021

  24. $μ$SE: Mutation-based Evaluation of Security-focused Static Analysis Tools for Android

    Authors: Amit Seal Ami, Kaushal Kafle, Kevin Moran, Adwait Nadkarni, Denys Poshyvanyk

    Abstract: This demo paper presents the technical details and usage scenarios of $μ$SE: a mutation-based tool for evaluating security-focused static analysis tools for Android. Mutation testing is generally used by software practitioners to assess the robustness of a given test-suite. However, we leverage this technique to systematically evaluate static analysis tools and uncover and document soundness issue… ▽ More

    Submitted 12 February, 2021; originally announced February 2021.

    Comments: 43rd International Conference on Software Engineering, Virtual (originally in Madrid, Spain) - Demonstrations Track

  25. arXiv:2102.02017  [pdf, other

    cs.SE

    Studying the Usage of Text-To-Text Transfer Transformer to Support Code-Related Tasks

    Authors: Antonio Mastropaolo, Simone Scalabrino, Nathan Cooper, David Nader Palacio, Denys Poshyvanyk, Rocco Oliveto, Gabriele Bavota

    Abstract: Deep learning (DL) techniques are gaining more and more attention in the software engineering community. They have been used to support several code-related tasks, such as automatic bug fixing and code comments generation. Recent studies in the Natural Language Processing (NLP) field have shown that the Text-To-Text Transfer Transformer (T5) architecture can achieve state-of-the-art performance fo… ▽ More

    Submitted 3 February, 2021; originally announced February 2021.

    Comments: Accepted to the 43rd International Conference on Software Engineering (ICSE 2021)

  26. arXiv:2101.09194  [pdf, other

    cs.SE cs.AI

    It Takes Two to Tango: Combining Visual and Textual Information for Detecting Duplicate Video-Based Bug Reports

    Authors: Nathan Cooper, Carlos Bernal-Cárdenas, Oscar Chaparro, Kevin Moran, Denys Poshyvanyk

    Abstract: When a bug manifests in a user-facing application, it is likely to be exposed through the graphical user interface (GUI). Given the importance of visual information to the process of identifying and understanding such bugs, users are increasingly making use of screenshots and screen-recordings as a means to report issues to developers. However, when such information is reported en masse, such as d… ▽ More

    Submitted 5 February, 2021; v1 submitted 22 January, 2021; originally announced January 2021.

    Comments: 13 pages and 1 figure. Published at ICSE'21

  27. arXiv:2101.02518  [pdf, other

    cs.SE

    Towards Automating Code Review Activities

    Authors: Rosalia Tufano, Luca Pascarella, Michele Tufano, Denys Poshyvanyk, Gabriele Bavota

    Abstract: Code reviews are popular in both industrial and open source projects. The benefits of code reviews are widely recognized and include better code quality and lower likelihood of introducing bugs. However, since code review is a manual activity it comes at the cost of spending developers' time on reviewing their teammates' code. Our goal is to make the first step towards partially automating the c… ▽ More

    Submitted 19 May, 2021; v1 submitted 7 January, 2021; originally announced January 2021.

    Comments: Accepted to the 43rd International Conference on Software Engineering (ICSE 2021)

  28. arXiv:2009.08525  [pdf, other

    cs.SE cs.AI cs.LG

    Deep Learning & Software Engineering: State of Research and Future Directions

    Authors: Prem Devanbu, Matthew Dwyer, Sebastian Elbaum, Michael Lowry, Kevin Moran, Denys Poshyvanyk, Baishakhi Ray, Rishabh Singh, Xiangyu Zhang

    Abstract: Given the current transformative potential of research that sits at the intersection of Deep Learning (DL) and Software Engineering (SE), an NSF-sponsored community workshop was conducted in co-location with the 34th IEEE/ACM International Conference on Automated Software Engineering (ASE'19) in San Diego, California. The goal of this workshop was to outline high priority areas for cross-cutting r… ▽ More

    Submitted 17 September, 2020; originally announced September 2020.

    Comments: Community Report from the 2019 NSF Workshop on Deep Learning & Software Engineering, 37 pages

  29. arXiv:2009.06520  [pdf, other

    cs.SE cs.AI cs.LG cs.NE

    A Systematic Literature Review on the Use of Deep Learning in Software Engineering Research

    Authors: Cody Watson, Nathan Cooper, David Nader Palacio, Kevin Moran, Denys Poshyvanyk

    Abstract: An increasingly popular set of techniques adopted by software engineering (SE) researchers to automate development tasks are those rooted in the concept of Deep Learning (DL). The popularity of such techniques largely stems from their automated feature engineering capabilities, which aid in modeling software artifacts. However, due to the rapid pace at which DL techniques have been adopted, it is… ▽ More

    Submitted 23 September, 2021; v1 submitted 14 September, 2020; originally announced September 2020.

    Comments: 59 pages, Accepted to TOSEM 2021

  30. Translating Video Recordings of Mobile App Usages into Replayable Scenarios

    Authors: Carlos Bernal-Cárdenas, Nathan Cooper, Kevin Moran, Oscar Chaparro, Andrian Marcus, Denys Poshyvanyk

    Abstract: Screen recordings of mobile applications are easy to obtain and capture a wealth of information pertinent to software developers (e.g., bugs or feature requests), making them a popular mechanism for crowdsourced app feedback. Thus, these videos are becoming a common artifact that developers must manage. In light of unique mobile development constraints, including swift release cycles and rapidly e… ▽ More

    Submitted 18 May, 2020; originally announced May 2020.

    Comments: In proceedings of the 42nd International Conference on Software Engineering (ICSE'20), 13 pages

  31. Improving the Effectiveness of Traceability Link Recovery using Hierarchical Bayesian Networks

    Authors: Kevin Moran, David N. Palacio, Carlos Bernal-Cárdenas, Daniel McCrystal, Denys Poshyvanyk, Chris Shenefiel, Jeff Johnson

    Abstract: Traceability is a fundamental component of the modern software development process that helps to ensure properly functioning, secure programs. Due to the high cost of manually establishing trace links, researchers have developed automated approaches that draw relationships between pairs of textual software artifacts using similarity measures. However, the effectiveness of such techniques are often… ▽ More

    Submitted 11 April, 2022; v1 submitted 18 May, 2020; originally announced May 2020.

    Comments: Accepted in the Proceedings of the 42nd International Conference on Software Engineering (ICSE'20), 13 pages

  32. On Learning Meaningful Assert Statements for Unit Test Cases

    Authors: Cody Watson, Michele Tufano, Kevin Moran, Gabriele Bavota, Denys Poshyvanyk

    Abstract: Software testing is an essential part of the software lifecycle and requires a substantial amount of time and effort. It has been estimated that software developers spend close to 50% of their time on testing the code they write. For these reasons, a long standing goal within the research community is to (partially) automate software testing. While several techniques and tools have been proposed t… ▽ More

    Submitted 18 February, 2020; v1 submitted 13 February, 2020; originally announced February 2020.

  33. arXiv:2002.04760  [pdf, other

    cs.SE cs.CL cs.LG

    DeepMutation: A Neural Mutation Tool

    Authors: Michele Tufano, Jason Kimko, Shiya Wang, Cody Watson, Gabriele Bavota, Massimiliano Di Penta, Denys Poshyvanyk

    Abstract: Mutation testing can be used to assess the fault-detection capabilities of a given test suite. To this aim, two characteristics of mutation testing frameworks are of paramount importance: (i) they should generate mutants that are representative of real faults; and (ii) they should provide a complete tool chain able to automatically generate, inject, and test the mutants. To address the first point… ▽ More

    Submitted 12 February, 2020; v1 submitted 11 February, 2020; originally announced February 2020.

    Comments: Accepted to the 42nd ACM/IEEE International Conference on Software Engineering (ICSE 2020), Demonstrations Track - Seoul, South Korea, May 23-29, 2020, 4 pages

  34. arXiv:1908.00614  [pdf, other

    cs.SE

    Learning to Identify Security-Related Issues Using Convolutional Neural Networks

    Authors: David N. Palacio, Daniel McCrystal, Kevin Moran, Carlos Bernal-Cárdenas, Denys Poshyvanyk, Chris Shenefiel

    Abstract: Software security is becoming a high priority for both large companies and start-ups alike due to the increasing potential for harm that vulnerabilities and breaches carry with them. However, attaining robust security assurance while delivering features requires a precarious balancing act in the context of agile development practices. One path forward to help aid development teams in securing thei… ▽ More

    Submitted 5 August, 2019; v1 submitted 1 August, 2019; originally announced August 2019.

    Comments: 5 pages, 3 Figures, ICSME 2019 conference

  35. arXiv:1907.00124  [pdf, other

    cs.CR

    Helion: Enabling a Natural Perspective of Home Automation

    Authors: Sunil Manandhar, Kevin Moran, Kaushal Kafle, Ruhao Tang, Denys Poshyvanyk, Adwait Nadkarni

    Abstract: Security researchers have recently discovered significant security and safety issues related to home automation and developed approaches to address them. Such approaches often face design and evaluation challenges which arise from their restricted perspective of home automation that is bounded by the IoT apps they analyze. The challenges of past work can be overcome by relying on a deeper understa… ▽ More

    Submitted 28 June, 2019; originally announced July 2019.

  36. arXiv:1906.07107  [pdf, other

    cs.SE

    Assessing the Quality of the Steps to Reproduce in Bug Reports

    Authors: Oscar Chaparro, Carlos Bernal-Cardenas, Jing Lu, Kevin Moran, Andrian Marcus, Massimiliano Di Penta, Denys Poshyvanyk, Vincent Ng

    Abstract: A major problem with user-written bug reports, indicated by developers and documented by researchers, is the (lack of high) quality of the reported steps to reproduce the bugs. Low-quality steps to reproduce lead to excessive manual effort spent on bug triage and resolution. This paper proposes Euler, an approach that automatically identifies and assesses the quality of the steps to reproduce in a… ▽ More

    Submitted 17 June, 2019; originally announced June 2019.

    Comments: In Proceedings of the 27th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE '19), August 26-30, 2019, Tallinn, Estonia

  37. arXiv:1901.09102  [pdf, other

    cs.SE cs.CL cs.LG

    On Learning Meaningful Code Changes via Neural Machine Translation

    Authors: Michele Tufano, Jevgenija Pantiuchina, Cody Watson, Gabriele Bavota, Denys Poshyvanyk

    Abstract: Recent years have seen the rise of Deep Learning (DL) techniques applied to source code. Researchers have exploited DL to automate several development and maintenance tasks, such as writing commit messages, generating comments and detecting vulnerabilities among others. One of the long lasting dreams of applying DL to source code is the possibility to automate non-trivial coding activities. While… ▽ More

    Submitted 25 January, 2019; originally announced January 2019.

    Comments: Accepted to the 41st ACM/IEEE International Conference on Software Engineering (ICSE 2019) - Montreal, QC, Canada, May 25-31, 2019, 12 pages

  38. arXiv:1901.01808  [pdf, other

    cs.SE cs.LG stat.ML

    SequenceR: Sequence-to-Sequence Learning for End-to-End Program Repair

    Authors: Zimin Chen, Steve Kommrusch, Michele Tufano, Louis-Noël Pouchet, Denys Poshyvanyk, Martin Monperrus

    Abstract: This paper presents a novel end-to-end approach to program repair based on sequence-to-sequence learning. We devise, implement, and evaluate a system, called SequenceR, for fixing bugs based on sequence-to-sequence learning on source code. This approach uses the copy mechanism to overcome the unlimited vocabulary problem that occurs with big code. Our system is data-driven; we train it on 35,578 s… ▽ More

    Submitted 9 September, 2019; v1 submitted 24 December, 2018; originally announced January 2019.

    Comments: 21 pages, 15 figures

    Journal ref: IEEE Transactions on Software Engineering, 2019

  39. arXiv:1901.00891  [pdf, other

    cs.SE

    Guigle: A GUI Search Engine for Android Apps

    Authors: Carlos Bernal-Cardenas, Kevin Moran, Michele Tufano, Zichang Liu, Linyong Nan, Zhehan Shi, Denys Poshyvanyk

    Abstract: The process of developing a mobile application typically starts with the ideation and conceptualization of its user interface. This concept is then translated into a set of mock-ups to help determine how well the user interface embodies the intended features of the app. After the creation of mock-ups developers then translate it into an app that runs in a mobile device. In this paper we propose an… ▽ More

    Submitted 3 January, 2019; originally announced January 2019.

    Comments: Accepted to 41st ACM/IEEE International Conference on Software Engineering, Formal Tool Demonstrations Track

  40. arXiv:1812.10772  [pdf, other

    cs.SE

    Learning How to Mutate Source Code from Bug-Fixes

    Authors: Michele Tufano, Cody Watson, Gabriele Bavota, Massimiliano Di Penta, Martin White, Denys Poshyvanyk

    Abstract: Mutation testing has been widely accepted as an approach to guide test case generation or to assess the effectiveness of test suites. Empirical studies have shown that mutants are representative of real faults; yet they also indicated a clear need for better, possibly customized, mutation operators and strategies. While methods to devise domain-specific or general-purpose mutation operators from r… ▽ More

    Submitted 29 July, 2019; v1 submitted 27 December, 2018; originally announced December 2018.

    Comments: Accepted to the 35th IEEE International Conference on Software Maintenance and Evolution (ICSME 2019) - Cleveland, OH, USA, October 2-4, 2019, to appear 12 pages

  41. arXiv:1812.08693  [pdf, other

    cs.SE

    An Empirical Study on Learning Bug-Fixing Patches in the Wild via Neural Machine Translation

    Authors: Michele Tufano, Cody Watson, Gabriele Bavota, Massimiliano Di Penta, Martin White, Denys Poshyvanyk

    Abstract: Millions of open-source projects with numerous bug fixes are available in code repositories. This proliferation of software development histories can be leveraged to learn how to fix common programming bugs. To explore such a potential, we perform an empirical study to assess the feasibility of using Neural Machine Translation techniques for learning bug-fixing patches for real defects. First, we… ▽ More

    Submitted 20 May, 2019; v1 submitted 20 December, 2018; originally announced December 2018.

    Comments: Accepted to the ACM Transactions on Software Engineering and Methodology

  42. arXiv:1812.01597  [pdf, other

    cs.CR

    A Study of Data Store-based Home Automation

    Authors: Kaushal Kafle, Kevin Moran, Sunil Manandhar, Adwait Nadkarni, Denys Poshyvanyk

    Abstract: Home automation platforms provide a new level of convenience by enabling consumers to automate various aspects of physical objects in their homes. While the convenience is beneficial, security flaws in the platforms or integrated third-party products can have serious consequences for the integrity of a user's physical environment. In this paper we perform a systematic security evaluation of two po… ▽ More

    Submitted 4 December, 2018; originally announced December 2018.

    Comments: Accepted to the The 9th ACM Conference on Data and Application Security and Privacy (CODASPY'19), 12 pages

  43. arXiv:1807.09440  [pdf, other

    cs.SE

    Detecting and Summarizing GUI Changes in Evolving Mobile Apps

    Authors: Kevin Moran, Cody Watson, John Hoskins, George Purnell, Denys Poshyvanyk

    Abstract: Mobile applications have become a popular software development domain in recent years due in part to a large user base, capable hardware, and accessible platforms. However, mobile developers also face unique challenges, including pressure for frequent releases to keep pace with rapid platform evolution, hardware iteration, and user feedback. Due to this rapid pace of evolution, developers need aut… ▽ More

    Submitted 4 September, 2018; v1 submitted 25 July, 2018; originally announced July 2018.

    Comments: Proceedings of the 2018 33rd ACM/IEEE International Conference on Automated Software Engineering (ASE '18), September 3-7, 2018, Montpellier, France

  44. arXiv:1807.08823  [pdf, other

    cs.SE

    Assessing Test Case Prioritization on Real Faults and Mutants

    Authors: Qi Luo, Kevin Moran, Denys Poshyvanyk, Massimiliano Di Penta

    Abstract: Test Case Prioritization (TCP) is an important component of regression testing, allowing for earlier detection of faults or helping to reduce testing time and cost. While several TCP approaches exist in the research literature, a growing number of studies have evaluated them against synthetic software defects, called mutants. Hence, it is currently unclear to what extent TCP performance on mutants… ▽ More

    Submitted 18 September, 2018; v1 submitted 23 July, 2018; originally announced July 2018.

    Comments: Accepted to the 34th International Conference on Software Maintenance and Evolution (ICSME'18)

  45. Overcoming Language Dichotomies: Toward Effective Program Comprehension for Mobile App Development

    Authors: Kevin Moran, Carlos Bernal Cardenas, Mario Linares Vasquez, Denys Poshyvanyk

    Abstract: Mobile devices and platforms have become an established target for modern software developers due to performant hardware and a large and growing user base numbering in the billions. Despite their popularity, the software development process for mobile apps comes with a set of unique, domain-specific challenges rooted in program comprehension. Many of these challenges stem from developer difficulti… ▽ More

    Submitted 18 July, 2018; originally announced July 2018.

    Comments: Invited Keynote Paper for the 26th IEEE/ACM International Conference on Program Comprehension (ICPC'18)

  46. How Do Static and Dynamic Test Case Prioritization Techniques Perform on Modern Software Systems? An Extensive Study on GitHub Projects

    Authors: Qi Luo, Kevin Moran, Lingming Zhang, Denys Poshyvanyk

    Abstract: Test Case Prioritization (TCP) is an increasingly important regression testing technique for reordering test cases according to a pre-defined goal, particularly as agile practices gain adoption. To better understand these techniques, we perform the first extensive study aimed at empirically evaluating four static TCP techniques, comparing them with state-of-research dynamic TCP techniques across s… ▽ More

    Submitted 25 June, 2018; originally announced June 2018.

    Comments: Preprint of Accepted Paper to IEEE Transactions on Software Engineering

    Journal ref: Q. Luo, K. Moran, L. Zhang and D. Poshyvanyk, "How Do Static and Dynamic Test Case Prioritization Techniques Perform on Modern Software Systems? An Extensive Study on GitHub Projects," in IEEE Transactions on Software Engineering, 2018

  47. arXiv:1806.09761  [pdf, other

    cs.CR cs.SE

    Discovering Flaws in Security-Focused Static Analysis Tools for Android using Systematic Mutation

    Authors: Richard Bonett, Kaushal Kafle, Kevin Moran, Adwait Nadkarni, Denys Poshyvanyk

    Abstract: Mobile application security has been one of the major areas of security research in the last decade. Numerous application analysis tools have been proposed in response to malicious, curious, or vulnerable apps. However, existing tools, and specifically, static analysis tools, trade soundness of the analysis for precision and performance, and are hence soundy. Unfortunately, the specific unsound ch… ▽ More

    Submitted 27 June, 2018; v1 submitted 25 June, 2018; originally announced June 2018.

    Comments: Accepted as a technical paper at the 27th USENIX Security Symposium (USENIX'18)

  48. MDroid+: A Mutation Testing Framework for Android

    Authors: Kevin Moran, Michele Tufano, Carlos Bernal-Cárdenas, Mario Linares-Vásquez, Gabriele Bavota, Christopher Vendome, Massimiliano Di Penta, Denys Poshyvanyk

    Abstract: Mutation testing has shown great promise in assessing the effectiveness of test suites while exhibiting additional applications to test-case generation, selection, and prioritization. Traditional mutation testing typically utilizes a set of simple language specific source code transformations, called operators, to introduce faults. However, empirical studies have shown that for mutation testing to… ▽ More

    Submitted 13 February, 2018; originally announced February 2018.

    Comments: 4 Pages, Accepted to the Formal Tool Demonstration Track at the 40th International Conference on Software Engineering (ICSE'18)

  49. Automated Reporting of GUI Design Violations for Mobile Apps

    Authors: Kevin Moran, Boyang Li, Carlos Bernal-Cárdenas, Dan Jelf, Denys Poshyvanyk

    Abstract: The inception of a mobile app often takes form of a mock-up of the Graphical User Interface (GUI), represented as a static image delineating the proper layout and style of GUI widgets that satisfy requirements. Following this initial mock-up, the design artifacts are then handed off to developers whose goal is to accurately implement these GUIs and the desired functionality in code. Given the siza… ▽ More

    Submitted 5 April, 2018; v1 submitted 13 February, 2018; originally announced February 2018.

    Comments: 11 pages, Accepted to the 40th International Conference on Software Engineering (ICSE'18)

  50. arXiv:1802.02312  [pdf, other

    cs.SE cs.CV cs.LG

    Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps

    Authors: Kevin Moran, Carlos Bernal-Cárdenas, Michael Curcio, Richard Bonett, Denys Poshyvanyk

    Abstract: It is common practice for developers of user-facing software to transform a mock-up of a graphical user interface (GUI) into code. This process takes place both at an application's inception and in an evolutionary context as GUI changes keep pace with evolving features. Unfortunately, this practice is challenging and time-consuming. In this paper, we present an approach that automates this process… ▽ More

    Submitted 4 June, 2018; v1 submitted 7 February, 2018; originally announced February 2018.

    Comments: Accepted to IEEE Transactions on Software Engineering