|
Agilní modelováni při vývoji software
Ruprecht, Marek ; Rychlý, Marek (oponent) ; Zendulka, Jaroslav (vedoucí práce)
Diplomová práce je věnována procesu vývoje softwarových produktů. A to od jejich počátečního návrhu, přes vlastní realizaci až po předání finálního produktu zákazníkovi. Uvádí čtenáře do problematiky softwarového inženýrství s tím, že se pak detailněji věnuje jedné jeho části - moderním modelům životních cyklů software. Z uvedených modelů byl pro své předností a vhodnost realizace vybrán agilní přístup, jenž je zastoupen agilním vývojem řízeným modelem. Ten byl prověřen nejenom z teoretického, ale i z praktického hlediska a to příkladovou studií. K modelování software jsem použil notaci jazyka UML, jehož stručná charakteristika je součástí této diplomové práce.
|
| |
| |
|
Modelem řízený vývoj Android aplikací
Bělehrádek, Stanislav ; Burget, Radek (oponent) ; Rychlý, Marek (vedoucí práce)
Tato diplomová práce se věnuje návrhu a implementaci nástroje pro tvorbu Android aplikací, který je založený na modelem řízeném vývoji software (Model Driven Software Development). Nejprve je popsán obecně vývoj softwaru, potom konkrétně se zaměřením na MDD a executable UML. V další části je představena platforma Android, způsoby tvorby aplikací na tuto platformu a existující nástroje s podporou MDD. Následně je ukázán návrh nového MDD nástroje pro tvorbu Android aplikací. Navrhovaný nástroj je realizován jako Gradle plugin a samostatné vývojové prostředí využívající tento plugin. Nástroj k modelování aplikací využívá fUML a jazyk ALF. Funkce a možnosti vyvíjeného nástroje jsou demonstrovány při tvorbě vzorové aplikace.
|
|
Materiálově nelineární řešení prutových konstrukcí
Kabeláč, Jaromír ; Krejsa,, Martin (oponent) ; Návrat,, Tomáš (oponent) ; Němec, Ivan (vedoucí práce)
Předložená disertační práce se zabývá řešením nosníkových a rámových konstrukcí s uvážením materiálové nelinearity. Použitou výpočtovou metodou je metoda konečných prvků. Cílem práce bylo odvodit a otestovat konečně prvkový nosníkový element s uvážením materiálové nelinearity. Následnou detailní analýzou předloženého problému byla sestavena celá skupina formulací nosníkového elementu. Část výsledků této práce byla v několika podobách implementována do komerčních software pro praktické užití projektanty, což bylo hlavním cílem práce. V teoretické části je představen nosníkový element, který se zaměřuje na řešení napjatosti na masivních průřezech. Z hlediska topologie se jedná o klasický liniový nosníkový konečný prvek s dvěma uzly. V každém z uzlů je definováno šest stupňů volnosti pro translace a rotace plus sedmý stupeň pro deplanaci průřezu při kroucení. Na průřezu jsou uváženo namáhání od axiální síly, ohybových momentů, krouticího momentu, posouvajících sil a případně bimomentu pro vázaný krut. Bylo vytvořeno několik variant formulací podle zahrnutí složek namáhání do materiálové nelinearity a podle způsobu numerické integrace. V práci je diskutováno zahrnutí geometrické nelinearity a výpočet požární odolnosti. Veškeré výše popsané formulace byli testovány na prototypech jak je uvedeno v aplikační části. Zde je také popsán obecný postup, architektura a použité technologie pro implementaci poznatků z teoretické části do komerčních konečně prvkových systémů. V práci je ukázána implementace plasticity na skořepinách, výpočtu průřezových charakteristik a napětí na průřezu, implementace materiálově nelineárního nosníkového elementu a modul pro požární odolnost sloupu. Výše uvedené implementace teoretických závěrů jsou hlavními výstupy disertační práce. Tyto implementace jsou dostupné v tisícovkách instalací po celé Evropě, kde jsou využívány při projekci významných konstrukčních celků.
|
|
Cross-platform Mobile Development
Čečil, Petr ; Zavoral, Filip (vedoucí práce) ; Děcký, Martin (oponent)
Práce se bude zabývat problémy vývoje multiplatformního software pro mobilní zařízení. Autor bude analyzovat stávající frameworky a nástroje; poukáže na jejich silné a slabé stránky. Na základě této analýzy bude pilotní aplikace navržena a realizována pomocí nejlepšího frameworku. Zvláštní pozornost bude věnována metodice multiplatformního vývoje.
|
|
IDE-supported development of component-based applications
Hermann, Lukáš
Na rozdíl od komerčních komponentových systémů nemají ty akademické dostatečnou podporu v integrovaných vývojových prostředích. Tato práce analyzuje vývoj komponentově založených aplikací na komponentovém sys- tému SOFA 2 a zjišťuje, že hlavním problémem je nedostatečné propojení mezi procesy obecného návrhu aplikace a vytváření konkrétních komponent. Na základě této analýzy definuje podmnožinu UML, univerzálního jazyka pro návrh aplikací, a její sémantiku vzhledem k entitám komponentového systému SOFA 2. Dále vytváří nástroj integrovaný do vývojového prostředí Eclipse, který umožňuje automatické generování těchto entit z UML kom- ponentového modelu, stejně jako propojení tohoto modelu s již existujícími entitami, umožňující jejich automatickou opravu v případě změny modelu. Tento nástroj je navržen modulárně tak, aby bylo možné jednoduše změnit sémantiku modelu nebo ho použít na jiné modely. Nakonec tato práce ana- lyzuje možnosti rozšíření tohoto nástroje na další komponentové systémy, generování kódu a verifikaci chování komponent.
|
|
IDE-supported development of component-based applications
Hermann, Lukáš ; Bureš, Tomáš (vedoucí práce) ; Šimko, Viliam (oponent)
Na rozdíl od komerčních komponentových systémů nemají ty akademické dostatečnou podporu v integrovaných vývojových prostředích. Tato práce analyzuje vývoj komponentově založených aplikací na komponentovém sys- tému SOFA 2 a zjišťuje, že hlavním problémem je nedostatečné propojení mezi procesy obecného návrhu aplikace a vytváření konkrétních komponent. Na základě této analýzy definuje podmnožinu UML, univerzálního jazyka pro návrh aplikací, a její sémantiku vzhledem k entitám komponentového systému SOFA 2. Dále vytváří nástroj integrovaný do vývojového prostředí Eclipse, který umožňuje automatické generování těchto entit z UML kom- ponentového modelu, stejně jako propojení tohoto modelu s již existujícími entitami, umožňující jejich automatickou opravu v případě změny modelu. Tento nástroj je navržen modulárně tak, aby bylo možné jednoduše změnit sémantiku modelu nebo ho použít na jiné modely. Nakonec tato práce ana- lyzuje možnosti rozšíření tohoto nástroje na další komponentové systémy, generování kódu a verifikaci chování komponent.
|
|
Continuous delivery webových aplikací
Češpivo, Jan ; Merunka, Vojtěch (vedoucí práce) ; Martin, Martin (oponent)
Práce se zabývá procesem continuous delivery webových aplikací. Teoretická část obsahuje popis a vysvětlení základních pojmů týkajících se continuous delivery. Shrnuje cíle, přínosy, specifikace a základní postup implementace tohoto procesu. V praktické části jsou navrženy a implementovány nástroje potřebné pro implementaci procesu continuous delivery ve firmě vyvíjející webové aplikace.
|
|
Využití virtualizace při přípravě infrastruktury pro testování webových aplikací
Nepejchalová, Radka ; Vasilenko, Alexandr (vedoucí práce) ; Rostislav , Rostislav (oponent)
Práce si klade za cíl přiblížit některé ze současně využívaných postupů či principů v rámci vývoje softwaru. V dnešní době je kladen velký důraz na efektivitu a kvalitu spolupráce týmů. Právě zde vzniká potřeba řídit se principy kontinuální integrace a to především u komplexnějších projektů, na kterých aktivně spolupracuje paralelně více vývojářů. Je zde větší potřeba integrovat přibývající nový kód a ujistit se, že je vzniklý celek funkční. Jedním ze základních kamenů kontinuální integrace je pravidelné testování - tedy odhalování problémů, které by mohly nastat při nasazení v produkčním prostředí. Takové testování však může být velice nákladné a ke snížení těchto nákladů vede právě využití virtualizace. Testování nových verzí aplikace je díky virtualizaci velice snadné. Každý vývojář si může na vlastním počítači vytvořit vlastní virtuální stanici a na ní nanečisto vyzkoušet běh aplikace. Část práce se věnuje právě těmto zmíněným postupům a logicky je propojuje. Praktická část se pak věnuje demonstraci řešení reálného problému.
|