Title :
Knowledge-based library re-factoring for an open source project
Author :
Penta, M. Di ; Neteler, M. ; Antoniol, G. ; Merlo, E.
Author_Institution :
Dept. of Eng., Univ. of Sannio, Benevento, Italy
Abstract :
Software miniaturization is a form of software re-factoring focused on reducing an application to its bare bones. Porting an application on a hand-held device is likely to require a preliminary step of software miniaturization, plus the development of device drivers dedicated to the new environment and hardware architecture. This paper presents the process and lessons learned in re-factoring a large open source application to remove any excess, introduce shared libraries, remove circular dependencies among libraries and, more generally, to minimize inter-library dependencies. While the final goal was to fully exploit shared library capabilities, among the various possibilities we defined a process based on existing knowledge about the application, and aimed to minimize the maintenance effort required by miniaturization activities.
Keywords :
mobile computing; software libraries; software maintenance; systems re-engineering; device drivers; hand-held device; inter-library dependencies; knowledge-based library re-factoring; maintenance; open source project; shared libraries; software miniaturization; Application software; Bandwidth; Bones; Computer industry; Ground penetrating radar; Linux; Multimedia databases; Open source software; Personal digital assistants; Software libraries;
Conference_Titel :
Reverse Engineering, 2002. Proceedings. Ninth Working Conference on
Print_ISBN :
0-7695-1799-4
DOI :
10.1109/WCRE.2002.1173089