Skip to main content

Refactoring Support for Modularity Maintenance in Erlang

Li, Huiqing, Thompson, Simon (2010) Refactoring Support for Modularity Maintenance in Erlang. In: Vunju, Jurgen and Marinescu, Cristina, eds. Tenth IEEE International Working Conference on Source Code Analysis and Manipulation. . pp. 182-196. IEEE Computer Society ISBN 978-0-7695-4178-5.


Low coupling between modules and high cohesion inside each module are the key features of good software architecture. Systems written in modern programming languages generally start with some reasonably well-designed module structure; however with continuous feature additions, modifications and bug fixes, software modularity gradually deteriorates; and there is a need for incrementally improving modularity to avoid the situation when the structure of the system becomes too complex to maintain. We demonstrate how Wrangler, a general-purpose refactoring tool for Erlang, could be used to maintain and improve the modularity of programs written in Erlang without dramatically changing the existing module structure. We identify a set of ''modularity smells'' and show how they can be detected by Wrangler and removed by way of a variety of refactorings implemented in Wrangler. Validation of the approach and usefulness of the tool are demonstrated by case studies.

Item Type: Conference or workshop item (UNSPECIFIED)
Uncontrolled keywords: determinacy analysis, Craig interpolants
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Sciences > School of Computing > Programming Languages and Systems Group
Depositing User: Huiqing Li
Date Deposited: 21 Sep 2012 09:49 UTC
Last Modified: 29 May 2019 09:18 UTC
Resource URI: (The current URI for this page, for reference purposes)
  • Depositors only (login required):


Downloads per month over past year