2.1.1 Easier And More Advanced Search
We have all been there. Trying to find a record in a work tool and just not getting to it. Maybe the author of the record gave it a really strange name or the creator of the tools we use felt the need to reinvent search. That can be incredibly frustrating and can lead to a significant reduction of our productivity.
So to avoid users going berserk, Atlassian made search one of JIRA's core strengths and gave it four key functionalities:
- The Quicksearch box let's users enter search queries from every screen of the application and will deliver results matching issues summaries, descriptions and comments.
- Once the Quicksearch has been submitted, JIRA shows the results and let's the user add further filters based on standard and custom fields as well as their possible, absolute or relative values (e.g. 'within the last week'). JIRA calls this search mode 'simple search' and its queries can be saved, shared and reused as filters.
- Smart Search interprets everyday keywords and interprets them for the user. Searching for 'my issues' for example would give the user all issues that are assigned to him/her. Additionally, the smart query string is also converted to a JQL query which the user can modify and extend further in an advanced search.
- The Advanced Search mode is based on the JIRA Query Language (JQL) which is the most powerful and flexible method of searching JIRA content. It allows searching for issues by keyword, meta-data or complex, variable and function-driven queries which can roughly be compared with a simple version of SQL. A powerful auto-complete function facilities query writing and significantly reduces human error. Just like in simple search, JQL run queries can be saved as filters for later use, reuse in other gadgets or sharing with colleagues, groups or everybody.
Showcase Integration with: Browser extensions, JIRA API
Steps to demonstrate
- Quicksearch: Press '/' on your keyboard and you are taken directly into the Quicksearch box. Type in your search query, press Enter and observe as JIRA searches through issues' summary, description and comment field and returns results that matched your query.
- Smart Search: Type 'my issues' in the Quicksearch box, press Enter and observe how all issues are returned that are assigned to the current user. Clear the Quicksearch box and enter 'overdue' to show all issues that have passed their due date.
- Simple search: Type a general search string first and then limit the result list by status, project, issue type, etc
- Save and Share Filter: In the same results view (see Simple Search), click 'Save it as a filter' on the left hand side above the search button. Give the filter a human readable name and share it with your group.
- Advanced Search (JQL): Type a query that shows the issues on which work was canceled in the last 2 weeks. This will show the ability of JQL queries to not only search within the current values of issue fields but also query their history. Type 'duedate < now() or duedate is empty' to find all issues that are overdue or where no due date is set
You will either need to migrate issues from your existing system or create issues selectively to be able to demonstrate the search capabilities.
Demonstration on JIRA.Atlassian.com
JIRA.Atlassian.com is an excellent instance to search for issues due to the vast amount of records.
- Press '/' on your keyboard to enter the quick search box instantly. Search for: improvement
- You see that all issues have been selected that are of issue type 'Improvement'. You can see that the smart query already kicked in.
- If you are in advanced search, switch to simple search.
- Limit the view further and select project 'JIRA' from the project drop down.
- Now, limit further by resolution and select 'Unresolved'
- We can now see all raised and open improvement requests for Atlassian JIRA. This shows the transparency Atlassian has over all known feature requests, bugs, how-to questions, and many other types of issues.
- Click on 'Tools' and select 'Configure Columns'
- Add the column votes and select 'Issue Navigator' again to return to the results view
- Sort the result view by votes to bring the improvement requests with the most votes to the top
Save and Share Filter:
- In the same results view (see Simple Search), click 'Save it as a filter' on the left hand side above the search button. Name the filter 'Most wanted improvements'
- Share the filter with a specific user you know
Advanced Search (JQL):
- At the left hand side, below the Issue Navigator menu (Summary, New, Manage), select 'advanced searching'
- You now switched to the JIRA Query Language mode and are able to build more complex queries
- Let's say you would like to review the issues that have been at least reopened once and then finally closed within the last quarter. This filter could be a good input for a lessons-learned / review session. Let's look at such issues at the JIRA project. Type in 'project = JIRA and status in (resolved, closed) and status was reopened and resolutiondate > -12w' (without the single quotes). Go through the issues and look at the change history to see where and why they were reopened.
- Another interesting query is as mentioned in the generic demo tips the view on issues where work has been started but stopped. The following JQL query gives insight about such issues that were created in this year: 'project = Confluence and status CHANGED FROM 'In Progress' TO 'Open' and createdDate > startOfYear()' (enter without single quotes)