Refactoring for Software Design Smells

Managing Technical Debt

Nonfiction, Computers, Programming, Software Development, Programming Languages, General Computing
Cover of the book Refactoring for Software Design Smells by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma, Elsevier Science
View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart
Author: Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma ISBN: 9780128016466
Publisher: Elsevier Science Publication: November 11, 2014
Imprint: Morgan Kaufmann Language: English
Author: Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
ISBN: 9780128016466
Publisher: Elsevier Science
Publication: November 11, 2014
Imprint: Morgan Kaufmann
Language: English

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.

  • Contains a comprehensive catalog of 25 structural design smells (organized around four fundamental design principles) that contribute to technical debt in software projects
  • Presents a unique naming scheme for smells that helps understand the cause of a smell as well as points toward its potential refactoring
  • Includes illustrative examples that showcase the poor design practices underlying a smell and the problems that result
  • Covers pragmatic techniques for refactoring design smells to manage technical debt and to create and maintain high-quality software in practice
  • Presents insightful anecdotes and case studies drawn from the trenches of real-world projects
View on Amazon View on AbeBooks View on Kobo View on B.Depository View on eBay View on Walmart

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.

More books from Elsevier Science

Cover of the book Handbook of Flotation Reagents: Chemistry, Theory and Practice by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book China’s Venture Capital Market by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Medicinal Plants by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book From Habitability to Life on Mars by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Serotonin and Behavior by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Principles and Applications of Organic Light Emitting Diodes (OLEDs) by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Data Mining: Practical Machine Learning Tools and Techniques by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Tetrahymena Thermophila by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Coal Science by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Advances in Cell and Molecular Diagnostics by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Modelling of Mechanical Systems: Discrete Systems by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Solar Energy Desalination Technology by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Nanoparticles in Translational Science and Medicine by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Chemical Engineering for Renewables Conversion by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
Cover of the book Matlab by Girish Suryanarayana, Ganesh Samarthyam, Tushar Sharma
We use our own "cookies" and third party cookies to improve services and to see statistical information. By using this website, you agree to our Privacy Policy