Aug 3

As a software developer, I'm more than familiar with the various types of bugs that can creep into carefully crafted code.

There are the small bugs that irritate you when you sleep, the larger, more voracious bugs that eat away at you late into the night, and all the other bugs in between. (Interestingly, the original computer bug

actually was an insect that crawled into an early computer at Harvard University in 1947.)

We at DTDigital pride ourselves on keeping our code as bug-free as possible. Senior development team members review every line of code that goes into every project, verifying that it is correctly formatted, easy to understand and does what it is supposed to do in the most efficient way possible.

We also employ testing specialists whose days are dedicated to finding faults we may have missed. Does the end result precisely match the original design? Does the solution fully match the specifications?

We also employ a system of unit testing that's part of Test Driven Development (TDD). Unit testing involves writing (yet more) code to provide automated tests for your project code. By writing these tests during development, we have them in perpetuity. When project amendments are made down the road due to changes in business requirements, design updates, or any other reasons, we are able to run the tests again to make sure we haven't introduced any pesky bugs.

Recently we've started to trial a different approach to bug eradication, Behaviour Driven Development (BDD). This approach also includes writing test code, but instead of looking at individual functions in isolation, it enables us to test system 'behaviours'. With BDD, we can look at a series of related functions, such as 'Logging into the site', 'Updating my details', 'Making a purchase', etc.

The idea behind this is that you are testing the things that the system is supposed to do, not just the code that supports it. BDD also helps ensure that everyone communicates with a shared vocabulary, from clients to project managers and jargon-loving developers.

Our experience has shown us these testing approaches lead to better project outcomes, fewer code amendments and happier clients. That's the kind of buzz we like around the office.

Filed under:

 
Return to our Labs blog