Using Semantic Networks and Context in Search for Relevant Software Engineering Artifacts

The discovery of relevant software artifacts can increase software reuse and reduce the cost of software development and maintenance. Furthermore, change requests, which are a leading cause of project failures, can be better classified and handled when all relevant artifacts are available to the decision makers. However, traditional full-text and similarity search techniques often fail to provide the full set of relevant documents because they do not take into consideration existing relationships between software artifacts. We propose a metadata approach with semantic networks which convey such relationships. Our approach reveals additional relevant artifacts that the user might have not been aware of. We also apply contextual information to filter out results unrelated to the user contexts, thus, improving the precision of the search results. Experimental results show that the combination of semantic networks and context significantly improve the precision and recall of the search results.

[1]  Frank van Harmelen,et al.  C-OWL: Contextualizing Ontologies , 2003, SEMWEB.

[2]  George Karabatis,et al.  Specification and Management of Interdependent Data in Operational Systems and Data Warehouses , 1997, Distributed and Parallel Databases.

[3]  Agnar Aamodt,et al.  CASE-BASED REASONING: FOUNDATIONAL ISSUES, METHODOLOGICAL VARIATIONS, AND SYSTEM APPROACHES AICOM - ARTIFICIAL INTELLIGENCE COMMUNICATIONS , 1994 .

[4]  James H. Johnson Micro Projects Cause Constant Change , 2001 .

