Four alternative uses for Atlassian Jira

by Sherif

I’m currently working in a rapid application development team. We essentially build web-based solutions for business users within our organisation. The work our team does is primarily development. In saying this, we often get a lot of requirements that are for problems where similar solutions may already exist.

There are many ways to solve a problem – but whats the most efficient and effective method?
As tempting as it is, you could build a custom application for almost anything – but we don’t. We try and avoid re-inventing the wheel where possible. How do we do this? Well, some of the solutions to our problems exist in the form of opensource software (Eg A blog – WordPress, or a Forum – PHPBB…). Additionally, there are cases where other types of problems can be solved by using an existing ‘wokflow’ type of tool. In some of these instances, we have been using Jira (by Atlassian).

Atlassian Jira
Atlassian JiraJira is a bug and issue tracker, primarily intended for software development. We use Jira internally to track all engagements within our team, as well as track bugs and issues for the web apps we develop. Jira is a very customizable product. It has a built in field builder that essentially lets you choose what fields you want to capture for your project. You can configure Jira’s custom fields at a system-wide, project specific and/or issue type level. Jira’s reporting component (or ‘filters’) make it easy to extract the information you want out of the system in several formats. Finally, Jira’s workflow features make it easy to define screens based on business processes you might have.

Jira use cases
So how does Jira help us build our solutions? Well, we found if some of the problems our customers faced could be easily described into one of the use-cases listed below:

  • User enters data in a custom form, a custom workflow is kicked off
  • Users can ‘assign’ the item (issue/item/task) to other users
  • Users can watch for updates / comment on their issue/item/task that has been raised
  • Reporting – being able to view this data in a wide range of formats (eg Excel, CSV, XML/RSS)
  • The following post will look at some alternatives uses for Jira other than for software development. These use cases can be usually fulfilled in Jira.

    1. Project Management
    We had several requests for teams across the organisation that want to be able to track their larger projects as well as simple things – such as their internal initiatives. Some creative uses for Jira in a project-management context could be:

  • An “Issue” being a project, with all sub-tasks within the issue being milestones or tasks within the project. This would mean you can have one Jira Project (E.g For a team) and then track all the team’s projects by raising issues within that project.
  • A Jira “Component” being a project, allowing you to assign issues that relate to multiple projects.
  • Jira “versions” being used as milestones for a project deliverable
  • Manage Risks & Issues for a project by creating standard sub-tasks within each Issue raised. You could have a standard sub-task for a risk and another for an issue. This would allow you to track for each piece of work within the project – what are the risks and issues
  • Use Jira’s capability for “linking” issues to show dependent tasks and reporting on them in a nice way.
  • Use it with it’s out-of-the-box setup – Having a Jira project for every project you have, and then creating issues within each project to track tasks milestones
  • 2. Engagement Forms
    One of the challenges a large organisation faces is that each team can go going off and create their own processes and tools for various things. A classic example of this is a team’s engagement form. Each team has their own interests – and usually end up forking off another process for engagement. Engagement forms could be anything from an email to a dropbox, to a word or excel document, to an Access database sitting on someones desktop or even a custom web application built just for engaging a team within the organisation. Jira can help solve this problem as well as consolidate these satellite solutions into one.

    In terms of how you would use Jira as an engagement form: A Jira Issue = A New Engagement, Issue Type = Engagement Type, Component = Engagement Classification or System/Product the engagement is for. You could then specify your component lead’s as your subject matter experts for that engagement type.

    Using Jira to track your engagements is great as it allows you to:

  • assign engagements to leads,
  • track time for each engagement and lets you
  • receive flexible reporting functionality through the Jira issues filter.
  • 3. Task Management (GTD)
    Jira is also a great tool to get things done! This can be applied for a team or an individual. For teams, using Jira for this means that you can easily track your KPI’s. Your engagement form can easily become your team’s work tracing tool. So from engagement to tracking the actual work – you could use Jira as an end-to-end productivity tool within your team.
    Now, not all work your team will do would be project related – sometimes there are random jobs that need to be done. Jira can be great for tracking this. Personally, I use Jira to track all things I am working on and as a GTD tool.

    4. Ticketing System
    The last, and probably most obvious use alternative of Jira, is for some form of ticketing system. Atlassian eat their own dogfood with their customer support site – a classic example of Jira being used as a ticketing system.

    If you are considering using Jira for this purpose, you will want to look at the enterprise version of Jira. The enterprise version brings you ‘Issue Level Security’. This essentially allows you to set up different security levels for each customer. This is similar to having different projects, but allows the support team to manage the issues in just one project.

    To make reporting easier, you could setup a component for each one of the support ‘queues’. Or you could abstract it further, and have a project for each queue within your ticketing system.

    Conclusion
    I’m not suggesting that every form-based application is built in Jira. There are however good reasons where you might want to use Jira – these requirements generally fall under one of the use-cases defined above. Jiras flexible nature means that you can customise quite a bit. What happens if it isn’t right for you? Don’t worry – Jira has a powerful API, which means you can easily import or mashup your data with another system if need be – you haven’t locked yourself in!

    Further reading: Jira Use Cases (Atlassian)