Please use this identifier to cite or link to this item:
https://www.um.edu.mt/library/oar/handle/123456789/93381
Title: | Reducing instrumentation points in Larva |
Authors: | Chircop, Luke (2013) |
Keywords: | Java (Computer program language) Aspect-oriented programming Program transformation (Computer programming) |
Issue Date: | 2013 |
Citation: | Chircop, L. (2013). Reducing instrumentation points in Larva (Bachelor’s dissertation). |
Abstract: | When dealing with the correctness assurance of huge and complex systems, runtime verification is becoming an increasingly popular technique. The Larva tool was built to automatically generate runtime verification monitors that would help to validate the behavior of Java programs at runtime. The runtime verification monitor is compiled as Java and AspectJ code from a special language specification called Larva Script. These generated monitors are weaved together with the target system and while the target system is used, the monitor is fed event triggers to validate with the specified properties. In this thesis I identify concrete optimization features that can be introduced to the current Larva compiling tool to improve it and select the ones that are applicable to the Larva Tool. These improvements and features attempt to tackle the problem that the Larva tool and similar runtime verification monitor generating tools face. This problem consists of excess memory and performance overheads that are introduced to the target system when running with the weaved runtime monitors. Therefore the main aim is to try and reduce the overheads introduced by the runtime verification monitors. To be able to solve this problem, we take a look at a similar study that was carried out on similar tools that successfully helped to reduce the overheads when possible. By doing so we were able to identify what features to add to successfully optimize the runtime monitors generated by the Larva Tool. This is achieved by extending the Larva architecture to support the new optimizing feature consisting of Dependent Advices and is verified to be optimizing the runtime monitors generated in the case study. To be able to identify the performance gains for the optimization that was introduced to the Larva tool, a benchmark is used. This benchmark is weaved with runtime monitors generated by a number of Larva scripts and was used to gather values that then helped compare the results with the performance of the standard runtime verification monitors to evaluate the optimization gains achieved. |
Description: | B.Sc. IT (Hons)(Melit.) |
URI: | https://www.um.edu.mt/library/oar/handle/123456789/93381 |
Appears in Collections: | Dissertations - FacICT - 2013 Dissertations - FacICTCS - 2010-2015 |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
B.SC.(HONS)ICT_Chircop_Luke_2013.PDF Restricted Access | 4.21 MB | Adobe PDF | View/Open Request a copy |
Items in OAR@UM are protected by copyright, with all rights reserved, unless otherwise indicated.