That being said, even model-based design (MBD) has largely been a failure, despite it being about mapping formal models to (formal-language) program code.
there is the famious bowling game tdd example where their result doesn't have a frame object and they argue they proved you don't need one. That is wrong though, the example took just a couple hours - there is nothing so bad in a a two hour program you will regret. If you were doing a real bowling system with pin setters, support for 50 lanes and a bunch of other things that I who don't work in that area don't even know about - you will find places to regret things.
What I meant is that, like any powerful tool, there are situations where it shouldn't be used.
Thanks for the thoughtful comment.
It’s easier to keep the balance by keeping everything simple and maintaining a good hygiene in your codebase.