A flexible method for segmentation in concept assignment

Software comprehension is one of the most expensive activities in software maintenance and many tools have been developed to help the maintainer reduce the time and cost of the task. Of the numerous tools and methods available, one group has received relatively little attention: those using plausible reasoning to address the concept assignment problem. This problem is defined as the process of assigning descriptive terms to their implementation in source code, the terms being nominated by a maintainer and usually relating to computational intent. We present a new concept assignment method for COBOL II: Hypothesis-Based Concept Assignment (HB-CA). It employs a simple knowledge base to model concepts, source code indicators, and inter-concept relationships. An implementation of a prototype tool is described, and the results from a comprehensive evaluation using COBOL II sources summarised.

[1]  Vassileios Karakostas,et al.  Intelligent search and acquisition of business knowledge from programs , 1992, J. Softw. Maintenance Res. Pract..

[2]  Anneliese Amschler Andrews,et al.  Program Comprehension During Software Maintenance and Evolution , 1995, Computer.

[3]  Timo Honkela,et al.  Creating an Order in Digital Libraries with Self-Organizing Maps , 1996 .

[4]  E. B. Swanson,et al.  Software maintenance management , 1980 .

[5]  Adele E. Howe,et al.  Program understanding behaviour during enhancement of large-scale software , 1997, J. Softw. Maintenance Res. Pract..

[6]  Timothy Lethbridge,et al.  A little knowledge can go a long way towards program understanding , 1997, Proceedings Fifth International Workshop on Program Comprehension. IWPC'97.

[7]  Jorma Laaksonen,et al.  SOM_PAK: The Self-Organizing Map Program Package , 1996 .

[8]  Dmitri Roussinov,et al.  A Scalable Self-organizing Map Algorithm for Textual Classification: A Neural Network Approach to Thesaurus Generation , 1998 .

[9]  Richard W. Scamell,et al.  An experimental investigation of the impact of individual, program, and organizational characteristics on software maintenance effort , 2000, J. Syst. Softw..

[10]  Teuvo Kohonen,et al.  Self-Organizing Maps , 2010 .

[11]  Rajiv D. Banker,et al.  Software complexity and maintenance costs , 1993, CACM.

[12]  Thomas Jackson,et al.  Neural Computing - An Introduction , 1990 .

[13]  Nicolas Edwin Gold,et al.  Hypothesis-based concept assignment to support software maintenance , 2001, Proceedings IEEE International Conference on Software Maintenance. ICSM 2001.

[14]  Thomas A. Standish An Essay on Software Reuse , 1984, IEEE Transactions on Software Engineering.