Einführung in die Jira Query Language für die Jira Suche

Das Projektmanagement-Tool von Atlassian, Jira, bietet Unternehmen eine beispiellose Fülle von Optionen, wenn es um Aufgabenverwaltung, Organisation und Terminplanung geht. Wenn Ihre Instanz jedoch immer mehr Vorgänge bzw. Tickets aufweist und Tausende von Epics, Bugs und Storys enthält, ist es an der Zeit, Ihren Ansatz zu ändern. Zunächst ist es einfach sich an bestimmte Themen zu erinnern und diese im Auge zu behalten. Früher oder später benötigen Ihre Teams jedoch ein Tool, mit dem Sie alle komplexen Informationen in Ihrer Jira Umgebung erfassen können. Deshalb ist die Suchfunktion so wichtig.

In diesem Artikel zeige ich, was die Jira Query Language (JQL) ist und wie Sie diese in Ihrem Unternehmen optimal nutzen können.

Durchführen einer einfachen Suche in Jira

Im Allgemeinen bietet Jira zwei einfache Suchoberflächen, mit denen Benutzer Probleme schnell finden können: das Suchfeld und die erweiterte Suche mit JQL (Jira Query Language).

Das Suchfeld

Sie finden es in der Menüleiste rechts oben neben Ihrem Benutzerprofil (Jira Server & Data Center). In der Cloud-Variante von Jira finden Sie das Suchfeld indem Sie auf die Lupe in der linken Navigationsleiste klicken. Benutzer können ein Schlüsselwort eingeben, um eine Schnellsuche basierend auf dem Schlüssel des Problems, der Zusammenfassung, den Kommentaren und der Beschreibung durchzuführen. Darüber hinaus können Sie die einfache Suchsyntax Smart Querying nutzen, die der Suchsyntax in Ihrem Google Mail-Posteingang ähnelt. Diese Funktion ist nützlich, wenn Sie das gewünschte Problem schnell finden möchten. Es ist jedoch nicht möglich, Details einzugeben, um Ihre Suchabfragen zu präzisieren.

jira suchfeld

Menüpunkt „Nach Vorgängen suchen“

Eine weitere Suchoberfläche ist der Menüpunkt „Nach Vorgängen suchen“. Sie können über den Navigationspunkt „Vorgänge“ darauf zugreifen. In der Basisversion können Benutzer Vorgänge anhand von Feldern filtern, die in ihrer Instanz verfügbar sind. Beachten Sie, dass diese Suchfunktion nicht auf die sehr kleine Anzahl von Feldern beschränkt ist, die Teil des oben beschriebenen Suchfelds sind.

Hier erfolgt die Filterung auf einer einfachen Benutzeroberfläche, die Dropdown-Listen und Eingabefelder enthält. Um Ihnen das Leben zu erleichtern, sind einige häufig verwendete Felder voreingestellt: Projekt, Vorgangstyp, Status und Bearbeiter. Sie können weitere Felder hinzufügen, indem Sie auf „Mehr“ klicken und die Felder auswählen, nach denen Sie suchen möchten.

jira suche - weitere informationen

Das Schlaue an dieser Funktionalität ist, dass die Filteroptionen für jedes Feld dynamisch aktualisiert werden, je nachdem, welchen Feldtyp Sie auswählen.

Auch wenn es weiter fortgeschritten ist als das einfache Suchfeld, hat diese Suchfunktion seine Einschränkungen. Hier kann JQL helfen.

Mit JQL in Jira suchen

Die Suchoberfläche „Nach Vorgängen suchen“ bietet ein leistungsfähigeres Suchwerkzeug für Benutzer: JQL. Klicken Sie auf „Erweitert“ und Sie erhalten ein großes Textfeld. Wenn Sie bereits mit einer einfachen Suche begonnen haben, werden diese Ergebnisse in das Feld eingetragen. Hier passiert die JQL-Magie.

Jira Query Language (JQL) ist im Grunde eine textbasierte Suchsprache, mit der Sie in Jira nach Problemen suchen können. Es verwendet eine für Menschen lesbare Syntax, um komplexere Logik und Operatoren zu liefern als die in der Basissuchfunktion verfügbaren.

Hier ein Beispiel, um Ihnen die Funktionsweise von JQL zu zeigen:

project = SCRUM AND (Reporter = admin  OR Assignee = admin)

Diese JQL-Anweisung ist ziemlich einfach. Sie benötigen keine technischen Kenntnisse, um es zu lesen und zu verstehen. Es enthält lediglich eine Liste der Probleme im SCRUM1-Projekt, deren Reporter (Ersteller) oder Assignee (Bearbeiter) dem User „Admin“ entspricht.

Die Abfrage ist sehr einfach, aber Sie können im Bildschirm „Suchprobleme“ nichts Ähnliches erstellen. Hier ist der Grund: die Standardsuche beschränkt die Verwendung von Keywords. Sie können weder AND noch OR in Ihre Suchanfrage einbeziehen. In JQL können Sie dies tun – und die Kombination dieser Schlüsselwörter ist in der Textsyntax viel einfacher darzustellen als in einer grafischen.

Die Syntaxstruktur von JQL

