Upgrade to Pro — share decks privately, control downloads, hide ads and more …



Detecting smells is only the first step towards improving code quality. The talk aim to emphasize the importance of tracking smells once detected and how it can be easily achieved by using Designite.

Tushar Sharma

October 06, 2018

More Decks by Tushar Sharma

Other Decks in Programming


  1. • Continuing Growth • All in-use software systems will grow

    • Increasing Complexity • As a software system evolves, the complexity increases unless efforts are made to contain the complexity • Declining Quality • The quality of the software will decline unless it is rigorously maintained Lehman’s laws of software evolution
  2. What is a smell? …certain structures in the code that

    suggest (sometimes they scream for) the possibility of refactoring. - Kent Beck 20 Definitions of smells: http://www.tusharma.in/smells/smellDefs.html
  3. Types of smells • Code smells • Implementation smells •

    Architecture smells • Design smells • Test smells • Performance smells • Configuration smells • Database smells • Models smells • Usability smells • Web smells • …
  4. Designite is a software design quality assessment tool for C#.

    Key features • Detects 7 architecture smells • Detects 19 design smells • Detects 11 implementation smells • Computes various object-oriented code metrics • Provides smell trend analysis of Git repositories • Many visualization aids including smell treemap, and smell sunburst • Detects code duplication • Allows customization of analysis • Smart tracking of detected smells http://www.designite-tools.com Academic license is free!
  5. T E C H N II C A L D

    E B T Structure in code that suggest the possibility of refactoring I A E
  6. T E C H N II C A L D

    E B T A tool to detect smells I A S M E L L S
  7. T E C H N II C A L D

    E B T ____ is required for effective maintainability improvements D E S I G N I T E A S M E L L S
  8. T E C H N II C A L D

    E B T D E S I G N I T E T R A C K I N G S M E L L S