# Referensi Cepat Jira

*Issue, JQL, workflow, board, sprint, filter*

> Source: Jira Documentation (support.atlassian.com) · MIT

## Issue

### Tipe Issue

| Command | Description |
|---------|-------------|
| `Epic` | Pekerjaan besar; berisi story |
| `Story` | Fitur atau persyaratan yang menghadap pengguna |
| `Task` | Unit pekerjaan (teknis atau non-teknis) |
| `Bug` | Cacat atau perilaku tidak terduga |
| `Sub-task` | Anak dari story/task; tidak bisa berdiri sendiri |

### Field Issue

| Command | Description |
|---------|-------------|
| `Summary` | Judul singkat (wajib) |
| `Description` | Detail, kriteria penerimaan |
| `Assignee` | Orang yang bertanggung jawab |
| `Priority` | Highest / High / Medium / Low / Lowest |
| `Labels` | Tag bebas untuk pengelompokan |
| `Components` | Bagian project (mis. Backend, UI) |
| `Fix Version` | Rilis yang ditargetkan issue ini |
| `Story Points` | Estimasi usaha (Scrum) |

### Tautan Issue

| Command | Description |
|---------|-------------|
| `blocks / is blocked by` | Hubungan dependensi |
| `clones / is cloned by` | Pelacakan duplikat |
| `relates to` | Asosiasi umum |
| `is caused by / causes` | Tautan akar penyebab |

## Pencarian JQL

### Sintaks Dasar

```
project = MYPROJ AND status = "In Progress"
assignee = currentUser() AND resolution = Unresolved
priority in (High, Highest) ORDER BY created DESC
```

### Operator

| Command | Description |
|---------|-------------|
| `=` | Kecocokan tepat |
| `!=` | Tidak sama |
| `in (a, b)` | Cocokkan salah satu dalam daftar |
| `not in (a, b)` | Kecualikan daftar |
| `~ "text"` | Mengandung (pencarian teks) |
| `!~ "text"` | Tidak mengandung |
| `is EMPTY` | Field tidak memiliki nilai |
| `is not EMPTY` | Field memiliki nilai |
| `> < >= <=` | Perbandingan (tanggal, angka) |

### Fungsi Tanggal

```
created >= -7d                       # last 7 days
due <= endOfWeek()                   # due this week
updated >= startOfMonth()            # updated this month
created >= "2025-01-01"              # since specific date
```

### Pola JQL Berguna

```
# Stale issues
status != Done AND updated <= -30d
# My open bugs
assignee = currentUser() AND type = Bug AND resolution = Unresolved
# Sprint scope
sprint in openSprints() AND project = MYPROJ
```

## Workflow

### Workflow Default

| Command | Description |
|---------|-------------|
| `To Do` | Belum dimulai |
| `In Progress` | Sedang dikerjakan |
| `Done` | Selesai |

### Workflow Extended

| Command | Description |
|---------|-------------|
| `Open` | Dibuat, menunggu triage |
| `In Progress` | Sedang aktif dikerjakan |
| `In Review` | Code review atau QA |
| `Done` | Diterima dan ditutup |
| `Reopened` | Dikembalikan dari Done |

### Konsep Workflow

