Diplomová práce

LLM-assisted Software Architecture Analysis

Peter Verčimák
Anotace

Táto práca predstavuje nástroj na statickú analýzu architektúry C# riešení v kombinácii s vysvetľovaním pomocou lokálne hosťovaného LLM. Roslyn sa používa na extrakciu typovaného dependency grafu, ktorý zachytáva signature-level aj body-level vzťahy medzi triedami, interface-ami, structami a recordmi. Každá hrana je označená konkrétnym druhom závislosti a je podložená dôkazmi zo zdrojového kódu. Skupina …více

Abstract

This thesis presents a tool for static architectural analysis of C# solutions combined with explanation by a local large language model. Roslyn is used to extract a typed dependency graph that records signature-level and body-level relationships between classes, interfaces, structs, and records, with each edge labelled by its dependency kind and backed by source evidence. A family of graph analyzers …více

Zadání práce
The focus of this thesis will be on static dependency analysis of C# solutions combined with LLM-assisted reasoning to identify architectural issues and propose refactoring recommendations. The foreseen tasks are:
  • Use Roslyn to extract an explainable type-level dependency graph (classes/interfaces/structs/records), including both signature dependencies and selected body-level dependencies (e.g., invocations, object creation, member access).  
  • Analyze the graph to detect architectural smells and structural issues (e.g., cyclic dependencies, hub/excessive coupling, layering or forbidden-dependency violations).  
  • Utilize a local LLM (e.g., via Ollama) to interpret the findings and algorithmic refactoring candidates and to propose targeted refactoring recommendations, including citations to the extracted evidence.  
  • Present recommendations to the user (e.g., CLI reports and structured JSON output; optionally interactive visualization).  
  • Evaluate the solution on real-world repositories and compare selected results with existing analyzers/tools.  
  • Evaluate and compare LLMs with different sizes and context-window capacities.
 All source code created as part of this thesis will be submitted to IS and will be made publicly available under the MIT License.
Práce zkontrolována:
20. 5. 2026 09:39, doc. Bruno Rossi, PhD, učo 232464
Jazyk práce
angličtina angličtina
Termín obhajoby
19. 6. 2026
Práce byla úspěšně obhájena

Vedoucí

doc. Bruno Rossi, PhD, učo 232464
KPSK FI MU

Oponent

RNDr. Stanislav Chren, Ph.D., učo 255471
abs FI MU

Konzultant

Ing. Lukáš Hübner
Thermo Fisher Scientific

Masarykova univerzita Fakulta informatiky
Studijní program
Plán
Návrh a vývoj softwarových systémů

Práce na příbuzné téma

Seznam prací, které mají shodná klíčová slova.

  • Přidání souboru

    Soubor nebo složku lze nahrát pomocí tlačítka Přidat.
  • Další operace se soubory

    Podrobnosti lze zjistit označením příslušného řádku.
  • Pohled pro experty

    Pro častou práci je možné zvolit režim Více možností.
  • Vyhledávání souborů

    Vyhledávaný výraz můžete zadat přímo do adresního řádku.
  • Rychlý přístup k souborům

    Pomocí funkce Nedávné je možné se rychle vrátit k právě prohlíženým souborům. Oblíbené soubory je také možné označit Hvězdičkou.