JQL چیست و چرا مهم است؟
JQL (Jira Query Language) یک زبان پرسوجوی انعطافپذیر است که برای جستجو و فیلتر کردن دادهها در ابزار مدیریت پروژه Jira به کار میرود. Jira یکی از محبوبترین ابزارهای مدیریت پروژه به خصوص در تیمهای نرمافزاری است. JQL به مدیران و اعضای تیمها امکان میدهد تا به صورت دقیقتر و بهینهتر به اطلاعات پروژههای خود دسترسی پیدا کنند و گزارشات سفارشی ایجاد کنند.
نقش اصلی JQL در جیرا، فیلتر کردن وظایف (Issues) است. در محیطهای پیچیده پروژه که صدها یا هزاران وظیفه وجود دارد، امکان دارد که پیدا کردن اطلاعات دقیق و مورد نیاز دشوار باشد. JQL این مشکل را با ارائه دستورات قدرتمندی که بر اساس معیارهای مختلف (مانند وضعیت، اولویت، مسئول، و غیره) عمل میکنند، حل میکند.

بیشتر بخوانید: AQL چیست؟
مفاهیم پایهای JQL
Jira Query Language به گونهای طراحی شده است که هر کسی که با Jira کار میکند بتواند از آن استفاده کند. با اینکه JQL شباهتهایی به SQL دارد، اما بسیار سادهتر و قابل دسترستر است.
ساختار دستورات JQL معمولاً شامل یک فیلد، یک عملگر و یک مقدار است. برای مثال، اگر بخواهید تمام وظایف با اولویت “بالا” را پیدا کنید، میتوانید از دستور زیر استفاده کنید:
priority = High
این ساختار ساده، JQL را به ابزاری کارآمد برای جستجوی دادهها در پروژهها تبدیل میکند. برخی از عملگرهای رایج در JQL شامل =, !=, >, <, in و not in میشوند. این عملگرها برای تعریف دقیقتر شرایط جستجو به کار میروند.
بیشتر بخوانید: نحوه ایجاد فیلترهای سفارشی برای برد Jira

ساختار دستورات JQL
دستورات JQL از سه جزء اصلی تشکیل شدهاند:
- فیلد: یک عنصر از دادهها مانند
priority،statusیاassignee. - عملگر: نحوه مقایسه یا رابطه بین فیلد و مقدار. برای مثال
=(برابر با)،!=(مخالف). - مقدار: مقدار خاصی که با فیلد و عملگر مرتبط میشود.
به عنوان مثال:
status = "In Progress"
این پرسوجو تمام وظایفی را که در وضعیت “در حال انجام” هستند برمیگرداند.
پرسوجوهای ترکیبی
برای جستجوی پیچیدهتر، میتوانید از عملگرهای منطقی مانند AND, OR و NOT استفاده کنید. به عنوان مثال:
status = "In Progress" AND priority = High
این پرسوجو تمام وظایف با وضعیت “در حال انجام” و اولویت “بالا” را برمیگرداند.

کاربردهای عملی JQL در پروژههای نرمافزاری
با توجه به قابلیتهای گسترده JQL، میتوانید آن را در بسیاری از سناریوهای عملی استفاده کنید:
جستجوی وظایف بر اساس وضعیت: به عنوان مثال، میتوانید تمام وظایف باز (Open)، بسته (Closed) یا در حال انجام (In Progress) را جستجو کنید.
status = Open
جستجوی وظایف بر اساس مسئولیت: میتوانید وظایفی که به یک شخص خاص اختصاص داده شدهاند را فیلتر کنید.
assignee = "Ali"
فیلتر کردن وظایف بر اساس برچسبها: اگر از برچسبها برای دستهبندی وظایف استفاده میکنید، میتوانید آنها را نیز جستجو کنید.
labels = "UI"
با ترکیب این فیلدها و عملگرها، میتوانید پرسوجوهای پیچیدهتری ایجاد کنید و به دادههای دقیقی در پروژههای خود دست یابید.
بیشتر بخوانید: معرفی نرم افزار Jira
چگونه از JQL برای بهبود فرآیندهای مدیریت پروژه استفاده کنیم؟
استفاده از JQL به شما این امکان را میدهد که فرآیندهای مدیریت پروژه خود را بهبود بخشید. برخی از کاربردهای کلیدی عبارتند از:
بهینهسازی گردشکار (Workflow): میتوانید از JQL برای بررسی وظایف در هر مرحله از فرآیند استفاده کنید و گردشکار پروژهها را بهبود بخشید.
بیشتر بخوانید: گردش کار یا Workflow در نرم افزار جیرا چیست؟
status = "To Do" AND priority = High
ایجاد گزارشات سفارشی: با استفاده از JQL، میتوانید گزارشاتی ایجاد کنید که اطلاعات خاصی را نشان میدهند و به شما در تحلیل پروژهها کمک میکنند.
assignee = "Ali" AND status != Done
مثالهای پیشرفته از JQL
در این بخش به مثالهای پیشرفتهتر از JQL و نحوه استفاده از آن برای گزارشات و داشبوردهای سفارشی میپردازیم.
پرسوجوهای زمانبندیشده: برای مثال، تمام وظایفی که در هفته گذشته ایجاد شدهاند.
created >= startOfWeek()
پرسوجو بر اساس تاریخ تحویل: اگر میخواهید تمام وظایف با تاریخ تحویل مشخص را پیدا کنید:
due <= "2023-12-31"
با خرید نسخه کرک شده نرم افزار جیرا (Jira) با پرداخت مبلغ کمتر از 1% ارزش واقعی این نرم افزار، به تمام امکانات نرم افزار Jira دسترسی خواهید داشت!
سوالات متداول AQL
JQL چه تفاوتی با SQL دارد؟
JQL زبان پرسوجوی مخصوص Jira است و بر خلاف SQL برای جستجوی دادهها در پایگاههای داده مورد استفاده قرار نمیگیرد، بلکه برای فیلتر کردن اطلاعات در پروژههای Jira طراحی شده است.
آیا برای استفاده از JQL به مهارتهای برنامهنویسی نیاز است؟
خیر، JQL بسیار سادهتر از زبانهای برنامهنویسی است و با یادگیری چند قانون ساده، میتوانید به راحتی از آن استفاده کنید.
بهترین راه برای یادگیری JQL چیست؟
مطالعه مستندات Jira و انجام تمرینهای عملی در پروژههای واقعی بهترین روش برای یادگیری JQL است.
آیا JQL میتواند با سایر سیستمهای مدیریت پروژه ترکیب شود؟
به طور خاص برای Jira طراحی شده است و به صورت مستقیم با سیستمهای دیگر ترکیب نمیشود، اما برخی از ابزارهای جانبی امکان ترکیب با سایر سیستمها را فراهم میکنند.