Extreme programming explained: embrace change
Extreme programming explained: embrace change
Legacy Systems: Coping with Success
IEEE Software
Planning the Reengineering of Legacy Systems
IEEE Software
Using Extreme Programming in a Maintenance Environment
IEEE Software
Risks Involved in Reengineering Projects
WCRE '99 Proceedings of the Sixth Working Conference on Reverse Engineering
Reverse Engineering Tools as Media for Imperfect Knowledge
WCRE '00 Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE'00)
An Empirical Study of Speed and Communication in Globally Distributed Software Development
IEEE Transactions on Software Engineering
Extended iterative maintenance life cycle using eXtreme programming
ACM SIGSOFT Software Engineering Notes
Hi-index | 0.00 |
Reverse engineering is an imperfect process when comprehending a legacy system with large volume of source code and complicated business rules. It is important for the adopted software process to shorten the time to market and minimize the risks especially in distributed environment. In this paper, Extreme Programming (XP) was evaluated in a distributed legacy system reengineering project to handle the imperfect system requirement and response to rapid business request combination while the customer was offshore. Some important adjustment was made to the XP process according to the project environment. The reengineering tasks of large scale were divided into several subtasks through evolving reengineering. XP made these tasks comparatively independent, reduced the workload of analysis in reverse engineering, and improved the performance of analysis. Localized analysis made testing and tracing easier, so the complexity of reengineering project was reduced. Evolving reengineering helped us to conduct and fulfill reverse engineering and forward engineering in parallel and shorten project lifecycle. XP enabled us to deliver better quality code in a shorter period of time with low cost.