Skip to content

Research paper analysing the impact of LLMs in software engineering

License

Notifications You must be signed in to change notification settings

ragini-kalvade/SE-Research

Repository files navigation

Revolutionizing Software Engineering with Large Language Models: Impacts Across the Development Lifecycle

Overview

This repository contains resources and insights from the project "Revolutionizing Software Engineering with Large Language Models: Impacts Across the Development Lifecycle". The paper examines the transformative effects of Large Language Models (LLMs) on various stages of the software development process, from requirement analysis to testing and code review.

Contents

  • Presentation: Presentation highlighting the role of LLMs in each phase of software engineering.
  • Research Paper : A comprehensive analysis of LLM impacts across the software development lifecycle.
  • References: A list of tools and studies cited in the project.

Key Highlights

Requirement Analysis

  • Challenges: Incompleteness and ambiguity in requirements lead to increased rework and defects.
  • LLM Impacts:
    • Enhanced detection of requirement smells (e.g., incompleteness, vagueness).
    • Tools like Paska and Smella utilize NLP for analyzing and refining requirements.

Coding

  • LLM Contributions:
    • Accelerated code generation and bug fixing.
    • Automates repetitive tasks, allowing developers to focus on complex challenges.
  • Risks:
    • Over-reliance on LLMs may erode core coding skills.
    • Requires rigorous quality assurance to avoid security flaws.

Testing

  • LLM-Enhanced Tools:
    • Diffblue Cover: Automates Java unit test generation.
    • Improves fuzz testing and debugging efficiency.
  • Advantages:
    • Streamlines test generation and debugging.
    • Enhances input diversity for comprehensive test coverage.

Code Review

  • Automated Advancements:
    • Comment-to-Code and Code-to-Comment transformations.
    • Example: Google’s asynchronous code review automation saves significant engineering hours.
  • Limitations:
    • Struggles with complex, multi-file refactorings.
    • Data quality issues may affect reliability.

Ethical Considerations

  • Concerns:
    • Privacy risks and intellectual property violations.
    • Training biases may lead to discriminatory outputs.
  • Opportunities:
    • Improved transparency and auditing for LLM applications.

References

Insights

This paper illuminated the transformative potential of LLMs in software engineering, particularly their ability to automate repetitive tasks and enhance decision-making. However, it also highlighted the ethical and skill-related challenges posed by their adoption. Future work will focus on balancing automation with skill development and addressing bias in LLM outputs.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contributions

Contributions are welcome! Feel free to submit issues or pull requests for improvements and further discussions.

Contact

For more details, contact Ragini Kalvade at [email protected], University of Illinois at Chicago.

About

Research paper analysing the impact of LLMs in software engineering

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published