I have worked on two different units (one cardiology ward and one neurosurgery intensive care unit) which both used self scheduling. I'm a great fan.
We actually used a computerized system (called TimeCare) which I'll try to describe. The process of creating the schedule is divided in two parts: first everyone enters their personal schedule they actually want. We used to do the schedule for two months at a time or something like that. It's possible for everyone to block a number of shifts (called 'veto') if you simply can't work (cause it's your birthday, you've got your nitting evening school every tuesday or whatsoever). That all ends up in a draft schedule.
When all individual schedules are entered, there will be an excess of nurses some shifts and a shortage on other shifts (the manager have to set up the limits: every Monday morning we need five nurses, every Monday afternoon we need three and so on). That's the second part of the process: everyone voluntarily changes a few shifts to make the schedule fit. If there still are differences and some shifts are unmanned, the boss makes the last few changes.
The system is very easy to use indeed, and many Swedish hospitals uses it. It's actually translated into English as well (see their web-site: http://www.timecare.se/documents/doc...ategory_id=105
Best of all, it gives you the freedom to make you own personal schedule. I used to concentrate my work in order to get a whole week off, and that was just splendid.