Title :
Using development history sticky notes to understand software architecture
Author :
Hassan, Ahmed E. ; Holt, Richard C.
Author_Institution :
Sch. of Comput. Sci., Waterloo Univ., Ont., Canada
Abstract :
Maintenance of evolving software systems has become the most frequently performed activity by software developers. A good understanding of the software system is needed to reduce the cost and length of this activity. Various approaches and tools have been proposed to assist in this process such as code browsers, slicing techniques, etc. These techniques neglect to use a central and vital piece of data available - the historical modification records stored in source control systems. These records offer a rich and detailed account of the evolution of the software system to its current state. In this paper, we present an approach which recovers valuable information from source control systems and attaches this information to the static dependency graph of a software system. We call this recovered information - source sticky notes. We show how to use these notes along with the software reflexion framework to assist in understanding the architecture of large software systems. To demonstrate the viability of our approach, we apply it to understand the architecture of NetBSD - a large open source operating system.
Keywords :
public domain software; reverse engineering; software architecture; software maintenance; software prototyping; NetBSD; open source operating system; software architecture; software development; software evolution; software maintenance; software system; software understanding; source control systems; Centralized control; Computer architecture; Control systems; Costs; History; Open source software; Software architecture; Software maintenance; Software performance; Software systems;
Conference_Titel :
Program Comprehension, 2004. Proceedings. 12th IEEE International Workshop on
Print_ISBN :
0-7695-2149-5
DOI :
10.1109/WPC.2004.1311060