What is JIRA?
JIRA is a tool developed by Australian Company Atlassian. It is used for bug tracking, issue tracking, and project management. The name "JIRA" is actually inherited from the Japanese word "Gojira" which means "Godzilla".
The basic use of this tool is to track issue and bugs related to your software and Mobile apps. It is also used for project management. The JIRA dashboard consists of many useful functions and features which make handling of issues easy. Some of the key features are listed below. Let's learn JIRA Defect and Project tracking software with this Training Course.
Topics covered in this Tutorial
- Plug-ins in JIRA
- JIRA Agile
- Creating issue in Agile
- How to create an Epic in Agile
- Use of Clone and Link in JIRA
Inside JIRA scheme, everything can be configured, and it consists of
- Issue Types
- Custom Fields
- Field Configuration
This section will guide you through JIRA Issue and it's types.
JIRA issue would track bug or issue that underlies the project. Once you have imported project then you can create issues.
Under Issues, you will find other useful features like
- Issue Types
- Issue Attributes
Let see JIRA Issue in detail
Issue Type displays all types of items that can be created and tracked via JIRA. JIRA Issues are classified under various forms like new feature, sub-task, bug, etc. as shown in the screen shot.
There are two types of Issue types schemes in JIRA, one is
- Default Issue Type Scheme: In default issue type scheme all newly created issues will be added automatically to this scheme
- Agile Scrum Issue Type Scheme: Issues and project associated with Agile Scrum will use this scheme
Apart from these two issue type schemes, you can also add schemes manually as per requirement, for example we have created IT & Support scheme, for these we will drag and drop the issue types from the Available Issue type to Issue type for current scheme as shown in the screen shot below
Components are sub-sections of a project; they are used to group issues within a project into smaller parts. Components add some structures to the projects, breaking it up into features, teams, modules, subprojects and more. Using components you can generate reports, collect statistics, and display it on dashboards and so on.
To add new components, as shown in the above screen you can add name, description, component lead and default assignee.
When issue is created in JIRA, it will be arranged and represented into different fields, this display of field in JIRA is known as a screen. This field can be transitioned and edited through workflow. For each issue, you can assign the screen type as shown in the screen-shot. To add or associate an issue operation with a screen you have to go in main menu and click on Issues then click on Screen Schemes and then click on "Associate an issue operation with a screen" and add the screen according to the requirement.
Issue Attributes encompasses
Statuses: Different statuses are used to indicate the progress of a project like To do, InProgress, Open, Closed, ReOpened, and Resolved. Likewise, you have resolutions and priorities, in resolution it again tells about the progress of issue like Fixed, Won't fix, Duplicate, Incomplete, Cannot reproduce, Done also you can set the priorities of the issue whether an issue is critical, major, minor, blocker and Trivial.
This function in JIRA allows you to control who can view the issues. It consists of a number of security levels which can have users or groups assigned to them. You can specify the level of security for the issues while creating or editing an issue.
Similarly, there is a Default Permission Scheme any new project that are created will be assigned to this scheme. Permission Schemes allow you to create a set of permissions and apply this set of permission to any project.
Some of the useful features that JIRA admin provides to users are:
- Audit Log
Under Audit Log, you can view all the details about the issue created, and the changes made in the issues.
- Issue Linking
This will show whether your issues link with any other issue that is already present or created in the project also you can de-activate Issue linking from the panel itself
- Mail in JIRA
Using Mail system in admin you can mail issues to an account on a POP or IMAP mail server or messages written to the file system generated by an external mail service.
An event describes the status, the default template and the notification scheme and workflow transition post function associations for the event. The events are classified in two a System event (JIRA defined events) and Custom event (User defined events).
- Watch list
JIRA allows you to watch a particular issue, which tells you about the notifications of any updates relating to that issue. To watch an issue, click on the word "watch" in the issue window, and if you want to see who is watching your issues, you have to click on the number in brackets.
- Issue Collectors
- Development Tools
You can also connect your Software development tools to JIRA using this admin function. You have to enter the URL of the application to connect with JIRA.
JIRA Dashboard will open when you enter your user ID and password. Under JIRA dashboard you will find option Project, when you click on it, it will open a window that list out options like Simple Issue Tracking, Project Management, Agile Kanban, Jira Classic and so on as shown in screen shot below.
When you click on option Simple Issue Tracking, another window will open, where you can mention all the details about the issue and also assign the issue to the responsible person.
When you click on "Submit" button, a window will open where you can perform a list of work like creating issues, assigning issues, check the status of issues like- resolved, In-Progress or closed and so on.
Once the issue is created a pop-up will appear on your screen saying your issue is created successfully as shown in the screen shot below
Now if you want to edit an issue or you want to export the issue to XML or Word document, then you can hover your mouse on main panel and click on Issues. Under Issues options click on search for issues that will open a window from where you can locate your issues and perform multiple functions.
When you select the "search for Issues" under Issues, a window will appear as shown in the screen shot
- Search for issues option will bring you to a window where you can see the issues created by you like here we have issues ST1 and ST2
- Here in the screen shot you can see the issue "Bug detected while User Acceptance Testing" and all the details related to it. From here, you can perform multiple tasks like you can stop the progress on issues, edit the issues, comment on the issues, assigning issues and so on
- Even you can export issue details to a XML or Word document.
- Also, you can view activity going on the issue, reviews on the issue, work log, history of the issue and so on.
- Under the time tracking option, you can even see the estimation time to resolve the issues
In the same window, you can set a filter for the issue and save them under Favorite Filters, so when you want to search or view a particular issue you can locate it using the filter.
To view the summary of the issue, you can click on options summary, this will open a window which will show all the details of your project and progress on this chart. On the right-hand side of the summary window, there is an Activity Stream which gives the details about the issues and comments made by the assignee on the issue.
Subtask issues are useful for splitting up a parent issue into a number of smaller tasks that can be assigned and tracked separately. It addresses issues more comprehensively and segregates the task into smaller chunks of task to do.
How to create Sub-Task
Sub-Task can be created in two ways
- Create sub-task under parent issue
- Creating an issue into a sub-task
To create sub-task in JIRA, you have to select an issue in which you want to assign the sub-task. Under the issue window, click on Assign more option, and then click on create sub-task as shown in the screenshot below. You can also select convert to sub-task under same tab to convert the parent issue into a sub-task.
Once you click on Create Sub-Task, a window will pop up to add sub-task issue. Fill up the details about the sub-task and click on Create as shown in below screen-shot, and this will create sub-task for the parent issue.
It will create a sub-task under parent issues, and details will appear about when to complete the task on the issue type page as shown in the screenshot below. If you would like to add more sub-task, you can click on the plus (+) sign on the corner of the sub-task panel. Likewise, if you want to note down the time spent on the present task, click on (+) plus sign in the corner of the time tracking and put down the details in the log sheet.
Some important points to remember while creating Sub-Task
- You can have as many sub-task as needed under an Issue
- You cannot have a sub-task for a sub-task
- Once a sub-task is created under a parent, parent cannot be converted into a sub-task
- A sub-task can however be converted into a parent issue
- You can work on your sub-task without having navigating away from the parent issue
A JIRA workflow is a set of statuses and transitions that an issue goes through during its lifecycle. JIRA workflow encompasses five main stages once the issue is created.
- Open Issue
- Resolved Issue
- InProgress Issue
- ReOpened Issue
- Close Issue
While workflow in JIRA comprises of Statuses, assignee, resolution, conditions, validators, post-function's and properties
- Statuses: It represents the positions of the issues within a workflow
- Transitions: Transitions are the bridges between statuses, the way a particular issue moves from one status to another
- Assignee: The assignee dictates the responsible party for any given issue and determines how the task would be executed
- Resolution: It explains why an issue transitions from an open status to a closed one
- Conditions: Conditions control who can perform a transition
- Validators: It can ensure that the transition can happen given the state of the issue
- Properties: JIRA recognizes some properties on transitions
You can assign the status of the issue from the window itself, when you click on the check box for IN Progress status as shown in screen shot below, it will reflect the status in the issue panel highlighted in yellow.
For the issue that we have created, JIRA will present a workflow which maps the progress of the project. As shown in screenshot whatever status that we have set in the Issue panel it will be reflected in Workflow chart, here we have set the issue status in "In Progress" and same status is updated in the workflow, highlighted in yellow. Workflow can give a quick overview of the work under process.
There are plug-ins available for JIRA to work more effectively, some of these plugins are Zendesk, Salesforce, GitHub, Gitbucket and so on. Some of them enables support team to report issues directly into JIRA, creates unlimited private repositories with full featured issue and test management support, etc.
Agile or Scrum method is generally used by development teams who follows a roadmap of planned features for upcoming versions of their product. Agile follows the same roadmaps to track their issues as in other JIRA methods To do -> In Progress -> Done , as shown in the screen shot below, we have one issue in To do and the second issue in In Progress. Once the issue in In Progress will be resolved, it will move to Done status and in the same way the issue in To do will move to the next stage In Progress.
To create agile issue, go to main menu under Agile tab, click on "Getting Started", when you click on it, it will ask to create new board for the issues for Scrum or Kanban. You can choose your option as per your requirement, here we have selected Scrum method.
In JIRA Agile, an epic is simply an issue type. The epic captures a large body of work. It is a large user story which can be broken down into a number of small stories. To complete an epic, it may take several sprints. You can either create a new epic in agile or either use the issue you have created in normal JIRA board. Likewise, you can also create a story for agile scrum.
Plan Mode in Agile:
Plan mode displays all the user stories created for the project. You can use the left-hand side menu to decide the basis on which the issues need to be displayed. While on the right-hand side menu clicking on the issue, you can create subtasks, logwork, etc.
Work Mode in Agile
It will display the active sprint information. All the issues or users stories will be displayed into three categories as shown in the screen shot below To do, In Progress and Done to show the progress of the project or issues.
In JIRA, you can also clone the issue, one advantage of cloning an issue is that the different team can work separately on the issue and resolve the issue quickly.
There is another useful function is JIRA Link, Issue linking allows you to create an association between two existing issues on either the same or different JIRA servers. As shown in the screen shot, we have linked the current issue "ST-6 Drop down menu is not working" with another issue " ST-4 GUI is not responsive- retest GUI functions".
Like here we have set sprint for 1 day and it will run sprint for that specific time period as shown in the screenshot below. If you are working with scrum, and want to prioritize the issue or rank the issue then you just have to simply drag and drop the issue into the backlog.
Apart from this there are multiple task that you can do, for instance if you click on the right side corner of the window a list of function will pop up which you can use it as per your need.
To track the progress in Agile, a Burndown Chart shows the actual and estimated amount of work to be done in the sprint. A typical burndown chart will look somewhat like this, where the red line indicates the actual task remaining while the blue line indicates ideal task remaining during the scrum cycle.
Apart from Burn down chart there are other options available in JIRA like Sprint Report, Epic Report, Version Report, Velocity Chart, Control Chart, Cumulative flow diagram. You can also use different chart option to represent the progress of your project.
Like here in the screen shot above, we have selected a pie chart for issue priorities. It will generate a Pie Chart representing the priorities and severity of the issues in percentage for the whole project as shown below. You can view the pie chart from different perspectives like Assignee, Components, Issue Type, Priority, Resolution, and Status and so on.
You can also configure how you want to see the scrum board. Scrum board gives various options through which you can make changes into your board appearance. Various features you can configure using scrum are Columns, Swimlanes, Quick Filters, Card colors and so on. Here we have selected column management, and selected the options Issue count, and it will show the total number of issue in progress, to do or done. In column management, we can add an additional column as per our requirement likewise there are different features that you can configure in board.
You can also set filters other than default filters to filter the issues. The filters that you can use are date, component, priority, resolution and so on.
Like Agile Scrum board, we can also create a Kanban Board, here we have created a project name Cloud Testing. Kanban board is useful for the team that managing and constraining their work in progress. Kanban boards are visible in Work mode but not in Plan mode.
Here we have created an issue " Bug detected while load testing" and "Check issues related to cloud server" in Kanban Board as shown in the screenshot below, it also shows their status as well highlighted in red.
Kanban is considered as the best methodology for bug fixing and maintenance release, where incoming task is prioritized and then worked accordingly. There are few measures which can make Kanban more efficient.
- Visualize your workflow
- Limit the work in progress
- Work on Issues
- Measure the cycle time
Burndown Chart: The chart shows all the changes and scope changed while the sprint is still on, other charts include Sprint Report, Velocity Chart, Epic Report, etc.
Control Chart: It allows you to measure the cycle time for issues, showing the mean time and actual time taken to complete issues
It allows the team to see the progress of sprints. This is the work mode, where you can see the board itself broken down into different statuses.
Team can decide whether to increase or decrease the number of issues that should be displayed in each status.
This is where team will plan sprints and estimate stories that will go into each sprint
You can map columns to the statuses of your workflow. Simply by adding or removing columns the workflow can be changed when required.
Checkout - JIRA Interview Questions & Answers