I caught this much older thread because it was "featured". I find it interesting and decided to post -- mostly because I completely disagree with the early posters.
A company needs to work out their layoff plan based on the kind of company they are. It is foolish to assume that "one size fits all" when it comes to shifting resources. When IBM broke a 30+ year tradition of "no layoffs" they first offered voluntary layoffs. I'm sure a lot of people of high quality left, but it was and still is a huge company. In some sense they had to thin the ranks. Keeping morale as high as possible during the new era was important to them. Voluntary cuts made the most sense. However, not enough people left so they had to start pushing some people out the door. At that point they had no real option but to go for involuntary layoffs.
I would expect that there is always a percentage that was thinking of jumping ship or retiring early that would love the opportunity -- just don't ever expect it to be a large number.
So, while a voluntary program is probably a good start, it is not likely to attract enough people. If you start with one and have to expand it to involuntary, you gain some respect of the employees during a difficult time. It's never a good situation, but the volunteer program helps soften the blow.
A forced layoff from the get-go is likely to spell trouble. If a company just surprises everyone on a Friday and let's the "bottom 20%" go, the following week the "top 20%" will be looking for a new job. You are very likely to lose them -- because you jarred their comfort level in the company. If you offer a voluntary layoff, you will lose some of the talent, but not everyone will be as anxious about their status and the status of the company.
Besides -- what kind of company are you running that you can cut 20% of your workforce and you don't hit anyone of significance?
Bottom line is, don't mess with the psyche of the employees.