To ease the workflow development and usage, you can use certain good practices.
Start Developing Workflows as Building Blocks
A building block can be a simple workflow that requires a few input parameters and returns a simple output. If you have a rich set of building blocks, you can create higher-level workflows easily, and you can offer a better set of tools for composing complex workflows.
Create Higher-Level Workflows Based on Smaller Components
If you have to develop a complex workflow with several inputs and internal steps, you can split it into smaller and simpler building block workflows and actions.
Create Actions Whenever Possible
You can create actions to achieve additional flexibility when you develop workflows.
To create complex objects or parameters for scripting methods easily
To avoid repeating common pieces of code all the time
To perform UI validations
Workflows Should Invoke Actions Whenever Possible
Actions can be invoked directly as nodes inside the workflow schema. This can keep the workflow schema simpler, because you do not need to add scripting code blocks to invoke a single action.
Fill In the Expected Information
Provide information for every element of a workflow or an action.
Provide a description of the workflow or action.
Provide a description of the input parameters.
Provide a description of the outputs.
Provide a description of the attributes for the workflows.
Keep the Version Information Updated
When you version plug-ins, add meaningful comments with information such as major updates to the plug-in, important implementation details, and so on.