Jump to ratings and reviews
Rate this book

Refactoring for Software Design Smells: Managing Technical Debt

Rate this book
Awareness of design smells – indicators of common design problems – helps developers or software engineers understand mistakes made while designing, what design principles were overlooked or misapplied, and what principles need to be applied properly to address those smells through refactoring. Developers and software engineers may "know" principles and patterns, but are not aware of the "smells" that exist in their design because of wrong or mis-application of principles or patterns. These smells tend to contribute heavily to technical debt – further time owed to fix projects thought to be complete – and need to be addressed via proper refactoring. Refactoring for Software Design Smells presents 25 structural design smells, their role in identifying design issues, and potential refactoring solutions. Organized across common areas of software design, each smell is presented with diagrams and examples illustrating the poor design practices and the problems that result, creating a catalog of nuggets of readily usable information that developers or engineers can apply in their projects. The authors distill their research and experience as consultants and trainers, providing insights that have been used to improve refactoring and reduce the time and costs of managing software projects. Along the way they recount anecdotes from actual projects on which the relevant smell helped address a design issue.

258 pages, Paperback

First published November 10, 2014

17 people are currently reading
137 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
10 (30%)
4 stars
10 (30%)
3 stars
10 (30%)
2 stars
3 (9%)
1 star
0 (0%)
Displaying 1 - 7 of 7 reviews
Profile Image for Sandro Mancuso.
Author 2 books289 followers
October 25, 2017
The book is very dry and you need to be in the mood to read it. For those who like going deeper in software design principles and like reading books on patterns, refactoring, and smells, this book will be interesting. There is nothing outstanding there but the authors did a great job to catalogue common design smells. For each smell, they describe how they emerge, which principles they violate and possible solutions. The book is very OOD oriented, which is fair enough. It is written in a similar way to the GoF Design Patterns book. 4 stars for the effort in creating a catalogue with the smells and analysing them deeper.
Profile Image for Vikram.
1 review
September 8, 2016
I follow this book and I must admit that the book is too good.

The simple language, the examples and illustrations, the refactoring suggestions are easy to understand and implement. The case studies and anecdotes given in the book make it more interesting.

The concept of Technical Debt has been nicely explained. The design smells, their classification and details have been presented very well.
The appendix speaks about the tools that can be used for identifying design smells.
Most importantly, the book is very handy and I can carry it all the time with me.

After reading the book, when I analysed my code for design smells, I was surprised with the results :) Code Refactoring is the way to go for sure, but this book gives you a direction for that. I definitely feel benefited with the book. I feel I have been augmented with a better vision altogether.

My recommendation is that every developer should read this book at least once.

Lastly, I thank the esteemed authors who have done a brilliant job of sharing their knowledge in a simple yet very powerful and effective way.
Kudos to you guys and thanks a ton for writing this book!
Profile Image for Jevgenij.
522 reviews13 followers
June 19, 2020
+ nicely structured collection of OOP design smells
+ examples from real world
- dry
- old school oop: advocates deep hierarchies, no data classes
4 reviews1 follower
September 11, 2019
Valuable and concise catalogue of OO design smells with lots of real examples. Through the study of the smells we can appreciate better the value of design principles like: abstraction, encapsulation, information hiding, hierarchy, SOLID, etc.
Profile Image for Bugzmanov.
231 reviews97 followers
Read
June 2, 2019
just skimmed through. thus no rating. Looks like a solid collection of design smells nicely grouped around abstraction, encapsulation, modularization and hierarchies.
Profile Image for Stijn.
Author 9 books8 followers
April 10, 2017
This books feels like a great summary of Design Smells and Software Principles that every respective developer should be aware of.
Displaying 1 - 7 of 7 reviews

Can't find what you're looking for?

Get help and learn more about the design.