Title :
Spreading knowledge about Gnutella: a case study in understanding net-centric applications
Author_Institution :
Dept. of Comput. Sci., California Univ., Riverside, CA
Abstract :
The paper describes our experiences in attempting to understand the functional nature, high-level design, and implementation details of Gnut, a program that implements the Gnutella peer-to-peer Internet file system protocol. Gnutella is representative of a new breed of net-centric applications that is both qualitatively and quantitatively different than the typical legacy systems that are usually the focus of program understanding exercises. The primary motivation for this analysis is our interest in evaluating the applicability of traditional reverse engineering tools to aid in the understanding of this type of contemporary software system. A secondary motivation for the case study is an assessment of an existing framework for categorizing the capabilities of software reverse engineering environments, to further develop its capabilities. We found that the representative tool we used to examine Gnut, Source Navigator, does not adequately address the requirements of understanding net-centric applications. In particular, the emphasis on static source code analysis is no longer appropriate for this type of application. Dynamic analysis and network monitors are also needed to gain a more complete understanding of the subject system. We also found that the framework requires some alteration to be used in this new context, although the description of the tool´s support for the canonical activities of reverse engineering and its quality attributes remains pertinent
Keywords :
Internet; distributed programming; protocols; reverse engineering; software maintenance; software tools; system monitoring; Gnut; Gnutella; Source Navigator; canonical activities; case study; contemporary software system; dynamic analysis; functional nature; high-level design; implementation details; legacy systems; net-centric application understanding; network monitors; peer-to-peer Internet file system protocol; program understanding exercises; quality attributes; representative tool; reverse engineering tools; software reverse engineering environments; static source code analysis; subject system; Application software; Computer aided software engineering; Computer networks; Computer science; File systems; Internet; Peer to peer computing; Protocols; Reverse engineering; Software systems;
Conference_Titel :
Program Comprehension, 2001. IWPC 2001. Proceedings. 9th International Workshop on
Conference_Location :
Toronto, Ont.
Print_ISBN :
0-7695-1131-7
DOI :
10.1109/WPC.2001.921730