Zásuvný modul do programu SonarQube umožňující detekci návrhových vzorů ve zdrojovém kódu
| dc.contributor.advisor | Ježek, David | |
| dc.contributor.author | Osmančík, Jakub | |
| dc.contributor.referee | Štolfa, Svatopluk | |
| dc.date.accepted | 2024-08-06 | |
| dc.date.accessioned | 2024-10-08T08:41:12Z | |
| dc.date.available | 2024-10-08T08:41:12Z | |
| dc.date.issued | 2024 | |
| dc.description.abstract | Návrhové vzory jsou všeobecně uznávány jako ověřená řešení běžných problémů při návrhu softwaru. Automatická detekce přítomnosti návrhových vzorů ve zdrojovém kódu však zůstává výzvou. Tato práce představuje komplexní přístup k detekci návrhových vzorů v kódu jazyka Java, pomocí detekce příznaků a integrace do stávajících nástrojů na statickou analýzu kódu. Navrhované řešení zahrnuje dva hlavní kroky. Za prvé, úvodní analýza zkoumá jednotlivé objekty a hledá atributy, metody a vztahy, které jsou charakteristické pro části jednotlivých návrhových vzorů. Tento úvodní průchod přiřadí každé potenciální instanci vzoru skóre pravděpodobnosti. Ve druhém kroku se dále analyzují vztahy mezi třídami, aby se potvrdila přítomnost struktur návrhových vzorů. Tento přístup byl vyhodnocen na různých testovacích případech, od učebnicových implementací návrhových vzorů až po reálné projekty s otevřeným zdrojovým kódem. Výsledky prokazují schopnost identifikovat struktury návrhových vzorů v kódu. Přínosem této práce je řešení pro detekci návrhových vzorů a poznatky o praktických problémech spojených s jejich detekcí. Získané poznatky mohou být podkladem pro vývoj robustnějších nástrojů pro detekci návrhových vzorů, které podpoří činnosti spojené s porozuměním softwaru, refaktoringem a zajištěním kvality. | cs |
| dc.description.abstract | Design patterns are widely recognized as proven solutions to common problems in software design. However, the automatic detection of design patterns in source code remains a challenge. This work presents a comprehensive approach to detecting design patterns in Java code using a combination of attribute detection and integration into existing static code analysis tools. The proposed solution involves two main steps. Firstly, an initial analysis examines individual objects and searches for attributes, methods, and relationships characteristic of specific design patterns. This initial pass assigns a probability score to each potential pattern instance. In the second step, relationships between classes are further analyzed to confirm the presence of design pattern structures. This approach was evaluated on various test cases, from textbook implementations of design patterns to real-world projects with open-source code. The results demonstrate the ability to identify design pattern structures in code. The benefits of this work include solution for design pattern detection and insights into practical issues associated with their detection. The acquired knowledge can serve as a foundation for developing more robust tools for design pattern detection, supporting activities related to software understanding, refactoring, and quality assurance. | en |
| dc.description.department | 460 - Katedra informatiky | cs |
| dc.description.result | výborně | cs |
| dc.format.extent | 2169610 bytes | |
| dc.format.mimetype | application/pdf | |
| dc.identifier.other | OSD002 | |
| dc.identifier.sender | S2724 | |
| dc.identifier.thesis | OSM0015_FEI_N0613A140034_2024 | |
| dc.identifier.uri | http://hdl.handle.net/10084/155099 | |
| dc.language.iso | cs | |
| dc.publisher | Vysoká škola báňská – Technická univerzita Ostrava | cs |
| dc.rights.access | openAccess | |
| dc.subject | Automatizovaná Detekce návrhových vzorů | cs |
| dc.subject | Statická analýza kódu | cs |
| dc.subject | Analýza Java kódu | cs |
| dc.subject | Návrh softwaru | cs |
| dc.subject | Porozumění softwaru | cs |
| dc.subject | Zajištění kvality softwaru | cs |
| dc.subject | Taxonomie návrhových vzorů | cs |
| dc.subject | Heuristika návrhových vzorů | cs |
| dc.subject | Strukturální analýza návrhových vzorů | cs |
| dc.subject | Problémy s implementací návrhových vzorů | cs |
| dc.subject | Nástroje softwarového inženýrství | cs |
| dc.subject | Údržba a vývoj softwaru. | cs |
| dc.subject | Automated design pattern detection | en |
| dc.subject | Static code analysis | en |
| dc.subject | Java code analysis | en |
| dc.subject | Software design | en |
| dc.subject | Software comprehension | en |
| dc.subject | Software quality assurance | en |
| dc.subject | Design pattern taxonomy | en |
| dc.subject | Design pattern heuristics | en |
| dc.subject | Structural analysis of design patterns | en |
| dc.subject | Design pattern implementation challenges | en |
| dc.subject | Software engineering tools | en |
| dc.subject | Software maintenance and evolution | en |
| dc.thesis.degree-grantor | Vysoká škola báňská – Technická univerzita Ostrava. Fakulta elektrotechniky a informatiky | cs |
| dc.thesis.degree-level | Magisterský studijní program | cs |
| dc.thesis.degree-name | Ing. | |
| dc.thesis.degree-program | Informatika | cs |
| dc.title | Zásuvný modul do programu SonarQube umožňující detekci návrhových vzorů ve zdrojovém kódu | cs |
| dc.title.alternative | SonarQube Plugin for Design Pattern Detection in Source Code | en |
| dc.type | Diplomová práce | cs |
Files
Original bundle
1 - 5 out of 5 results
Loading...
- Name:
- OSM0015_FEI_N0613A140034_2024.pdf
- Size:
- 2.07 MB
- Format:
- Adobe Portable Document Format
- Description:
- Text práce
Loading...
- Name:
- OSM0015_FEI_N0613A140034_2024_zadani.pdf
- Size:
- 123.46 KB
- Format:
- Adobe Portable Document Format
- Description:
- Zadání
Loading...
- Name:
- OSM0015_FEI_N0613A140034_2024_priloha.zip
- Size:
- 325.42 MB
- Format:
- Unknown data format
- Description:
- Příloha
Loading...
- Name:
- OSM0015_FEI_N0613A140034_2024_posudek_vedouci_Jezek_David.pdf
- Size:
- 146 KB
- Format:
- Adobe Portable Document Format
- Description:
- Posudek vedoucího – Ježek, David
Loading...
- Name:
- OSM0015_FEI_N0613A140034_2024_posudek_oponent_Stolfa_Svatopluk.pdf
- Size:
- 147.17 KB
- Format:
- Adobe Portable Document Format
- Description:
- Posudek oponenta – Štolfa, Svatopluk