We all know we are living in a world where everything needs to go faster and faster. It is never fast enough. Everything changes every day and we must keep up. The same rules apply to software development, perhaps even more so. But when everyone is busy with “speed”, quality is often forgotten or treated as a second priority. Nevertheless, you can only go fast if you are successful, and you can only be successful if you deliver qualitative products.
Of course, there are the obvious things to deliver qualitative software fast, I am not going to repeat all those. But one thing that really stuck with me, is the fact that we still tend to think and treat software development as a factory, solely at the service of. In order to deliver high quality products fast, we must get rid of the idea that software development is made on the assembly line, as in a factory. The only way forward is to truly work together, without silos between roles and departments, without egos. Humble people, hungry for knowledge, help each other to make the impossible possible.
In addition, we often hear about the velocity of a team to measure and compare the speed and productivity of agile teams. But this is all wrong and potentially harmful. Once people know they are measured this way, they will do whatever is needed to improve or to achieve a set goal, however damaging it may be to other areas of their work. E.g. gradually increasing their estimates so that the velocity grows. Or compromising quality, focusing only on new stuff and not taking care about bugs. If you have multiple teams, this may also lead to a competition and loss of collaboration between teams. When a measure becomes a target, it ceases to be a useful metric…