The costs and benefits of pair programming
Extreme programming examined
Software Engineering Economics
Software Engineering Economics
Software Maintenance Management
Software Maintenance Management
Strengthening the Case for Pair Programming
IEEE Software
Recovery, Redemption, and Extreme Programming
IEEE Software
Using Extreme Programming in a Maintenance Environment
IEEE Software
Probe Tests: A Strategy for Growing Automated Tests around Legacy Code
Proceedings of the Second XP Universe and First Agile Universe Conference on Extreme Programming and Agile Methods - XP/Agile Universe 2002
Evolving Object-Oriented Designs with Refactorings
ASE '99 Proceedings of the 14th IEEE international conference on Automated software engineering
Program Comprehension Risks and Opportunities in Extreme Programming
WCRE '01 Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01)
ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
Introducing an Agile Process in a Software Maintenance and Evolution Organization
CSMR '05 Proceedings of the Ninth European Conference on Software Maintenance and Reengineering
Working Effectively with Legacy Code
Working Effectively with Legacy Code
Journal of Systems and Software
Extreme Programming Explained: Embrace Change (2nd Edition)
Extreme Programming Explained: Embrace Change (2nd Edition)
Toward Understanding the Rhetoric of Small Source Code Changes
IEEE Transactions on Software Engineering
AGILE '06 Proceedings of the conference on AGILE 2006
Evaluating the efficacy of test-driven development: industrial case studies
Proceedings of the 2006 ACM/IEEE international symposium on Empirical software engineering
Extreme Programming Pocket Guide
Extreme Programming Pocket Guide
A Model of Agile Evolution and Maintenance Process
HICSS '09 Proceedings of the 42nd Hawaii International Conference on System Sciences
Maintenance as a function of design
AFIPS '84 Proceedings of the July 9-12, 1984, national computer conference and exposition
Extreme programming for distributed legacy system reengineering
COMPSAC-W'05 Proceedings of the 29th annual international conference on Computer software and applications conference
Iterative Maintenance Life Cycle Using eXtreme Programming
ARTCOM '10 Proceedings of the 2010 International Conference on Advances in Recent Technologies in Communication and Computing
Phase wise effort estimation for software maintenance: an extended SMEEM model
Proceedings of the CUBE International Information Technology Conference
Hi-index | 0.00 |
Software maintenance is the continuous process of enhancing the operational life of software. The existing approaches to software maintenance, derived from the traditional approaches to development, are unable to resolve the problems of unstructured code, team morale, poor visibility of the project, lack of communication, and lack of proper test suites. Alternatively, extreme programming practices such as test driven development, refactoring, pair programming, continuous integration, small releases, and collective ownership help to resolve the aforesaid problems. In this paper, a process model is proposed for software maintenance using extreme programming practices to resolve maintenance issues in an improved manner. The proposed approach speeds up the maintenance process and produces more maintainable code with less effort for future maintenance and evolution. The proposed model is validated by applying it on several maintenance projects in an academic environment. It has been observed that the approach provides higher quality code. The proposed model based on extreme programming enhances both learning and productivity of the team by improving the morale, courage, and confidence of the team, which supports higher motivation during maintenance.