I would try to go with Test Driven Development. This will give you many things:
- You get pretty good unit test coverage (I'm not saying unit test coverage is important).
- Developers will have more confidence that the code really works (see * later for more information)
- You can easily reorganize the code (because you have tests).
[*] - Kent Beck mentions influence charts in this area. In the influence diagrams, an arrow between nodes means that an increase in the first node implies an increase in the second node. The arrow with a circle means that increasing the first node implies decreasing the second node.
The more stress you feel, the less you will experience. The less you test, the more mistakes you make. The more mistakes you make, the more stress you feel. Repeat ...
How to solve this circle, which leads to the fact that developers do not trust their own code after a while?
The first development test changes the influence diagram:
[TestFirst] <--o-- / --o--> [Stress]
The more you test the first development, the less stress you feel. The less stress you feel, the more tests you do first.
This leads to improved testing code developed by developers who trust their code.
David pokluda
source share