UML, ako dôležitý nástroj softvérového inžiniera, slúži na návrh, špecifikáciu, modelovanie a dokumentovanie softvéru. Jednou z jeho úloh je ponúknuť grafickú alternatívu opisu softvéru. Aktuálne sa väčšina grafických nástrojov pre vizualizáciu UML zameriava len na 2D priestor. Našou snahou je vytvoriť prototyp, ktorý bude vizualizovať UML diagramy v 3D priestore.
3D zobrazenie napomáha k rýchlejšej orientácia v spleti komplikovaných vzťahov. Pridaním ďalšej dimenzie dokážeme prehľadnosť diagramu ešte zvýšiť, či zvýrazniť niektoré zaujímavé časti. Otvárajú sa tu taktiež možnosti rozšírenej vizualizácie jednotlivých častí diagramov, prípadne interakcií medzi diagramami.
Na začiatku projektu bol dodaný prototyp, ktorý obsahoval implementovanú funkcionalitu pre vytvorenie jednoduchého diagramu tried. Tento prototyp plánujeme naďalej rozvíjať. Prototyp a aj naše riešenie je zamerané na osobné počítače, avšak nie je vylúčená možnosť rozšírenia na ďalšie druhy výpočtových zariadení.
Cieľom projektu je do dodaného prototypu implementovať časti funkčnosti sekvenčného diagramu. V prvom semestri sme sa zaoberali problematikami spustenia prototypu, vytvorenia čiary života, interakcie medzi čiarami života a základnej reprezentácie fragmentu.
Samozrejmosťou je možnosť pomenovania jednotlivých prvkov diagramu, pričom nie nutne splniteľnou súčasťou plánu je taktiež vytvorenie vnútorného UML modelu na základe ktorého by bolo možné vytvárať jednotlivé prvky diagramu definované v modeli.
Okrem týchto funkcií spojených s diagramom bolo cieľom implementovať a dodať aj všeobecnú funkčnosť vytvorenia viacerých vrstiev v rôznych hĺbkach pre trojdimenzionálnosť produktu a taktiež aj serializácia vytvorených diagramov vo forme XML súborov. Cieľom je taktiež funkčnosť načítania týchto súborov a znovu – vytvorenie uloženej scény.
Tento projekt má veľký potenciál vpustiť nový vietor do pomerne sterilnej oblasti UML modelovania a CASE nástrojov všeobecne.
Tieto softvérové produkty sa orientujú na zobravanie UML diagramov v 2D priestore, ktorý je samozrejme postačujúci, avšak použitie ďalšej dimenzie poskytuje možnosti, na ktoré sú dve dimenzie jednoducho málo.
Medzi spomínané novinky patrí napríklad
- modelovanie časových verzií scenárov,
- modelovanie autorských verzií,
- modelovanie jednotlivých vrstiev systémov s viac – vrstvovou architektúrou,
- modelovanie aspektov, optimistických, pesimistických a najpravdepodobnejších scenárov a takisto aj alternatívnych a paralelných scenárov.
To všetko na vrstvách v 3D priestore s možnosťou intuitívneho ovládania.
Obrázok 1 Rozhranie aplikácie
Na tomto projekte sa aktuálne podieľajú šiesti študenti: Matej Štetiar, Erik Šuta, Ivan Martoš, Andrej Štajer, Gabriela Brndiarová a Andrej Valko pod vedením pedagóga Ivan Poláška.
Obrázok 2 Tím GAMATEPI