
- By Brian Hoang
- ·
- Posted 16 Aug 2023
Practical React Testing 101
Test driven development (TDD) is a tried and tested way of working in software development, which focuses on writing tests for a desired behaviour,..
What is database refactoring for? What are the risks involved and how can we avoid them? Is it really beneficial to our systems?
Cameron Raw, software craftsperson at Codurance, answered these questions in a session in which he also presented several risk mitigation strategies, along with examples and recommendations that you can start applying in your development team.
The reasons for refactoring databases can be very similar to the reasons for refactoring application code.
As great as the benefits of refactoring are, teams must be very careful with the great risk it poses when done incorrectly as it could lead to errors such as:
Database refactoring is a major operation involving both technical and non-technical teams, and Cameron explained that it is essential to have a clear plan of action focused on both the business and technical areas.
The business-focused action plan consists of constant communication with stakeholders so that they understand the risks involved in the project, the steps to be taken, the skills required, the deadlines, etc.
At the same time, dialogue and planning is also valuable for the development team to unify the process to be followed and to determine multiple variables such as KPIs, deadlines, practices to be used, etc.
Tips for a business-focused action plan
Tips for a technical-focused action plan
Before refactoring, teams must ensure that they have a solid testing strategy that will give them confidence throughout the refactoring process and keep in constant contact with the quality assurance (QA) team, as they know how best to inspect our system as changes are applied.
Testing, like in any refactoring, is paramount in ensuring we still have our desired behaviour from the system.
- Cameron Raw, software craftsperson at Codurance
Automated tests can have an added complexity to them if moving through an iterative refactoring, but it is important to remember that by really harnessing the power of modern testing pipelines, we can produce thorough, creative solutions for testing that will result in us feeling secure in our database refactoring.
Refactoring databases is certainly not a simple or short process, but if you maintain a good communication flow and a strategy where all parties are on the same page and aligned, the task will be easier to manage. Cameron offers some final tips to keep in mind:
If you want to check more blogs about methodologies, programming languages and team management, visit our Insights. Also check our next events and join us!
Test driven development (TDD) is a tried and tested way of working in software development, which focuses on writing tests for a desired behaviour,..
Think You’re Not a Technical Leader? Before you abandon this article, be honest with yourself and answer these few questions:
Join our newsletter for expert tips and inspirational case studies
Join our newsletter for expert tips and inspirational case studies