The social network of Java classes

Several works in literature have analyzed the link structure of programs in relation with software engineering: it has been observed that the programming standards caused small-world networks to emerge among classes in object-oriented programming. The need for coherent design and the coding conventions introduce regular patterns in the link structure of code.In this work, we study the social network naturally emerging from unrelated software projects. We studied the links present among Java classes coming from different contexts. In this case, any observable patterns come from social behaviors, rather than software engineering practices.In our analysis, we could observe a regular social network, organized according to a power-law distribution that is typical, for instance, of links among Web pages. We give a positive value to class links, which we consider a sign of relevance and acceptance. Out of this, we propose a way of ranking classes, and we present our prototype search engine for Java classes.

[1]  Ian T. Foster,et al.  The Anatomy of the Grid: Enabling Scalable Virtual Organizations , 2001, Int. J. High Perform. Comput. Appl..

[2]  Steve Counsell,et al.  Power law distributions in class relationships , 2003, Proceedings Third IEEE International Workshop on Source Code Analysis and Manipulation.

[3]  Domenico Saccà,et al.  Mining Frequent Instances on Workflows , 2003, PAKDD.

[4]  R. Ferrer i Cancho,et al.  Scale-free networks from optimal design , 2002, cond-mat/0204344.

[5]  C. Lee Giles,et al.  Efficient identification of Web communities , 2000, KDD '00.

[6]  James Noble,et al.  Scale-free geometry in OO programs , 2005, CACM.

[7]  Gerard Salton,et al.  The SMART Retrieval System—Experiments in Automatic Document Processing , 1971 .

[8]  Shinji Kusumoto,et al.  Component rank: relative significance rank for software component search , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[9]  P. Lindner,et al.  Fractal Geometry of Rocks , 1999 .

[10]  Christos Faloutsos,et al.  Beyond uniformity and independence: analysis of R-trees using the concept of fractal dimension , 1994, PODS.

[11]  Benoit B. Mandelbrot,et al.  Fractal Geometry of Nature , 1984 .

[12]  Ian T. Foster,et al.  The anatomy of the grid: enabling scalable virtual organizations , 2001, Proceedings First IEEE/ACM International Symposium on Cluster Computing and the Grid.

[13]  Rajeev Motwani,et al.  The PageRank Citation Ranking : Bringing Order to the Web , 1999, WWW 1999.

[14]  Mike P. Papazoglou,et al.  Introduction: Service-oriented computing , 2003, CACM.

[15]  J. Moreno Sociometry in Relation to Other Social Sciences (1937) , 1937 .

[16]  Lada A. Adamic Zipf, Power-laws, and Pareto-a ranking tutorial , 2000 .

[17]  Sergey Brin,et al.  The Anatomy of a Large-Scale Hypertextual Web Search Engine , 1998, Comput. Networks.

[18]  Albert-László Barabási,et al.  Linked - how everything is connected to everything else and what it means for business, science, and everyday life , 2003 .

[19]  Boudewijn F. van Dongen,et al.  Workflow mining: A survey of issues and approaches , 2003, Data Knowl. Eng..

[20]  Rajkumar Buyya,et al.  Economic-based Distributed Resource Management and Scheduling for Grid Computing , 2002, ArXiv.

[21]  Sharon L. Milgram,et al.  The Small World Problem , 1967 .