| Command | Description |
|---------|-------------|
| `Status` | State saat ini dari sebuah issue |
| `Transition` | Perpindahan yang diizinkan antar status |
| `Condition` | Siapa yang bisa melakukan transisi |
| `Validator` | Pemeriksaan sebelum transisi dijalankan |
| `Post Function` | Aksi setelah transisi (mis. assign) |
| `Resolution` | Alasan issue ditutup (Fixed, Won't Do) |

## Board

### Tipe Board

| Command | Description |
|---------|-------------|
| `Scrum Board` | Berbasis sprint; backlog, perencanaan sprint, velocity |
| `Kanban Board` | Aliran kontinu; batas WIP, tanpa sprint |

### Kolom Board

| Command | Description |
|---------|-------------|
| `Column` | Memetakan ke satu atau lebih status |
| `WIP Limit` | Maks issue di kolom (Kanban) |
| `Swimlane` | Pengelompokan horizontal (per epic, assignee, dll.) |
| `Quick Filter` | Filter toggle berbasis JQL di board |

### Konfigurasi Board

| Command | Description |
|---------|-------------|
| `Filter` | Query JQL yang mendefinisikan cakupan board |
| `Estimation` | Story Points atau Original Estimate |
| `Card Layout` | Field yang ditampilkan di kartu issue |
| `Card Colors` | Warna berdasarkan prioritas, assignee, query |

## Sprint

### Siklus Hidup Sprint

| Command | Description |
|---------|-------------|
| `Create` | Nama + tujuan opsional dan tanggal |
| `Plan` | Seret issue dari backlog ke sprint |
| `Start` | Atur durasi (1-4 minggu tipikal) |
| `Active` | Tim mengerjakan issue sprint |
| `Complete` | Pindahkan item yang belum selesai ke backlog atau sprint berikutnya |

### Laporan Sprint

| Command | Description |
|---------|-------------|
| `Burndown Chart` | Sisa pekerjaan vs waktu |
| `Sprint Report` | Selesai vs tidak selesai |
| `Velocity Chart` | Story points per sprint dari waktu ke waktu |
| `Cumulative Flow` | Distribusi status dari waktu ke waktu |

### JQL Sprint

```
sprint in openSprints()              # current sprint
sprint in futureSprints()            # upcoming sprints
sprint = "Sprint 12"                 # specific sprint
sprint in closedSprints() AND resolution = Unresolved
```

## Filter

### Membuat Filter

| Command | Description |
|---------|-------------|
| `Search` | Tulis JQL di pencarian issue |
| `Save As` | Simpan JQL sebagai filter bernama |
| `Star` | Bintangi filter untuk akses cepat |
| `Subscription` | Email hasil filter sesuai jadwal |

### Berbagi & Izin

| Command | Description |
|---------|-------------|
| `Private` | Hanya Anda yang bisa melihat filter |
| `Group` | Bagikan dengan grup tertentu |
| `Project` | Bagikan dengan anggota project |
| `Public` | Pengguna yang sudah login |
| `Edit Permissions` | Kontrol siapa yang bisa mengubah filter |

### Dashboard

| Command | Description |
|---------|-------------|
| `Filter Results` | Gadget yang menampilkan issue dari filter |
| `Pie Chart` | Rincian berdasarkan field (prioritas, assignee) |
| `Two Dimensional` | Matriks X/Y (mis. prioritas vs status) |
| `Activity Stream` | Aktivitas project terbaru |

## Pintasan

### Navigasi Global

| Command | Description |
|---------|-------------|
| `g then d` | Pergi ke dashboard |
| `g then b` | Pergi ke board |
| `g then i` | Pergi ke pencarian issue |
| `/` | Pencarian cepat |
| `c` | Buat issue |
| `?` | Tampilkan pintasan keyboard |

### Tampilan Issue

| Command | Description |
|---------|-------------|
| `a` | Assign ke saya |
| `m` | Komentar |
| `l` | Edit label |
| `e` | Edit issue |
| `j / k` | Issue berikutnya / sebelumnya dalam daftar |
| `o` | Buka issue yang dipilih |

### Pintasan Board

| Command | Description |
|---------|-------------|
| `1-9` | Pindahkan issue ke kolom 1-9 |
| `t` | Toggle tampilan detail |
| `n` | Kartu berikutnya |
| `p` | Kartu sebelumnya |

## Pola Umum

### Template Laporan Bug

| Command | Description |
|---------|-------------|
| `Summary` | [Komponen] Deskripsi singkat bug |
| `Steps to Reproduce` | Langkah bernomor untuk memicu issue |
| `Expected` | Apa yang seharusnya terjadi |
| `Actual` | Apa yang sebenarnya terjadi |
| `Environment` | OS, browser, versi, dll. |
| `Severity` | Blocker / Critical / Major / Minor / Trivial |

### Format Story

```
As a [role],
I want [action],
so that [benefit].
---
Acceptance Criteria:
- [ ] Criterion 1
- [ ] Criterion 2
```

### Operasi Massal

| Command | Description |
|---------|-------------|
| `Search → Select All` | Pilih issue dari hasil pencarian |
| `Bulk Change` | Edit, transisi, atau hapus secara massal |
| `CSV Export` | Ekspor hasil pencarian untuk pelaporan |
| `Board drag` | Seret issue antar kolom/sprint |
