Document Type

Publication - Article

Using Generative Artificial Intelligence for Suggesting Software Architecture Patterns from Requirements

Department

Computing

Date of Activity

8-1-2024

Abstract

The job of software architects is vital for translating a list of requirements into a successful software product. Specifically, they are in charge of evaluating a list of requirements that the user entrusts to them, and craft an architecture that not only works, but also follows best practices. Because constructing a robust software architecture from requirements is often a complex process, our contribution is a solution that uses generative artificial intelligence (GAI) to suggest architecture patterns that best fit the given requirements with a description about how to use them in a project. The proposed solution fine tunes the Llama 2 LLM using QLoRA and SFTTrainer provided by the Hugging Face APIs with a custom dataset of requirements and patterns. The results of the experiments conducted on the fine-tuned model were moderately satisfactory, as the model correctly predicted the software architecture pattern in 70% of the test cases and provided a detailed usage explanation.

Share

COinS