Identifying autoscaling antipatterns at design time using LLM-based explanation generation

Thumbnail Image

Date

2025

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Context. Cloud-based systems offer unique elasticity in the number of computational resources they provide. When modeling these systems, architects face the challenge of engineering elasticity to determine how to manage resource allocation. Too few resources lead to unreliable service, while too many result in unnecessary expenses. To address this, autoscaling policies can be employed to automatically adjust resource availability based on predefined conditions. Problem. Engineering elasticity is a complex task. When designing autoscaling policies, many antipatterns [SEK+23] can emerge, which are difficult to detect at design time. A system is needed that integrates simulation data to guide architects toward problematic components in their model that may lead to antipatterns. Objective. To facilitate this process, previous work [Hah23] proposed the development of a graphical editor that provides visual feedback from simulation data. Building on this foundation, we enhanced the system with textual explanations generated by LLMs to guide developers toward a deeper understanding of the SPD-model and aid in identifying antipatterns. Method. We extended existing implementations of a graphical editor for SPD-models that provide visual feedback on the design. A new feature was introduced that leverages large language models to generate textual explanations as feedback. We conceptualized different types of explanations a user might seek when working with SPD-models. Additionally, we designed templates for generating prompts that request these explanations from the LLM. Finally, we evaluated the quality of the generated explanations to assess their potential in helping developers identify and resolve antipatterns at design time while gaining a deeper understanding of the SPD-model. Result. We delivered a functional prototype that enhances previouswork with our newly implemented explanation feature. Additionally, we evaluated the quality of the generated explanations, justifying their integration into the editor. We demonstrated that the explanations are of sufficient quality to assist architects in understanding SPD-models and identifying antipatterns at design time, although there is still room for improvement. Conclusion. Experts rated most kinds of explanations with a promising rate of usefulness. This implies that architects could benefit from the explanations in identifying antipatterns, creating fixes, and gain an overall deeper understanding of the policies. However, the explanations also have problems with imprecisions and lack of conciseness in some cases. Fine-tuning the prompts, contriving new types of explanations, and advancements in LLM-technology could help reduce these problems.


Kontext Cloudbasierte Systeme bieten eine einzigartige Elastizität in der Anzahl der bereitgestellten Rechenressourcen. Bei der Modellierung dieser Systeme stehen Architekten vor der Herausforderung, die Elastizität so zu gestalten, dass die Ressourcenzuweisung effizient verwaltet wird. Zu wenige Ressourcen führen zu einem unzuverlässigen Dienst, während zu viele unnötige Kosten verursachen. Um dies zu adressieren, können Autoskalierungs Policies eingesetzt werden, die die Ressourcenzuweisung basierend auf vordefinierten Bedingungen automatisch anpassen. Problemstellung Die Gestaltung der Elastizität ist eine komplexe Aufgabe. Beim Entwurf von Autoskalierung Policies können viele Antipatterns [SEK+23] auftreten, die zur Entwurfszeit schwer zu erkennen sind. Es wird ein System benötigt, das Simulationsdaten integriert, um Architekten auf problematische Komponenten in ihrem Modell hinzuweisen, die zu Antipatterns führen könnten. Ziele Um diesen Prozess zu erleichtern, wurde in früheren Arbeiten [Hah23] die Entwicklung eines grafischen Editors vorgeschlagen, der visuelles Feedback aus Simulationsdaten liefert. Aufbauend auf dieser Grundlage erweitern wir das System um textuelle Erklärungen, die von LLMs generiert werden, um Entwicklern ein tieferes Verständnis des SPD-Modells zu ermöglichen und sie bei der Identifikation von Antipatterns zu unterstützen. Vorgehensweise Wir haben bestehende Implementierungen eines grafischen Editors für SPD-Modelle erweitert, der visuelles Feedback zum Entwurf liefert. Eine neue Funktion wurde eingeführt, die Large Language Modelle nutzt, um textuelle Erklärungen als Feedback zu generieren. Wir haben verschiedene Arten von Erklärungen konzipiert, die ein Nutzer beim Arbeiten mit SPD-Modellen benötigen könnte. Zusätzlich haben wir Vorlagen für die Erstellung von Eingabeaufforderungen (Prompts) entwickelt, die das LLM zur Generierung dieser Erklärungen verwenden kann. Abschließend haben wir die Qualität der generierten Erklärungen evaluiert, um deren Potenzial zur Unterstützung von Entwicklern bei der Identifikation und Behebung von Antipatterns zur Entwurfszeit sowie zur Vertiefung des Verständnisses des SPD-Modells zu bewerten. Ergebnisse Wir haben einen funktionalen Prototyp entwickelt, der frühere Arbeiten durch unsere neu implementierte Erklärungsfunktion erweitert. Zusätzlich haben wir die Qualität der generierten Erklärungen evaluiert und ihre Integration in den Editor gerechtfertigt. Wir konnten zeigen, dass die Erklärungen eine ausreichende Qualität aufweisen, um Architekten bei der Analyse von SPD-Modellen und der Identifikation von Antipatterns zur Entwurfszeit zu unterstützen, auch wenn weiterhin Verbesserungsmöglichkeiten bestehen. Fazit Die Experten bewerteten die meisten Erklärungen mit einer vielversprechenden Nützlichkeitsrate. Dies bedeutet, dass Architekten von den Erklärungen profitieren könnten, wenn es darum geht, Antipatterns zu identifizieren, Korrekturen zu erstellen und ein insgesamt tieferes Verständnis der Policies zu erlangen. Allerdings haben die Erklärungen auch Probleme mit Ungenauigkeiten und mangelnder Prägnanz in manchen Fällen. Eine Feinabstimmung der Prompts, die Entwicklung neuer Arten von Erklärungen und Fortschritte in der LLM-Technologie könnten dazu beitragen, diese Probleme zu verringern.

Description

Keywords

Citation

Endorsement

Review

Supplemented By

Referenced By