TDD – Test Driven Development
TDD is the most underrated but mandatory software development methodology. In the last post, I mentioned DevOps is not an option anymore. While that’s the truth, the success of DevOps depends on how much the application/product testing is automated.
Continuous improvement is warranted if you aspire for superior quality software and to face fierce competition. And that needs TDD and DevOps to be in place. Some could achieve TDD and some DevOps, and only some could do it together. Gaining market lead and product success demands TDD and DevOps are mandatory activities to constantly ship the minimum viable product.
Of late, DevOps is getting a lot of love, and companies are at least trying to do something in the name of that (not all are DevOps. The key in DevOps is a collaboration between Dev and Operations), whereas TDD still needs to be patronized.
I have seen companies play the catch-up game of developing automation test cases as a separate project much later than the functional feature deployment. Deferred automation is almost an outdated, valueless act. It could have been helpful in the past, but in today’s world, the product will constantly change for various reasons. That means your unit test cases can also change constantly (if you don’t have such a need take a second look. You may be ignoring the market demands). Automation development can’t be spun off as a separate project in a constantly changing product development.
As part of the development cycle, If a developer can write automation test cases, that’s the best way to develop software. At a minimum, an automation test engineer should be part of the development team and develop the test cases for the features under development. That may not qualify to call as TDD, but it can be a close cousin 😉
In the absence of automated test cases/ TDD, a feature of the product might take days to weeks to do the regression to deploy a few lines of code, and that’s the worst form of IT in today’s world.
#TDD #testdrivendevelopment #DevOps #customerhappiness #mvpdevelopment