Workflows Tetromize

Workflows

 

A Jira workflow is a set of statuses and transitions that an issue moves through during its lifecycle, and typically represents a process within your organization. Workflows can be associated with particular projects and, optionally, specific issue types by using a workflow scheme.
a workflow “consists of an orchestrated and repeatable pattern of business activity enabled by the systematic organization of resources into processes that transform materials, provide services, or process information.” Maybe Wikipedia meant to say, put more simply, “a workflow defines the steps ....

 

 

 

Components of a Jira Workflow

There are several distinct components of workflows in Jira. Each component serves a specific purpose in defining a workflow and its steps. The four main components are statuses, transitions, assignees, and resolutions. Let’s take a look at each in turn.

 

Statuses

A workflow consists of a variety of statuses, which represent the stages the workflow can pass through. For example, a workflow might include the statuses "Not Yet Started," "Planning," "In Progress,” and "Complete."

When creating or customizing workflows, keep in mind that a Jira issue can only have one status at a time — an issue cannot be both “On Deck” and “In Progress,” for example.

Users can create as many statuses in a workflow as they wish and label them freely based on what makes sense for their team. Statuses can also be color-coded to reflect different categories.

 

Transitions

Transitions are a representation of how a given stage of a workflow starts or ends — and, by extension, how a workflow moves from one status to another. For example, a transition could be labeled as “Start Planning" or "Start Building." As with statuses, transitions can be labeled and color-coded freely.

You can add a transition to a workflow by navigating to Workflows in the Issues menu, selecting Edit, and then clicking the Add Transition button in the Text tab.

Transitions can be used to create nonlinear workflows. For instance, a workflow with the status “In Progress” might allow the user to either move an issue back to the “Planning” stage through a “Reject” transition, or ahead to “Seeking Client Feedback” through an “Approve” transition.

Transitions also have several properties that users can define in order to configure how the transitions operate. These include conditions, validators, post functions, and triggers. Customizing transitions in this way is one of the most powerful ways to use workflows and is discussed in more detail later on.

 

Assignees

The assignee component of a workflow defines which Jira users or groups are responsible for an issue during given stages of a workflow. An assignee could be responsible for the issue across to every status of the workflow, or the assignee might change once or several times during the process.

 

Resolutions

Resolutions contain information about why a transition led to a particular outcome. For example, possible resolutions for a workflow that describes the process for writing an article might include “Article Posted,” “Won’t Do At This Time,” or “Rejected by Client.”

As noted earlier, you can create resolutions by selecting the Resolutions button in the Issues menu.

Be sure not to confuse resolutions with statuses or transitions. A status indicates where an issue is in the workflow, whereas a resolution indicates why the issue is no longer in the workflow. Similarly, a transition indicates how an issue got where it is — “Post Article” — rather than where it is now — “Article Complete.”

As with statuses and transitions, resolutions can be defined with whichever values the user wishes. However, it's important to note that Jira considers an issue closed regardless of what the resolution text contains. For that reason, you should avoid defining a resolution with text such as "Incomplete." A resolution with this definition is likely intended to represent a process that is still ongoing, but Jira would not recognize it as such. A better solution would be to use a transition to send the issue back to an earlier status, such as “In Progress.”