Nintex Workflow best practices and standards

Nintex is a robust 3rd party SharePoint workflow tool, which allows power users to quickly create workflow processes within SharePoint, using a rich GUI. Nintex is working on top of SharePoint workflow engine, using SharePoint API.

Here are some of the Best practices you should follow when developing Nintex workflows:

  1. Detailed requirements are needed for each Nintex workflow project since it usually serves a business process which may change over time. The requirements provide a starting point for any user to understand the logic implemented during development. Include the following in your requirements:
    • Current process description.
    • Who initiates the process and requested the workflow?
    • A workflow diagram with the description of the overall process and different step/Action.
    • Why automation is needed, what we want to accomplish through automation.
  2. History retention plan – for how long we need to maintain historical workflow data.
  3. Usage evaluation – how many users will participate in the workflow.
  4. Based on the scope of the workflow an IT project may need to be created to support multi-user development and expenses.
  5. Keep it simple – try to achieve your objective in the least number of steps/actions. If you have a complicated multi-step workflow, consider breaking it into smaller independent workflow units. These are the benefits:
    • Efficiency – This will reduce server load and increase performances.
    • Flexibility – when you need to change the workflow based on the business needs, by dividing the workflow into different overall tasks you can target different areas within the workflow.
    • Reusability – braking a complex workflow into smaller parts also provides an opportunity to reuse these parts in other workflows.
    • Documentation and maintenance – smaller workflows are easier to understand and to document.
  6. Use workflow constant with meaningful names and provide additional information to describe the variable.
  7. Be careful when using Nintex Action that may affect performances including Execute SQL or Query LDAP.
  8. Use ‘Log to history list’ and ‘Build dynamic string’ to document process while they occur.
  9. Consider using ‘Commit pending changes action’, ‘Pause for Duration,’ or ‘Wait for Field Change in Current Item’ when your Nintex action depends on SharePoint actions to complete.
  10. Prevent Throttling by reducing the number of user calls, especially when using loops within your workflow.
  11. Backup your work and save it as export packages.
  12. On every major version describe the changes.
  13. Consider using input parameters to make your workflow more generic.
  14. Describe the workflow’s underlying data.
  15. Provide test cases.
  16. Provide bug fixes descriptions with log on how bugs were handled.
  17. Use the workflow constants when you need to use high-level access rather than hard-coded credentials.

References :