Please use this identifier to cite or link to this item: https://www.um.edu.mt/library/oar/handle/123456789/78387
Title: Towards sound refactoring in ERLANG
Authors: Tanti, Erica (2014)
Keywords: Software refactoring
ERLANG (Computer program language)
Issue Date: 2014
Citation: Tanti, E. (2014). Towards sound refactoring in ERLANG (Master's dissertation).
Abstract: Refactoring 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.
Description: M.SC.ARTIFICIAL INTELLIGENCE
URI: https://www.um.edu.mt/library/oar/handle/123456789/78387
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.