SOFTWARE PROCESS IMPROVEMENT AND PRACTICE Softw. Process Improve. Pract. 2009; 14: 337–347 Published online 23 June 2009 in Wiley InterScience (www.interscience.wiley.com) DOI: 10.1002/spip.426 Managing Knowledge for Information System Evolution: the MinimalEDoc Methodology Research Section Paolo Salvaneschi 1,2 * † 1 Faculty of Engineering, University of Bergamo, Dalmine, Bergamo, Italy 2 Salvaneschi and Partners, Bergamo, Italy The paper describes a proposed method (MinimalEDoc – Minimal Documents for Software Evolution) for managing the documents required during the evolution phase of information systems. The method applies a minimalist approach to the documentation and the concept of ‘Total Cost of Ownership’. It is composed of definitions, principles, a documental model, a management process and a supporting tool. Documents are classified according to document types ‘maps’, ‘aspects’, ‘components’ and ‘critical points’. For specific classes of applications, we can define reusable document schemes and patterns. The documents are organized into a common knowledge base subject to multiple views for different classes of users. The implementation technology is based on a wiki tool integrating external specialized CASE tools. The methodology is supported by an empirical case study involving the information system of a large retail company. Copyright 2009 John Wiley & Sons, Ltd. KEY WORDS: software evolution; knowledge management; information systems 1. INTRODUCTION Managing the evolution of large information sys- tems is a well-known and difficult problem. An information technology (IT) department of a non- ICT (Information and Communication Technology) organization typically manages both new projects and many existing software applications delivering services during a long time interval. During their life, applications are subject to an evolution process, mainly caused by changes in business processes of the company. The development life and the evolu- tion/service life are very different. A new project runs for a limited time interval (e.g. 1 year), whereas * Correspondence to: Paolo Salvaneschi, Faculty of Engineering, University of Bergamo, Dalmine, Bergamo, Italy † E-mail: pasalvan@alice.it Copyright 2009 John Wiley & Sons, Ltd. the life of an existing application may be very long, for example, ten years. People providing services and managing the change (managers, system operators, analysts and programmers) require knowledge about these soft- ware applications, in many cases composed by complex structures of hardware, software and data. It is quite common that, even if the initial develop- ment was carried out through a good development process, on the basis of the best software engi- neering practices, the delivered documents become rapidly obsolete and no more useful. They were useful for understanding requirements, specify- ing functions and designing software, but the cost of maintaining them during the evolution phase is too high. People do not have time for updat- ing documents; turnover causes loss of knowledge and there is no technology to update documents automatically.