كانبان للمختبِرين

كانبان (Kanban) طريقة لإدارة العمل تجعل تدفقه مرئياً وتحدّ من كمية العمل الجاري في أي لحظة؛ ويصفه دليل كانبان (The Kanban Guide) بأنه استراتيجية لتحسين تدفق القيمة عبر عملية ما. كل عنصر عمل، مثل قصة مستخدم أو إصلاح عيب، بطاقةٌ على لوحة كانبان (Kanban board)، وأعمدة اللوحة هي الحالات التي يمر بها العمل، مثل «جاهز» (Ready) و«التطوير» (Develop) و«الاختبار» (Test) و«منجز» (Done).

ويمكن أن يحمل العمود حدّاً للعمل قيد التنفيذ (WIP limit). فإذا كان حدّ عمود «الاختبار» بطاقتين وفيه بطاقتان، فلا يدفع أحد إليه بطاقة ثالثة، بل يساعد الفريق على إنهاء إحداهما أولاً. وعلى خلاف Scrum، لا يفرض كانبان سبرنتات ولا أدواراً؛ يُسحب العمل باستمرار كلما توفرت سعة.

لماذا يهم

العمل الذي بدأ ولم ينتهِ يستهلك جهداً ولا يقدّم قيمة بعد، ويخفي عيوباً لم ينظر فيها أحد. ومن دون حدود، يواصل المطورون بدء قصص جديدة بينما يتكدّس الكود المنجز أمام الاختبار؛ فتصل الملاحظات متأخرة أياماً، ويبدو الاختبار عنق الزجاجة مع أن السبب في المراحل السابقة: بدأ الفريق عملاً أكثر مما ينبغي.

يجعل كانبان هذه المشكلة مرئية وقابلة للحل: فاللوحة تُظهر أين ينتظر العمل، وحدود العمل قيد التنفيذ تمنع الطوابير من النمو، ومقاييس التدفق تضع الحقائق مكان الانطباعات. ولأن الفريق يُنهي العمل قبل أن يبدأ غيره، يدعم كانبان أيضاً نهج الفريق الكامل (Whole-Team Approach) في منهج ISTQB CTFL v4.0، حيث الجودة مسؤولية الجميع لا مرحلة في النهاية.

اعرض العمل، وقيّد العمل الجاري، وأدِر التدفق

تلخّص الفرق كانبان غالباً في ثلاث عادات: اعرض العمل، وقيّد العمل قيد التنفيذ، وأدِر التدفق. ويجمع دليل كانبان الأفكار نفسها في ثلاث ممارسات: تعريف سير العمل وعرضه؛ والإدارة الفعلية للعناصر التي فيه، أي ضبط العمل قيد التنفيذ، ومنع العناصر من التقادم بلا داعٍ، وفكّ العمل المعطَّل؛ وتحسين سير العمل.

  • العرض: كل عمود حالة من حالات سير العمل، ويكتب الفريق متى يُعدّ العنصر قد بدأ ومتى يُعدّ قد انتهى. وتحدد السياسات الصريحة (Explicit policies) ما تحتاجه البطاقة قبل أن تنتقل، مثل «تدخل عمود الاختبار فقط بعد نشرها في بيئة الاختبار». ويجمع دليل كانبان هذه القرارات في «تعريف سير العمل» (Definition of Workflow)، الذي يحدد أيضاً كيف يُضبط العمل قيد التنفيذ، ويتضمن توقّع مستوى الخدمة (Service Level Expectation – SLE)، وهو تقدير للمدة التي ينبغي أن يستغرقها العنصر من البدء إلى الانتهاء، مبنيّ على أزمنة الدورة السابقة.
  • تقييد العمل الجاري: العمل قيد التنفيذ (WIP) هو عدد العناصر التي بدأت ولم تنتهِ، والحدّ الموضوع لكل عمود أو للوحة كلها هو سقفه.
  • السحب لا الدفع: لا تبدأ عنصراً إلا عند وجود إشارة واضحة إلى توفر سعة، مثل مكان شاغر تحت الحد. والعمود الممتلئ في المرحلة التالية يعني: ساعد هناك، ولا تبدأ شيئاً جديداً.
  • إدارة التدفق: لاحظ البطاقات التي توقفت عن الحركة، وأزِل ما يعيقها، وأنهِ الأقدم أولاً. وغيّر سياسة واحدة أو حدّاً واحداً في كل مرة، ثم تحقّق هل تحسّن التدفق.

