Diplomová práca
Animácia a vizualizácia diagramov v softvérovom inžinierstve
Vedúci projektu:
Ing. Lukáš RadoskýE-mail:
lukas.radosky@fmph.uniba.skAnotácia
Anotácia
Abstrakcia je v softvérovom inžinierstve kľúčovým nástrojom. Softvérové systémy sú dnes značne zložité a táto zložitosť neustále narastá. Najznámejším spôsobom abstrakcie nad softvérovými systémami sú UML diagramy. Hoci v praxi nie je ich notácia striktne dodržiavané, aj spontánne vytvárané diagramy často dodržiavajú vybrané konvencie UML notácie. Diagramy spostredkujú pochopenie systému omnoho rýchlejšie než štúdium zdrojového kódu. Preto má zmysel sa nimi zaoberať, hľadať ich zlepšenia a možné doplnky. Príkladom je animovanie, ktoré statickým UML diagramom dodáva dynamiku a interaktivitu.
Analyzujte existujúce možnosti a prístupy vizualizácie a animácie diagramov v softvérovom inžinierstve. Navrhnite vhodný spôsob zobrazovania a animovania diagramov, napríklad diagramu aktivít v softvéri AnimArch. Implementujte prototyp tohto návrhu. Svoje riešenie overte na vhodne zvolenom príklade vstupného zdrojového kódu, prípadne diagramu, v závislosti od navrhnutého riešenia. Implementáciu overte aj pomocou používateľského testovania. Dosiahnuté výsledky vhodne analyzujte a zhodnoťte.
Cieľ
Cieľ
Návrh, implementácia a evaluácia nového spôsobu vizualizácie a animácie zvoleného typu diagramu v softvérovom inžinierstve.
Plán
Plán
| od | do | úloha |
|---|---|---|
| október 2023 | december 2023 | Zoznámenie sa so softvérom AnimArch. |
| február 2024 | február 2024 | Tvorba webovej stránky diplomovej práce. Tvorba kostry diplomovej práce. |
| február 2024 | marec 2024 | Študovanie vedeckých článkov. Prvotná implementácia diagramu aktivít. |
| marec 2024 | apríl 2024 | Študovanie vedeckých článkov. Napĺňanie diagramu aktivít. |
| apríl 2024 | máj 2024 | Študovanie vedeckých článkov. Vylepšenie tvorby diagramu aktivít. |
| september 2024 | december 2024 | Pridať vytváranie aktivít aj pre zložitejšie príkazy, napr. podmienky a cykly. Implementovať vrstvenie diagramov aktivít. Pridať šípky medzi aktivitami v diagrame. Písanie textu DP. |
| február 2025 | máj 2025 | Refaktorovať vytváranie šípok medzi aktivitami. Zmazať ďalšie vrstvy diagramov aktivít keď sa vykonajú. Animovanie vykonavaných aktivít. Implementovať vykreslovanie activity diagramu aj pre paralelné vykonávanie. Písanie textu DP. |
Denník
Denník
| od | do | popis |
|---|---|---|
| 27.2.2024 | 12.3.2024 | Fork GitHub repozitára. Vytvoriť (tretiu) vrstvu pre diagram aktivít za objektovým diagramom. Upraviť pozadie pre operácie v activity diagrame. Nájsť vhodné vedecké články. |
| 13.3.2024 | 10.4.2024 | Vytvoriť prefaby pre začiatočý a koncový stav activity diagramu. Implementovať napĺňanie activity diagramu reálnymi dátami. Preštudovať nájdené vedecké články, prípadne nájsť ďalšie, ktoré budú vhodnejšie. |
| 10.4.2024 | 24.4.2024 | Pridať zobrazovanie počiatočného a koncového stavu pri animácií. Vytvárať diaram aktivít a aktivity podľa vykonávaných príkazov počas animácie. Detailnejšie preštudovať vybrané články, v prípade potreby sa pozrieť na ďalšie. |
| 24.4.2024 | 8.5.2024 | Pridať mazanie existujúceho diagramu aktivít pri zavolaní novej metódy. Skúsiť pridať vykreslovanie šípok medzi aktivitami v diagrame. Detailnejšie preštudovať vybrané články. |
| 8.5.2024 | 17.5.2024 | Príprava na odprezentovanie DP pre Projektový seminár (1). |
| 3.10.2024 | 14.10.2024 | Po dokončení vykonávania metódy sa zobrazí pôvodný diagram aktivít, v ktorom sa budú zobrazovať ďalšie príkazy. |
| 14.10.2024 | 28.10.2024 | Zobrazovať v diagrame aktivít iba príkazy s pridaným IsDirectlyInCode flagom. Upraviť vytváranie šípok medzi aktivitami v diagrame podľa vzoru class diagramu. Začať písať kapitolu related work v diplomovej práci. |
| 28.10.2024 | 4.11.2024 | Opraviť vykresľovanie šípok medzi aktivitami v diagrame. |
| 4.11.2024 | 18.11.2024 | Pridať prefaby pre merge a decision uzly. Zobrazovať všetky aktivity naraz, pri vykonávaní EXEScopeMethod. Implementovať korektné zobrazovanie podmienok a foreach cyklov v diagrame aktivít. Upraviť / doplniť text práce. |
| 18.11.2024 | 25.11.2024 | Upraviť zobrazovanie podmienok a foreach cyklov v diagrame aktivít. Pridať "komentáre" ku šípkam medzi aktivitami -> podmienka pri desicion node alebo pri loope. Upraviť / doplniť text práce. |
| 25.11.2024 | 2.12.2024 | Umožniť zobrazenie viacerých activity diagramov za sebou. Implementovať zobrazovanie while cyklov. Upraviť / doplniť text práce. |
| 2.12.2024 | 9.12.2024 | Upraviť / doplniť text práce. |
| 24.2.2025 | 3.3.2025 | Pridať referenciu na label pri prefaboch na šípky / relations. Premazávať activity diagramy, keď sa vykonajú (aby ostal iba jeden hlavný AD). |
| 3.3.2025 | 10.3.2025 | Refaktorovať vytváranie / pridávanie šípok medzi aktivitami. Upraviť vykresľovanie while cyklu. |
| 10.3.2025 | 17.3.2025 | Implementácia animovania activity diagramu- vyfarbenie vykonávaných aktivít a príslušných šípok. |
| 17.3.2025 | 31.3.2025 | Upraviť vyfarbovanie aktivít a šípok pre cykly a podmienky. |
| 31.3.2025 | 9.4.2025 | Upraviť vyfarbovanie aktivít a šípok pre cykly a podmienky. |
| 9.4.2025 | 14.4.2025 | Upraviť vyfarbovanie aktivít a šípok pre cykly a podmienky. Písanie textu DP. Príprava používateľského testovania. |
| 14.4.2025 | 23.4.2025 | Upraviť vyfarbovanie aktivít a šípok pre cykly a podmienky. Písanie textu DP. Príprava používateľského testovania. |
| 21.4.2025 | 28.4.2025 | Písanie textu DP. Príprava používateľského testovania. |
| 28.4.2025 | 9.5.2025 | Používateľské testovanie a zhodnotenie výsledkov testovania. Písanie textu DP. |
| 9.5.2025 | Odovzdanie diplomovej práce. |
Ukážky
Ukážky
Zobrazenie jednoduchého diagramu aktivít.
Zobrazenie podmienky v diagrame aktivít - len if vetva.
Zobrazenie podmienky v diagrame aktivít + elif vetva.
Zobrazenie vnorených podmienok v diagrame aktivít - bez else vetvy.
Zobrazenie foreach cyklu v diagrame aktivít.
Zobrazenie foreach cyklu s vnorenou podmienkou v diagrame aktivít.
Zobrazenie while cyklu v diagrame aktivít.
Zobrazenie while cyklu s vnorenou podmienkou v diagrame aktivít.
Zobrazenie a animovanie viacerých diagramov aktivít.
Animácia podmienky v diagrame aktivít.
Animácia vnorenej podmienky v diagrame aktivít.
Animácia vykonávania tela foreach cyklu v diagrame aktivít.
Animácia po skončení vykonávania foreach cyklu v diagrame aktivít.
Animácia vykonávania tela while cyklu v diagrame aktivít.
Animácia po skončení vykonávania while cyklu v diagrame aktivít.
Zdroje
Zdroje
- Lukáš Radoský and Ivan Polášek. (2024). Executable Multi-Layered Software Models. 🔗
- Teemu Rajala, Mikko-Jussi Laakso, Erkki Kaila, and Tapio Salakoski. (2007). VILLE – A Language-Independent Program Visualization Tool. 🔗
- Enes Yigitbas, Simon Gorissen, Nils Weidmann, and Gregor Engels. (2022). Design and evaluation of a collaborative UML modeling environment in virtual reality. 🔗
- Lukas Gregorovic and Ivan Polasek. (2015). Analysis and design of object-oriented software using multidimensional UML. 🔗
- Matej Ferenc, Ivan Polasek and Juraj Vincur. (2017). Collaborative Modeling and Visualization of Software Systems Using Multidimensional UML. 🔗
- Jakub Kucecka, Juraj Vincur, Peter Kapec and Pavel Cicak. (2022). UML-based Live Programming Environment in Virtual Reality. 🔗