Title :
Refactoring Support for Modularity Maintenance in Erlang
Author :
Li, Huiqing ; Thompson, Simon
Author_Institution :
Sch. of Comput., Univ. of Kent, Canterbury, UK
Abstract :
Low coupling between modules and high cohesion inside each module are 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. So, there is a need for incremental improvements to 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, can 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.
Keywords :
software architecture; software maintenance; Erlang; Wrangler; general purpose refactoring tool; modularity maintenance; software architecture; software modularity; support refactoring; Application programming interface; Computer languages; Maintenance engineering; Manganese; Programming; Software; Software architecture; Erlang; Modularity Maintenance; program analaysis; program transformation; refactoring;
Conference_Titel :
Source Code Analysis and Manipulation (SCAM), 2010 10th IEEE Working Conference on
Conference_Location :
Timisoara
Print_ISBN :
978-1-4244-8655-7
DOI :
10.1109/SCAM.2010.17