Bridging the Gap Between Requirements & Tests

Building great software requires a thorough understanding of the real needs of our customer. Techniques such as ATDD, BDD and Specification by Example help us understand the requirements by describing how the software has to behave in a language understood by all stakeholders. These specifications are made executable; creating automated …

SOLID TDD

Software developers generally don’t write poor, unmaintainable code out of any malicious or deliberate intent. They do it because software development is complex and there is not enough feedback in the process to ensure they adhere to good SOLID (Single responsibility, Open-closed, Liskov substitution, Interface segregation and Dependency inversion) object …