I was reading Ralph's post, Whose Fault Is It?, and I realized that if you don't know enough about management, you can misunderstand the root cause. Ralph's example is of defects in an iteration and how they were not detected early enough because the acceptance criteria were missing. The criteria were missing because the testers and the domain expert were not available because they were also on other projects. I was surprised to see the reason for people on multiple projects be “matrix management.” But I can see why technical staff thought that was the reason.
The real reason is that the managers are out to manage *their* efficiencies of staffing all the projects. The managers are not out to optimize the organization's throughput. (I don't know this organization, but many of my clients have been in this position.)
Matrix management–itself–is not the evil. Multitasking is the evil. And the root cause is a lack of project portfolio management.
In PPM, you don't commit to a project unless you can staff it. Fully. Period. No half-staffing. No 1/4 of this person and 1/3 of that person etc to make 1 FTE (full time equivalents). There is no equivalent for one person fully committed to a project.
Remember that, the next time your manager asks you to work on more than one project. “Which project am I fully committed to?” is a reasonable question.
Managers, if you feel the need to assign people to multiple projects, ask your manager which project is most important. Staff that one. Now ask about the next one. Stop staffing projects when you run out of people.
When managers optimize their work at their level, they are (almost never) doing this out of maliciousness. But if the organization rewards them for sub-optimal optimization, how can they not take advantage of it?