I recently gave a presentation on developing WordPress Plugin to Okanagan WordPress Meet Up group.

The presentation was an over-view of WordPress plugins, how they work, why would you want to build your own and a demonstration of actually building a simple plugin.

I've built a number of custom plugins for clients who want to manage their site content on their own, but also have back-end databases or functionality  they want on their site. A site with a product list or on-line sign-ups are good examples.

Also, custom plugins are good for offering support.  A plugin page can include instructions on how to manage the site, tips for content or SEO, as well as link to other resources.