JIRA Concepts: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
 
(51 intermediate revisions by the same user not shown)
Line 31: Line 31:


{{External|[https://confluence.atlassian.com/agile/glossary/sprint JIRA Glossary - Sprint]}}
{{External|[https://confluence.atlassian.com/agile/glossary/sprint JIRA Glossary - Sprint]}}
{{External|[https://www.atlassian.com/agile/tutorials/sprints Jira Sprints Tutorial]}}


A sprint, also known as an iteration, is a short period of time during which the development team implements and delivers a discrete and potentially shippable application increment. The deliverable can be a working milestone version. A typical sprint is two weeks. It's long enough to get something accomplished, but not so long that the team is not getting regular feedback. Sprint-based work organization is fundamentally different than [[#Kanban|Kanban]], where the results are delivered continuously.  
A sprint, also known as an iteration, is a short period of time during which the development team implements and delivers a discrete and potentially shippable application increment. The deliverable can be a working milestone version. A typical sprint is two weeks. It's long enough to get something accomplished, but not so long that the team is not getting regular feedback. Sprint-based work organization is fundamentally different than [[#Kanban|Kanban]], where the results are delivered continuously. Every sprint starts with a planning meeting, where the team commits to deliver a set of [[#Story|stories]] that are pulled from the top of the [[#Backlog|backlog]].
In Jira, sprints can be monitored from a [[#Scrum_Board|Scrum board]] associated with the sprint. Each [[#Project|project]] has an "Active Sprints" link.  


In JIRA, sprints can be viewed on a [[#Scrum_Board|Scrum board]]. [[#Issue|Issues]] can be assigned to sprints. The sprint is associated with the issue via the issue's [[#field_sprint|sprint]] field.
More details on monitoring a sprint:
{{External|[https://confluence.atlassian.com/jirasoftwarecloud/monitoring-the-progress-of-a-sprint-764478122.html Monitoring the progress of a sprint]}}


Every sprint starts with a planning meeting, where the team commits to deliver a set of [[#Story|stories]] that are pulled from the top of the [[#Backlog|backlog]].
[[#Issue|Issues]] can be assigned to sprints. The sprint is associated with the issue via the issue's [[#field_sprint|sprint]] field.


<font color=darkgray>The progress of a sprint can be monitored: https://confluence.atlassian.com/jirasoftwarecloud/monitoring-the-progress-of-a-sprint-764478122.html</font>
===Active Sprint===
The JQL logic that selects active sprints is:
<syntaxhighlight lang='sql'>
sprint in openSprints()
</syntaxhighlight>
===JQL Sprint-related Functions===
{{Internal|Jira_JQL#Sprint-related_Functions|Jira JQL &#124; Sprint-related Functions}}


==Kanban==
==Kanban==
Line 48: Line 58:
=Board=
=Board=


A [[#Project|project]] may have several boards associated with it. Usually, there's a [[#Scrum_Board|scrum board]] and a [[#Kanban_Board|kanban board]]. Boards are driven by the [[#Board_Filter|board filter]]. All boards for a project can be accessed from a drop-down box associated with the project.
{{External|https://confluence.atlassian.com/jirasoftwarecloud/what-is-a-board-764477964.html}}


==Scrum Board==
A board is a view that renders issues from one or more projects. There are [[#Board_Types|three types of boards]]. A [[#Project|project]] may have several boards associated with it. Usually, there's a [[#Scrum_Board|scrum board]] and a [[#Kanban_Board|kanban board]]. Boards are driven by the [[#Board_Filter|board filter]]. All boards for a project can be accessed from a drop-down box associated with the project.
 
==Board Types==
 
===Scrum Board===


A Scrum board is a [[#Board|board]] used to manage [[#Sprint|sprints]]. The board must have [[#Ranking|ranking]] enabled to use sprints.
A Scrum board is a [[#Board|board]] used to manage [[#Sprint|sprints]]. The board must have [[#Ranking|ranking]] enabled to use sprints.


==Kanban Board==
===Kanban Board===
 
===Next-gen Board===


==Board Elements==
==Board Elements==
Line 60: Line 76:
===Board Filter===
===Board Filter===


Boards are driven by [[#Filter|filters]], which can be accessed as ... → Board Settings → Filter. The board filter determines which issues appear on the board. It can be based on one or more projects, or custom JQL.
Boards are driven by [[#Filter|filters]], which can be accessed as ... → Board Settings → General and filter → Filter. The filter is a named query, and the query can be viewed with "View Filter Query". The board filter determines which issues appear on the board. It can be based on one or more projects, or custom JQL.


===Board Column===
===Board Column===
"TO DO", "IN PROGRESS", "IN REVIEW", "DONE"
===Board Swimlane===
===Board Swimlane===
===Board Quick Filter===
===Board Quick Filter===
=Board Operations=
* [[JIRA_Operations#Go_to_a_specific_Board_for_a_specific_Project|Go to a specific board for a specific project]]
* [[JIRA_Operations#Project_the_Active_Sprint_on_the_Board|Poject the active sprint on the board]]
* [[JIRA_Operations#Project_the_Backlog_on_the_Board|Project the backlog on the board]]
* [[JIRA_Operations#Project_a_Specific_Epic_on_the_Board|Project an epic on a specific board]]
=Dashboard=
{{External|https://confluence.atlassian.com/jiracorecloud/configuring-dashboards-765593585.html}}
The dashboard is the main display you see when you log in Jira. Multiple dashboards can be created. A dashboard contain [[#Gadget|gadgets]]. To navigate to your dashboards. go to the Jira top-left icon → Dashboards.
==Default Dashboard==
All changes made to the default dashboard will also change the dashboards of all users currently using the default dashboard.
<font color=darkgray>By the virtue of a mechanism I don't understand, the "default" Dashboard automatically shows a named, private dashboard I have created, instead of the system one. To clarify.</font>
==Gadget==
===Available Gadgets===
====Assigned to Me====
====Filter Results====
Renders a [[#Filter|saved filter]].
==Dashboard Operations==
* [[JIRA_Operations#Create_a_Dashboard|Create a Dashboard]]


=Issue=
=Issue=
Line 98: Line 146:


===Epic===
===Epic===
{{External|[https://www.atlassian.com/agile/tutorials/epics Jira Epics Tutorial]}}
====Epic Operations====
* [[JIRA_Operations#Project_a_Specific_Epic_on_the_Board|Project an epic on a specific board]]


==Sub-Task==
==Sub-Task==
Line 112: Line 165:


{{External|[https://confluence.atlassian.com/jirasoftwarecloud/advanced-searching-fields-reference-764478339.html Fields Reference]}}
{{External|[https://confluence.atlassian.com/jirasoftwarecloud/advanced-searching-fields-reference-764478339.html Fields Reference]}}
Also see {{Internal|Jira JQL|JQL}}


====asignee====
====asignee====
Line 120: Line 175:


{{Warn|You need to be careful when using 'updated' in queries, as its semantics is actually "last update timestamp". If the issue was updated multiple times, only the last update timestamp is retained and counts in the query.}}
{{Warn|You need to be careful when using 'updated' in queries, as its semantics is actually "last update timestamp". If the issue was updated multiple times, only the last update timestamp is retained and counts in the query.}}
Relative time comparison. "Find issues that have been updated during the last day"
updated >= "-1d"


====timeSpent====
====timeSpent====
Line 128: Line 187:


Designates the [[#Sprint|sprint]] the issue is associated with.
Designates the [[#Sprint|sprint]] the issue is associated with.
====summary====
summary ~ "BrowserTest"
====status====
status = Open
====resolved====
Search for issues that were resolved on, before, or after a particular date (or date range). Note that if a time-component is not specified, midnight will be assumed.
Formats:
"yyyy/MM/dd HH:mm"
"yyyy-MM-dd HH:mm"
"yyyy/MM/dd"
"yyyy-MM-dd"
resolved > "2011/01/15" and resolved < "2011/01/16"


==Ranking==
==Ranking==
Line 134: Line 214:


Ranking assigns a relative importance or urgency to an issue, compared with other issues.
Ranking assigns a relative importance or urgency to an issue, compared with other issues.
=Dashboard=


=Time Format=
=Time Format=
Line 157: Line 235:
=Backlog=
=Backlog=


* Using the backlog https://confluence.atlassian.com/agile/jira-agile-user-s-guide/using-a-board/using-the-backlog
The backlog is where [[#Sprint|sprints]] are planned.


The backlog is where [[#Sprint|sprints]] are planned.
==Backlog Operations==
* [[JIRA_Operations#Backlog_Operations|Backlog Operations]]


=Filter=
=Filter=
Line 173: Line 252:
Examples of custom filters:
Examples of custom filters:
* [[JIRA_Operations#Issues_Worked_on_Since_Yesterday_Midnight|Issues Worked on Since Yesterday Midnight]]
* [[JIRA_Operations#Issues_Worked_on_Since_Yesterday_Midnight|Issues Worked on Since Yesterday Midnight]]
==Filter Operations==
* [[JIRA_Operations#Create_a_Custom_Named_Filter|Create a Custom Named Filter]]
* [[JIRA_Operations#Delete_a_Filter|Delete a Filter]]


=JQL=
=JQL=


==Functions==
{{Internal|Jira JQL|Jira JQL}}
 
{{External|[https://confluence.atlassian.com/jirasoftwarecloud/advanced-searching-functions-reference-764478342.html Functions Reference]}}
 
===Time Functions===
 
Also see [[#Time_Format|Time Format]].


====startOfDay()====
=REST API=
====endOfDay()====
{{Internal|Jira REST API|Jira REST API}}
====startOfWeek()====
=Java API=
====startOfMonth()====
{{Internal|Jira Java API|Jira Java API}}
====startOfYear()====

Latest revision as of 02:47, 24 June 2021

Internal

Project

A project is a collection of issues.

Operations:

Component

A component is a way to group issues within a project. They can be seen as sub-sections of the project. They are used to group project's issues into smaller, more manageable groups.

Components do not have dates assigned to them.

Components can have a component lead who could be a subject matter expert. Once an assignee is set for a component, it will override the project's default assignee for issues that are created within that component.

Operations:

Work Management

Sprint

JIRA Glossary - Sprint
Jira Sprints Tutorial

A sprint, also known as an iteration, is a short period of time during which the development team implements and delivers a discrete and potentially shippable application increment. The deliverable can be a working milestone version. A typical sprint is two weeks. It's long enough to get something accomplished, but not so long that the team is not getting regular feedback. Sprint-based work organization is fundamentally different than Kanban, where the results are delivered continuously. Every sprint starts with a planning meeting, where the team commits to deliver a set of stories that are pulled from the top of the backlog.

In Jira, sprints can be monitored from a Scrum board associated with the sprint. Each project has an "Active Sprints" link.

More details on monitoring a sprint:

Monitoring the progress of a sprint

Issues can be assigned to sprints. The sprint is associated with the issue via the issue's sprint field.

Active Sprint

The JQL logic that selects active sprints is:

sprint in openSprints()

JQL Sprint-related Functions

Jira JQL | Sprint-related Functions

Kanban

Kanban is based on continuous delivery of work. Rather than planning iterations, the flow of work is constantly monitored to endure that there are always tasks being worked on. When the tasks are completed, new tasks are pulled into work-in-progress.

TODO: https://confluence.atlassian.com/jirasoftwarecloud/monitoring-work-in-a-kanban-project-764478148.html

Board

https://confluence.atlassian.com/jirasoftwarecloud/what-is-a-board-764477964.html

A board is a view that renders issues from one or more projects. There are three types of boards. A project may have several boards associated with it. Usually, there's a scrum board and a kanban board. Boards are driven by the board filter. All boards for a project can be accessed from a drop-down box associated with the project.

Board Types

Scrum Board

A Scrum board is a board used to manage sprints. The board must have ranking enabled to use sprints.

Kanban Board

Next-gen Board

Board Elements

Board Filter

Boards are driven by filters, which can be accessed as ... → Board Settings → General and filter → Filter. The filter is a named query, and the query can be viewed with "View Filter Query". The board filter determines which issues appear on the board. It can be based on one or more projects, or custom JQL.

Board Column

"TO DO", "IN PROGRESS", "IN REVIEW", "DONE"

Board Swimlane

Board Quick Filter

Board Operations

Dashboard

https://confluence.atlassian.com/jiracorecloud/configuring-dashboards-765593585.html

The dashboard is the main display you see when you log in Jira. Multiple dashboards can be created. A dashboard contain gadgets. To navigate to your dashboards. go to the Jira top-left icon → Dashboards.

Default Dashboard

All changes made to the default dashboard will also change the dashboards of all users currently using the default dashboard.

By the virtue of a mechanism I don't understand, the "default" Dashboard automatically shows a named, private dashboard I have created, instead of the system one. To clarify.

Gadget

Available Gadgets

Assigned to Me

Filter Results

Renders a saved filter.

Dashboard Operations

Issue

An issue is a unit of work that need to be done. The issue is the building block of any project.

An issue can have sub-tasks that can be assigned and tracked individually.

Operations:

Types

Story

A story is a software system requirement that is expressed in a few short sentences, ideally using non-technical language. In JIRA Agile, a story is represented as an issue, and individual tasks within the story are represented as #Sub-Task#sub-tasks.

Task

A task is a unit of work contained within a story. In JIRA Agile, individual tasks are represented as sub-task issues, and stories are represented as parent issues.

Bug

A bug is a problem which impairs or prevents the functions of the product.

Epic

Jira Epics Tutorial

Epic Operations

Sub-Task

A sub-task can be created for an issue to either split the issue into smaller chunks, or to allow various aspects of an issue to be assigned to different people.

Once broken down into sub-tasks, an issue cannot be resolved until all its sub-tasks are resolved.

However, if it is becoming obvious that a sub-task is holding up the resolution of an issue, that sub-task can be converted to an issue, which can be worked on independently of the original parent issue. The reverse is also true: if it is becoming obvious that an issue is really just a sub-task of a bigger issue, the issue can be converted into a sub-task of that issue.

Fields

Fields Reference

Also see

JQL

asignee

updated, updatedDate

updated

You need to be careful when using 'updated' in queries, as its semantics is actually "last update timestamp". If the issue was updated multiple times, only the last update timestamp is retained and counts in the query.

Relative time comparison. "Find issues that have been updated during the last day"

updated >= "-1d"

timeSpent

timeSpent

sprint

Designates the sprint the issue is associated with.

summary

summary ~ "BrowserTest" 

status

status = Open

resolved

Search for issues that were resolved on, before, or after a particular date (or date range). Note that if a time-component is not specified, midnight will be assumed.

Formats:

"yyyy/MM/dd HH:mm"
"yyyy-MM-dd HH:mm"
"yyyy/MM/dd"
"yyyy-MM-dd"
resolved > "2011/01/15" and resolved < "2011/01/16"

Ranking

Ranking an Issue

Ranking assigns a relative importance or urgency to an issue, compared with other issues.

Time Format

Also see Time Functions.

Absolute Time Format

'yyyy/MM/dd HH:mm'
'yyyy-MM-dd HH:mm'
'yyyy/MM/dd'
'yyyy-MM-dd'

Period Format

10m
10h
-5d
2w 2d

Backlog

The backlog is where sprints are planned.

Backlog Operations

Filter

Filter, named filter, custom filter.

https://confluence.atlassian.com/jirasoftwarecloud/advanced-searching-764478330.html

Custom Filters

Filters can be named and saved. To access saved filters: Diamond -> Issues and filters -> View all filters -> Filter by Owner dropdown box.

Examples of custom filters:

Filter Operations

JQL

Jira JQL

REST API

Jira REST API

Java API

Jira Java API