Microsoft does have a product that can help. Forefront Identity Manager 2010

http://www.microsoft.com/forefront/identitymanager/en/us/features.aspx

As you can see FIM does a lot more than self service passwords. You may have also heard of the previous name for this product which was Identity Life cycle Manager (ILM)

There are also many third party products that fit the requirment. Script Logic is just one example

http://www.scriptlogic.com/Products/password-self-service/default.asp

Are you using Outlook Web Access? They can do it that way too.

Thanks

Mike