Reverzní inženýrství databáze projektu GitLab
Database Reverse Engineering of GitLab Project
Typ dokumentu
diplomová prácemaster thesis
Autor
Hana Litavská
Vedoucí práce
Suchánek Marek
Oponent práce
Valenta Michal
Studijní obor
Softwarové inženýrstvíStudijní program
InformatikaInstituce přidělující hodnost
katedra softwarového inženýrstvíPráva
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Zobrazit celý záznamAbstrakt
Tato diplomová práce se zabývá aplikací metod reverzního inženýrství na projekt GitLab. Zaměřená je především na reverzní inženýrství relační databáze za účelem hledání optimalizací. GitLab je rozsáhlým open source projektem, který je celosvětově známý a aktivně používaný. Práce obsahuje jeho design recovery pomocí frameworku pro modelování architektury C4 za použití metod reverzního inženýrství jako je analýza kódu, jeho vizualizace a manuální i generovaná rekonstrukce modelů. Zkoumána je celková architektura, struktura projektu z pohledu modulů a vrstev. Práce následně analyzuje datovou vrstvu, ukládání dat a práci s nimi v rámci aplikace GitLab Rails. Dále je za využití analýzy kódu, rekonstrukce databázového schéma a analýzy SQL provedeno reverzní inženýrství relační databáze, jehož výstupem je analýza používané PostgreSQL databáze. Výsledkem práce je seznam nedostatků a poznatků nalezených v rámci provedené analýzy. Zjištěním práce je také to, že v rámci projektu GitLab je kladen velký důraz na optimální práci s databází a všechny změny v rámci databáze jsou v procesu vývoje důkladně prověřeny. This master thesis is dedicated to the application of reverse engineering on the GitLab project. The key focus is weighted mainly on reverse engineering of relational databases for optimization purposes. GitLab is a widely adopted, commonly known open-source project that is used worldwide. The thesis contains the project's design recovery using the C4 modeling framework for visualizing software architecture using reverse engineering methods such as code analysis, visualization, manual, and generated model reconstruction. The thesis researches the overall architecture and project structure from a model and layer perspective. Leveraging code and SQL analysis and database scheme reconstruction, it performs reverse engineering of the relational database, resulting in a study of the PostgreSQL database used. The outcome of the thesis is a list of imperfections and findings from the conducted study. The thesis's key conclusions are that the GitLab project emphasizes optimal database interactions and that all the database changes are thoroughly vetted during the development process.
Kolekce
- Diplomové práce - 18102 [1036]