Choose Feature Teams over Component Teams for Agility

This article certainly echoes some things which I have observed. It’s hard to gain the full power of an agile approach, if the agile teams don’t have the ability to address issues across the whole solution. However tempting it may seem to solve the problem of team size by splitting teams across architectural boundaries, this is rarely a good way to solve big problems in a smart way.

Splitting teams by task or feature, and letting each team solve their task or feature in a way which is optimal in the context of the whole system, will almost always result in a more effective solution, and often a solution which is actually much simpler/cheaper than the way it might have been achieved if each team only considered one part of the system.

InfoQ: Choose Feature Teams over Component Teams for Agility