Annotation-driven development of software components
Vývoj softwarových komponent řízený anotacemi
diploma thesis (DEFENDED)

View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/18911Collections
- Kvalifikační práce [9109]
Author
Advisor
Referee
Nečaský, Martin
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software systems
Department
Department of Software Engineering
Date of defense
2. 2. 2009
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Excellent
Keywords
Keywords not foundVývoj řízený anotacemi je technika programování, která se v poslední době těší vzrůstající popularitě. Předložená práce se zabývá možnostmi využití této techniky pro vývoj komponentových aplikací. Cílem této práce bylo navrhnout model anotací zpracovávaných za běhu komponentové aplikace, umožňující vázání komponent, řízení jejich běhu a jejich dynamický update. Za prostředí pro tuto práci byl vybrán hierarchický komponentový systém SOFA 2. Implementace navrženého řešení využívá standardní anotace přítomné v jazyce Java. Dále práce navrhuje způsob rozšíření využití anotací mimo běhovou fázi vývoje. Součístí práce je také implementace dynamického updatu jednoduchých komponent. Dynamický update komponenty je proces umožňující změnu jejího kódu bez potřeby zastavení činnosti celé komponentové aplikace.
Annotation-based development is a programming technique which is recently gaining on popularity. The thesis examines ways in which this technique can be applied to development of component applications. Aim of the the thesis was to design a model of run-time annotations for SOFA 2. The annotations are used at run-time phase of application's development cycle to bind, control execution and dynamically update a component. Implementation of the proposed solution is based on standard Java annotations. Further, the thesis proposed a way in which these annotations can be extended to other phases of application's development cycle. The thesis proposes and implements a solution to dynamic update of a basic type of software components. The dynamic update is a process that changes code of a component without suspending the whole component application.