Thesis (Selection of subject)Thesis (Selection of subject)(version: 393)
Thesis details
   Login via CAS
   
Integrace nástroje Dataspecer s verzovacím nástrojem Git
Thesis title in Czech: Integrace nástroje Dataspecer s verzovacím nástrojem Git
Thesis title in English: Integration of the Dataspecer tool and the Git versioning system
Key words: dataspecer|git|verzování|integrace
English key words: dataspecer|git|versioning|integration
Academic year of topic announcement: 2024/2025
Thesis type: diploma thesis
Thesis language:
Department: Department of Software Engineering (32-KSI)
Supervisor: doc. RNDr. Jakub Klímek, Ph.D.
Author: hidden - assigned and confirmed by the Study Dept.
Date of registration: 15.05.2025
Date of assignment: 15.05.2025
Confirmed by Study dept. on: 15.05.2025
Advisors: Mgr. Štěpán Stenchlák
Guidelines
Nástroj Dataspecer [1] slouží k tvorbě datových specifikací, modelování slovníků a jejich aplikačních profilů, a generování různých technických artefaktů (XML Schema, JSON Schema, JSON-LD kontext, CSV on the Web deskriptor, SHACL pravidla) na jejich základě.

Momentálně se veškerá data ukládají na backend nástroje Dataspecer.
Cílem práce je umožnit vytvářet propojení mezi specifikací uloženou na Dataspecerovém backendu a Git [2] repozitářem.
Propojením s verzovacím nástrojem nástrojem Git získá uživatel historii verzí.
Implementací podpory pro GitHub pak získá také podporu pro issues, pull requesty, GitHub actions, GitHub pages, apod. přímo v nástroji Dataspecer.

Student v rámci práce:
- Zanalyzuje aktuální implementaci backendu nástroje Dataspecer
- Zanalyzuje uživatelské potřeby ohledně propojení Dataspeceru a Gitu
- Navrhne a implementuje funkcionalitu na základě analýzy, minimálně však vytváření oboustranného propojení zajišťující synchronizaci mezi package a Git repozitářem (respektive Git větví), tj. uživatel může provádět commity do Gitu z nástroje Dataspecer a naopak změny v Git repozitáři se projeví v nástroji Dataspecer.
- Implementuje generování technických artefaktů pomocí GitHub actions [3] na základě zadané konfigurace
- Zavede podporu generování datových specifikací do jiného repozitáře pomocí GitHub actions a jejich následné nasazení prostřednictvím GitHub pages [4]
- Pro implementaci vyrobí testy
- Řešení zdokumentuje a vyhodnotí s uživateli

Různí poskytovatelé Git mají dodatečné funkcionality řešeny vlastním řešením, například CI/CD je na platformě GitHub řešené pomocí GitHub actions, kdežto na GitLab pomocí GitLab CI/CD.
Z tohoto důvodu se práce při využití dodatečných funkcionalit omezí na GitHub řešení.
References
[1] Dataspecer, https://dataspecer.com
[2] Git, https://git-scm.com/
[3] GitHub actions, https://docs.github.com/en/actions
[4] GitHub pages, https://docs.github.com/en/pages
[5] SEMIC toolchain, https://semiceu.github.io/toolchain-manual
 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html