ThinkTilt logo
Ë

Jira Workflows

Explanations, examples and instructions for using Jira Workflows

 

Understanding Jira Workflows

The key to harnessing Jira’s potential lies in understanding workflows. Workflows are the engine that power your tasks from to do to done. They are also the key to Jira’s flexibility. 

Anatomy of a Workflow

Jira workflows define the lifecycle a Jira issue goes through. Workflows include statuses (the state of an issue at any given moment) and transitions (the actions that propel an issue from one status to another). 

Of the many Jira workflow examples, the one of the library is perhaps be most helpful for understanding workflow concepts. Here we can see how the issue (in this case, a book) book transitions through various statuses. Statuses (At Library, With Customer and Retired) tell us where the book is and transitions (Check out, Check in, Retire item, Restore to service) tell us how it got there. 

Example Jira Workflow

 Source: Building an awesome Jira workflow: concepts and examples

Once you have the basic concept down, it's worth your time to browse through a few more Jira workflow examples to get an idea of how simple and how complex workflows can be. If you have administrative permissions go to Jira > Jira Settings > Issues > Workflows. How many workflows you find will depend on your Jira instance, but you will likely see some that were automatically generated by Jira and others that were created for specific teams and projects.

You might find things like this:

Jira Workflow Example

Jira Workflow Example

Jira Workflow Example

A few things to note:

  • Transitions can go in both directions
  • Some statuses can be transitioned to from any point in the workflow (as indicated by the All label in the first example above)
  • Many Jira workflows have an endpoint such as Done, Closed or Resolved

Pay special attention to what happens at the end of a Jira workflow. Some workflows (as in the example above) use both Closed and Resolved and teams define what these terms mean. A Closed, Done or Resolvedworkflow status is not to be confused with the Resolution field of a Jira issue. (However, you could use a post function to set the Resolution field to Resolved once the issue reaches the final status in the workflow.) Once you have all of the statuses and transitions in place, you can add functionality to your workflow with transition behaviors described below.

Back to Top

Jira Transition Behaviors 

While statuses and transitions are at the core of Jira workflows, a lot of functionality comes from Jira workflow transition behaviors. Workflow transition behaviors are way to enforce business rules, deploy automation and build in efficiencies. They come in several flavors:

 

  • Triggers – Triggers are designed to make your Jira workflow responsive to linked Atlassian development tools (Fisheye/Crucible, Bitbucket and GitHub).
  • Conditions – Condition allows or prevent a workflow transition from taking place. If a set condition is not met, the user will not have the opportunity to transition the issue. 
  • Validators – Validators check for certain data after the transition button has been clicked, but before the transition actually occurs. 
  • Post Functions – Post functions are automated actions that take place immediately after a workflow transition. 
  • Properties – Workflow properties allow you to set restrictions on workflow steps or transitions.

When you configure your workflow you’ll notice that Jira comes with a standard collection of built-in transition behaviors. You can increase your options by using apps/plugins from the Atlassian Marketplace, such as:

As always, it’s recommended that you employ a vetting process for selecting apps/plugins.

Back to Top

Who Can Use Jira Workflows

Jira was originally created to help development teams manage the tasks required for creating software (hence Jira Software). However, several key features – end-to-end issue tracking, the ability to make project management visual, and of course, Jira’s workflow engine – make Jira a great tool for any team. 

There are now multiple Jira products, including some excellent options for non-tech teams. (If you are new to Jira and want more information about the different features of Jira Software, Jira Core and Jira Service Desk, see the final section of this page.)

Jira Workflow Examples in Jira Core

Atlassian offers several templates in Jira Core which make it easy to bring specific processes into Jira, and also demonstrate potential use cases. These templates include a specifically designed Jira workflow and some of the custom fields teams are likely to need for data collection. They cover:

  • Recruitment
  • Lead Tracking
  • Content Management
  • Document Approval
  • Procurement

Jira_recruitment_workflow_example-1

 

Atlassian also offers extensive guidance (eBooks with use cases, Jira workflow examples, etc.) on using Jira for Marketing and Asset Management.

 

Back to Top

Jira Service Desk for Non-tech Teams 

As you expand Jira to non-tech teams, consider using Jira Service Desk (JSD). JSD is designed for managing requests and is therefore an excellent fit for teams like Facilities, HR, Legal and Marketing.Like the IT service teams JSD was designed for, these teams face common challenges such as:

  • Needing a simple way for their customers to access their services;
  • Needing a centralized tool for managing incoming requests;
  • Collecting all of the required information from the onset when a customer places a request;
  • Showing their customers all of the services that are available.

Using Jira Service Desk not only resolves those challenges, it also brings several additional advantages.

  • Service queues can be configured to ensure that the most urgent requests get priority, that requests are dealt with in a timely manner and that the request is routed to the person best suited to respond.
  • Approvals can be built into the workflow, enhancing efficiency.
  • Nothing gets lost. The request and all the data that go along with it are there on the Jira request – not lost in an email inbox.
  • Jira analytics allow teams to know the volume, types and frequency of the requests they receive so they can anticipate the demand and allocate resources accordingly.
  • JSD can be combined with a Confluence knowledge base, allowing customers to self-serve, access relevant policies and procedures, etc.

Jira Service Desk workflows are often designed to manage the relationship between the customer and the service team, and to ensure that requests get resolved.

Jira Service Desk Workflow Example

 

Back to Top

Keeping Jira Administration Manageable

One of the challenges of expanding Jira to non-tech teams is that exponential growth can become challenging to configure and maintain.Therefore, it’s recommended that you limit the number of different workflows, custom fields and schemes in your Jira instance. Along with keeping things manageable for your Jira administrator and support team, this will also optimize Jira’s performance. 