Wir können die JQL-Syntax in fünf Schlüsselelemente aufteilen: Fields, Operators, Values, Keywords und Functions.

  • Fields (Felder)v- verschiedene Arten von Informationen zu einem Issue in Jira. Es gibt einige Systemfelder wie z. B. Assignee, Reporter, Key oder Project. Zusätzlich gibt es auch benutzerdefinierte Felder, die von Ihrem Systemadministrator erstellt wurden. Die Suche bietet Ihnen hier eine automatische Vervollständigung für diese Felder. Dies erleichtert die Suche nach Feldern beim Erstellen eines JQL-Satzes erheblich.
  • Operators (Operatoren) – hierbei handelt es sich um Symbole, die logische Vergleiche darstellen, z. B. gleich (=), ungleich (! =), Größer als (>) oder ähnlich (~). Sie können sie verwenden, um eine logische Anweisung zu erstellen, bei der ein Feld mit einem Wert verglichen wird.
  • Values (Werte) – benutzerdefinierte Daten (eine Zeichenfolge, ein Datum oder eine Zahl). Sie können sie zum Vergleichen mit einem Feld verwenden, um eine Liste der Probleme zu erhalten.
  • Keywords (Schlüsselwörter) – spezielle Wörter, die Aktionen in JQL ausführen. Beispielsweise verbinden sie zwei oder mehr Wörter oder ändern die Logik einer Klausel.
  • Functions (Funktionen) – Berechnungen, mit denen Sie auf bestimmte Daten in Jira zugreifen können, die keine unterschiedlichen Felder oder statischen Werte darstellen. Eine Funktion kann Werte durch die Datumsberechnungen enthalten, wie z.B. den ersten Tag dieses Monats.

Durch Zusammenfügen dieser Elemente können Sie logische Klauseln erstellen, um bestimmte Mengen oder einzelne Issues zu finden.

Zum Beispiel ist hier eine Klausel, die ein Feld, einen Operator und einen Wert kombiniert:

Created >= 15.05.2019

In diesem Beispiel finden Sie alle Probleme, die am oder nach dem 15. Mai 2019 erstellt wurden. „Created“ fungiert als Feld, „>=“ ist ein Operator und „2019-05-15“ fungiert als Datumswert. Zusammen bilden sie eine komplexe Aussage, mit der Sie die benötigten Issues leicht finden können.

Die Schönheit von JQL liegt in seiner Flexibilität und Vielseitigkeit. Sie können diese Bausteine ​​auf verschiedene Arten kombinieren, um sehr komplexe Anweisungen zu erstellen.

All diese Elemente können auf vielfältige Weise zu sehr komplexen Aussagen kombiniert werden. Wenn Sie eine erweiterte JQL-Anweisung erstellen, fangen Sie klein an und bauen Sie sie nacheinander auf. Verknüpfen Sie mehrere Klauseln mit Schlüsselwörtern wie AND oder OR, um eine Aussage zu erhalten, die die gewünschten Ergebnisse liefert.

Komplexere JQL-Anweisungen

Versuchen Sie, eine JQL-Anweisung zu schreiben, die alle Issues anzeigt, die eine Beschreibung enthalten, in diesem Jahr erstellt wurden und Teil von Version 4.0 oder Version 5.0 waren oder als Priorität gekennzeichnet sind.

Die erste Bedingung, die wir in unsere Erklärung aufnehmen müssen, ist die Beschreibung. Wir suchen nur nach Problemen, bei denen das Beschreibungsfeld ausgefüllt ist. Also schreiben wir folgendes:

Description IS NOT EMPTY

Als nächstes müssen wir eine Klausel hinzufügen, die alle in diesem Jahr erstellten Ausgaben findet. Dazu müssen wir das Feld „created“ verwenden, den Operator „größer als“ oder „gleich“, den wir im vorherigen Beispiel verwendet haben (>=), und diese Funktion: startOfYear (). Wir müssen diese Klausel mit der Klausel kombinieren, die wir gerade mit dem AND-Schlüsselwort geschrieben haben.

Also bekommen wir jetzt diesen String:

Description IS NOT EMPTY AND created >= startOfYear()

Schließlich müssen wir eine OR-Klausel hinzufügen, mit der Probleme gefunden werden können, die entweder Teil von Version 4.0 oder Version 5.0 sind oder als Priorität gekennzeichnet sind.

Dazu verwenden wir das Feld „fixVersion“ mit „IN“ und einer Liste von Versionen. Und kombinieren Sie es dann mit einem OR-Schlüsselwort mit einer anderen Klausel, die Issues mit einer bestimmten Priorität findet. Diese letzte Prioritätsklausel ist eine einfache Klausel aus Feld + Operator + Wert.

So sieht es aus:

fixVersion in („Version 1.0“, „Version 2.0“) ODER priority = 1

Wir müssen es jetzt mit dem zuvor geschriebenen JQL-Anweisung kombinieren, um die vollständige Suchanfrage zu erstellen. Hier kommen Klammern ins Spiel. Es ist wichtig zu wissen, wie man sie verwendet, da sie die richtige Reihenfolge der Operationen in einer JQL-Anweisung sicherstellen.

In unserem Beispiel müssen wir sicherstellen, dass die letzte OR-Klausel vor den restlichen vorherigen AND-Klauseln verarbeitet wird. Die ersten beiden Klauseln sind verbindlich.

Die gesamte JQL-Anweisung sieht folgendermaßen aus:

description IS NOT EMPTY AND created>= startOfYear () AND (fixVersion in (‘Version 1.0’, ’Version 2.0’) OR priority = 1)

Zum Schluss

Dieser Artikel ist nur eine Einführung in JQL, die Jira-Benutzern viele weitere Optionen bietet. Wenn Sie mit der oben skizzierten Syntax vertraut sind, können Sie zu einer erweiterten Verwendung von JQL übergehen. Weitere Informationen zu JQL und seinen zahlreichen Verwendungsmöglichkeiten finden Sie auf dieser Seite in der Atlassian-Dokumentation.

Suchen Sie nach Jira-Experten, die Ihrem Unternehmen helfen, Jira optimal zu nutzen? Nehmen Sie Kontakt mit uns auf. Mit diesem unglaublich vielseitigen Projektmanagement-Tool helfen wir Unternehmen aus verschiedenen Branchen, ihre Ziele zu erreichen.

Kontaktanfrage Kurz
*