Please use this identifier to cite or link to this item: https://www.um.edu.mt/library/oar/handle/123456789/78387
Full metadata record
DC FieldValueLanguage
dc.date.accessioned2021-07-16T07:37:22Z-
dc.date.available2021-07-16T07:37:22Z-
dc.date.issued2014-
dc.identifier.citationTanti, E. (2014). Towards sound refactoring in ERLANG (Master's dissertation).en_GB
dc.identifier.urihttps://www.um.edu.mt/library/oar/handle/123456789/78387-
dc.descriptionM.SC.ARTIFICIAL INTELLIGENCEen_GB
dc.description.abstractRefactoring tools aim to improve program code without affecting the observable behaviour of the said code. The problem with refactoring tools for actor-based programming languages such as ERLANG is that either the tool only provides simple refactorings, or it provides complex refactorings without guaranteeing that the behaviour is preserved. The shortage of more effective refactorings is, in part, due to the lack of a semantic theory for ERLANG actors. This would allow us to develop formal proofs for behaviour preservation a priori, which could in turn be used to verify the correctness of the refactoring tool. In this work, we develop a test-based semantic theory for behaviour preservation of concurrent actor programs such as those constructed in ERLANG. In ERLANG, the accepted notion of program correctness is that of passing a suite of tests, and testing frameworks and test case generators are often used. However, software testing is ultimately a means to an end, i.e., to attempt to determine if an application behaves as expected. We therefore develop a formal definition for a test-based preorder that quantifies over the set of all possible tests. This definition is most useful for determining when a refactoring is erroneous, achieved by identifying a witness test which no longer passes after refactoring. However, proving two actor systems are related by this preorder is a difficult task as the definition is infinitary. We thus develop a sound and complete alternative characterisation which is tracebased, and therefore does not quantify over all possible tests. The development of an alternative characterisation was particularly challenging in our case due to inherent characteristics of the actor model such as asynchrony, persistence and the single receiver property.en_GB
dc.language.isoenen_GB
dc.rightsinfo:eu-repo/semantics/restrictedAccessen_GB
dc.subjectSoftware refactoringen_GB
dc.subjectERLANG (Computer program language)en_GB
dc.titleTowards sound refactoring in ERLANGen_GB
dc.typemasterThesisen_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 Technology. Department of Artificial Intelligenceen_GB
dc.description.reviewedN/Aen_GB
dc.contributor.creatorTanti, Erica (2014)-
Appears in Collections:Dissertations - FacICT - 2014
Dissertations - FacICTAI - 2002-2014

Files in This Item:
File Description SizeFormat 
M.SC.COMP.SCI._ARTIFICIAL INTELLIGENCE_Tanti_Erica_2014.pdf
  Restricted Access
6.34 MBAdobe PDFView/Open Request a copy


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