الاختبار عموداً أم جودة مدمجة في العمل

كثيراً ما تتكوّن اللوحة الأولى من «قائمة المهام» (Backlog) و«التطوير» و«الاختبار» و«منجز». وهذا الترتيب يرسّخ التسليم من يد إلى يد: يعلن المطور أن البطاقة انتهت، وينقلها إلى «الاختبار»، ويبدأ القصة التالية. فيتحول عمود الاختبار إلى طابور، ويعيد العيبُ البطاقةَ إلى شخص منشغل الآن بعمل آخر.

أما دمج الجودة في العمل (Built-in quality) فيعني أن الاختبار يجري في كل عمود. ولا يفرض كانبان أعمدة بعينها، فهذه سياسات يتفق عليها الفريق:

  • «جاهز»: للبطاقة معايير قبول قابلة للاختبار، واتفق المطور والمختبِر على أفكار الاختبار الرئيسية.
  • «التطوير»: تُكتب اختبارات الوحدة وفحوص API مع الكود، ويستكشف المختبِر نسخ البناء (builds) المبكرة.
  • «الاختبار»: للعمود حدّ للعمل قيد التنفيذ، ويستطيع أي عضو في الفريق أن يسحب منه عمل اختبار أو يعمل مع المختبِر عملاً ثنائياً (pairing).
  • العيب الذي يُكتشف في بطاقة يُصلَح فيها قبل أن تنتقل؛ أما العيب في عمل منجز فيصبح بطاقة جديدة.
  • «منجز»: الإنجاز يشمل الاختبار، كما يفعل تعريف الإنجاز (Definition of Done) في Scrum.
لوحة كانبان بحدود عمل جارٍ 4 و3 و2: تُسحب البطاقة إلى مكان شاغر فقط، ويجري الاختبار في كل عمود، ويمتد زمن الدورة من «التطوير» إلى «منجز». نموذج مفاهيمي
  1. 1قائمة المهامطلبات لم يلتزم بها الفريق بعدبلا حدّ

    بوابة: تُسحب فقط حين يتوفر مكان في «جاهز»

  2. 2جاهزمعايير قبول قابلة للاختبار وأفكار اختبار متفق عليهاالحد 4

    بوابة: تُسحب فقط حين يتوفر مكان في «التطوير»

  3. 3التطويريبدأ عنصر العملاختبارات الوحدة وفحوص API تُكتب مع الكود، والمختبِر يستكشف نسخ البناء المبكرةالحد 3

    بوابة: تُسحب فقط حين يتوفر مكان في «الاختبار»

  4. 4الاختبارأي عضو في الفريق يسحب عمل الاختبار أو يعمل مع المختبِرالحد 2

    يتكرر: اكتُشف عيب: يُصلَح في هذه البطاقة قبل أن تنتقل

  5. 5منجزينتهي عنصر العملالإنجاز يشمل الاختبار

طوال الخطوات 3–5 زمن الدورة: من دخول «التطوير» (البدء) حتى الوصول إلى «منجز» (الانتهاء)

خارج التسلسل
  • زمن التسليميُحسب غالباً من الطلب في «قائمة المهام» حتى «منجز»، بما فيه الانتظار قبل بدء العمل
  • الإنتاجيةالبطاقات التي تصل إلى «منجز» كل أسبوع

لوحة توضيحية من المثال التطبيقي: كل فريق يعرّف أعمدته وحدوده وسياساته بنفسه.

جرّبها: مولّد معايير القبول جرّبها: قصة المستخدم ← سيناريوهات اختبار

مقاييس التدفق: العمل الجاري وزمن الدورة وزمن التسليم والإنتاجية

يسمّي دليل كانبان أربعة مقاييس للتدفق. ولا يحتاج كلٌّ منها إلا إلى تاريخَي بدء البطاقة وانتهائها، ويستطيع المختبِر قراءتهما من سجل اللوحة.

