It’s been 4 months since we decided to start using JIRA to track bugs in the development of our software library. Here’s a quick rundown on how we use it, and what we think of it…
These are a simple way to aggregate all the important information, and provide an overview of what’s been going on / what needs to be done. Upon logging into JIRA, I’m immediately greeted with everything I need to get right back to work.
The dashboards are highly customisable – everything from aesthetic options such as colours, column layout / size to more functional things such as choosing what exactly each gadget (Atlassian’s fancy name for a widget) shows. For example, I have a gadget displaying all the cases from my custom filter “My Queue” which organises my current open cases by priority (I’ll talk more about filters later). I also have another one which shows the recent activity of all the other users on our JIRA. This is great because it means less time spent bugging people for updates on cases / where my coffee is, and more time spent working.
Another cool type of gadget is the million different types of graph you can use to visualise different things, such as progress so far this sprint, the number of solved cases vs. new cases, how many cases are assigned to each person, the list goes on.
These provide a nice overview of how things are progressing for each project, and can also be used to keep an eye on your personal performance.
Filters are a powerful tool for organising cases. For example, I have one set up that shows me all unresolved cases assigned to me, and orders them by status (in progress / to do / in review / done) then by how old they are. As you can see below, I’m using JQL (JIRA Query Language) to write custom queries much like SQL that give me complete control over the filters. This means that as aforementioned, the most important cases are always at the top of my queue, on the front of my dashboard
These are a neat way of organising large amounts of cases into groups – for example, we sort by product, meaning we have a separate project for all JPedal cases, another for JPDF2HTML5, another for each customer with bespoke solutions, etc. Each project is given its own overview, much like a dashboard, that shows you all kinds of relevant information ranging from latest activity on all cases in the project, to statistics and reports.
This is really useful for us when it comes to rollouts for our products – JIRA has a feature for each project labelled “releases”. Each case we work on is assigned a release version attribute, so when it comes to the end of the month we can simply open up the “releases” tab under the relevant project, and we can see all cases assigned to it. This makes writing up the release notes really easy!
Fitting in with other software
At the moment, we use ZenDesk for our support. We currently have plugins for both that let them communicate with each other – ZenDesk can create new cases from its Support tickets, and JIRA can update these tickets as progress is made.
So in summary, JIRA is incredibly customisable and can be a very powerful tool – it just takes a little setup / getting used to. We had a some friction during the transition to JIRA, but now we’ve worked out the kinks I think it’s safe to say now that our development process has benefited a lot from it.
What tool(s)/software do you use for bug tracking? Let us know in the comments below.