Learning from the military

Armies and navies have been motivating, leading and organising people for centuries now, so perhaps there are some things that we can learn from their experiences:
Volunteers do it better
- Conscription is the last resort in most successful military endeavours. But how many team members sign up to software projects, rather than being drafted on board, often unwillingly?
Match the mission to the people
- Military commanders know that it's easier to change a mission than to change people. But how many software projects are commissioned with a specific team - or type of team - in mind?
Training matters
- You might only get one chance to do it right, so learn to do it right and practice until you just don't get it wrong. But I wonder how many companies are investing in comprehensive training plans for their software developers at the moment?
Limit time spent at the front line
- A tour of duty defines a concrete duration to front line duties, and allows troops an opportunity for the 'R and R' that they need. But how many difficult projects drift on and on, with no end in sight for the developers apart from projected dates that keep slipping?