An Empirical Evaluation of Large Language Models Applying Software Architectural Patterns
Abstract
1. Introduction
- To what extent can LLMs correctly apply explicitly requested software architectural patterns by creating specific architectural diagrams?
- How does requirement representation affect the ability of LLMs to apply architectural patterns?
- How does RAG affect the quality of LLM-generated diagrams?
- Can LLMs calculate reliable quantitative metrics regarding the diagrams they generate?
2. Related Work
- There is limited empirical evidence on how different requirement representations influence the ability of LLMs to correctly apply architectural patterns.
- There is no consensus on the most appropriate representation of generated architectures, whether as diagram-as-code (DaC), images, XML-based formats, or architecture-as-code approaches.
- There is no established set of qualitative and quantitative evaluation dimensions for assessing generated architectures.
- There is no commonly adopted dataset or benchmark that enables reproducible comparison of LLMs and prompting strategies across architectural problems of varying complexity.
- It investigates prompting strategies using alternative representations of requirements, including both structured requirement descriptions and RAG, in order to assess their impact on architectural pattern application.
- It demonstrates the suitability of DaC for representing the generated architectures, enabling structured and consistent outputs.
- It investigates the definition and application of qualitative and quantitative criteria for the systematic evaluation of generated architectures.
- It proposes a reusable experimental workflow for systematically investigating how different requirement representations, model configurations, and retrieval settings influence LLM-generated software architectures.
3. Experimental Design
- Comparability: Interactive guidance, prompt engineering, or any other technique that would result in a per-experiment multi-step dialog with the LLM would limit the comparability of each model’s ability to interpret a fixed problem specification and produce an architectural design.
- Controlled stochastic variability: Repeated executions of the same prompt may generate different outputs due to the stochastic behavior of LLMs. Analyzing such variability would require repeated sampling and statistical aggregation procedures across multiple runs, introducing an additional experimental dimension beyond the scope of the present study.
- Scope of investigation: Studying variability across repeated executions requires a different experimental setup based on repeated sampling and statistical analysis of established quantitative measures to assess generated outputs. It also introduces additional design considerations, such as the number of repetitions and execution conditions (e.g., whether executions are performed within the same interaction context or across independent runs), which can significantly influence the results and is out of the scope of this work.
- Requirement format: functional and non-functional requirements expressed either as textual lists (two variants) or as an SRS document, also in two variants, as discussed below.
- Model type and size: locally executed models with varying numbers of parameters, as well as publicly available commercial models.
- Use of RAG: enabled or disabled.
- RAG source material: architectural reference material obtained either from academic textbooks or curated web-based descriptions of architectural patterns.
- Embedding and retrieval configuration: embedding model, chunking strategy, and retrieval parameters used in the RAG pipeline.
3.1. Execution of Experiments
3.2. Phase 1: Dummy Coordinate Converter
3.3. Phase 2: MyCharts App
3.4. Qualitative Evaluation Dimensions
- Phase 1 Evaluation Criteria
- Adherence to architecture: whether the LLM-generated diagram respects the structural principles of the requested architectural pattern and assigns responsibilities to appropriate components.
- Correctness of class relationships: whether associations, dependencies, and directions of interaction between classes are appropriate.
- Cohesion and coupling: whether related responsibilities are grouped within appropriate components while unnecessary inter-class dependencies are avoided.
- Consistency with requirements: whether the generated architecture satisfies the specific in-context functional and non-functional requirements described in the input.
- Phase 2 Evaluation Criteria
- Functional alignment and responsibility distribution: whether each microservice corresponds to a bounded context and implements a focused set of functionalities.
- Coupling and deployment independence: whether services are loosely coupled and designed for independent deployment.
- Cohesion: whether each service maintains strong internal cohesion and whether use cases involve the appropriate set of services.
- Data management: whether each service owns and manages its own data rather than relying on shared databases.
- Data consistency: whether the design includes mechanisms for maintaining data consistency across services, such as through events or transactions.
- Communication and flow control: whether service interactions are implemented using appropriate coordination mechanisms, such as choreography, orchestration, messaging systems, or API gateways.
- Non-functional requirements: whether the architecture satisfies the system-level non-functional requirements described in the input specification.
- Inter-rater agreement
3.5. Quantitative Metrics for Microservices
4. Results
4.1. Examples of Generated UML Diagrams
4.2. Answers to Research Questions
- RQ1: To what extent can LLMs correctly apply explicitly requested software architectural patterns by creating specific architectural diagrams?
- RQ2: How does requirement representation affect the ability of LLMs to apply architectural patterns?
- RQ3: How does RAG affect the quality of the LLM-generated diagrams?
- RQ4: Can LLMs calculate reliable quantitative metrics regarding the diagrams they generate?
5. Threats to Validity
5.1. Internal Validity
5.1.1. Subjectivity of Expert Evaluation
5.1.2. Single-Run Executions
5.2. Construct Validity
Architectural Representation
5.3. External Validity
5.3.1. Model Selection
5.3.2. Problem Scope and Architectural Patterns
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Appendix A. Evaluation Rubric
Appendix A.1. Dummy Coordinate Converter
| Score | Violation/Condition | Qualitative Descriptor |
|---|---|---|
| 1. Adherence to Architecture | ||
| 5 | No violations. Correct pattern applied with full layer/role separation. | The diagram is a textbook instantiation of the requested pattern. All structural rules (e.g., no direct presentation-to-data link in 3-tier, controller mediates in MVC, and server owns data in client–server) are satisfied without exception. All requirements are satisfied. |
| 4 | Minor misplacement: one class assigned to a slightly incorrect layer/role. | The pattern is clearly recognizable and largely correct. A single component sits in the wrong layer (e.g., a utility class placed in the data layer), but this does not alter the overall structural logic. All requirements are satisfied. |
| 3 | Moderate misplacement: noticeable responsibility or dependency violations across two layers/roles. | The intended pattern is still identifiable, but there is a clear responsibility violation. For example, conversion logic is implemented inside the view or a data-access method exposed by the presentation tier. Few requirements are not satisfied. |
| 2 | Major structural deviation: multiple responsibilities assigned to wrong layers. | The pattern shape is present in name only; the responsibilities are largely misallocated. A reviewer can identify the intended pattern with effort but would not accept the design as compliant. Few requirements are satisfied. |
| 1 | Pattern barely recognizable: structural rules largely ignored; only superficial labeling matches. | Layer or role labels are present, but the underlying structure does not respect their semantics. Most components ignore the pattern’s constraints. Few requirements may be implicitly satisfied. |
| 0 | No meaningful adherence: wrong pattern applied or no discernible pattern structure. | The diagram either applies a completely different pattern from the one requested or shows no pattern awareness whatsoever. The output cannot be evaluated against the target pattern. |
| 2. Correctness of Class Relationships | ||
| 5 | No violations. All associations, dependencies, and directions are correct and consistent. | Every relationship type (association, dependency, inheritance, etc.) and its direction are appropriate for the pattern and the system. No redundant or missing links. |
| 4 | One or two incorrect or missing relationships (e.g., wrong direction or wrong relationship type). | All major structural links are present. One or two edges are misdirected or use the wrong UML relationship type (e.g., dependency instead of association), but the impact on readability is minimal. |
| 3 | Three to four relationship errors, or one fundamentally wrong dependency between key components. | The diagram is still interpretable, but a noticeable number of links are wrong or missing. A human reviewer would need to mentally correct these to understand the design intent. |
| 2 | Multiple wrong relationships that obscure the data or service flow. | Incorrect or missing relationships are pervasive enough to make it difficult to trace the system’s primary sharing of responsibilities. Understanding the architecture requires significant inference beyond what is shown. |
| 1 | Widespread incorrect or missing relationships throughout the diagram. | Almost all inter-class links are wrong, missing, or contradictory. The diagram’s relationship structure provides little useful information about the system. |
| 0 | Relationships are absent or completely wrong across the entire diagram. | No meaningful relationship structure exists. Classes appear as isolated boxes, or all relationships are fundamentally incorrect (e.g., all arrows reversed; wrong or hallucinated types throughout). |
| 3. Cohesion and Coupling | ||
| 5 | No violations. Related responsibilities correctly grouped; no unnecessary inter-class dependencies. | Each class has a single well-defined responsibility. No unnecessary coupling between unrelated components is present. The design minimizes dependencies while keeping related logic together. |
| 4 | One class with slightly mixed responsibilities, or one unnecessary coupling between two components. | The design is clean overall. One minor cohesion issue exists (e.g., a class that handles both data formatting and persistence), but it does not affect the overall structural quality. |
| 3 | One class with clearly confused responsibilities, OR two unnecessary couplings between logically unrelated components. | A clear but isolated cohesion or coupling problem is present. The affected component is identifiable and would need refactoring, but the rest of the diagram is sound. |
| 2 | Two or more classes with mixed responsibilities, or excessive coupling between several unrelated components. | Cohesion and coupling issues are widespread enough to compromise the principles of the design. The architecture shows signs of a “god class” or excessive cross-cutting dependencies. |
| 1 | Widespread responsibility mixing or coupling that fundamentally breaks the pattern’s modularity. | The design has almost no meaningful separation of concerns. Responsibilities are scattered arbitrarily, no respect for SRP principle, and coupling is pervasive. The pattern’s modularity intent is not achieved. |
| 0 | No meaningful cohesion; all classes entangled with unrelated responsibilities. | Every class mixes unrelated responsibilities, and the diagram shows no attempt at separation of concerns. The coupling structure makes the design uninterpretable. |
| 4. Consistency with Requirements | ||
| 5 | No violations. All functional requirements addressed in the architecture. | Every stated functional requirement (e.g., coordinate creation, storage, retrieval, conversion, and deletion) is reflected in the generated classes and relationships. |
| 4 | One minor functional requirement not satisfied or only partially present. | The architecture covers the system comprehensively. One secondary operation (e.g., label-based retrieval) is absent or implied rather than explicitly modeled. |
| 3 | One important functional requirement missing. | A meaningful gap exists. For example, conversion logic is not represented in any class, or other key operations are missing. |
| 2 | Two or more functional requirements missing, OR a design constraint violated. | Multiple required capabilities are absent. An evaluator comparing the diagram against the requirement list would find several uncovered items. |
| 1 | Core system functionality absent from the architecture. | The architecture is missing fundamental capabilities. For example, no storage layer, no conversion logic, or no user interaction classes despite these being central to the described system. |
| 0 | Architecture does not address the described system at all. | The generated diagram is generic, unrelated to the requirements, or so incomplete that no meaningful coverage assessment is possible. |
Appendix A.2. MyCharts
| Score | Violation/Condition | Qualitative Descriptor |
|---|---|---|
| 1. Functional Alignment and Responsibility Distribution | ||
| 5 | No violations. Each service maps to a clearly defined bounded context with focused non-overlapping responsibilities. | The decomposition is principled: every microservice corresponds to a distinct business capability (e.g., chart management, user management, or export), with no overlapping or duplicated responsibilities across services. Orchestration is clear. |
| 4 | One service has a slightly broad or ill-defined scope. | The decomposition is generally sound, and orchestration is visible. One service is marginally overloaded or its boundary is slightly ambiguous (e.g., it handles two closely related but distinguishable functions), but the overall design intent is clear. |
| 3 | One service merges two distinct bounded contexts, or one core function is missing from any service. | A meaningful decomposition error is present. Either two separate business capabilities are merged into one service or one significant system function has no corresponding service in the diagram. |
| 2 | Multiple services with unclear or overlapping functional boundaries. | Service boundaries are poorly defined in several places. An evaluator cannot unambiguously understand assigned responsibilities to individual services. The decomposition appears driven by technical rather than business concerns. |
| 1 | Services defined primarily by technical layer rather than business capability (monolith in disguise). | Services are named and structured like technical tiers (e.g., “DataService” and “LogicService”), clearly violating the microservice principles. The design replicates a layered monolith rather than a microservice decomposition. |
| 0 | No meaningful functional decomposition into independent services. | The diagram does not decompose the system into functionally distinct services. All functionality is lumped into one or two units, or the services shown are entirely arbitrary. |
| 2. Coupling and Deployment Independence | ||
| 5 | No violations. Services communicate via well-defined interfaces (APIs/events); each is independently deployable. | All inter-service interactions are mediated through explicit well-defined interfaces. No service depends on the internal implementation of another. Each service could be deployed, scaled, and updated independently without affecting others. Orchestration is clearly recognizable. |
| 4 | One unnecessary direct call or tight dependency between two services. | One pair of services is more tightly coupled than necessary (e.g., a direct method invocation where a message-based call was expected), but the rest of the architecture preserves independence. |
| 3 | Two tight inter-service dependencies, OR shared mutable state between two services. | Two coupling violations are present, or two services share mutable state (e.g., a partially shared table). Independent deployment of at least one service is compromised. |
| 2 | Multiple services share a single database or common runtime components. | The shared-database anti-pattern is present: two or more services read and write to the same datastore without ownership boundaries. Deployment independence is significantly undermined. |
| 1 | All services share infrastructure or cannot be independently deployed. | The architecture provides no meaningful deployment independence. Services share all runtime dependencies and would need to be deployed as a unit. |
| 0 | No deployment independence; architecture is at best effectively monolithic. | There is no evidence of service isolation or independent deployability. The diagram describes a monolithic system regardless of how the components are labeled. |
| 3. Cohesion | ||
| 5 | No violations. Each service has strong internal cohesion; use cases involve the correct and minimal set of services. | Every service groups tightly related operations and data. Use cases are realized by the minimal necessary set of services, with no unnecessary service involvement in any workflow. |
| 4 | One service contains one slightly unrelated operation. | The architecture is cohesive overall. One operation in one service does not fully belong there (e.g., a notification method in a chart service), but the deviation is minor and localized. |
| 3 | One service is clearly overloaded with unrelated responsibilities. | A single service acts as a catch-all for unrelated functions. The service is identifiably a cohesion problem, but the rest of the architecture is reasonably well structured. |
| 2 | Multiple services with mixed responsibilities. | Cohesion problems appear in several services. Common workflows involve more services than necessary, indicating poor responsibility assignment across the board. |
| 1 | Widespread mixed responsibilities; cohesion principle largely absent from the design. | Almost no service has a coherent focused responsibility. Operations are distributed across services without a discernible organizing principle. |
| 0 | No cohesion; responsibilities distributed arbitrarily across services. | Responsibilities appear to be assigned randomly. There is no evidence of any deliberate cohesion principle in the decomposition. |
| 4. Data Management | ||
| 5 | No violations. Each service owns and manages its own dedicated datastore; no shared databases. | Every service that requires persistence has its own dedicated datastore (e.g., its own DB schema or instance), and no service accesses another service’s datastore directly. Data ownership is clear and enforced structurally. |
| 4 | One service accesses another service’s datastore directly (single violation). | One cross-service data access exists where inter-service API calls should be used instead. The violation is isolated; all other services manage their data independently. |
| 3 | Two data ownership violations, OR one service has no datastore despite requiring persistence. | Two instances of improper cross-service data access exist, or a service that clearly needs persistence (e.g., a chart repository service) has no corresponding datastore. |
| 2 | Multiple services share a database, OR a centralized data layer is present. | The shared-database anti-pattern is clearly present. Two or more services operate on the same datastore, making independent evolution of those services impossible. |
| 1 | Most services lack dedicated datastores; data ownership is not addressed. | The vast majority of services have no ownership of data. Persistence is either centralized or entirely absent, suggesting total absence of data isolation. |
| 0 | Single shared datastore for all services, or no data management present. | Either one monolithic datastore serves all services (full anti-pattern) or the diagram contains no datastore elements at all, making it impossible to assess data ownership. |
| 5. Data Consistency | ||
| 5 | Explicit cross-service consistency mechanisms present (e.g., events, sagas, and distributed transactions). | The diagram explicitly models mechanisms for maintaining data consistency across services, such as an event bus, a saga orchestrator, or transaction-aware service interactions, as appropriate to the system’s requirements. |
| 4 | Consistency mechanism implied but not explicitly modeled (e.g., event-driven hints in method names only). | There is evidence of consistency awareness (e.g., method names like publishEvent or rollback), but the mechanism itself (event bus, saga class, etc.) is not present as a first-class element in the diagram. |
| 3 | Consistency mechanism partially modeled for some services only. | A consistency mechanism exists in the diagram, but it covers only part of the system. Some cross-service interactions that require consistency guarantees are left unaddressed. |
| 2 | No consistency mechanism present despite the pattern requiring cross-service coordination. | Services interact across boundaries in ways that require consistency guarantees (e.g., a chart creation flow that touches multiple services), but no consistency mechanism of any kind is included. |
| 1 | Consistency explicitly violated. | The design actively uses an anti-pattern as its implicit consistency strategy, for instance having services share a database to avoid distributed consistency, which defeats the purpose of microservices. |
| 0 | Data consistency completely absent and the architecture makes it structurally impossible. | The architecture has no consistency mechanism, and its structural choices (e.g., no events, no messaging layer, and all services fully isolated with no coordination) preclude adding one without redesign. |
| 6. Communication and Flow Control | ||
| 5 | Appropriate coordination mechanisms modeled (choreography, orchestration, messaging, and API gateway). | The diagram includes explicit appropriate inter-service communication mechanisms. Synchronous and asynchronous interactions are distinguished where relevant. An API gateway or equivalent entry point may be present. |
| 4 | Communication mechanism present but one interaction uses an inappropriate style. | The overall communication structure is sound. One inter-service call uses the wrong style, but this is isolated. |
| 3 | Two inappropriate interactions, OR coordination mechanism absent for one significant flow. | Two communication style violations exist, or one important workflow (e.g., chart export pipeline) has no coordination mechanism, leaving the flow control implicit. |
| 2 | No API gateway or orchestration; ad hoc direct coupling throughout. | Services communicate through direct ad hoc calls with no gateway, broker, or orchestrator. The communication structure does not reflect microservice best practices and would not scale. |
| 1 | Communication between services is undefined or modeled as direct in-process calls. | Services appear to call each other as if they share a process (e.g., direct method calls with no network boundary). The inter-service communication model is absent or fundamentally incorrect. |
| 0 | No inter-service communication present. | Services appear in isolation with no connections between them. It is impossible to determine how the system would function as a whole. |
| 7. Non-Functional Requirements | ||
| 5 | Architecture clearly satisfies all NFRs (scalability, security, availability, and technology constraints). | Structural decisions in the diagram are visibly informed by the stated NFRs. For example, stateless services support horizontal scalability; security components (auth service and gateway) are present. |
| 4 | One NFR partially addressed, or one technology constraint overlooked. | The architecture satisfies almost all NFRs. One constraint is absent or only implicitly addressed. For example, authentication is implied by a method name but no dedicated auth component is modeled. |
| 3 | Two NFRs unaddressed, OR one critical NFR (e.g., security or scalability) ignored. | A significant NFR gap exists. Either multiple minor NFRs are missing or one critical quality attribute that the requirements explicitly call out has no structural representation in the diagram. |
| 2 | Multiple NFRs absent; architecture does not account for operational concerns. | The diagram reflects only the functional structure of the system. Operational NFRs are not reflected in any structural decision, suggesting they were not considered. |
| 1 | NFRs almost entirely absent from structural decisions. | The architecture is functionally oriented with essentially no NFR-driven decisions. An architect reviewing the diagram would need to redesign significant portions to address the stated quality attributes. |
| 0 | NFRs completely ignored; no NFR-driven structural decision is visible. | The generated architecture makes no accommodation for any non-functional requirement and would need to be fundamentally reconsidered. |
References
- ISO/IEC/IEEE 42010:2022; Software, Systems and Enterprise-Architecture Description. International Organization for Standardization: Geneva, Switzerland, 2022.
- Sommerville, I. Software Engineering, 10th ed.; Global Edition; Pearson Education Limited: Harlow, UK, 2016. [Google Scholar]
- Chen, M.; Tworek, J.; Jun, H.; Yuan, Q.; de Oliveira Pinto, H.P.; Kaplan, J.; Edwards, H.; Burda, Y.; Joseph, N.; Brockman, G.; et al. Evaluating Large Language Models Trained on Code. arXiv 2021, arXiv:2107.03374. [Google Scholar] [CrossRef] [Scilit]
- Wang, J.; Chen, Y. A Review on Code Generation with LLMs: Application and Evaluation. In Proceedings of the 2023 IEEE International Conference on Medical Artificial Intelligence (MedAI), Beijing, China, 18–19 November 2023; pp. 284–289. [Google Scholar] [CrossRef] [Scilit]
- Naimi, L.; Bouziane, E.M.; Jakimi, A.; Saadane, R.; Chehri, A. Automating Software Documentation: Employing LLMs for Precise Use Case Description. Procedia Comput. Sci. 2024, 246, 1346–1354. [Google Scholar] [CrossRef] [Scilit]
- Eramo, R.; Said, B.; Oriol, M.; Bruneliere, H.; Morales, S. An architecture for model-based and intelligent automation in DevOps. J. Syst. Softw. 2024, 217, 112180. [Google Scholar] [CrossRef] [Scilit]
- Bouzenia, I.; Devanbu, P.; Pradel, M. RepairAgent: An Autonomous, LLM-Based Agent for Program Repair. In Proceedings of the 2025 IEEE/ACM 47th International Conference on Software Engineering (ICSE), Ottawa, ON, Canada, 26 April–6 May 2025; pp. 2188–2200. [Google Scholar] [CrossRef] [Scilit]
- Ferrari, A.; Abualhaija, S.; Arora, C. Model Generation with LLMs: From Requirements to UML Sequence Diagrams. In Proceedings of the 2024 IEEE 32nd International Requirements Engineering Conference Workshops (REW), Reykjavik, Iceland, 24–25 June 2024; pp. 291–300. [Google Scholar] [CrossRef] [Scilit]
- Gheorghita, S.; Irimia, C.I.; Iftene, A. Automating Software Diagram Generation with Large Language Models. Procedia Comput. Sci. 2025, 270, 713–722. [Google Scholar] [CrossRef] [Scilit]
- Eisenreich, T.; Speth, S.; Wagner, S. From Requirements to Architecture: An AI-Based Journey to Semi-Automatically Generate Software Architectures. In Proceedings of the 1st International Workshop on Designing Software, Lisbon, Portugal, 14–15 April 2024; Designing ’24, pp. 52–55. [Google Scholar] [CrossRef] [Scilit]
- Yang, S.; Sahraoui, H. Towards automatically extracting UML class diagrams from natural language specifications. In Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings, Montreal, QC, Canada, 23–28 October 2022; MODELS ’22, pp. 396–403. [Google Scholar] [CrossRef] [Scilit]
- Cámara, J.; Troya, J.; Burgueño, L.; Vallecillo, A. On the assessment of generative AI in modeling tasks: An experience report with ChatGPT and UML. Softw. Syst. Model. 2023, 22, 781–793. [Google Scholar] [CrossRef] [Scilit]
- De Bari, D.; Garaccione, G.; Coppola, R.; Torchiano, M.; Ardito, L. Evaluating Large Language Models in Exercises of UML Class Diagram Modeling. In Proceedings of the 18th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, Barcelona, Spain, 24–25 October 2024; ESEM ’24, pp. 393–399. [Google Scholar] [CrossRef] [Scilit]
- Al-Ahmad, B.; Alsobeh, A.; Meqdadi, O.; Shaikh, N. A Student-Centric Evaluation Survey to Explore the Impact of LLMs on UML Modeling. Information 2025, 16, 565. [Google Scholar] [CrossRef] [Scilit]
- Nikhil Krishnan, G.S.; Ambadi, S.; Thushara, M.G. Comparative Analysis of Large Language Models for Automated Use Case Diagram Generation. In Proceedings of the 3rd International Conference on Futuristic Technology—Volume 2: INCOFT. INSTICC; SciTePress: Setúbal, Portugal, 2025; pp. 465–471. [Google Scholar] [CrossRef] [Scilit]
- Dhar, R.; Vaidhyanathan, K.; Varma, V. Can LLMs Generate Architectural Design Decisions?—An Exploratory Empirical Study. In Proceedings of the 2024 IEEE 21st International Conference on Software Architecture (ICSA), Hyderabad, India, 4–8 June 2024; pp. 79–89. [Google Scholar] [CrossRef] [Scilit]
- Schindler, C.; Rausch, A. Formal Software Architecture Rule Learning: A Comparative Investigation between Large Language Models and Inductive Techniques. Electronics 2024, 13, 816. [Google Scholar] [CrossRef] [Scilit]
- Jahić, J.; Sami, A. State of Practice: LLMs in Software Engineering and Software Architecture. In Proceedings of the 2024 IEEE 21st International Conference on Software Architecture Companion (ICSA-C), Hyderabad, India, 4–8 June 2024; pp. 311–318. [Google Scholar] [CrossRef] [Scilit]
- Ferrari, A.; Spoletini, P. Formal requirements engineering and large language models: A two-way roadmap. Inf. Softw. Technol. 2025, 181, 107697. [Google Scholar] [CrossRef] [Scilit]
- Schmid, L.; Hey, T.; Armbruster, M.; Corallo, S.; Fuchß, D.; Keim, J.; Liu, H.; Koziolek, A. Software Architecture Meets LLMs: A Systematic Literature Review. arXiv 2025, arXiv:2505.16697. [Google Scholar] [CrossRef] [Scilit]
- Adnan, B.; Gupta, A.; Akshathala, S.; Vaidhyanathan, K. ArchBench: Benchmarking Generative-AI for Software Architecture Tasks. arXiv 2026, arXiv:2603.17833. [Google Scholar]
- Li, M.; Yan, S.; Zhang, L.; Liu, Y.; Liu, F. Benchmarking Requirement-to-Architecture Generation with Hybrid Evaluation. arXiv 2026, arXiv:2604.06683. [Google Scholar]
- Ivers, J.; Ozkaya, I. Will Generative AI Fill the Automation Gap in Software Architecting? In Proceedings of the 2025 IEEE 22nd International Conference on Software Architecture Companion (ICSA-C), Odense, Denmark, 31 March–4 April 2025; pp. 41–45. [Google Scholar] [CrossRef] [Scilit]
- Brown, S. The C4 Model: Visualizing Software Architecture; O’Reilly Media: Newton, MA, USA, 2026. [Google Scholar]
- Tsilimigkounakis, M. Exploring the Utilization of LLM Tools in Software Architecture. Master’s Thesis, School of Electrical and Computer Engineering, National Technical University of Athens, Athens, Greece, 2024. [Google Scholar]
- ISO/IEC/IEEE 29148:2018; Systems and Software Engineering-Life Cycle Processes-Requirements Engineering. International Organization for Standardization: Geneva, Switzerland, 2018.
- Sotiropoulos, G. Investigation of AI Tools Performance in the Definition of Microservices Software Architectures. Master’s Thesis, School of Electrical and Computer Engineering, National Technical University of Athens, Athens, Greece, 2025. [Google Scholar]
- Richardson, C. Microservices Patterns: With Examples in Java; Manning Publications: Shelter Island, NY, USA, 2019. [Google Scholar]
- Malhotra, N. Microservices Design Patterns; ValueLabs: Hyderabad, India, 2023. [Google Scholar]
- Engel, T.; Langermeier, M.; Bauer, B.; Hofmann, A. Evaluation of Microservice Architectures: A Metric and Tool-Based Approach. In Proceedings of the Information Systems in the Big Data Era; Springer: Cham, Switzerland, 2018; pp. 74–89. [Google Scholar] [CrossRef] [Scilit]
- Bogner, J.; Wagner, S.; Zimmermann, A. Towards a practical maintainability quality model for service-and microservice-based systems. In Proceedings of the 11th European Conference on Software Architecture: Companion Proceedings, Canterbury, UK, 11–15 September 2017; ECSA ’17, pp. 195–198. [Google Scholar] [CrossRef] [Scilit]
- Bogner, J.; Wagner, S.; Zimmermann, A. Automatically measuring the maintainability of service- and microservice-based systems: A literature review. In Proceedings of the 27th International Workshop on Software Measurement and 12th International Conference on Software Process and Product Measurement, Gothenburg, Sweden, 25–27 October 2017; IWSM Mensura ’17; pp. 107–115. [Google Scholar] [CrossRef] [Scilit]
- Object Management Group. XML Metadata Interchange (XMI) Specification; Version 2.5.1, Technical Report; OMG: Needham, MA, USA, 2015. [Google Scholar]
- Pan, F.; Petrovic, N.; Zolfaghari, V.; Wen, L.; Knoll, A. LLM-enabled Instance Model Generation. arXiv 2025, arXiv:2503.22587. [Google Scholar] [CrossRef] [Scilit]
- Bucaioni, A.; Di Salle, A.; Iovino, L.; Pelliccione, P.; Raimondi, F. Architecture as Code. In Proceedings of the 2025 IEEE 22nd International Conference on Software Architecture (ICSA), Odense, Denmark, 31 March–4 April 2025; pp. 187–198. [Google Scholar] [CrossRef] [Scilit]
















