Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,365,033
Community Members
 
Community Events
168
Community Groups

Jira JQL Best Practices for ACP Exam

I guess many Atlassian Certified Professionals, will agree that some JQL questions which we had in our ACP exams were tricky. These questions can be easier to answer, if you follow the Atlassian JQL Best Practices, which we often forget or simply do not know.

When preparing for one of the Jira related ACP exams, for example ACP-100 or ACP-120, you should expect a few questions relating to JQL. For example, in ACP-100 preparation topics you can find - Topic 1: Advanced User Features; 1.1: Given a business requirement, create, translate, critique, and optimize JQL queries.

Although you may work with JQL on a daily basis, some questions are really tricky and require more time to analyze. Do not underestimate these questions. Sometimes, even if you answer them correctly, you are not always 100% sure about that.

If you want an ACP Exam-hack from me, memorize this JQL Golden Best Practice:


Answer this question: is this JQL query easy to maintain, which means, will anybody has to modify it when some external conditions or data change?

If no - that is ok, if yes - optimize it.


It does not mean that it is always possible to optimize a JQL query, because not every query needs to be shared (in shared filters or dashboards). But on the ACP Exam, expect to select only this query which does not need to be updated once created.

Here are a few examples to illustrate it:

(1) Do not use individual user names, if you want to share the filter with others

JQL: reporter in membersOf("dev-ops-members") - when someone is added or removed from this group, this JQL will continue to work just fine, no need to update it

JQL: assignee = currentUser() - if you want to share a dashboard, which should work the same way for everyone, use the group or user related functions and not individual values

(2) Do not list all the task or sub-task issue types in one query, if you do not want to select only one or a few of them

JQL: project = ABC and standardIssueTypes() - this will select all task type issues, but not sub-tasks. Tricky question: will this also select Epics? Are Epics standard issue types? Check it out yourself.

JQL: project = ABC and subTaskIssueTypes() - this will select all sub-task type issues, but not standard tasks.

(3) In your Jira, if you create many new projects reqularly, configure project categories and use them in your JQL queries

JQL: category = “agile” and status = Open - this will list all issues in status Open from all projects, current and future, associated with the category “agile”

I hope you found these examples useful and this will bring you one step closer to your ACP Exam success. You will find a few more ACP Exam related articles on my blog: https://jlabnotes.com/jql/

2 comments

Thanks! 
Easy to read and useful article!

Not for ACP, but as we are talking about JQL best practices, I'd add.

1. Instead of GDPR nonsense nobody can decipher

assignee = 557058:f00b77d7-f6b7-4de1-9e9e-4e86fe5d85a5

use

assignee = "user@example.com"

2. Instead of

status in (Closed, Resolved)

use

statusCategory = Done

or 

resolution is not empty

Like # people like this

Comment

Log in or Sign up to comment
TAGS

Atlassian Community Events