Continuous development, continuous deployment, continuous integration. These terms may sound a bit technical - they are a bit technical. But the essence is much easier to comprehend than you may think.
Perhaps you’ve already read something about it. There is written a lot about it, that’s for sure. So you’ll find here no extended explanation about the exact meaning of these terms. Much more interesting are the advantages that come with this working method. For us, the essence of continuous development is the key to developing qualitative software: the continuous testing, adjusting and innovating of what we build.
A constant workflow
Developing software is a static event. Technological developments follow one after another before you can blink your eyes. As software developers we have to anticipate these changes. That why we work according to the AGILE development method SCRUM; in short sprints towards the final product. The idea behind this is that you can decide at the beginning of every sprint what the priorities are, where the difficulties lie en how to fix these.
To test is to know
It’s not just the organisation that has to be flexible, you have to adapt your tools to these principles as well. Earlier we talked about the DTAP-street, in which the test phase is essential. In this phase every piece of code we write, is directly being tested. This means that, in case there is a problem, we are aware of this straight away. The code is not only being tested on accuracy, but on security as well. These tests are being done automatically and continuously. In this way we always know if that what we develop, works the way we want it to. Without spending any time on it.
Everything and everybody up to date
All that has been tested has to be directly available for the whole team. In other words: everything has not only to be tested continuously, it has to be integrated continuously as well. To be able to do this, you need a good version control system. A good version control system ensures the availability of the latest versions for every team member, at any time. So no more messing around with different versions or confusion about who is doing what. No hassle, we like that.
Working together works
The great thing about the systems we use, is that they complement each other. DTAP and version control are useful tools in themselves, but together they form an indestructible combination. Version control does not only keep track of who did what and when, but also manages which version is located in which phase of the DTAP-street. And this applies to every tool we use; we use them with a reason. They contribute to efficient and well-structured code and reinforce each other.