[5]  Gerardo Canfora,et al.  Impact analysis by mining software and change request repositories , 2005, 11th IEEE International Software Metrics Symposium (METRICS'05).

[6]  Patrick Brézillon,et al.  Understanding Context Before Using It , 2005, CONTEXT.

[7]  Ali S. Hadi,et al.  Finding Groups in Data: An Introduction to Chster Analysis , 1991 .

[8]  R. Prieto-Diaz,et al.  Implementing faceted classification for software reuse , 1990, [1990] Proceedings. 12th International Conference on Software Engineering.

[9]  Hugo Liu,et al.  ConceptNet — A Practical Commonsense Reasoning Tool-Kit , 2004 .

[10]  Farzin Maghoul,et al.  Y!Q: contextual search at the point of inspiration , 2005, CIKM '05.

[11]  Patrick Brézillon,et al.  Dynamics between Contextual Knowledge and Proceduralized Context , 1999, CONTEXT.

[12]  Judea Pearl,et al.  Probabilistic reasoning in intelligent systems - networks of plausible inference , 1991, Morgan Kaufmann series in representation and reasoning.

[13]  James A. Hendler,et al.  The Semantic Web" in Scientific American , 2001 .

[14]  G Stix,et al.  The mice that warred. , 2001, Scientific American.

[15]  Vipul Kashyap,et al.  Semantic and schematic similarities between database objects: a context-based approach , 1996, The VLDB Journal.

[16]  Amit P. Sheth,et al.  Management of heterogeneous and autonomous database systems , 1998 .

[17]  Massimiliano Di Penta,et al.  An approach to classify software maintenance requests , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[18]  James A. Hendler,et al.  Computing similarity in a reuse library system: an AI-based approach , 1992, TSEM.

[19]  Leiguang Gong,et al.  Constraining model-based reasoning using contexts , 2003, Proceedings IEEE/WIC International Conference on Web Intelligence (WI 2003).

[20]  Thorsten Joachims,et al.  Optimizing search engines using clickthrough data , 2002, KDD.

[21]  Stéphane Bressan,et al.  Context Interchange: New Features and Formalisms for the Intelligent Integration of Information Context Interchange: New Features and Formalisms for the Intelligent Integration of Information , 1997 .

[22]  Robert S. Arnold,et al.  Software Change Impact Analysis , 1996 .

[23]  John A. Barnden,et al.  Semantic Networks , 1998, Encyclopedia of Social Network Analysis and Mining.

[24]  Stuart C. Shapiro,et al.  Encyclopedia of artificial intelligence, vols. 1 and 2 (2nd ed.) , 1992 .

[25]  John Mylopoulos,et al.  Semantic Networks and the Generation of Context , 1975, IJCAI.

[26]  Marco Gori,et al.  Focused Crawling Using Context Graphs , 2000, VLDB.

[27]  Amit P. Sheth,et al.  Interdependent database systems , 1998 .

[28]  Ralf Rantzau,et al.  Context-sensitive ranking , 2006, SIGMOD Conference.

[29]  Andreas Zimmermann,et al.  An Operational Definition of Context , 2007, CONTEXT.

[30]  Eduardo Ostertag A Classification System for Software Reuse , 1992 .

[31]  Forrest Shull,et al.  An evolutionary testbed for software technology evaluation , 2005, Innovations in Systems and Software Engineering.

[32]  George Karabatis,et al.  Searching for relevant software change artifacts using semantic networks , 2009, SAC '09.

[33]  Maciej Haranczyk,et al.  Comparison of Similarity Coefficients for Clustering and Compound Selection , 2008, J. Chem. Inf. Model..

[34]  Ralph Bergmann,et al.  Developing Industrial Case-Based Reasoning Applications Using the INRECA Methodology , 2003 .

[35]  Amit P. Sheth,et al.  Semantic Association Identification and Knowledge Discovery for National Security Applications , 2005, J. Database Manag..

[36]  Amit P. Sheth,et al.  Specifying interdatabase dependencies in a multidatabase environment , 1991, Computer.

[37]  Erich J. Neuhold,et al.  Semantic vs. structural resemblance of classes , 1991, SGMD.

[38]  Amit P. Sheth,et al.  Multidatabase interdependencies in industry , 1993, SIGMOD '93.

[39]  Mel Siegel,et al.  Sensor fusion for context understanding , 2002, IMTC/2002. Proceedings of the 19th IEEE Instrumentation and Measurement Technology Conference (IEEE Cat. No.00CH37276).

[40]  Gregory D. Dennis TSAFE: Building a Trusted Computing Base for Air Traffic Control Software , 2003 .

[41]  Gail C. Murphy,et al.  Who should fix this bug? , 2006, ICSE.

[42]  John Mylopoulos,et al.  The Semantic Web - ISWC 2003 , 2003, Lecture Notes in Computer Science.

[43]  Rubén Prieto-Díaz,et al.  Status report: software reusability , 1993, IEEE Software.

[44]  Christiane Fellbaum,et al.  Book Reviews: WordNet: An Electronic Lexical Database , 1999, CL.

[45]  Patrick Brézillon,et al.  Context in Human-Machine Problem Solving: A Survey , 1996 .

[46]  Ehud Rivlin,et al.  Placing search in context: the concept revisited , 2002, TOIS.

[47]  Frank van Harmelen,et al.  A semantic web primer , 2004 .

[48]  Audris Mockus,et al.  Expertise Browser: a quantitative approach to identifying expertise , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

[49]  Deborah L. McGuinness,et al.  OWL Web ontology language overview , 2004 .

[50]  Henry Lieberman,et al.  Out of context: Computer systems that adapt to, and learn from, context , 2000, IBM Syst. J..

[51]  Frederick M. Haney Module connection analysis: a tool for scheduling software debugging activities , 1972, AFIPS '72 (Fall, part I).

[52]  Andrian Marcus,et al.  Recovering documentation-to-source-code traceability links using latent semantic indexing , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[53]  J. Sowa Laws, Facts, and Contexts: Foundations for Multimodal Reasoning , 2003 .

[54]  Heiner Stuckenschmidt,et al.  Practical Context Transformation for Information System Interoperability , 2001, CONTEXT.

[55]  Jeffrey M. Bradshaw,et al.  Applying KAoS Services to Ensure Policy Compliance for Semantic Web Services Workflow Composition and Enactment , 2004, SEMWEB.

[56]  Peter Freeman,et al.  Classifying Software for Reusability , 1987, IEEE Software.

[57]  Margaret Masterman Semantic message detection for machine translation, using an interlingua , 1961, EARLYMT.

[58]  John McCarthy,et al.  Notes on Formalizing Context , 1993, IJCAI.

[59]  Masatoshi Yoshikawa,et al.  Adaptive web search based on user profile constructed without any effort from users , 2004, WWW '04.

[60]  J. Rice Mathematical Statistics and Data Analysis , 1988 .

[61]  Agnar Aamodt,et al.  Case-Based Reasoning: Foundational Issues, Methodological Variations, and System Approaches , 1994, AI Commun..

[62]  Gail C. Murphy,et al.  Automatic bug triage using text categorization , 2004, SEKE.

[63]  George Karabatis,et al.  Semantic integration of government data for water quality management , 2007, Gov. Inf. Q..

[64]  Padhraic Smyth,et al.  From Data Mining to Knowledge Discovery: An Overview , 1996, Advances in Knowledge Discovery and Data Mining.

[65]  Wanda Pratt,et al.  Integrating Information Sources Using Context Logic , 1995 .

[66]  Arie van Deursen,et al.  Can LSI help reconstructing requirements traceability in design and test? , 2006, Conference on Software Maintenance and Reengineering (CSMR'06).

[67]  Xuehua Shen,et al.  Context-sensitive information retrieval using implicit feedback , 2005, SIGIR '05.

[68]  Ramanathan V. Guha,et al.  Contexts for the Semantic Web , 2004, SEMWEB.

[69]  J. Pearl Causality: Models, Reasoning and Inference , 2000 .

[70]  Amit P. Sheth,et al.  Ranking complex relationships on the semantic Web , 2005, IEEE Internet Computing.

[71]  George Karabatis,et al.  Semantic Integration and Knowledge Discovery for Environmental Research , 2007, J. Database Manag..

[72]  Mikael Lindvall,et al.  How well do experienced software developers predict software change? , 1998, J. Syst. Softw..

[73]  Victor R. Basili,et al.  Support for comprehensive reuse , 1991, Softw. Eng. J..