وهذه المقاييس مترابطة. ففي فترة مستقرة إلى حدّ معقول، يساوي متوسط زمن الدورة تقريباً متوسط العمل قيد التنفيذ مقسوماً على متوسط الإنتاجية، وهذا قانون ليتل (Little’s Law). فمع 10 بطاقات قيد التنفيذ و5 بطاقات منجزة أسبوعياً تستغرق البطاقة نحو أسبوعين؛ ومع 5 بطاقات قيد التنفيذ نحو أسبوع. فتقييد العمل الجاري يقصّر زمن الدورة دون أن يعمل أحد أسرع.

  • العمل قيد التنفيذ (WIP): عدد العناصر التي بدأت ولم تنتهِ، ويُعدّ في لحظة معينة.
  • زمن الدورة (Cycle Time): الزمن المنقضي من بدء العنصر حتى انتهائه.
  • عمر عنصر العمل (Work Item Age): الزمن المنقضي منذ بدء عنصر لم ينتهِ بعد. والبطاقة الأقدم من معظم البطاقات المنجزة، أو الأقدم من توقّع مستوى الخدمة (SLE)، تحتاج إلى مساعدة اليوم.
  • الإنتاجية (Throughput): عدد العناصر المنجزة في وحدة زمن، كالأسبوع.
  • زمن التسليم (Lead Time) غير معرّف في دليل كانبان. تستخدمه فرق كثيرة للمدة من الطلب حتى التسليم، بما فيها الانتظار قبل بدء العمل؛ وتعدّه فرق أخرى زمن الدورة نفسه. اتفقوا على نقطتي البدء والانتهاء قبل مقارنة الأرقام.

جرّبها: حاسبة الفرق بين التواريخ

مثال تطبيقي: فكّ طابور الاختبار

يعمل ثلاثة مطورين ومختبِر واحد دون حدود للعمل قيد التنفيذ. أنجزوا 12 بطاقة في الأسابيع الأربعة الأخيرة، أي إنتاجية 3 بطاقات أسبوعياً. ويوم الاثنين كانت 11 بطاقة قيد التنفيذ، ست منها في «الاختبار»، وعمر أقدمها 29 يوماً (اللوحة أدناه). وقد بقي العمل الجاري قريباً من هذا المستوى منذ أسابيع، فيشير قانون ليتل إلى متوسط زمن دورة يقارب ⁦11 / 3 ≈ 3.7⁩ أسابيع.

واستنتاج «على المختبِر أن يختبر أسرع» خاطئ: فطابور الاختبار عَرَضٌ لبدء عمل أكثر مما ينبغي. وهكذا يتصرف الفريق:

  • يضع حدوداً: 4 لعمود «جاهز» و3 لـ«التطوير» و2 لـ«الاختبار». تبدأ اللوحة فوق حدودها، فلا يبدأ أحد بطاقة جديدة حتى تعود تحتها.
  • ما دام عمود الاختبار ممتلئاً، يعمل المطورون مع المختبِر على أقدم البطاقات، ويضيفون فحوص API الناقصة، ويُصلحون العيوب في البطاقات التي اكتُشفت فيها.
  • وفي هذا المثال، بعد أربعة أسابيع صارت نحو 5 بطاقات قيد التنفيذ والإنتاجية من 3 إلى 4 بطاقات أسبوعياً، فصار قانون ليتل يشير إلى متوسط زمن دورة يقارب ⁦5 / 3.5 ≈ 1.4⁩ أسبوع.
BEFORE  (no WIP limits; 3 developers, 1 tester)
Ready   | Develop | Test              | Done
S-50    | S-44    | S-31   age 29 d   | 12 cards in the last 4 weeks
S-51    | S-45    | S-33   age 25 d   | throughput: 3 per week
        | S-46    | S-35   age 22 d   |
        | S-47    | S-38   age 18 d   |
        | S-48    | S-40   age 15 d   |
        |         | S-42   age 11 d   |
WIP = 5 + 6 = 11 cards  ->  average cycle time ~ 11 / 3 = 3.7 weeks

AFTER  (WIP limits in brackets)
Ready [4] | Develop [3] | Test [2] | Done
Policies: - while Test is full, nobody starts a new card: help finish one
          - a defect is fixed on the card where it was found
          - a card is Ready only with agreed acceptance criteria and test ideas

