Skip to main content

Showing 1–29 of 29 results for author: Nierstrasz, O

.
  1. A Decade of Code Comment Quality Assessment: A Systematic Literature Review

    Authors: Pooja Rani, Arianna Blasi, Nataliia Stulova, Sebastiano Panichella, Alessandra Gorla, Oscar Nierstrasz

    Abstract: Code comments are important artifacts in software systems and play a paramount role in many software engineering (SE) tasks related to maintenance and program comprehension. However, while it is widely accepted that high quality matters in code comments just as it matters in source code, assessing comment quality in practice is still an open problem. First and foremost, there is no unique definiti… ▽ More

    Submitted 16 September, 2022; originally announced September 2022.

  2. arXiv:2201.04853  [pdf

    cs.CR

    FuzzingDriver: the Missing Dictionary to Increase Code Coverage in Fuzzers

    Authors: Arash Ale Ebrahim, Mohammadreza Hazhirpasand, Oscar Nierstrasz, Mohammad Ghafari

    Abstract: We propose a tool, called FuzzingDriver, to generate dictionary tokens for coverage-based greybox fuzzers (CGF) from the codebase of any target program. FuzzingDriver does not add any overhead to the fuzzing job as it is run beforehand. We compared FuzzingDriver to Google dictionaries by fuzzing six open-source targets, and we found that FuzzingDriver consistently achieves higher code coverage in… ▽ More

    Submitted 13 January, 2022; originally announced January 2022.

    Comments: 29th edition of the IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), 2022

  3. arXiv:2111.03601  [pdf

    cs.CR cs.SE

    Security Header Fields in HTTP Clients

    Authors: Pascal Gadient, Oscar Nierstrasz, Mohammad Ghafari

    Abstract: HTTP headers are commonly used to establish web communications, and some of them are relevant for security. However, we have only little information about the usage and support of security-relevant headers in mobile applications. We explored the adoption of such headers in mobile app communication by querying 9,714 distinct URLs that were used in 3,376 apps and collected each server's response inf… ▽ More

    Submitted 5 November, 2021; originally announced November 2021.

    Comments: The 21st IEEE International Conference on Software Quality, Reliability and Security (QRS 2021)

  4. arXiv:2111.03596  [pdf, other

    cs.CR cs.HC

    Phish What You Wish

    Authors: Pascal Gadient, Pascal Gerig, Oscar Nierstrasz, Mohammad Ghafari

    Abstract: IT professionals have no simple tool to create phishing websites and raise the awareness of users. We developed a prototype that can dynamically mimic websites by using enriched screenshots, which requires no additional programming experience and is simple to set up. The generated websites are functional and remain up-to-date. We found that 98% of the hyperlinks in mimicked websites are functional… ▽ More

    Submitted 5 November, 2021; originally announced November 2021.

    Comments: The 21st IEEE International Conference on Software Quality, Reliability and Security (QRS 2021)

  5. arXiv:2111.01406  [pdf, ps, other

    cs.CR cs.SE

    Dazed and Confused: What's Wrong with Crypto Libraries?

    Authors: Mohammadreza Hazhirpasand, Oscar Nierstrasz, Mohammad Ghafari

    Abstract: Recent studies have shown that developers have difficulties in using cryptographic APIs, which often led to security flaws. We are interested to tackle this matter by looking into what types of problems exist in various crypto libraries. We manually studied 500 posts on Stack Overflow associated with 20 popular crypto libraries. We realized there are 10 themes in the discussions. Interestingly, th… ▽ More

    Submitted 2 November, 2021; originally announced November 2021.

    Comments: 18th Annual International Conference on Privacy, Security and Trust (PST2021)

  6. arXiv:2109.15093  [pdf, other

    cs.CR

    Crypto Experts Advise What They Adopt

    Authors: Mohammadreza Hazhirpasand, Oscar Nierstrasz, Mohammad Ghafari

    Abstract: Previous studies have shown that developers regularly seek advice on online forums to resolve their cryptography issues. We investigated whether users who are active in cryptography discussions also use cryptography in practice. We collected the top 1% of responders who have participated in crypto discussions on Stack Overflow, and we manually analyzed their crypto contributions to open source pro… ▽ More

    Submitted 30 September, 2021; originally announced September 2021.

    Comments: 2021 36th IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW)

  7. arXiv:2109.14363  [pdf, other

    cs.CR

    Worrisome Patterns in Developers: A Survey in Cryptography

    Authors: Mohammadreza Hazhirpasand, Oscar Nierstrasz, Mohammad Ghafari

    Abstract: We surveyed 97 developers who had used cryptography in open-source projects, in the hope of identifying developer security and cryptography practices. We asked them about individual and company-level practices, and divided respondents into three groups (i.e., high, medium, and low) based on their level of knowledge. We found differences between the high-profile developers and the other two groups.… ▽ More

    Submitted 30 September, 2021; v1 submitted 29 September, 2021; originally announced September 2021.

    Comments: 2021 36th IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW)

  8. arXiv:2108.11205  [pdf, other

    cs.SE

    RepliComment: Identifying Clones in Code Comments

    Authors: Arianna Blasi, Nataliia Stulova, Alessandra Gorla, Oscar Nierstrasz

    Abstract: Code comments are the primary means to document implementation and facilitate program comprehension. Thus, their quality should be a primary concern to improve program maintenance. While much effort has been dedicated to detecting bad smells, such as clones in code, little work has focused on comments. In this paper we present our solution to detect clones in comments that developers should fix. R… ▽ More

    Submitted 25 August, 2021; originally announced August 2021.

    Comments: 31 pages, 1 figure, 9 tables. To appear in the Journal of Systems and Software

    ACM Class: D.2.7; D.2.9

  9. Do Comments follow Commenting Conventions? A Case Study in Java and Python

    Authors: Pooja Rani, Suada Abukar, Nataliia Stulova, Alexandre Bergel, Oscar Nierstrasz

    Abstract: Assessing code comment quality is known to be a difficult problem. A number of coding style guidelines have been created with the aim to encourage writing of informative, readable, and consistent comments. However, it is not clear from the research to date which specific aspects of comments the guidelines cover (e.g., syntax, content, structure). Furthermore, the extent to which developers follow… ▽ More

    Submitted 27 August, 2021; v1 submitted 24 August, 2021; originally announced August 2021.

    Comments: 5 pages, 3 figures, conference

  10. What Do Developers Discuss about Code Comments?

    Authors: Pooja Rani, Mathias Birrer, Sebastiano Panichella, Mohammad Ghafari, Oscar Nierstrasz

    Abstract: Code comments are important for program comprehension, development, and maintenance tasks. Given the varying standards for code comments, and their unstructured or semi-structured nature, developers get easily confused (especially novice developers) about which convention(s) to follow, or what tools to use while writing code documentation. Thus, they post related questions on external online sourc… ▽ More

    Submitted 17 August, 2021; originally announced August 2021.

    Comments: 21st IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM'21)

  11. Security Smells Pervade Mobile App Servers

    Authors: Pascal Gadient, Marc-Andrea Tarnutzer, Oscar Nierstrasz, Mohammad Ghafari

    Abstract: [Background] Web communication is universal in cyberspace, and security risks in this domain are devastating. [Aims] We analyzed the prevalence of six security smells in mobile app servers, and we investigated the consequence of these smells from a security perspective. [Method] We used an existing dataset that includes 9714 distinct URLs used in 3376 Android mobile apps. We exercised these URLs t… ▽ More

    Submitted 16 August, 2021; originally announced August 2021.

    Comments: ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM 2021)

  12. arXiv:2108.07141  [pdf, other

    cs.CR cs.SE

    Hurdles for Developers in Cryptography

    Authors: Mohammadreza Hazhirpasand, Oscar Nierstrasz, Mohammadhossein Shabani, Mohammad Ghafari

    Abstract: Prior research has shown that cryptography is hard to use for developers. We aim to understand what cryptography issues developers face in practice. We clustered 91954 cryptography-related questions on the Stack Overflow website, and manually analyzed a significant sample (i.e., 383) of the questions to comprehend the crypto challenges developers commonly face in this domain. We found that either… ▽ More

    Submitted 16 August, 2021; originally announced August 2021.

    Comments: ICSME 2021 - NIER Track

  13. How to Identify Class Comment Types? A Multi-language Approach for Class Comment Classification

    Authors: Pooja Rani, Sebastiano Panichella, Manuel Leuenberger, Andrea Di Sorbo, Oscar Nierstrasz

    Abstract: Most software maintenance and evolution tasks require developers to understand the source code of their software systems. Software developers usually inspect class comments to gain knowledge about program behavior, regardless of the programming language they are using. Unfortunately, (i) different programming languages present language-specific code commenting notations/guidelines; and (ii) the so… ▽ More

    Submitted 25 July, 2021; v1 submitted 9 July, 2021; originally announced July 2021.

    Comments: 25 pages, 10 figures, 8 tables

  14. arXiv:2009.01101  [pdf, other

    cs.CR cs.SE

    Java Cryptography Uses in the Wild

    Authors: Mohammadreza Hazhirpasand, Mohammad Ghafari, Oscar Nierstrasz

    Abstract: [Background] Previous research has shown that developers commonly misuse cryptography APIs. [Aim] We have conducted an exploratory study to find out how crypto APIs are used in open-source Java projects, what types of misuses exist, and why developers make such mistakes. [Method] We used a static analysis tool to analyze hundreds of open-source Java projects that rely on Java Cryptography Architec… ▽ More

    Submitted 2 September, 2020; originally announced September 2020.

    Comments: The ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM) 2020

  15. Security Smells in Android

    Authors: Mohammad Ghafari, Pascal Gadient, Oscar Nierstrasz

    Abstract: The ubiquity of smartphones, and their very broad capabilities and usage, make the security of these devices tremendously important. Unfortunately, despite all progress in security and privacy mechanisms, vulnerabilities continue to proliferate. Research has shown that many vulnerabilities are due to insecure programming practices. However, each study has often dealt with a specific issue, making… ▽ More

    Submitted 1 June, 2020; originally announced June 2020.

    Comments: 2017 IEEE 17th International Working Conference on Source Code Analysis and Manipulation (SCAM)

  16. What do class comments tell us? An investigation of comment evolution and practices in Pharo Smalltalk

    Authors: Pooja Rani, Sebastiano Panichella, Manuel Leuenberger, Mohammad Ghafari, Oscar Nierstrasz

    Abstract: Previous studies have characterized code comments in various programming languages to support better program comprehension activities and maintenance tasks. However, very few studies have focused on understanding developer practices to write comments. None of them has compared such developer practices to the standard comment guidelines to study the extent to which developers follow the guidelines.… ▽ More

    Submitted 15 June, 2021; v1 submitted 23 May, 2020; originally announced May 2020.

    Comments: 35 pages, 26 figures, 10 tables, Journal format, five authors, three research questions

    Journal ref: Empirical Software Engineering, 2021

  17. arXiv:2002.08463  [pdf, other

    cs.CR

    Tricking Johnny into Granting Web Permissions

    Authors: Mohammadreza Hazhirpasand, Mohammad Ghafari, Oscar Nierstrasz

    Abstract: We studied the web permission API dialog box in popular mobile and desktop browsers, and found that it typically lacks measures to protect users from unwittingly granting web permission when clicking too fast. We developed a game that exploits this issue, and tricks users into granting webcam permission. We conducted three experiments, each with 40 different participants, on both desktop and mob… ▽ More

    Submitted 19 February, 2020; originally announced February 2020.

    Comments: The 24th International Conference on Evaluation and Assessment in Software Engineering (EASE 2020)

  18. arXiv:2002.08458  [pdf, ps, other

    cs.SE

    Caveats in Eliciting Mobile App Requirements

    Authors: Nitish Patkar, Mohammad Ghafari, Oscar Nierstrasz, Sofija Hotomski

    Abstract: Factors such as app stores or platform choices heavily affect functional and non-functional mobile app requirements. We surveyed 45 companies and interviewed ten experts to explore how factors that impact mobile app requirements are understood by requirements engineers in the mobile app industry. We observed a lack of knowledge in several areas. For instance, we observed that all practitioners w… ▽ More

    Submitted 19 February, 2020; originally announced February 2020.

    Comments: The 24th International Conference on Evaluation and Assessment in Software Engineering (EASE 2020)

  19. arXiv:2001.00773  [pdf, other

    cs.SE cs.CR

    CryptoExplorer: An Interactive Web Platform Supporting Secure Use of Cryptography APIs

    Authors: Mohammadreza Hazhirpasand, Mohammad Ghafari, Oscar Nierstrasz

    Abstract: Research has shown that cryptographic APIs are hard to use. Consequently, developers resort to using code examples available in online information sources that are often not secure. We have developed a web platform, named CryptoExplorer, stocked with numerous real-world secure and insecure examples that developers can explore to learn how to use cryptographic APIs properly. This platform currently… ▽ More

    Submitted 3 January, 2020; originally announced January 2020.

    Comments: 27th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER). London, Ontario, Canada, February 18-21, 2020

  20. Web APIs in Android through the Lens of Security

    Authors: Pascal Gadient, Mohammad Ghafari, Marc-Andrea Tarnutzer, Oscar Nierstrasz

    Abstract: Web communication has become an indispensable characteristic of mobile apps. However, it is not clear what data the apps transmit, to whom, and what consequences such transmissions have. We analyzed the web communications found in mobile apps from the perspective of security. We first manually studied 160 Android apps to identify the commonly-used communication libraries, and to understand how the… ▽ More

    Submitted 1 June, 2020; v1 submitted 1 January, 2020; originally announced January 2020.

    Comments: 27th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER). London, Ontario, Canada, February 18-21, 2020

  21. arXiv:1908.04090  [pdf, other

    cs.SE

    VISON: An Ontology-Based Approach for Software Visualization Tool Discoverability

    Authors: Leonel Merino, Ekaterina Kozlova, Oscar Nierstrasz, Daniel Weiskopf

    Abstract: Although many tools have been presented in the research literature of software visualization, there is little evidence of their adoption. To choose a suitable visualization tool, practitioners need to analyze various characteristics of tools such as their supported software concerns and level of maturity. Indeed, some tools can be prototypes for which the lifespan is expected to be short, whereas… ▽ More

    Submitted 12 August, 2019; originally announced August 2019.

    Comments: 11 pages, 12 figures, 2 tables. VISSOFT 2019

  22. arXiv:1908.01489  [pdf, other

    cs.CR cs.SE

    The Impact of Developer Experience in Using Java Cryptography

    Authors: Mohammadreza Hazhirpasand, Mohammad Ghafari, Stefan Krüger, Eric Bodden, Oscar Nierstrasz

    Abstract: Previous research has shown that crypto APIs are hard for developers to understand and difficult for them to use. They consequently rely on unvalidated boilerplate code from online resources where security vulnerabilities are common. We analyzed 2,324 open-source Java projects that rely on Java Cryptography Architecture (JCA) to understand how crypto APIs are used in practice, and what factors a… ▽ More

    Submitted 5 August, 2019; originally announced August 2019.

    Comments: The ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)

  23. arXiv:1908.01476  [pdf, other

    cs.SE

    Testability First!

    Authors: Mohammad Ghafari, Markus Eggiman, Oscar Nierstrasz

    Abstract: The pivotal role of testing in high-quality software production has driven a significant effort in evaluating and assessing testing practices. We explore the state of testing in a large industrial project over an extended period. We study the interplay between bugs in the project and its test cases, and interview developers and stakeholders to uncover reasons underpinning our observations. We real… ▽ More

    Submitted 5 August, 2019; originally announced August 2019.

    Comments: The ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)

  24. arXiv:1904.06399  [pdf, other

    cs.HC cs.CV cs.PF

    PerfVis: Pervasive Visualization in Immersive AugmentedReality for Performance Awareness

    Authors: Leonel Merino, Mario Hess, Alexandre Bergel, Oscar Nierstrasz, Daniel Weiskopf

    Abstract: Developers are usually unaware of the impact of code changes to the performance of software systems. Although developers can analyze the performance of a system by executing, for instance, a performance test to compare the performance of two consecutive versions of the system, changing from a programming task to a testing task would disrupt the development flow. In this paper, we propose the use o… ▽ More

    Submitted 5 April, 2019; originally announced April 2019.

    Comments: ICPE'19 vision, 4 pages, 2 figure, conference

  25. Security Code Smells in Android ICC

    Authors: Pascal Gadient, Mohammad Ghafari, Patrick Frischknecht, Oscar Nierstrasz

    Abstract: Android Inter-Component Communication (ICC) is complex, largely unconstrained, and hard for developers to understand. As a consequence, ICC is a common source of security vulnerability in Android apps. To promote secure programming practices, we have reviewed related research, and identified avoidable ICC vulnerabilities in Android-run devices and the security code smells that indicate their prese… ▽ More

    Submitted 10 December, 2018; v1 submitted 30 November, 2018; originally announced November 2018.

    Comments: Accepted on 28 Nov 2018, Empirical Software Engineering Journal (EMSE), 2018

  26. arXiv:1807.04486  [pdf, other

    cs.SE

    The Impact of Feature Selection on Predicting the Number of Bugs

    Authors: Haidar Osman, Mohammad Ghafari, Oscar Nierstrasz

    Abstract: Bug prediction is the process of training a machine learning model on software metrics and fault information to predict bugs in software entities. While feature selection is an important step in building a robust prediction model, there is insufficient evidence about its impact on predicting the number of bugs in software systems. We study the impact of both correlation-based feature selection (CF… ▽ More

    Submitted 12 July, 2018; originally announced July 2018.

  27. Consistent Layout for Thematic Software Maps

    Authors: Adrian Kuhn, Peter Loretan, Oscar Nierstrasz

    Abstract: Software visualizations can provide a concise overview of a complex software system. Unfortunately, since software has no physical shape, there is no "natural" map** of software to a two-dimensional space. As a consequence most visualizations tend to use a layout in which position and distance have no meaning, and consequently layout typical diverges from one visualization to another. We propose… ▽ More

    Submitted 25 September, 2012; originally announced September 2012.

    Comments: In Proceedings of 15th Working Conference on Reverse Engineering (WCRE'08), IEEE Computer Society Press, Los Alamitos CA, October 2008, pp. 209-218

  28. arXiv:1007.4303  [pdf, other

    cs.SE cs.HC

    Embedding Spatial Software Visualization in the IDE: an Exploratory Study

    Authors: Adrian Kuhn, David Erni, Oscar Nierstrasz

    Abstract: Software visualization can be of great use for understanding and exploring a software system in an intuitive manner. Spatial representation of software is a promising approach of increasing interest. However, little is known about how developers interact with spatial visualizations that are embedded in the IDE. In this paper, we present a pilot study that explores the use of Software Cartography f… ▽ More

    Submitted 25 July, 2010; originally announced July 2010.

    Comments: To appear in proceedings of SOFTVIS 2010 conference

  29. arXiv:1001.2386  [pdf, other

    cs.SE

    Towards Improving the Mental Model of Software Developers through Cartographic Visualization

    Authors: Adrian Kuhn, David Erni, Oscar Nierstrasz

    Abstract: Software is intangible and knowledge about software systems is typically tacit. The mental model of software developers is thus an important factor in software engineering. It is our vision that developers should be able to refer to code as being "up in the north", "over in the west", or "down-under in the south". We want to provide developers, and everyone else involved in software development,… ▽ More

    Submitted 14 January, 2010; originally announced January 2010.