44 citations · 53 across the 20 of their papers we have counts for
20 papers
CodeTeam: An LLM-Powered Multi-Agent Framework for Repository-Level Code Generation
Yifei Wang, Ruiyin Li, Peng Liang +4
Natural language to repository generation (NL2Repo) requires a system to construct an entire software repository from a natural-language requirements document. Compared with functi…
Rule Taxonomy and Evolution in AI IDEs: A Mining and Survey Study
Guangzong Cai, Ruiyin Li, Peng Liang +2
The adoption of AI-powered Integrated Development Environments (AI IDEs) has introduced "Rules" as a novel software artifact, allowing developers to persistently inject project-spe…
Bridging Requirements and Architecture: Multi-Agent Orchestration with External Knowledge and Hierarchical Memory
Ruiyin Li, Yiran Zhang, Xiyu Zhou +6
Software architecture design is a critical yet inherently complex and knowledge-intensive phase that requires balancing competing quality attributes and adapting to evolving requir…
Using LLMs in Software Design: An Empirical Study of GitHub and A Practitioner Survey
Yifei Wang, Ruiyin Li, Peng Liang +5
Recent advancements in Large Language Models (LLMs) have demonstrated significant potential across software engineering tasks, including software design, an area traditionally rega…
Beyond Functional Correctness: Design Issues in AI IDE-Generated Large-Scale Projects
Syed Mohammad Kashif, Ruiyin Li, Peng Liang +4
New generation of AI coding tools, including AI-powered IDEs equipped with agentic capabilities, can generate code within the context of the project. These AI IDEs are increasingly…
Designing LLM-based Multi-Agent Systems for Software Engineering Tasks: Quality Attributes, Design Patterns and Rationale
Yangxiao Cai, Ruiyin Li, Peng Liang +2
As the complexity of Software Engineering (SE) tasks continues to escalate, Multi-Agent Systems (MASs) have emerged as a focal point of research and practice due to their autonomy…
FasterPy: An LLM-based Code Execution Efficiency Optimization Framework
Yue Wu, Minghao Han, Ruiyin Li +5
Code often suffers from performance bugs. These bugs necessitate the research and practice of code optimization. Traditional rule-based methods rely on manually designing and maint…
ArchISMiner: A Framework for Automatic Mining of Architectural Issue-Solution Pairs from Online Developer Communities
Musengamana Jean de Dieu, Ruiyin Li, Peng Liang +5
Stack Overflow (SO), a leading online community forum, is a rich source of software development knowledge. However, locating architectural knowledge, such as architectural solution…
MAAD: Automate Software Architecture Design through Knowledge-Driven Multi-Agent Collaboration
Ruiyin Li, Yiran Zhang, Xiyu Zhou +5
Software architecture design is a critical, yet inherently complex and knowledge-intensive phase of software development. It requires deep domain expertise, development experience,…
Out of Distribution, Out of Luck: How Well Can LLMs Trained on Vulnerability Datasets Detect Top 25 CWE Weaknesses?
Yikun Li, Ngoc Tan Bui, Ting Zhang +16
Automated vulnerability detection research has made substantial progress, yet its real-world impact remains limited. Prior work found that current vulnerability datasets suffer fro…
Decision Models for Selecting Architecture Patterns and Strategies in Quantum Software Systems
Mst Shamima Aktar, Peng Liang, Muhammad Waseem +7
Quantum software is an emerging class of software systems, services, and applications that leverage the principles of quantum mechanics through programmable quantum bits (qubits) a…
Unveiling the Role of ChatGPT in Software Development: Insights from Developer-ChatGPT Interactions on GitHub
Ruiyin Li, Peng Liang, Yifei Wang +3
The advent of Large Language Models (LLMs) has introduced a new paradigm in Software Engineering (SE), with generative AI tools like ChatGPT gaining widespread adoption among devel…
Using LLMs in Generating Design Rationale for Software Architecture Decisions
Xiyu Zhou, Ruiyin Li, Peng Liang +4
Design Rationale (DR) for software architecture decisions refers to the reasoning underlying architectural choices, which provides valuable insights into the different phases of th…
Knowledge-Based Multi-Agent Framework for Automated Software Architecture Design
Yiran Zhang, Ruiyin Li, Peng Liang +2
Architecture design is a critical step in software development. However, creating a high-quality architecture is often costly due to the significant need for human expertise and ma…
Towards Automated Identification of Violation Symptoms of Architecture Erosion
Ruiyin Li, Peng Liang, Paris Avgeriou +1
Architecture erosion harms software maintenance when implementation deviates from intended architecture. Early detection of violation symptoms is essential, and code review comment…
Code Reviewer Recommendation for Architecture Violations: An Exploratory Study
Ruiyin Li, Peng Liang, Paris Avgeriou
Code review is a common practice in software development and often conducted before code changes are merged into the code repository. A number of approaches for automatically recom…
Warnings: Violation Symptoms Indicating Architecture Erosion
Ruiyin Li, Peng Liang, Paris Avgeriou
As a software system evolves, its architecture tends to degrade, and gradually impedes software maintenance and evolution activities and negatively impacts the quality attributes o…
Symptoms of Architecture Erosion in Code Reviews: A Study of Two OpenStack Projects
Ruiyin Li, Mohamed Soliman, Peng Liang +1
The phenomenon of architecture erosion can negatively impact the maintenance and evolution of software systems, and manifest in a variety of symptoms during software development. W…
Understanding Software Architecture Erosion: A Systematic Mapping Study
Ruiyin Li, Peng Liang, Mohamed Soliman +1
Architecture erosion (AEr) can adversely affect software development and has received significant attention in the last decade. However, there is an absence of a comprehensive unde…
Understanding Architecture Erosion: The Practitioners' Perceptive
Ruiyin Li, Peng Liang, Mohamed Soliman +1
As software systems evolve, their architecture is meant to adapt accordingly by following the changes in requirements, the environment, and the implementation. However, in practice…