Checking Primitive Component Behavior
Checking Primitive Component Behavior
diploma thesis (DEFENDED)
![Document thumbnail](/bitstream/handle/20.500.11956/9943/thumbnail.png?sequence=7&isAllowed=y)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/9943Identifiers
Study Information System: 44156
Collections
- Kvalifikační práce [11264]
Author
Advisor
Referee
Parízek, Pavel
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software systems
Department
Department of Software Engineering
Date of defense
21. 5. 2007
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Excellent
Software model checking je metoda ověřování vlastností programů a tedy zajišťování jejich vyšší spolehlivosti. Je však stále nutné dělit programy na části ověřované nezávisle, Nebot' úplné programy tvoří často příliš velký stavový prostor, který není možné prozkoumat v rozumném čase. Softwarové komponenty dělí aplikace na čáasti vhodným způsobem. Ale vzhledem k tomu, jak fungují model checkery, je nutné jim poskytnout vhodné prostředí pro ověření každé komponenty. Pro popis chování komponent vznikly behavior protokoly. Umožňují ověřovat kompatibilitu a shodu chování komponent - to se používá již při návrhu aplikací pro odhalení možných nevhodných použití komponent. Protokoly jsou také vhodné jako popis chování komponenty, který může být srovnán s chováním konkrétní implementace komponenty. Cílem této pr¶ace je poskytnout nástroj pro srovnání chování primitivní komponenty oproti její specifikaci. V rámci toho bude implementován generátor prostředí komponent podle frame protokolu, které umožní rozpoznat porušení specifikace chování. Bude použit Java PathFinder a Fractal component model.
Software model checking is a process of checking for properties of a software application and thus assuring the software reliability. It is still necessary to divide the software application into pieces that are checked separately; the whole application yields an enormous state space that is impossible to traverse in a reasonable time. Therefore, the use of components is a straightforward approach for dividing the entire application. Furthermore, as model checker usually works with a close code only, a suitable component environment need to be provided for each component. Behavior protocols are a method for component behavior specification. They allow for checking for components' behavior compatibility and compliance, used at the design time of an application to find possible architectural component misplacements. They are also suitable to be compared with the behavior of the component implementation. The goal of the thesis is to provide a tool for comparing a primitive component behavior with its specification. Furthermore, a component environment generator using the component frame protocol will be implemented that would enable for checking for violation of the component behavior specification. The Java PathFinder model checker and the Fractal component model are to be used as a model checking platform.