1. Ideas
2. Design
3. UI Design
4. Implementation(code)
5. Testing
6. Publishing
7. Integration/deployment
8. debugging
9. upgrade
10. uninstall
Idea
...
A standard process to build and publish the plugin will be exposed by the framework do so that all plugin will follow the same process.
Integration/Deployment
The process to integrate plugin with the portalplugin will specify what is the purpose of the plugin and who all can use it like web/server/mobile. Depending on the use and need for the plugin the Adopter of the framework will use the plugin and integrate it with the endpoints.
Debugging
Each plugin has to have an internal debugging system and also the Framework will expose some logging mechanism to the plugin to use.
Upgrade
Each Plugin has to give if any future upgrade can be done and proposed changesDebugging will be a key feature of any plugin. so each plugin should use an effective logging system which will provide all the logs in a central place.
in association with this, the framework will expose logging mechanism that each plugin can extend and use to log. this will help in debugging process.
Version Control
Plugins will be version controls this will help in keeping the history of the plugin and helpsĀ collaborate on the plugin with other developers
Upgrade
Each plugin should have a roadmap for self-upgrade. if the framework is upgraded then it should consider for plugins backward compatibility and an alert have to be sent to the plugin contributor so that the developer can plan for a plugin upgrade.
Upgrade-Alert
if a plugin is upgraded an alert should be shown to the Integrator to inform the upgrade and the release features and any bug fixes so that the integrator can take a call to upgrade the plugin in his instance or not.
Uninstall
The framework will expose some hook so that the plugin can uninstall any time by calling the methods.
and each plugin also should give some process to uninstall itself like Unregister from the framework.