| Level | Metric | Definition |
|---|---|---|
| Architecture | Statelessness index | |
| Data ownership coverage | ||
| Service transaction share | ||
| Service | Service interface complexity | |
| Afferent service coupling | ||
| Efferent service coupling |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license.
Share and Cite
Hadjichristofi, C.; Tsilimigkounakis, M.; Sotiropoulos, G.; Vescoukis, V. An Empirical Evaluation of Large Language Models Applying Software Architectural Patterns. AI 2026, 7, 195. https://doi.org/10.3390/ai7060195
Hadjichristofi C, Tsilimigkounakis M, Sotiropoulos G, Vescoukis V. An Empirical Evaluation of Large Language Models Applying Software Architectural Patterns. AI. 2026; 7(6):195. https://doi.org/10.3390/ai7060195
Chicago/Turabian StyleHadjichristofi, Christos, Michail Tsilimigkounakis, Georgios Sotiropoulos, and Vassilios Vescoukis. 2026. "An Empirical Evaluation of Large Language Models Applying Software Architectural Patterns" AI 7, no. 6: 195. https://doi.org/10.3390/ai7060195
APA StyleHadjichristofi, C., Tsilimigkounakis, M., Sotiropoulos, G., & Vescoukis, V. (2026). An Empirical Evaluation of Large Language Models Applying Software Architectural Patterns. AI, 7(6), 195. https://doi.org/10.3390/ai7060195

