But, what if rather than a plugin, you had access to a software service that provide the same functionality? Here is a comparison:
Using a business related plugin:
- download and install the plugin into your project
- build out all the required tables
- hookup your internal logic to insure that the plugin loads correctly
- use the plugin
Using a Software Business Service:
- use the service
The choice should be obvious. Rather than dealing with database migrations, version control, broken or non-existent tests, integration into your pristine project, you simply use the service. A good example is the captcha service called Captchator from Andreas Schwartz. This service replaces logic that traditionally comes in the form of a plugin with a callable service that does what a captcha component needs to do. No downloads required. No migration of new tables. Just use the service.
Now imagine a full suite of services for business processes. Authentication, company and contact information, time tracking, invoicing, fulfillment--all discrete services that a VAR or software developer can simple use as components in a vertical solution. Wouldn't that be cleaner than installing plugins?