Architecture as a Work in Progress

One key aspect of dealing with the Work in Progress is to visualize the queues. We have come a long way with dealing with explicit requests that come from outside. But, how do we deal with technical problems that come from within?

Let’s take the architecture of the system. It’s rather important as it can make or break your system in the long run. Of course, the agile mantra tells us that we should emerge the architecture. This sounds great, but how do we make sure it goes in the right direction?

One way to approach it is to make technical tasks explicit and put them in the same queue as the functional ones. This never really works because of two reasons: (1) business can rarely prioritize the work, and (2) it does not fit development workflows.

We argue that it is necessary to approach technical concerns differently. We still need to make them explicit, and we also need a queue. Only, it’s a different queue that is managed exclusively by the team and worked while dealing with regular tasks.

In this interactive talk we show concrete examples of how this works in practice.