The main function of managers is routing information in the organization; this model was developed in the 1940s. In most large corporations today, there are a handful of C-level officers, the "executives" - their role is to make decisions. The conception of the modern corporation is that these people do NOT need any specialized domain knowledge in order to be effective, they are just generalized "decision-makers", that is, they perform the executive function; what they need is to be fed a reliable stream of information to act upon.

However, in any large organization there are usually many thousands of times more workers than there are C-level executives. This produces a huge, two-way problem of information flow - how can the executives know what all of the workers are doing, and how can the workers know what the executives want them to do?

The solution is a hierarchical model; this hierarchical model has been used throughout history to organize polities, armies, etc., under the control of a small number of individuals. The basic principle is each unit has a single manager; each set of units has a ur-manager, etc. This allows information to flow from the worker to their manager, from the managers to the mid-level manager, and from the mid-level manager to the executives.

Of course, the information remains bandwidth-limited. Each manager can only, practically, assimilate information from a limited number of people. This number probably doesn't change at different levels of hierarchy - the manager can deal with 10 workers before becoming overwhelmed, the mid-level manager can deal with 10 managers before becoming overwhelmed, etc. This means the larger the organization, the more levels of management you need to try to manage the information flow. Roughly, if you have N workers, you'll need log(N) levels of managers.

The efficacy of this strategy, however, is limited by a key constraint: the compressibility of information. If 10 workers are giving information to their manager, and that manager is passing all of this information on to the mid-level manager, the mid-level manager is going to be overwhelmed; they cannot process information from 100 workers. It must be reduced; the job of the manager is to winnow down the information from 10 workers, determine what requires intervention from above, and pass this on.

In practice this is extremely difficult; the information might NOT be compressible (you need, for example, a two-hour presentation to understand a particular security problem and its implications, not a two-paragraph summary). A friend of mine who works at a high level in an org said her observation is that C-level officers are routinely drowning in information; their answer is simply to ignore the vast majority of email they receive and to punt on their executive function.

The same problem exists the other way - a C-level officer cannot possibly make decisions for all of the workers in the hierarchy. They can only give a small amount of information back to their managers; this information does not magically uncompress into a sophisticated plan for workers. In reality, people have to do work to fill in the blanks (i.e., make decisions) at all levels of the hierarchy.

The result is that information often gets lost - C-level officers are unaware that their workers feel that the product is broken, that engineering or security problems are overwhelming management goals, that timelines can't be met because there are too many constraints.