Design a general plugin architecture
Should we design a general plugin architecture?
Considered Alternatives
- Design a general plugin architecture
- Every plugin has its own architecture
Decision Outcome
- Chosen Alternative: Design a general plugin architecture
- Designing a general plugin architecture allows us to extract similarities to a abstract level.
Pros and Cons of the Alternatives
Design a general plugin architecture
+every plugin implements the same interface+similarities can be extracted to a more abstract level+reduction of information the plugins need, for example file access could be handled in the abstract layer-there may be things that are not required by every plugin
Every plugin has its own architecture
+no need for discussion with other plugin teams-every plugin does what it wants-"duplicated code", same things are implemented the same in every plugin-How to check whether every plugin supports the given csar?