Popis tématu

Diplomová práce v oboru Softwarové inženýrství.

Optimalizace a rozšíření porovnávání OSGi komponent

Optimizations and extensions of OSGi component comparator

Zásady pro vypracování:

1. Seznamte se s technologií OSGi a vlastnostmi jejích komponent.
2. Prostudujte stávající implementaci porovnání Java tříd a OSGi komponent, včetně aplikačních nástrojů, které jej využívají.
3. Analyzujte algoritmickou složitost a paměťovou náročnost této implementace, navrhněte a implementujte vhodná vylepšení.
4. Využijte vylepšenou implementaci pro rozšíření vybraného aplikačního nástroje, vyhodnoťte a demonstrujte její přínosy.

(finální znění)

----

Základní cíl je analyzovat paměťovou náročnost a algoritmickou složitost stávající implementace porovnání Java typů a OSGi komponent, podle výsledku navrhnout možné optimalizace implementace a některé implementovat. Analýza by měla být jak \"ruční\" tj. analýzou zdrojového kódu, tak na základě výkonových testů a monitorování běžící implementace.

Druhou částí je přidání možnosti procházet výsledky porovnání komponent na (webovém) rozhraní a drilldown ve výsledcích; předpokládané využití je v nástroji pro verzování komponent na http://osgi.kiv.zcu.cz/obvs/ kde by uživatel dostal možnosti vidět, proč je verze nastavena právě daným způsobem. Jinou možností nasazení je vytvořit rozšíření Eclipse PDE, kde by bylo možno vytvořit View pro zobrazení rozdílů mezi právě vyvíjeným bundle a nějakým jiným (např. uloženým v Maven či OSGi Bundle repository).

Třetí, volitelnou částí, je přidání informací o sémantických rozdílech mezi implementacemi tříd do výsledků porovnání (např. pokud přibyde příznak final na třídě či parametru metody, změna ve throws deklaracích v hlavičce metody, apod.). Tyto informace by vedly např. k výpisu varování v type-enhanced resolveru, informativním výpisům/varováním při verzování, apod.

Téma vypsal: Doc. Ing. Přemysl Brada, MSc., Ph.D. (UC 354)

Vypsáno pro akademický rok 2011/2012 dne: 2011-04-18

Zadáno komu: Zuzana Burešová (Dokončené)

Aktualizováno 0