A few well-designed workflows can support a multitude of processes.  Consider what can be accomplished using just these four.

Once you’ve identified a few multi-purpose workflows, the next step is to enable business teams to collect exactly the information they need on their Jira issues/requests.  One way to do this without having to create a horde of Jira custom fields is to embed forms in Jira issues as described in these examples:

You can expedite the process of bringing non-tech teams into Jira by using forms from the ProForma template library. These forms were purpose-built for Jira and can be easily modified by business teams. Templates have been created for various business teams:

Finance Legal Procurement
HR Marketing Project Management
IT Operations Risk Management


Back to Top

Creating Your Own Jira Workflow

While it is highly recommended that you limit the number of workflows in your Jira instance and that projects share workflows via a workflow scheme, there will inevitably come a time when you wish to modify a workflow or create your own.  You'll want to follow best practices to ensure that your new Jira workflow is accurate, effective and easy to maintain. 

Planning a Jira Workflow

Jira workflows are powerful things. When it's time to build or modify a workflow you will want to gather all stakeholders around a white board and talk through what the workflow should be. In an article on Best Practices for Creating a Custom Workflow (this article is part of a free eBook on Effective Jira Administration), author, teacher and Jira super-user Rachel Wright recommends drawing the workflow out on paper and then writing it out in words. This helps to ensure that the workflow you build is an accurate reflection of how the team actually works.

 

This

Jira Workflow Plan

becomes this

Performance Review Jira Workflow

 

While you want your workflow to be complete and accurate, you also want to avoid making it unnecessarily complicated. We all want credit for how complicated our processes are (and we want help to make sure we remember to do what we need to), but you should only create a status if it's likely that you would query for all issues in that status. Use other tools to track the details. This allows you to keep your workflow simple. You can add additional steps later if need be, but it is always easier to give than to take away. 

Back to Top

 Using the Jira Workflow Editor

Once you've read the best practices and Atlassian's instructions it's time to get started. In order to have a "safe" working environment where you can be assured that your actions won't accidentally impact other workflows, you need the workflow you're creating or modifying to be inactive. Otherwise, your good intentions may have a surprising impact on other teams, as described here.

To create an inactive workflow, login as a Jira administrator and go to Jira > Jira Settings > Issues > Workflows. From here, you have several options. You can click Add workflow to start building from scratch, you can import a workflow from the Marketplace, or you can modify an existing workflows. New workflows will be loaded into the lower part of the page, under the heading Inactive.

If you want to modify an existing workflow, it is strongly recommended that you start by making a copy of the workflow (click the Copy link next to the name of the workflow). An inactive copy of the workflow will be created. Working from a copy saves time, helps you remember the process that's already in place and protects existing projects from being disrupted. 

Now that you've established your working environment, you can jump in and start building/modifying your workflow. Click the Edit link next to the name of the inactive workflow.  The Jira workflow editor is fairly intuitive. You can choose whether you prefer working from text or a diagram and can add all of the statuses and transitions you need. A few things to remember:

  • Statuses are global – it's quite likely that the status you need already exists. Look before you create a new one.

    Think carefully about names – Status name should reflect the current state of an issue, such as Under Review or Pending Deployment. Transition names reflect an action taken such as Approved.

  • Things don't always go as planned – It's a good idea to allow for backwards transitions. You may also want to include a status such as "Parked" and allow all statuses to transition to it.

Jira Workflow Editor

 

Back to Top

Creating a Jira Workflow Scheme

When you're satisfied with your Jira workflow, you activate it by making it part of a workflow scheme. Workflow schemes map a workflow to Jira projects and to particular issue types within those projects. You can either create a new workflow scheme or update an existing one. Note changing an existing workflow scheme (just like changing an existing workflow) should not be done lightly. You will potentially be impacting multiple projects.

To create a workflow scheme got to Jira > Jira Settings > Issues > Workflows Schemes and click the Add workflow scheme button and follow the directions here.

Jira Workflow Scheme
Note that a workflow can be associated with one of more projects and one or more issue types within a project.

 

If you have a specific question about workflows and are not finding what you need here, or in Atlassian's documentation, the best place to go for answers is to the community forum. Folks who have a lot of experience with Jira freely share their expertise and recommendations. It's also a good way to keep up on new developments from Atlassian.

Back to Top

 

Jira Products

Jira comes in several varieties and can support different types of projects, so you’ll want to consider which flavor offers the best options for your teams.

  • Jira Software – The original Jira product, Jira Software is designed to support Agile software development. It includes features like bug tracking, backlogs, epics, sprints, Kanban and Scrum boards.

  • Jira Core – Recognizing that Jira could beyond its original scope, Atlassian created Jira Core for managing business projects. Jira Core is like Jira Software, without the lingo and focus on software development. You won’t hear about Kanban, Scrum or bug tracking in Jira Core. See this link for a detailed breakdown of the different Jira products.

  • Jira Service Desk – Along the way, Atlassian noticed that a lot of their customers were using Jira as a system for managing IT help desk requests. So they created Jira Service Desk (JSD), a version of Jira designed for request management. It includes features like a customizable service queues and built-in SLAs.  Again, although JSD was created for IT service teams, there’s no reason you can’t use it for any team that has a lot or request to manage (think HR or Facilities).  In fact, Enterprise Service Management, which applies lessons learnt from IT service management to fulfillment teams across an organization, is considered the wave of the future.

Note that the three Jira products are not mutually exclusive. For instance, in Jira Software you can create both software projects and business projects. Jira Service Desk allows you to create software projects, business projects and service desk projects. A given Jira workflow can be used in any of the three types of projects.

 

Back to Top

Linked Resources

Download