activity
20172026
most citedSecure Coding Practices in Java: Challenges and Vulnerabilities

22 citations · 74 across the 20 of their papers we have counts for

collaborators

21 papers

cs.CR2026

Generating Proof-of-Vulnerability Tests to Help Enhance the Security of Complex Software

Shravya Kanchi, Xiaoyan Zang, Ying Zhang +2

Developers create modern software applications (Apps) on top of third-party libraries (Libs). When library vulnerabilities are reachable through application code, the applications…

cs.SE2025

Combining Example-Based and Rule-Based Program Transformations to Resolve Build Conflicts

Sheikh Shadab Towqir, Fei He, Todd Mytkowicz +1

Merge conflicts often arise when developers integrate changes from different software branches. The conflicts can result from overlapping edits in programs (i.e., textual conflicts…

cs.SE2025

An Exploratory Study on Build Issue Resolution Among Computer Science Students

Sunzhou Huang, Na Meng, Xueqing Liu +1

When Computer Science (CS) students try to use or extend open-source software (OSS) projects, they often encounter the common challenge of OSS failing to build on their local machi…

cs.SE2025★ 1 cited

Detecting Metadata-Related Bugs in Enterprise Applications

Md Mahir Asef Kabir, Xiaoyin Wang, Na Meng

When building enterprise applications (EAs) on Java frameworks (e.g., Spring), developers often configure application components via metadata (i.e., Java annotations and XML files)…

cs.SE2023★ 2 cited

An empirical study of ChatGPT-3.5 on question answering and code maintenance

Md Mahir Asef Kabir, Sk Adnan Hassan, Xiaoyin Wang +3

Ever since the launch of ChatGPT in 2022, a rising concern is whether ChatGPT will replace programmers and kill jobs. Motivated by this widespread concern, we conducted an empirica…

cs.CR2023★ 12 cited

How Can ChatGPT Support Human Security Testers to Help Mitigate Supply Chain Attacks?

Ying Zhang, Wenjia Song, Zhengjie Ji +3

Developers often build software on top of third-party libraries (Libs) to improve productivity, but these libraries may contain vulnerabilities that enable supply chain attacks. Ex…

cs.SE2023

How Do Java Developers Reuse StackOverflow Answers in Their GitHub Projects?

Juntong Chen, Yan Zhao, Na Meng

StackOverflow (SO) is a widely used question-and-answer (Q\&A) website for software developers and computer scientists. GitHub is an online development platform used for storing, t…

cs.CR2023★ 2 cited

Crypto-Ransomware and Their Defenses: In-depth Behavioral Characterization, Discussion of Deployability, and New Insights

Wenjia Song, Sanjula Karanam, Ya Xiao +6

Crypto-ransomware has caused an unprecedented scope of impact in recent years with an evolving level of sophistication. An extensive range of studies have been on defending against…

cs.LG2022★ 15 cited

Machine learning approach in the development of building occupant personas

Sheik Murad Hassan Anik, Xinghua Gao, Na Meng

The user persona is a communication tool for designers to generate a mental model that describes the archetype of users. Developing building occupant personas is proven to be an ef…

cs.CR2022★ 1 cited

Example-Based Vulnerability Detection and Repair in Java Code

Ying Zhang, Ya Xiao, Md Mahir Asef Kabir +3

The Java libraries JCA and JSSE offer cryptographic APIs to facilitate secure coding. When developers misuse some of the APIs, their code becomes vulnerable to cyber-attacks. To el…

cs.SE2021★ 8 cited

FAPR: Fast and Accurate Program Repair for Introductory Programming Courses

Yunlong Lu, Na Meng, Wenxin Li

In introductory programming courses, it is challenging for instructors to provide debugging feedback on students' incorrect programs. Some recent tools automatically offer program…

cs.SE2021★ 1 cited

Migrating Client Code without Change Examples

Hao Zhong, Na Meng

API developers evolve software libraries to fix bugs, add new features, or refactor code. To benefit from such library evolution, the programmers of client projects have to repetit…

cs.SE2021★ 2 cited

Automatic Detection and Resolution of Software Merge Conflicts: Are We There Yet?

Bowen Shen, Cihan Xiao, Na Meng +1

Developers create software branches for tentative feature addition and bug fixing, and periodically merge branches to release software with new features or repairing patches. When…

cs.SE2021★ 2 cited

A Lightweight Approach of Human-Like Playtesting

Yan Zhao, Weihao Zhang, Enyi Tang +3

A playtest is the process in which human testers are recruited to play video games and to reveal software bugs. Manual testing is expensive and time-consuming, especially when ther…

cs.SE2021

Hero: On the Chaos When PATH Meets Modules

Ying Wang, Liang Qiao, Chang Xu +5

Ever since its first release in 2009, the Go programming language (Golang) has been well received by software communities. A major reason for its success is the powerful support of…

cs.SE2021

Investigating and Recommending Co-Changed Entities for JavaScript Programs

Zijian Jiang, Hao Zhong, Na Meng

JavaScript (JS) is one of the most popular programming languages due to its flexibility and versatility, but maintaining JS code is tedious and error-prone. In our research, we con…

cs.CR2021★ 2 cited

Data-Driven Vulnerability Detection and Repair in Java Code

Ying Zhang, Mahir Kabir, Ya Xiao +3

Java platform provides various APIs to facilitate secure coding. However, correctly using security APIs is usually challenging for developers who lack cybersecurity training. Prior…

cs.CR2020★ 3 cited

Coding Practices and Recommendations of Spring Security for Enterprise Applications

Mazharul Islam, Sazzadur Rahaman, Na Meng +4

Spring security is tremendously popular among practitioners for its ease of use to secure enterprise applications. In this paper, we study the application framework misconfiguratio…

cs.SE2019

How Reliable is the Crowdsourced Knowledge of Security Implementation?

Mengsu Chen, Felix Fischer, Na Meng +2

Stack Overflow (SO) is the most popular online Q&A site for developers to share their expertise in solving programming issues. Given multiple answers to certain questions, develope…

cs.SE2018★ 1 cited

Automatic Clone Recommendation for Refactoring Based on the Present and the Past

Ruru Yue, Zhe Gao, Na Meng +3

When many clones are detected in software programs, not all clones are equally important to developers. To help developers refactor code and improve software quality, various tools…

cs.CR2017★ 22 cited

Secure Coding Practices in Java: Challenges and Vulnerabilities

Na Meng, Stefan Nagy, Daphne Yao +2

Java platform and third-party libraries provide various security features to facilitate secure coding. However, misusing these features can cost tremendous time and effort of devel…