Please use this identifier to cite or link to this item:
https://www.um.edu.mt/library/oar/handle/123456789/94933
Full metadata record
DC Field | Value | Language |
---|---|---|
dc.date.accessioned | 2022-05-04T06:41:43Z | - |
dc.date.available | 2022-05-04T06:41:43Z | - |
dc.date.issued | 2012 | - |
dc.identifier.citation | Spiteri, E. A. (2012). Monitoring as an instance of behaviour in Erlang (Bachelor's dissertation). | en_GB |
dc.identifier.uri | https://www.um.edu.mt/library/oar/handle/123456789/94933 | - |
dc.description | B.Sc. IT (Hons)(Melit.) | en_GB |
dc.description.abstract | Runtime Monitoring consists of regular observation and gathering of information during runtime which is used to measure correctness. There are various distinct technologies which utilise monitoring; however all these monitors have some commonalities that can be identified and used to create a design pattern. These patterns are generic solutions to a frequently occurring problem, and are also language independent. I produced the required design pattern by extracting the common structure found between every monitor. I therefore identified a design pattern for concurrent monitors, which all the monitors can adopt. A number of benefits are introduced when making use of a design pattern, which are; introduction of reusability, better maintainability, better standard approach, and also a simplified approach to implement a monitor since it creates a modular implementation rather than a monolithic one. I implemented this design pattern in the Erlang programming language as a behaviour. Behaviours are a form of abstract classes for Erlang which are used to design templates and also offer some code implementation. This means that an Erlang behaviour is designed as an instantiation of the monitor design pattern. To further facilitate the implementation of monitors, I instantiated this design pattern for the context of a runtime verification tool, called ELARVA. Given some high level specifications, this tool generates monitoring code automatically. By instantiating the design pattern in the ELARVA context, the generated monitoring code can be disentangled from the ELARVA tool and hence acquire the full benefits of the design pattern. It means that the monitoring code can be modified without editing the script and recompiling the compiler. This is possible, since the behaviour provides an interface to construct and instrument concurrent monitors, and therefore the generated code is now independent of the ELARVA tool and can be modified by the programmer. | en_GB |
dc.language.iso | en | en_GB |
dc.rights | info:eu-repo/semantics/restrictedAccess | en_GB |
dc.subject | ERLANG (Computer program language) | en_GB |
dc.subject | Computer software -- Validation | en_GB |
dc.subject | Distributed algorithms | en_GB |
dc.title | Monitoring as an instance of behaviour in Erlang | en_GB |
dc.type | bachelorThesis | en_GB |
dc.rights.holder | The copyright of this work belongs to the author(s)/publisher. The rights of this work are as defined by the appropriate Copyright Legislation or as modified by any successive legislation. Users may access this work and can make use of the information contained in accordance with the Copyright Legislation provided that the author must be properly acknowledged. Further distribution or reproduction in any format is prohibited without the prior permission of the copyright holder. | en_GB |
dc.publisher.institution | University of Malta | en_GB |
dc.publisher.department | Faculty of Information and Communication Technology. Department of Computer Science | en_GB |
dc.description.reviewed | N/A | en_GB |
dc.contributor.creator | Spiteri, Elise Ann (2012) | - |
Appears in Collections: | Dissertations - FacICT - 2012 Dissertations - FacICTCS - 2010-2015 |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
B.SC.(HONS)ICT_Spiteri_Elise_Ann_2012.pdf Restricted Access | 4.09 MB | Adobe PDF | View/Open Request a copy |
Items in OAR@UM are protected by copyright, with all rights reserved, unless otherwise indicated.