Implementation guidelinesยถ

When you create processes, you have many choices to make and questions of style to consider. This chapter recommends guidelines and defaults for automating workflows with Signavio Workflow Accelerator. You can use these guidelines, with your own modifications, to help a team create processes more consistently without forgetting things.

Key: ๐Ÿ˜€ usability, โš™๏ธ maintainability, ๐ŸŒธ cosmetic

Process detailsยถ

  • ๐Ÿ˜€ Set a process name that summarises the process goal for one case as an active verb phrase.
  • ๐Ÿ˜€ Select one or more labels to categorise the process.

Generalยถ

  • ๐Ÿ˜€ Use the Process description field to document the process goal, as a single phrase describing the desired outcome.
  • ๐Ÿ˜€ Set the Case name template to generate a concise readable unique name for each case.

Access controlยถ

  • ๐Ÿ˜€ Restrict See process permissions for processes that are quick experiments, to avoid filling the Processes page with processes called Test
  • ๐Ÿ˜€ Restrict Start process permissions for processes that are under construction and not yet ready to be used.
  • ๐Ÿ˜€ Restrict View cases permissions for processes whose cases include sensitive information.
  • โš™๏ธ Specify access for organization groups instead of individual users, so you can edit groups to grant access, including for existing cases.

Triggerยถ

  • ๐Ÿ˜€ Include a form trigger by default, rather than using a manual trigger.

Form trigger - Formยถ

  • โš™๏ธ Description field: add a Markdown heading to describe creating a new case for this process, e.g. # Submit new change request.
  • ๐Ÿ˜€ Button label to start new cases: customise the start button text to either describe the action that starting a case represents, e.g. Send feedback, or to describe the submitted form, e.g. Submit vacation request.

Form trigger - Confirmation messageยถ

  • ๐Ÿ˜€ Add a confirmation message, when the first process task is not assigned to the case creator, to indicate what happens next.

Actionsยถ

See also: Signavio Process Manager Modeling Conventions.

Action namesยถ

  • ๐ŸŒธ Check spelling.
  • ๐ŸŒธ Use sentence case for action names.
  • ๐Ÿ˜€ Name the action with an active verb phrase, e.g. Review request.
  • ๐Ÿ˜€ Make the action name as specific as possible.

Eventsยถ

  • ๐Ÿ˜€ Name the event after what happened, e.g. Request submitted.
  • โš™๏ธ For processes with more than about ten actions, use Milestone events to identify process phases.

Start eventยถ

  • โš™๏ธ Prefer exactly one start event.

End eventยถ

  • โš™๏ธ Name the event after the new status at the end of the process.
  • โš™๏ธ Avoid multiple events with the same name; instead join the sequence flows.

User tasksยถ

General:

  • ๐Ÿ˜€ Set the Candidates for this task using users or groups, to generate notifications.
  • โš™๏ธ Prefer specifying candidates using groups instead of individual users, so you can edit groups to make changes, including for existing cases.
  • โš™๏ธ Set Assign using a role for every user task.
  • ๐Ÿ˜€ Use a Task name template to disambiguate repeated task names.
  • โš™๏ธ Prefer roles that match organization roles, captured in Dictionary.

Form:

  • ๐Ÿ˜€ Use the Description field to summarise the purpose of completing the form.
  • ๐Ÿ˜€ Start the form with read-only fields that provide context for the information or decision the form requires.

Reminders:

  • ๐Ÿ˜€ Set a Reminder and Escalation by default with relatively long time periods to catch forgotten tasks, e.g. 1 week and 2 weeks, respectively.
  • ๐Ÿ˜€ Escalate to the original candidate group, or a management group.

Send Email actionยถ

  • ๐Ÿ˜€ Set the Sender name to the role for whoever the information comes from.
  • ๐Ÿ˜€ Set the Reply to address to match the Sender name.
  • ๐Ÿ˜€ Append the case name to the Subject to disambiguate email notifications for different cases.
  • ๐ŸŒธ For regular notifications, consider removing greetings and sign-off, and using concise wording, to make it clear that it is an automated notification and not a personal email, and to reduce reading time.

Exclusive gatewayยถ

  • ๐ŸŒธ Use title case for manual decision transition/button names.
  • ๐Ÿ˜€ Order manual decisions with happy path decisions first, e.g. Approve, Reject.
  • โš™๏ธ For automatic decisions, configure one transition as per default, to avoid none of the conditions matching, and to simplify the configuration when there are two conditions.

Form fieldsยถ

  • ๐ŸŒธ Use sentence case for field names.
  • ๐ŸŒธ Limit field name length to a few words, and use field descriptions for longer explanations.
  • ๐Ÿ˜€ Remove โ€˜Enterโ€™, โ€˜Selectโ€™ and โ€˜Uploadโ€™ from the start of trigger form field names.
  • ๐Ÿ˜€ For File type fields, use the default value to provide a document template.
  • ๐Ÿ˜€ For User type fields, use organization groups to specify candidates.
  • โš™๏ธ Avoid duplicate field names.

JavaScriptยถ

  • ๐ŸŒธ Remove the default โ€˜Hello Worldโ€™ console log statement.
  • ๐ŸŒธ Note that ECMAScript 2015 (ES6) - the JavaScript version that JavaScript actions use - does not require end-of-line semicolons.
  • โš™๏ธ Adopt a consistent coding style.