أخطاء شائعة

  • إدارة عمود الاختبار كأنه طابور تسليم بلا حدّ للعمل قيد التنفيذ.
  • كسر حدود العمل الجاري «لمرة واحدة فقط»: فالحد لا ينفع إلا إذا غيّر العمود الممتلئ ما يفعله الناس بعد ذلك.
  • مقارنة أزمنة الدورة دون نقطتي بدء وانتهاء متفق عليهما، أو الخلط بين زمن التسليم وزمن الدورة.
  • استخدام مقاييس التدفق للحكم على الأفراد، مثل «زمن دورة المختبِر»: فهي تصف نظام الفريق.
  • نقل بطاقة إلى «منجز» بينما ينتظر عيبها المعروف في قائمة المهام بطاقةً منفصلة.

من منظور ضمان الجودة

في فريق كانبان يعمل المختبِر على اللوحة، لا في مرحلة اختبار. وفي المراجعة اليومية للوحة ابدأ بالبطاقات الأقرب إلى «منجز» واسأل: أيّ بطاقة هي الأقدم، وما الذي يعيقها، ومن يستطيع المساعدة على إنهائها؟ وحين يبلغ عمود الاختبار حدّه، قل ذلك صراحةً واطلب من مطوّر أن يعمل معك بدلاً من أن يبدأ شيئاً جديداً.

سجّل ما يجعل التدفق مرئياً: علامة تعطّل مع سببها، وتاريخ بدء كل بطاقة، والعيوب مربوطة بالبطاقة التي اكتُشفت فيها. واحمل إلى نقاشات التحسين حقائق مثل عمر أقدم بطاقة أو اتجاه زمن الدورة، واقترح التغييرات على شكل تجارب: «لأسبوعين يكون حدّ الاختبار بطاقتين»، ثم قارن الأرقام.

تمرين عملي

اقرأ تدفق لوحة فريق

المطلوب

استخدم بيانات اللوحة أدناه. تبدأ البطاقة حين تدخل «التطوير» (Develop)؛ واحسب الأيام التقويمية بطرح تاريخ البدء من تاريخ الانتهاء (ويمكنك التحقق منها بأداة Date Difference Calculator).

المادة
Finished in the last two weeks (22 Sep to 5 Oct)
Card   Started (entered Develop)   Finished (entered Done)
P-11   15 Sep                      22 Sep
P-12   16 Sep                      26 Sep
P-14   18 Sep                      25 Sep
P-15   22 Sep                      2 Oct
P-17   24 Sep                      3 Oct
P-18   25 Sep                      1 Oct

Board on 6 Oct (no WIP limits; 3 developers, 1 tester)
Ready:    P-25, P-26
Develop:  P-21 (started 30 Sep), P-23 (started 2 Oct)
Test:     P-16 (started 19 Sep), P-19 (started 26 Sep),
          P-20 (started 29 Sep), P-22 (started 1 Oct)
الخطوات
  1. احسب زمن الدورة لكل بطاقة منجزة، ومتوسطه، والإنتاجية الأسبوعية.
  2. احسب العمل قيد التنفيذ الحالي وعمر كل بطاقة قيد التنفيذ في 6 أكتوبر.
  3. حدّد أين ينتظر العمل، وأيّ بطاقة تحتاج إلى المساعدة أولاً.
  4. اقترح حدوداً للعمل قيد التنفيذ، وسياستين صريحتين، والأرقام التي ستراقبها.
إظهار الإجابة النموذجية
الإجابة النموذجية

أزمنة الدورة بالأيام: P-11 = 7، وP-12 = 10، وP-14 = 7، وP-15 = 10، وP-17 = 9، وP-18 = 6؛ والمتوسط ⁦49 / 6 ≈ 8⁩ أيام. الإنتاجية: 6 بطاقات في أسبوعين، أي 3 أسبوعياً.

العمل قيد التنفيذ 6 بطاقات: اثنتان في «التطوير» وأربع في «الاختبار»؛ أما P-25 وP-26 فلم تبدآ بعد. الأعمار بالأيام: P-16 = 17، وP-19 = 10، وP-20 = 7، وP-21 = 6، وP-22 = 5، وP-23 = 4.

ينتظر العمل في «الاختبار» الذي يضم 4 من البطاقات الست قيد التنفيذ. وP-16 أقدم من أي بطاقة منجزة: اعرف اليوم ما الذي يعيقها، وساعد على إنهائها. ومع 6 بطاقات قيد التنفيذ و3 بطاقات منجزة أسبوعياً يشير قانون ليتل إلى نحو أسبوعين لكل بطاقة، فسيطول زمن الدورة إن لم يتغير شيء.

