Very often we work on a code-base that has been written by others some time ago. This code-base could be for the product code or Test Automation code. As the product life increases, the evolution of the code-base is a natural process. However, there are various catalysts to speed up this evolution process such as:
- More features/tests to be added, including increased complexity,
- People writing the code evolve - their learning, skillset,
- Delivery pressure means it is quite possible that correct decisions for implementation may not be taken (it's possible that short-cuts were taken in the implementation leading to spaghetti code/architecture),
- People move on to different roles, and new people join the team with different opinions, perspectives and experiences.
In this Masterclass, Anand shares various examples and experiences of being in situations where code needs rewriting or refactoring. Throughout the Masterclass, he highlights the factors he considers when deciding whether to refactor or rewrite the code under consideration.
This Masterclass was kindly sponsored by Practitest. PractiTest is an all-in-one test management solution where you and your team can manage, control, track, document and optimize your QA efforts in real-time. Release better software with confidence.
What you’ll learn
By the end of this masterclass, you'll be able to:
- Differentiate between rewriting and refactoring
- Identify if there is a problem with the existing code
- Evaluate key factors to decide if you should rewrite or refactor
Software Quality Evangelist