How to Manage Knowledge in the Software Maintenance Process

  • Oscar M. Rodríguez
  • Aurora Vizcaíno
  • Ana I. Martínez
  • Mario Piattini
  • Jesús Favela
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3096)


The software maintenance process involves a lot of effort and costs. In fact, this stage is considered the most expensive of the software development life-cycle. Moreover, during maintenance a considerable amount of information needs to be managed. This information often comes from diverse and distributed sources such as the products to be maintained, the people who work in this process, and the activities performed to update the software. However, very few software companies use knowledge management techniques to efficiently manage this information. Appropriate knowledge management would help software companies improve performance, control costs and decrease effort by taking advantage of previous solutions that could be reused to avoid repeating previous mistakes. This work presents a multiagent system designed to manage the information and knowledge generated during the software maintenance process; using web technologies to support this management. The system has different types of agents, each devoted to a particular type of information. Agents use different reasoning techniques to generate new knowledge from previous information and to learn from their own experience. Thereby the agents become experts in the type of knowledge they are responsible for. Additionally, agents communicate with each other to share information and knowledge.


Knowledge management software maintenance agents 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Althoff, K.-D., Birk, A., Tautz, C.: The Experience Factory Approach: Realizing Learning from Experience in Software Development Organizations. In: proceedings of the 10th German Workshop on Machine Learning (FGML, University of Karlsruhe), pp. 6–8 (1997)Google Scholar
  2. 2.
    Basili, V.R., Caldiera, G., Rombach, H.D.: The Experience Factory. In: Marciniak, J.J., Wiley, J. (eds.) Encyclopedia of Software Engineering, pp. 469–476 (1994)Google Scholar
  3. 3.
    Bellifemine, A., Poggi, G., Rimassa, G.: Developing multi agent systems with a FIPA-compliant agent framework. Software Practise & Experience 31, 103–128 (2001)zbMATHCrossRefGoogle Scholar
  4. 4.
    Bergenti, F., Poggi, A., Rimassa, G.: Agent Architectures and Interaction Protocols for Corporate Memory Management Systems. In: Proceedings of the 14th European Conference on Artificial Intelligence, Workshop on Knowledge Management and Organizational Memories, pp. 39–47 Google Scholar
  5. 5.
    Berztiss, A.T.: Capability Maturity for Knowledge Management. In: Proceedings of the 13th International Workshop on Database and Expert Systems Applications (DEXA 2002), pp.162-166 (2002)Google Scholar
  6. 6.
    Caire, G., Coulier, W., Garijo, F., Gómez, J., Pavón, J., Leal, F., Chainho, P., Kearney, P., Stark, J., Evans, R., Massonet, P.: Agent Oriented Analysis Using MESSAGE/ UML In: Agent Oriented Software Engineering, pp. 119-135 (2001)Google Scholar
  7. 7.
    Dingsoyr, T., Conradi, R.: A Survey of Case Studies of the Use of Knowledge Management in Software Engineering. International Journal of Software Engineering and Knowledge Engineering 12(4), 391–414 (2002)CrossRefGoogle Scholar
  8. 8.
    Dingsoyr, T., Royrvik, E.: An Empirical Study of an Informal Knowledge Repository in a Medium-Sized Software Consulting Company. In: Proceedings of the 25th International Conference on Software Engineering (ICSE 2003), pp. 84–92 (2003)Google Scholar
  9. 9.
    Gandon, Fabien.: A Multi-Agent Architecture For Distributed Corporate Memories. In: Proceedings of the Sixteenth European Meeting on Cybernetics and Systems Research (2002)Google Scholar
  10. 10.
    Kitchenham, B.A., Travassos, G.H., Mayrhauser, A., Niessink, F., Schneidewind, N.F., Singer, J., Takada, S., Vehvilainen, R., Yang, H.: Towards an Ontology of Software Maintenance. Journal of Software Maintenance: Research and Practice 11, 365–389 (1999)CrossRefGoogle Scholar
  11. 11.
    Knowledge On Demand (KOD), IST Project, IST-1999-12503,,
  12. 12.
    Macintosh, A.: Position paper on Knowledge Asset Management (1997),
  13. 13.
    Meeham, B., Richardson, I.: Identification of Software Process Knowledge Management. Software Process Improvement and Practice, 45-55 (2003)Google Scholar
  14. 14.
    Nebus, J.: Framing the Knowledge Search Problem: Whom Do We Contact, and Why Do We Contact Them? In: Academy of Management Best Papers Proceedings, pp. h1– h7 (2001)Google Scholar
  15. 15.
    Oliveira, K.M., Anquetil, N., Dias, M.G., Ramal, M., Meneses, R.: Knowledge for Software Maintenance. In: Fifteenth International Conference on Software Engineering and Knowledge Engineering (SEKE 2003), San Francisco, July 1-3, pp. 61–68 (2003)Google Scholar
  16. 16.
    OMG Meta Object Facility (MOF) Specification, v. 1.3 RTF, (September 1999),
  17. 17.
    Pigoski, T.M.:: Practical Software Maintenance. Best Practices for Managing Your Investment. Ed., John Wiley & Sons, USA (1997)Google Scholar
  18. 18.
    Poggi, A., Rimassa, G., Turci, P.: An Intranet Based Muti- Agent System for Corporate Memory Management. In: Proceedings of the Sixteenth European Meeting on Cybernetics and Systems Research (2002) Google Scholar
  19. 19.
    Polo, M., Piattini, M., Ruiz, F.: Using a Qualitative Research Method for Building A Software Maintenance Methodology. Software Practice & Experience 32(13), 1239–1260 (2002)zbMATHCrossRefGoogle Scholar
  20. 20.
    Rodriguez, O.M., Martinez, A.I., Favela, J., Vizcaino, A.: Administración de Conocimiento como soporte al Mantenimiento de Software. In: Avances en Ciencias de la Computación, ENC 2003, Tlaxcala, México, September 8-12, pp. 367–372 (2003)Google Scholar
  21. 21.
    Ruiz, F., Vizcaíno, A., Piattini, M., García, F.: An Ontology for the Management of Software Maintenance Projects. Sent to the International Journal of Software Engineering and Knowledge Engineering (2003)Google Scholar
  22. 22.
    Rus, I., Lindvall, M.: Knowledge Management in Software Engineering. IEEE Software, 26–38 (May/June 2002)Google Scholar
  23. 23.
    Szulanski, G.: Intra-Firm Transfer of Best Practices Project. American Productivity and Quality Centre, Houston, Texas, pp. 2–19 (1994)Google Scholar
  24. 24.
    Vizcaino, A., Favela, J., Piattini, M., García, F.: Supporting Software Maintenance in Web Repositories through a Multi-Agent System. In: Menasalvas, E., Segovia, J., Szczepaniak, P.S. (eds.) AWIC 2003. LNCS (LNAI), vol. 2663, pp. 307–317 (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Oscar M. Rodríguez
    • 1
  • Aurora Vizcaíno
    • 2
  • Ana I. Martínez
    • 1
  • Mario Piattini
    • 2
  • Jesús Favela
    • 1
  1. 1.CICESE, Computer Science DepartmentMéxico
  2. 2.Alarcos Research Group. University of Castilla-La Mancha, Escuela Superior de InformáticaEspaña

Personalised recommendations