General

Test-driven development, what is it?

Bas Alderding

When you start working with (new) software, durability is a big factor. After all, software can be a considerable investment. One way of guaranteeing this sustainability is to use test-driven development. In this blog post, we explain what it is, what its advantages are and why it is of great value for your custom software package.

What is test-driven development?

Test-driven development (TDD) is a way of coding. With TDD, developers first write tests of their codes before they write the actual code. The process is done in short cycles of up to a few hours. A cycle starts with writing a code test. Each cycle coincides with the implementation of a small feature, a software feature. The idea is to write just not enough code so that the test intentionally fails. The programme in which the test is written then provides suggestions for improvement. The code is then modified again and tested. The feature may or may not be implemented.

A cycle is ready the moment the features work perfectly. This way, you regularly test what you are working on and you can adjust the coding process in time. This way, you can easily remove any errors from the software before it goes online. So with test-driven development, you work more efficiently towards error-free codes.

TDD and Spotify

Spotify is a good example of a platform that runs on TDD. Every day, Spotify has millions of users, each using the music platform in a different way. A lot can go wrong here. It happens that engineers do not put the platform together completely, which means users do not have access to all the codes. This means they cannot listen to all songs or podcasts. For this reason, Spotify needs to be constantly maintained and improved. Test-driven development makes this possible. Errors are thus detected in time, before a new version is put "live". Spotify is a kind of living organism, which is constantly changing. There is therefore not always time to test through everything manually, which would not be cost-effective.

TDD and SevenLab

At SevenLab, we work with Scrum. Scrum is characterised by short sprints. In a period of two weeks, different teams work together towards a deadline. Test-driven development fits in perfectly with this. Features are added or not added to the software in short cycles. Afterwards, it is constantly subjected to tests so that errors can be quickly detected and corrected. As a result, the software is more likely to contain fewer errors than if it were created using other coding methods or tested manually. Therefore, the software can be delivered to the customer quickly. The combination of test-driven development and Scrum ensures that we can produce a fully working piece of software every fortnight.

The advantages of test-driven development at SevenLab

  1. In test-driven development, code is written from the user's point of view. The focus is on the added value that the software or app brings to the user. The functionality of the software is then immediately taken into account. Problems with the software's interface are detected and repaired in time. This way, you get usable software in a short time.

  2. Business analysts help in every SevenLab project. They are trained in both business and technical areas. The business analyst can estimate what software is needed to enrich your business process. He or she will help you concretize your idea and together you will determine how the software or app should be structured.

  3. Because the codes are written based on the tests that precede them, only what is needed is implemented. Any superfluous features that are not relevant to the user are immediately tested and, where necessary, deleted. Errors are detected at a very early stage. This reduces software development time, despite the fact that extra code is needed to write the tests. The result is compact software without fuss.

SevenLab is a reliable party with great customer focus. They actively think with you, are enormously helpful and flexible.

Satish Bahwanidin

Project leader VO-raad

Klaar om je project met ons te bespreken?

Maak kennis met het SevenLab Team en de Oprichters