Comprehension and Maintenance of Large-Scale Multi-Language Software Applications

Kostas Kontogiannis, Panos Linos, Kenny Wong
2006 Conference on Software Maintenance, Proceedings of the  
Software maintenance constitutes a major phase of the software life cycle. Studies indicate that software maintenance is responsible for a significant percentage of a system's overall cost and effort. The software engineering community has identified four major types of software maintenance, namely, corrective, perfective, adaptive, and preventive maintenance. Software maintenance can be seen from two major points of view. First, the classic view where software maintenance provides the
more » ... theories, techniques, methodologies, and tools for keeping software systems operational once they have been deployed to their operational environment. Most legacy systems subscribe to this view of software maintenance. The second view is a more modern emerging view, where maintenance is an integral part of the software development process and it should be applied from the early stages in the software life cycle. Regardless of the view by which we consider software maintenance, the fact is that it is the driving force behind software evolution, a very important aspect of a software system. This entry provides an in-depth discussion of software maintenance techniques, methodologies, tools, and emerging trends.
doi:10.1109/icsm.2006.20 dblp:conf/icsm/KontogiannisLW06 fatcat:amxcqphaqffbjnnfvhm6k4ojoq