OK, I know it's a stupid question to ask, so let me clarify.
My boss thinks that, "by now, with your level of knowledge, you should never have bugs in your software anymore". While it may be correct, given the correct set of tools and with a proper method, those are never allowed to me, maybe because I don't know what to answer him exactly (I'm the only developer here, so I don't have anyone to turn to when it happens).
So, here is my question : what tools and methods do you use to have the less possible bugs in your software ?
Bottom line : a code without any error is impossible. However, here is what is possible to do :
Testing
- Test-driven development
- Unit testing
- Automated testing
- Functionnality testing
- Mutation testing
- Test by a team and bypassers
Tools
Practices, management, environment
- Code coverage
- Peer code review
- Assertions to check assumptions
- Continuous integration
- Development stages
- No distractions while working
- Time