Identifying knowledge management needs in software maintenance groups: a qualitative approach

Software maintenance is an activity that requires lots of knowledge. For example, maintainers must know what changes should do to the software, where to do those changes and how those changes can affect other modules of the system. Frequently, they do not have enough knowledge to make the best decision and must consult other information sources, but these sources are often unknown or difficult to locate. Therefore, knowledge management could be useful to address some of these problems; however, before knowledge management tools could be developed for software maintenance groups, some questions must be answered: such as what kinds of problems could be solved. In this paper, a qualitative approach to the identification of knowledge management needs in software maintenance teams is presented. This approach has been applied in two case studies, and an agent-based knowledge management tool has been designed and implemented from the results obtained.

[1]  Keith H. Bennett,et al.  Software maintenance and evolution: a roadmap , 2000, ICSE '00.

[2]  Steve Howard,et al.  Methods & tools: the rich picture: a tool for reasoning about work context , 1998, INTR.

[3]  Mary Beth Rosson,et al.  Getting around the task-artifact cycle: how to make claims and design by scenario , 1992, TOIS.

[4]  Janice Singer Practices of software maintenance , 1998, Proceedings. International Conference on Software Maintenance (Cat. No. 98CB36272).

[5]  Victor R. Basili,et al.  A change analysis process to characterize software maintenance projects , 1994, Proceedings 1994 International Conference on Software Maintenance.

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

[7]  Nicolas Anquetil,et al.  Knowledge for Software Maintenance , 2003, SEKE.

[8]  Mario Piattini,et al.  Using a qualitative research method for building a software maintenance methodology , 2002, Softw. Pract. Exp..

[9]  Vicki L. Sauter,et al.  Intuitive decision-making , 1999, Commun. ACM.

[10]  Anneliese Amschler Andrews,et al.  Identification of Dynamic Comprehension Processes During Large Scale Maintenance , 1996, IEEE Trans. Software Eng..

[11]  Dirk Deridder A Concept-Oriented Approach to Support Software Maintenance and Reuse Activities , 2002 .

[12]  Janice Singer,et al.  Towards an ontology of software maintenance , 1999, J. Softw. Maintenance Res. Pract..

[13]  Mario Piattini,et al.  An Ontology For The Management Of Software Maintenance Projects , 2004, Int. J. Softw. Eng. Knowl. Eng..

[14]  Bill Curtis,et al.  Process modeling , 1992, CACM.

[15]  Carolyn B. Seaman,et al.  The information gathering strategies of software maintainers , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[16]  Jorge J. Gómez-Sanz,et al.  Agent Oriented Analysis Using Message/UML , 2001, AOSE.

[17]  Nicolas Anquetil,et al.  Organizing the Knowledge Used in Software Maintenance , 2003, J. Univers. Comput. Sci..

[18]  Joyce J. Elam,et al.  Inside a software design team: knowledge acquisition, sharing, and integration , 1993, CACM.

[19]  Pattie Maes,et al.  Agents that reduce work and information overload , 1994, CACM.

[20]  Michael Luck,et al.  Proceedings of the Third Mexican International Conference on Computer Science , 2001 .

[21]  Pierre N. Robillard,et al.  The role of knowledge in software development , 1999, CACM.

[22]  Mark John Taylor,et al.  Knowledge for software maintenance , 1997, J. Inf. Technol..

[23]  Meliha Handzic,et al.  Managing Software Engineering Knowledge , 2010, Springer Berlin Heidelberg.

[24]  Aurora Vizcaíno,et al.  Using a Multi-agent Architecture to Manage Knowledge in the Software Maintenance Process , 2004, KES.