Please use this identifier to cite or link to this item: https://www.um.edu.mt/library/oar/handle/123456789/94096
Full metadata record
DC FieldValueLanguage
dc.date.accessioned2022-04-20T12:29:52Z-
dc.date.available2022-04-20T12:29:52Z-
dc.date.issued2012-
dc.identifier.citationGrima, I. (2012). Counter example shrinking for ELARVA (Bachelor’s dissertation).en_GB
dc.identifier.urihttps://www.um.edu.mt/library/oar/handle/123456789/94096-
dc.descriptionB.Sc. IT (Hons)(Melit.)en_GB
dc.description.abstractConcurrent programs are usually non-deterministic, meaning that typical approaches for verifying the correctness of such programs may not always be effective. For ex ample, software testing may not unearth subtle bugs that arise only at a particular process interleaving. On the other hand, runtime verification systems can be used to ensure that a number of properties are preserved at a post-deployment stage. ELARVA is a runtime verification tool developed in Erlang which has already been successfully used in order to monitor concurrent software systems. The main issue now is, what happens when one of the properties being monitored is broken. At this point a software developer will attempt to determine what caused the system to fail. However considering the fact that a runtime verification system may have been running with no properties being violated for an extended period of time, attempting to manually understand the entire trace log becomes a very complex task. A similar problem was tackled by using shrinking techniques in order to simplify failing inputs in software testing. In this report we propose an extension to ELARVA that adds trace shrinking functionality. Whenever ELARVA detects a violation during runtime, the trace shrinking functionality will be used in order to provide a much smaller trace that produces the same violation. This smaller trace should make it easier for somebody trying to understand why the violation occurred. The main problem with applying shrinking techniques to runtime verification is that shrinking techniques require a failure to be repeatable. In order to reproduce a failure in runtime verification a replay system had to be designed which records all of the system's interactions with outside elements (like users and external libraries) during runtime. These interactions can then be replayed during the shrinking process in order to simulate the system's behaviour and determine whether a shrunk trace leads to the same violation or not. In conjunction with this replay system, algorithms like delta debugging minimization were implemented in order to systematically reduce the size of a failure trace. Tests using two different case studies confirmed that the trace shrinking extension for ELARVA successfully shrunk the execution trace after a failure had been detected through runtime verification.en_GB
dc.language.isoenen_GB
dc.rightsinfo:eu-repo/semantics/restrictedAccessen_GB
dc.subjectERLANG (Computer program language)en_GB
dc.subjectAlgorithmsen_GB
dc.subjectComputer softwareen_GB
dc.titleCounter example shrinking for ELARVAen_GB
dc.typebachelorThesisen_GB
dc.rights.holderThe 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.institutionUniversity of Maltaen_GB
dc.publisher.departmentFaculty of Information and Communication Technologyen_GB
dc.description.reviewedN/Aen_GB
dc.contributor.creatorGrima, Ian (2012)-
Appears in Collections:Dissertations - FacICT - 2012

Files in This Item:
File Description SizeFormat 
B.SC.(HONS)ICT_Grima_Ian_2012.pdf
  Restricted Access
3.9 MBAdobe PDFView/Open Request a copy


Items in OAR@UM are protected by copyright, with all rights reserved, unless otherwise indicated.