I've been vaguely aware of discussions flying around the ASP.NET community about the provider pattern which is being introduced with Whidbey (BETA 1 out now, check it out).

One of the most active participants in the discussion has been Paul Murphy which has pointed out what he feels are a few deficiencies in the model. Paul has decided to posted his final thoughts on the subject and he suggests some good ideas and offers up some code to ponder. Both the post and the code are both definately worth the read.

I would point out that unless you are providing a "feature", a few switches in the configuration file is about all you are going to need to know about the provider architecture unless you need to do some integration work with existing systems. And I think that is an important point to remember. Whatever pattern is optimal (if there is such a thing) its really much more important to factor the feature interface so that it is usable.