I agree with your individual points, but I don't think the conclusion drawn from them -- that software produced from large enough groups of people will necessarily suffer in quality because the group itself is subject to organisational/political pressures which confuse their value structures and end up manifesting themselves as poor quality products.
Any endeavour ever attempted is subject to market, fashion, and societal pressures, and I don't think Microsoft is any different than any other company which produces high quality output. It is how a company responds to these competing needs that makes the difference.
Some of these forces are even internal, for example marketing requires that the next release include feature X, even if it's incomplete or the execution is low quality. But who gave marketing the authority to make such product decisions? Suppose Microsoft were in the business of making automobiles, would marketing be allowed to require spurious features that could cause unpredictable performance problems?
In the same vein, I think it's reasonable to assume that if Microsoft were
deeply concerned about only shipping excellent quality work, they would do a spectacular job of aligning the maturation curve of each feature with that of the release schedule, such that only features that are "good enough" pass the quality check and make it into a release. In such a scenario, "what marketing wants" would be lower priority than "does this pass our quality standard".
This is a matter of prioritising one set of values over another. That is to say, both of the following are true:
- There is no single reason that the managerial structure of Microsoft is required to look like what it does right now.
- There are a million and one reasons why the organisational structure of Microsoft is the way it is and isn't likely to change.
Both are true in the sense that if Microsoft's priorities were to shift in the "high quality engineering first" direction, marketing and organisational/political manoeuvres would be folded quickly into the minimal amount needed to run the organisation. On the other hand, every large body of people has significant inertia, which makes changing course more difficult than it is for smaller groups. Luckily, large organisations also have more resources than a small body of people.
So, yes, there are many reasons why the end-product ends up being the way it is, but I don't believe there is some "law of nature" like effect that necessitates that shareholders, marketing, and middle management will always exert a negative influence on the product (from the user's perspective). While the structure of the organisation may be such that this happens
right now, it could be restructured so that this doesn't happen, in the same way that we can take any piece of bloated old software code and continuously refactor it until it reaches satisfactory quality. We know these things are possible, they are just very hard work which hardly anyone is willing to take on. Or in the case of Microsoft, would require buy-in from the whole organisation.