بداية معقولة: 2 لـ«الاختبار» و3 لـ«التطوير»، فيصبح سقف العمل قيد التنفيذ 5 بطاقات، أي أقل بواحدة من البطاقات الست الحالية. السياسات: ما دام عمود الاختبار ممتلئاً لا يبدأ أحد بطاقة جديدة، ويساعد المطورون في الاختبار أو في إصلاح العيوب هناك؛ ولا تدخل البطاقة «جاهز» إلا بمعايير قبول وأفكار اختبار متفق عليها. وراقب عمر أقدم بطاقة ومتوسط زمن الدورة والإنتاجية مدة أسبوعين إلى أربعة أسابيع.

أسئلة شائعة

هل يلغي كانبان مرحلة الاختبار؟

لا يفرض كانبان أي أعمدة؛ فكل فريق يعرّف سير عمله. وتُبقي فرق كثيرة عمود «الاختبار»، ولا بأس بذلك إن كان له حدّ للعمل قيد التنفيذ، وكان الفريق كله يسحب منه، وبدأ معظم الاختبار قبل وصول البطاقات إليه. ما يلغيه كانبان هو فكرة الاختبار دفعةً منفصلة في النهاية.

ما الفرق بين زمن التسليم وزمن الدورة؟

في دليل كانبان يمتد زمن الدورة من بدء العنصر حتى انتهائه. أما زمن التسليم فغير معرّف فيه، وتستخدمه الفرق عادةً للمدة الأطول من الطلب حتى التسليم، بما فيها الانتظار قبل بدء العمل. ولأن الاستخدام يختلف، اذكر دائماً نقطتي البدء والانتهاء.

كيف أختار حدّ العمل قيد التنفيذ؟

لا توجد معادلة. عُدّ ما في كل عمود اليوم، وضع حدوداً أقل من ذلك بقليل، واتفقوا على ما يفعله الناس حين يمتلئ العمود. ثم راجعوا الحدود بعد بضعة أسابيع بالاستناد إلى زمن الدورة وعمر عناصر العمل، وعدّلوها. فالحد الذي لا يُبلغ أبداً مرتفع جداً، والحد الذي يوقف العمل كله منخفض جداً.

هل يستطيع فريق Scrum استخدام كانبان؟

نعم. يمكن لفريق Scrum أن يحتفظ بالسبرنتات وهدف المنتج (Product Goal) وتعريف الإنجاز، ويضيف لوحة كانبان وحدود العمل قيد التنفيذ ومقاييس التدفق، لتُنجَز العناصر داخل السبرنت بدلاً من أن تبدأ كلها في اليوم الأول.

المراجع

  • The Kanban Guide (May 2025)Orderly Disruption Limited and Daniel S. Vacanti, Inc. · 2025Kanban كاستراتيجية لتحسين تدفق القيمة: تعريف سير العمل وإظهاره، وإدارة عناصره بنشاط، وتحسينه، ومقاييس التدفق الأربعة — العمل الجاري (WIP) والإنتاجية وعمر عنصر العمل وزمن الدورة.
  • ISTQB Certified Tester Foundation Level (CTFL) v4.0ISTQB · 2023المنهج التأسيسي لاختبار البرمجيات: مستويات الاختبار وأنواعه وتقنيات تصميم الاختبارات وإدارة الاختبار والأدوات.
  • Certified Tester Foundation Level Agile Tester (CTFL-AT)ISTQBامتداد ISTQB للمستوى التأسيسي حول الاختبار داخل فرق Agile؛ وهو في طور الإيقاف (امتحانات الإنجليزية متاحة حتى 6 مايو 2027) لصالح CTFL v4.0 وCTAL-AT.

تدرّب بأدوات متقن

احسب الفرق الدقيق بين تاريخين بالسنوات والأشهر والأيام والساعات والوحدات الإجمالية.

أدوات مساعدة

ولّد معايير قبول بصيغة Given/When/Then وقائمة تحقق لتعريف الإنجاز (Definition of Done) من قصة مستخدم.

تصميم الاختبارات

للتعمّق أكثر

تقدّمك في هذا الموضوع

جزء من مسار تعلم ضمان الجودة