Software Testing and Quality Assurance
When we talk about software project estimates, a section on Testing is usually the first one to take some heat. While the argument could be made that the necessity of software testing on small project is be less than that of a large project, it's exactly that complacency that gets you into trouble.
Making testing part of the development process ensures that as a project becomes successful and grows beyond it's initial MVP, the foundation for testing is already in place. Trying to play catch-up on a lagging test suite isn't going to be a good time for anyone. Simply the act of writing functioning tests as the first (or even as a pre-existing) client of new software helps drive it's architecture and highlights potential shortcomings in object design.
While software testing allows us to ship better products, it doesn't mean that the software is therefore defect free. It simply means that we are able to continue working on it without being afraid to make changes and release them to production. After a bug-fix is made or a feature set is developed and the test suite runs successfully we know it can be delivered with confidence.
At BinaryOps Software we want to deliver the best possible product and using software to test our code allows us to address problems as soon as possible. There will always be a need to maually test software but automated testing provides a lot more value than many people give it credit for.
By integrating software testing into our development process, we've eliminated it as a standalone item altogether!
Mark has been doing database design and building custom software for over twenty years. With a background in electronics, he quickly moved into software development and has been building database software solutions ever since, on many projects of all sizes.