# Jira Riferimento Rapido

*Issue, JQL, flussi di lavoro, board, sprint, filtri*

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

## Issue

### Tipi di Issue

| Command | Description |
|---------|-------------|
| `Epic` | Corpo di lavoro ampio; contiene storie |
| `Story` | Funzionalità o requisito orientato all'utente |
| `Task` | Unità di lavoro (tecnica o non tecnica) |
| `Bug` | Difetto o comportamento inatteso |
| `Sub-task` | Figlio di storia/task; non può esistere da solo |

### Campi dell'Issue

| Command | Description |
|---------|-------------|
| `Summary` | Titolo breve (obbligatorio) |
| `Description` | Dettagli, criteri di accettazione |
| `Assignee` | Persona responsabile |
| `Priority` | Highest / High / Medium / Low / Lowest |
| `Labels` | Tag liberi per il raggruppamento |
| `Components` | Sottosezioni del progetto (es. Backend, UI) |
| `Fix Version` | Release a cui è destinata questa issue |
| `Story Points` | Stima dello sforzo (Scrum) |

### Link tra Issue

| Command | Description |
|---------|-------------|
| `blocks / is blocked by` | Relazione di dipendenza |
| `clones / is cloned by` | Tracciamento duplicati |
| `relates to` | Associazione generale |
| `is caused by / causes` | Collegamento causa radice |

## Ricerca JQL

### Sintassi di Base

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

### Operatori

| Command | Description |
|---------|-------------|
| `=` | Corrispondenza esatta |
| `!=` | Non uguale |
| `in (a, b)` | Corrisponde a uno della lista |
| `not in (a, b)` | Esclude la lista |
| `~ "text"` | Contiene (ricerca testo) |
| `!~ "text"` | Non contiene |
| `is EMPTY` | Il campo non ha valore |
| `is not EMPTY` | Il campo ha un valore |
| `> < >= <=` | Confronto (date, numeri) |

### Funzioni Data

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

### Pattern JQL Utili

```
# 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
```

## Flussi di Lavoro

### Flusso di Lavoro Predefinito

| Command | Description |
|---------|-------------|
| `To Do` | Non avviato |
| `In Progress` | Lavoro in corso |
| `Done` | Completato |

### Flusso di Lavoro Esteso

| Command | Description |
|---------|-------------|
| `Open` | Creato, in attesa di triage |
| `In Progress` | In lavorazione attiva |
| `In Review` | Code review o QA |
| `Done` | Accettato e chiuso |
| `Reopened` | Restituito da Done |

### Concetti del Flusso

| Command | Description |
|---------|-------------|
| `Status` | Stato corrente di un'issue |
| `Transition` | Passaggio consentito tra stati |
| `Condition` | Chi può eseguire una transizione |
| `Validator` | Controlli prima dell'esecuzione della transizione |
| `Post Function` | Azione dopo la transizione (es. assegna) |
| `Resolution` | Motivo per cui l'issue è stata chiusa (Fixed, Won't Do) |

## Board

### Tipi di Board

| Command | Description |
|---------|-------------|
| `Scrum Board` | Basata sugli sprint; backlog, pianificazione, velocity |
| `Kanban Board` | Flusso continuo; limiti WIP, senza sprint |

### Colonne del Board

| Command | Description |
|---------|-------------|
| `Column` | Mappa a uno o più stati |
| `WIP Limit` | Numero massimo di issue nella colonna (Kanban) |
| `Swimlane` | Raggruppamento orizzontale (per epic, assegnatario, ecc.) |
| `Quick Filter` | Filtro toggle basato su JQL nel board |

### Configurazione del Board

| Command | Description |
|---------|-------------|
| `Filter` | Query JQL che definisce lo scope del board |
| `Estimation` | Story Points o Stima originale |
| `Card Layout` | Campi mostrati sulle card delle issue |
| `Card Colors` | Colore per priorità, assegnatario, query |

## Sprint

### Ciclo di Vita dello Sprint

| Command | Description |
|---------|-------------|
| `Create` | Nome + obiettivo e date opzionali |
| `Plan` | Trascina le issue dal backlog nello sprint |
| `Start` | Imposta la durata (tipicamente 1-4 settimane) |
| `Active` | Il team lavora sulle issue dello sprint |
| `Complete` | Sposta i task non completati al backlog o sprint successivo |

### Report Sprint

| Command | Description |
|---------|-------------|
| `Burndown Chart` | Lavoro rimanente vs tempo |
| `Sprint Report` | Completato vs non completato |
| `Velocity Chart` | Story point per sprint nel tempo |
| `Cumulative Flow` | Distribuzione degli stati nel tempo |

### JQL Sprint

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

## Filtri

### Creazione di Filtri

| Command | Description |
|---------|-------------|
| `Search` | Scrivi JQL nella ricerca issue |
| `Save As` | Salva JQL come filtro con nome |
| `Star` | Aggiungi il filtro ai preferiti per accesso rapido |
| `Subscription` | Invia i risultati del filtro via email secondo pianificazione |

### Condivisione e Permessi

| Command | Description |
|---------|-------------|
| `Private` | Solo tu puoi vedere il filtro |
| `Group` | Condividi con un gruppo specifico |
| `Project` | Condividi con i membri del progetto |
| `Public` | Qualsiasi utente autenticato |
| `Edit Permissions` | Controlla chi può modificare il filtro |

### Dashboard

| Command | Description |
|---------|-------------|
| `Filter Results` | Gadget che mostra issue da un filtro |
| `Pie Chart` | Ripartizione per campo (priorità, assegnatario) |
| `Two Dimensional` | Matrice X/Y (es. priorità vs stato) |
| `Activity Stream` | Attività recente del progetto |

## Scorciatoie

### Navigazione Globale

| Command | Description |
|---------|-------------|
| `g then d` | Vai alla dashboard |
| `g then b` | Vai al board |
| `g then i` | Vai alla ricerca issue |
| `/` | Ricerca rapida |
| `c` | Crea issue |
| `?` | Mostra scorciatoie da tastiera |

### Vista Issue

| Command | Description |
|---------|-------------|
| `a` | Assegna a me |
| `m` | Commenta |
| `l` | Modifica etichette |
| `e` | Modifica issue |
| `j / k` | Issue successiva / precedente nella lista |
| `o` | Apri l'issue selezionata |

### Scorciatoie Board

| Command | Description |
|---------|-------------|
| `1-9` | Sposta issue nella colonna 1-9 |
| `t` | Attiva/disattiva vista dettaglio |
| `n` | Card successiva |
| `p` | Card precedente |

## Pattern Comuni

### Template Segnalazione Bug

| Command | Description |
|---------|-------------|
| `Summary` | [Componente] Breve descrizione del bug |
| `Steps to Reproduce` | Passi numerati per riprodurre il problema |
| `Expected` | Cosa dovrebbe accadere |
| `Actual` | Cosa accade realmente |
| `Environment` | OS, browser, versione, ecc. |
| `Severity` | Blocker / Critical / Major / Minor / Trivial |

### Formato Story

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

### Operazioni in Massa

| Command | Description |
|---------|-------------|
| `Search → Select All` | Seleziona issue dai risultati di ricerca |
| `Bulk Change` | Modifica, transiziona o elimina in batch |
| `CSV Export` | Esporta i risultati di ricerca per i report |
| `Board drag` | Trascina issue tra colonne/sprint |
