Детальная информация

Название Разработка инструмента автоматического анализа архитектурных особенностей программных систем на C#: выпускная квалификационная работа бакалавра: направление 09.03.03 «Прикладная информатика» ; образовательная программа 09.03.03_03 «Интеллектуальные инфокоммуникационные технологии» = Development of a tool for automatic analysis of architectural features of software systems in C#
Авторы Плиска Николай Васильевич
Научный руководитель Туральчук Константин Анатольевич
Организация Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Выходные сведения Санкт-Петербург, 2026
Коллекция Выпускные квалификационные работы ; Общая коллекция
Тематика статический анализ кода ; архитектурные метрики ; обнаружение антипаттернов ; обнаружение аномалий ; большие языковые модели ; static code analysis ; architectural metrics ; antipattern detection ; anomaly detection ; large language models
Тип документа Выпускная квалификационная работа бакалавра
Язык Русский
Уровень высшего образования Бакалавриат
Код специальности ФГОС 09.03.03
Группа специальностей ФГОС 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2026/vr/vr26-1952
Права доступа Доступ по паролю из сети Интернет (чтение, печать, копирование)
Дополнительно Новинка
Ключ записи ru\spstu\vkr\42530
Дата создания записи 21.08.2026

Разрешенные действия

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа Анонимные пользователи
Сеть Интернет

Тема выпускной квалификационной работы: разработка инструмента автоматического анализа архитектурных особенностей программных систем на языке C#. Цель работы — создание программной системы для вычисления архитектурных метрик, выявления антипаттернов и обнаружения аномалий в исходном коде C#-проектов без предварительной сборки. Объект исследования — программные системы на языке C# как объект статического архитектурного анализа. Предмет исследования — методы и алгоритмы автоматического вычисления структурных метрик и обнаружения архитектурных антипаттернов. В процессе работы применялись методы системного анализа существующих инструментов (SonarQube, NDepend, ARCAN), методы проектирования программных систем, а также алгоритмы семантического анализа кода на основе платформы Roslyn (.NET Compiler Platform) и метод статистического обнаружения аномалий Isolation Forest. В результате спроектирован многоэтапный конвейер обработки данных, реализующий вычисление расширенного набора CK-метрик (зацепление, когезия, наследование, сложность, размер), детерминированное обнаружение 11 типов архитектурных антипаттернов и взвешенную нормализованную оценку качества класса в шкале 0–100. Разработана программная система в виде WPF-приложения с поддержкой пакетной обработки GitHub-репозиториев, экспортом в CSV/JSON, генерацией PlantUML-диаграмм и интеграцией алгоритма Isolation Forest для обнаружения статистических аномалий. Область применения результатов включает задачи контроля архитектурного качества, исследования технического долга и код-ревью C#-проектов. Основные выводы: корректность алгоритмов метрик подтверждена 113 автоматическими тестами; апробация на 6 030 классах семи реальных репозиториев показала, что система корректно отражает архитектурный профиль проектов различных типов — от образцово спроектированных библиотек до принципиально сложных промышленных фреймворков.

The subject of the graduate qualification work is the development of a tool for automatic analysis of architectural features of software systems in the C# language. The aim of the work is to develop a software system for computing architectural metrics, detecting antipatterns and statistical anomalies in C# source code without prior compilation. The object of research is C# software systems as the subject of static architectural analysis. The subject of research is the methods and algorithms for automatic computation of structural metrics and detection of architectural antipatterns. In the course of the work, methods of system analysis of existing tools (SonarQube, NDepend, ARCAN), software system design methods, as well as semantic code analysis algorithms based on the Roslyn (.NET Compiler Platform) and the Isolation Forest anomaly detection method were used. As a result, a multi-stage data processing pipeline has been designed that implements the calculation of an extended set of CK metrics (coupling, cohesion, inheritance, complexity, size), deterministic detection of 11 types of architectural antipatterns and a weighted normalized assessment of class quality on a scale of 0–100. A software system has been developed in the form of a WPF application with support for batch processing of GitHub repositories, export to CSV/JSON, generation of PlantUML diagrams and integration of the Isolation Forest algorithm to detect statistical anomalies. The scope of the results includes the tasks of architectural quality control, technical debt research, and code review of C# projects. Main conclusions: the correctness of metric algorithms was confirmed by 113 automatic tests; approbation on 6 030 classes in seven real repositories showed that the system correctly reflects the architectural profile of various types of projects, from well-designed libraries to fundamentally complex industrial frameworks.

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все
Прочитать Печать Загрузить
Интернет Авторизованные пользователи СПбПУ
Прочитать Печать Загрузить
Интернет Анонимные пользователи
  • Разработка инструмента автоматического анализа архитектурных особенностей программных систем на С#
    • Введение
    • 1. Анализ предметной области
    • 2. Проектирование системы
    • 3. Реализация системы
    • 4. Тестирование системы
    • Заключение
    • Список использованных источников
    • Приложение 1 Исходный код системы CodeCouplingAnalyzer
...