On Complex Networks in Software: How Agent-Orientation Effects Software Structures

Software-Engineering provides techniques to ease handling the essential complexity of software. A number of engineering paradigms and architectures have been devised and each generation claims to relieve future development efforts. But to date little is known about how different development approaches affect the underlying implemenation structures, making their contributions arguable. Recently, the statistical analysis of large---scale modular software systems --- represented as directed graphs --- revealed complex system characteristics, namely scale---freeand small---worldphenomena. In this paper, we argue that the exhibited network characteristics reflect utilized design approaches and apply graph analysis to examine the structural differences imposed by the utilization of Agent---Oriented Software Engineering. As this novel development paradigm proposes autonomous and pro---active entities as an atomic design and development metaphor for complicated and inherently distributed software systems, an initial analysis and comparison of graphs abstracting both agent--- and object---oriented system designs reveals structural differences which suggest that agent autonomy influences the resulting underlying implementation structures.

[1]  Winfried Lamersdorf,et al.  Jadex: A BDI-Agent System Combining Middleware and Reasoning , 2005 .

[2]  NICHOLAS R. JENNINGS,et al.  An agent-based approach for building complex software systems , 2001, CACM.

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

[4]  Jörg P. Müller,et al.  Agent-Oriented Software Engineering V, 5th International Workshop, AOSE 2004, New York, NY, USA, July 19, 2004, Revised Selected Papers , 2004, AOSE.

[5]  Ying-Cheng Lai,et al.  Signatures of small-world and scale-free properties in large computer programs , 2003, Physical review. E, Statistical, nonlinear, and soft matter physics.

[6]  Michael Winikoff,et al.  Developing intelligent agent systems - a practical guide , 2004, Wiley series in agent technology.

[7]  Damien Challet,et al.  Bug propagation and debugging in asymmetric software structures , 2004, Physical review. E, Statistical, nonlinear, and soft matter physics.

[8]  Winfried Lamersdorf,et al.  Validation of BDI Agents , 2006, PROMAS.

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

[10]  James Odell,et al.  Objects and Agents Compared , 2002, J. Object Technol..

[11]  Daniel Moldt,et al.  Goal Representation for BDI Agent Systems , 2004, PROMAS.

[12]  Brian Henderson-Sellers,et al.  Object-oriented metrics: measures of complexity , 1995 .

[13]  Duncan J. Watts,et al.  Collective dynamics of ‘small-world’ networks , 1998, Nature.

[14]  Anand S. Rao,et al.  BDI Agents: From Theory to Practice , 1995, ICMAS.

[15]  Ewan D. Tempero,et al.  Understanding the shape of Java software , 2006, OOPSLA '06.

[16]  Steve S. Benfield,et al.  Making a strong business case for multiagent technology , 2006, AAMAS '06.

[17]  Nicholas R. Jennings,et al.  Agent Theories, Architectures, and Languages: A Survey , 1995, ECAI Workshop on Agent Theories, Architectures, and Languages.

[18]  Arthur C. Graesser,et al.  Is it an Agent, or Just a Program?: A Taxonomy for Autonomous Agents , 1996, ATAL.

[19]  Mark E. J. Newman,et al.  The Structure and Function of Complex Networks , 2003, SIAM Rev..

[20]  Brian Henderson-Sellers,et al.  Agent-oriented methodologies , 2005 .

[21]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[22]  Martin Fowler,et al.  Refactoring - Improving the Design of Existing Code , 1999, Addison Wesley object technology series.

[23]  Christopher R. Myers,et al.  Software systems as complex networks: structure, function, and evolvability of software collaboration graphs , 2003, Physical review. E, Statistical, nonlinear, and soft matter physics.

[24]  Sergi Valverde,et al.  Hierarchical Small Worlds in Software Architecture , 2003 .

[25]  Damien Challet,et al.  Closed source versus open source in a model of software bug dynamics , 2003, ArXiv.

[26]  Michele Marchesi,et al.  Power Laws in Smalltalk , 2004 .

[27]  Michael Wooldridge,et al.  Intelligent Agents III , 1997 .

[28]  Winfried Lamersdorf,et al.  Evaluation of Agent-Oriented Software Methodologies - Examination of the Gap Between Modeling and Platform , 2004, AOSE.

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