Jump to ratings and reviews
Rate this book

Object-Oriented Reengineering Patterns

Rate this book
The documentation is missing or obsolete, and the original developers have departed. Your team has limited understanding of the system, and unit tests are missing for many, if not all, of the components. When you fix a bug in one place, another bug pops up somewhere else in the system. Long rebuild times make any change difficult. All of these are signs of software that is close to the breaking point.Many systems can be upgraded or simply thrown away if they no longer serve their purpose. Legacy software, however, is crucial for operations and needs to be continually available and upgraded. How can you reduce the complexity of a legacy system sufficiently so that it can continue to be used and adapted at acceptable cost?Based on the authors' industrial experiences, this book is a guide on how to reverse engineer legacy systems to understand their problems, and then reengineer those systems to meet new demands. Patterns are used to clarify and explain the process of understanding large code bases, hence transforming them to meet new requirements. The key insight is that the right design and organization of your system is not something that can be evident from the initial requirements alone, but rather as a consequence of understanding how these requirements evolve.

* Describes how to reverse engineer a monolithic system to understand how it really works and how to identify potential problems.* Includes reengineering patterns that tackle well-known reengineering techniques often encountered in object-oriented programming, such as introducing polymorphism, factoring out common behavior, detecting duplicated code, and understanding design.* Shows how to build a culture of continuous reengineering for achieving flexible and maintainable object-oriented systems.

282 pages, Hardcover

First published July 3, 2002

3 people are currently reading
171 people want to read

About the author

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
4 (14%)
4 stars
18 (66%)
3 stars
5 (18%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 - 4 of 4 reviews
Profile Image for Christophe Addinquy.
390 reviews19 followers
August 29, 2018
Refactoring Legacy code is as important as the subject is dry, therefore not well considered. This is the subject of this book where a 9 step process is proposed. Each step, embedded in a chapter, take the shape of a pattern language. Because that's it: a patterns book. Unfortunately, the angle doesn't catch us even if this choice is a good one for the subject.
Ma note de lecture en Français ici
Profile Image for Enrico.
77 reviews4 followers
November 5, 2012
Nice exposition. But really highlighting the need for proper tools to reason about the software.
Profile Image for Carter.
597 reviews
June 7, 2022
This book has some merit. The material how does not complement, much of what I have on hand. It is something, I read before, quite some time ago.
Displaying 1 - 4 of 4 reviews

Can't find what you're looking for?

Get help and learn more about the design.