A Case Study on the Impact of Refactoring on Quality and Productivity in an Agile Team
Balancing Agility and Formalism in Software Engineering
Critical issues on test-driven development
PROFES'11 Proceedings of the 12th international conference on Product-focused software process improvement
On the revival of dynamic languages
SC'05 Proceedings of the 4th international conference on Software Composition
Extended iterative maintenance life cycle using eXtreme programming
ACM SIGSOFT Software Engineering Notes
Hi-index | 0.01 |
We investigate the relationship between reverse engineering and program comprehension on the one hand, and software process on the other. To understand this relationship, we select one particular existing software process, extreme programming (XP), and study the role played in it by program comprehension and reverse engineering. To that end, we analyze five key XP practices in depth: pair programming, unit testing, refactoring, evolutionary design, and collaborative planning. The contributions of this paper are (1) the identification of promising research areas in the field of program comprehension; (2) the identification of new application perspectives for reverse engineering technology; (3) a critical analysis of XP resulting in research questions that could help resolve some of the uncertainties surrounding XP; (4) a discussion of the role comprehension and reverse engineering can play in software process design.