A year or so ago, a chunk of my client base (the employees of the school), complained that they often didn’t have the same–or rather most recent–software. This presented an issue since our primary method of deploying new software was just re-imaging machines. Given all our employee machines have local accounts, re-imaging would be a serious task. So we started thinking about it, and started drawing up early plans for converting everyone over to PHDs. But, that was going to be a heck of a task, and there doesn’t seem to be an established way of doing it (something I’m still investigating since it’s still on the list of tasks).
But then in the last few months, I heard about Puppet, and via that, Munki. They’re very similar tools, but Munki gives more attention to the GUI interface for users to say “Yes, I want to logout and run these updates”. Puppet does this all in the background.