Skip to main content

Refactoring Support for Modularity Maintenance in Erlang

Li, Huiqing and Thompson, Simon (2010) Refactoring Support for Modularity Maintenance in Erlang. In: Vunju, Jurgen and Marinescu, Cristina, eds. 2010 10th IEEE Working Conference on Source Code Analysis and Manipulation. IEEE, pp. 182-196. ISBN 978-1-4244-8655-7. (doi:10.1109/SCAM.2010.17) (KAR id:30627)

Language: English
Download (334kB) Preview
[thumbnail of scam2010.pdf]
This file may not be suitable for users of assistive technology.
Request an accessible format
Official URL


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: Book section
DOI/Identification number: 10.1109/SCAM.2010.17
Uncontrolled keywords: determinacy analysis; Craig interpolants; manganese; programming; computer languages; software architecture; software; maintenance engineering; application programming interface
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: Huiqing Li
Date Deposited: 21 Sep 2012 09:49 UTC
Last Modified: 16 Nov 2021 10:08 UTC
Resource URI: (The current URI for this page, for reference purposes)
Thompson, Simon:
  • Depositors only (login required):