One thing that's pretty easy to understand is the network effect of complexity.
You don't have to check many things if you have few things in place. Each item creates an exponential increase in complexity for the next one. Another reason why things slow down is that as you add things to a system, they have a maintenance cost, the more you add the more you approach an equilibrium of costs == capacity.
This is, in part, explains why it becomes inevitably hard to add to a very large codebase -- you might have many many scrum teams simply maintaining what is, and each Nth new item has to do N-1 compatibility checks.
You don't have to check many things if you have few things in place. Each item creates an exponential increase in complexity for the next one. Another reason why things slow down is that as you add things to a system, they have a maintenance cost, the more you add the more you approach an equilibrium of costs == capacity.
This is, in part, explains why it becomes inevitably hard to add to a very large codebase -- you might have many many scrum teams simply maintaining what is, and each Nth new item has to do N-1 compatibility checks.