"How do you create, run, and release a huge effort that might take hundreds of man-years, like Office 2012?"<p>I think that more and more, companies are realizing that the answer to this is "You don't."<p>Google Chrome is a good example.  Instead of trying to figure out exactly what needed to be in the product, they built a kick-ass updater (which is now open-source).  One that let them transparently and efficiently download and install updates whenever necessary, so they could treat desktop software like a webapp.<p>And then instead of having to coordinate hundreds of man-years of work, they can have small independent teams that crank out a feature, release it, see if the feature works well, and back it out if necessary.<p>The best way to deal with an O(N!) problem is to keep N small.