1. Ideas
2. Design
3. UI Design
4. Implementation(code)
5. Testing
6. Publishing
7. Integration/deployment
8. debugging
9. upgrade
10. uninstall
Idea
This should explain the problem statement and the outline of the plugin what it is intended to solve
Design
The implementation Design of the plugin
UI Design (portal/mobile)
The Proposed UI design has to be published
Implementation (Code)
The code implementation and any third-party plugin used and dependency have to be mentioned.
Testing
unit testing
Each plugin has to have a unit testing of its own
Integration Testing
write the Integration Testing where the plugin is used.
Publishing
The process to publish the Plugin.
Integration/Deployment
The process to integrate plugin with the portal/server/mobile
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 changes.
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.