Eliminating Code Smells

Christian Baumann's profile
Christian Baumann

Principal Software Tester

Challenge Description

To eliminate a code smell, you first need to identify that there is a smell, then you need to come up with a way to safely remove that smell. However, removing code smells can have many advantages, such as making your code base cleaner and thus easier to read and maintain.

Instructions:

Identify code smells

Have a look at the provided code examples (or pick some code that you or your team has created) and identify anything that you think is a code smell. Also think about why your finding is a code smell.

Eliminate code smells

Eliminate the found code smells by applying proper programming principles, maybe by introducing meaningful names for variables or removing duplication.

Also think about:

  • Advantages & disadvantages of your solution

  • How to ensure you didn’t introduce any bugs or other code smells?

Wrap-up:

Removing code smells is a good way to improve the code base in many ways. It speeds up development, decreases the risk of bugs & failures as well as technical debt. Also, it makes it easier to maintain the application in the future, by any programmer, including yourself.

What you’ll learn
  • Follow good programming techniques & implement good design
  • Decrease the risk of future bugs & failures
  • Reduce the risk of technical debt

Prerequisites

Example code that can be used in this activity can be found at https://christianbaumann.dev/workshops/2022-testbashuk-workshop-codesmells-101/

Resources

RiskStorming image
An educational tool to explore Risk Analysis and Quality Strategy building with the whole team.
Explore MoT
Leading with Quality image
Tue, 30 Sep
A one-day educational experience to help business lead with expanding quality engineering and testing practices.
MoT Intermediate Certificate in Test Automation image
Elevate to senior test automation roles with mastery in automated checks, insightful reporting, and framework maintenance
Leading with Quality
A one-day educational experience to help business lead with expanding quality engineering and testing practices.
This Week in Testing image
Debrief the week in Testing via a community radio show hosted by Simon Tomes and members of the community
Subscribe to our newsletter
We'll keep you up to date on all the testing trends.