Scrum للمختبِرين

سكرم (Scrum) إطار عمل خفيف يسلّم فيه فريق صغير المنتج على دورات ثابتة الطول تسمى السبرنتات (Sprints)، مدة كل منها شهر أو أقل. ويعرّفه دليل Scrum لعام ⁦2020⁩ من خلال ثلاث مسؤوليات (Accountabilities)، وخمسة أحداث (Events) هي السبرنت والأحداث الأربعة داخله، وثلاثة مخرجات (Artifacts) لكل منها التزام، مثل تعريف الإنجاز (Definition of Done).

والمختبِر في Scrum واحد من المطورين. ففي سبرنت مدته أسبوعان لتطبيق توصيل طعام، لا ينتظر «مرحلة اختبار»، بل يطرح أسئلته عن القصة قبل السبرنت، ويخطط اختباراتها في تخطيط السبرنت (Sprint Planning)، ويختبرها في يوم بنائها، ويساعد في الحكم على اكتمالها.

لماذا يهم

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

ومعرفة Scrum بدقة تخبرك أين تتصرف: أسئلة قواعد العمل في التنقيح (Refinement)، وبيئة الاختبار المعطلة في Scrum اليومي (Daily Scrum)، ومشكلة الجودة المتكررة في المراجعة الاستعادية (Sprint Retrospective). ويمنحك تعريف الإنجاز معياراً للجودة اتفق عليه الفريق كله.

المسؤوليات والمخرجات والتزاماتها

يتحدث دليل Scrum لعام ⁦2020⁩ عن مسؤوليات لا عن مسميات وظيفية. ففريق Scrum مكوّن من مالك منتج (Product Owner) واحد وScrum Master واحد ومطورين (Developers)، وعادةً لا يتجاوز ⁦10⁩ أشخاص، بلا فرق فرعية؛ فلا يوجد داخله فريق اختبار منفصل. ولكل من مخرجاته الثلاثة التزام. فقائمة مهام المنتج (Product Backlog)، وهي القائمة المرتبة لما يحتاجه المنتج، التزامها هدف المنتج (Product Goal)، أي الهدف طويل المدى للفريق. وقائمة مهام السبرنت (Sprint Backlog)، وهي العناصر المختارة للسبرنت وخطة المطورين لتسليمها، التزامها هدف السبرنت (Sprint Goal)، أي الهدف الوحيد للسبرنت. والزيادة (Increment)، وهي خطوة قابلة للاستخدام ومتحقَّق منها بدقة نحو هدف المنتج، التزامها تعريف الإنجاز.

أما تنقيح قائمة مهام المنتج (Product Backlog refinement)، أي تجزئة العناصر وإضافة التفاصيل والترتيب والحجم إليها، فنشاط مستمر وليس حدثاً، وفيه تكون أسئلة المختبِر أرخص ما تكون. وهذا ما تعنيه كل مسؤولية لك:

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

ما يفعله المختبِر في كل حدث

يحتوي السبرنت على أحداث Scrum الأربعة الأخرى، ومدته شهر أو أقل، ويبدأ السبرنت التالي فور انتهائه. ومدة Scrum اليومي ⁦15⁩ دقيقة دائماً؛ أما المدد الأخرى أدناه فهي الحد الأقصى لسبرنت مدته شهر، وفي السبرنتات الأقصر تكون هذه الأحداث عادةً أقصر.

سبرنت واحد في مسارين: تنقيح قائمة مهام المنتج، والأحداث الأربعة داخل السبرنت بمددها، والعمل اليومي، ومع كل منها ما يفعله المختبِر فيه. نموذج مفاهيمي
  1. حدث Scrum أو نشاطه:
    1تنقيح قائمة مهام المنتجنشاط مستمر وليس حدثاًتجزئة العناصر وإضافة التفاصيل والترتيب والحجم
    ما يفعله المختبِر:
    اسأل ووضّحالقواعد والحالات الطرفية والمخاطر: هل كل عنصر قابل للاختبار؟
  2. حدث Scrum أو نشاطه:
    2تخطيط السبرنتحتى ⁦8⁩ ساعاتلماذا وماذا وكيف: هدف السبرنت والعناصر والخطة
    ما يفعله المختبِر:
    خطّط للاختبارمهام الاختبار وبياناته والبيئات ونطاق الانحدار في قائمة مهام السبرنت
  3. حدث Scrum أو نشاطه:
    3Scrum اليومي⁦15⁩ دقيقة كل يوم عمليفحص المطورون التقدم نحو هدف السبرنت
    ما يفعله المختبِر:
    اجعل الاختبار مرئياًما اختُبر وما المعطّل وما ينتظر الاختبار
  4. حدث Scrum أو نشاطه:
    4العمل داخل السبرنتكل أيام السبرنتيحوّل المطورون العناصر المختارة إلى عمل منجَز
    ما يفعله المختبِر:
    اختبر باستمرارعمل ثنائي وأتمتة واستكشاف وتقارير عيوب واختبارات تأكيد وانحدار
  5. حدث Scrum أو نشاطه:
    5مراجعة السبرنتحتى ⁦4⁩ ساعاتعرض النتائج على أصحاب المصلحة الرئيسيين والاتفاق على الخطوات التالية
    ما يفعله المختبِر:
    شارك الأدلةما اختُبر والمخاطر المعروفة وتسجيل الملاحظات
  6. حدث Scrum أو نشاطه:
    6المراجعة الاستعاديةحتى ⁦3⁩ ساعات؛ وبها ينتهي السبرنتفحص الأفراد والتفاعلات والعمليات والأدوات وتعريف الإنجاز
    ما يفعله المختبِر:
    اقترح تحسيناًمدعوماً بأدلة: عيوب متسربة ووقت انتظار واختبارات متقلبة

طوال الخطوات 1–6 يجري كل ذلك داخل السبرنت، ومدته شهر أو أقل؛ ويبدأ السبرنت التالي فور انتهائه.

مدة Scrum اليومي ⁦15⁩ دقيقة دائماً؛ أما المدد الأخرى فهي الحد الأقصى لسبرنت مدته شهر، وفي السبرنتات الأقصر تكون هذه الأحداث عادةً أقصر.

  • تخطيط السبرنت (Sprint Planning)، حتى ⁦8⁩ ساعات: يقرر الفريق لماذا هذا السبرنت ذو قيمة، وما الذي يمكن إنجازه، وكيف. أدخِل الاختبار في «كيف»: مهام الاختبار وبياناته والبيئات ونطاق الانحدار.
  • Scrum اليومي (Daily Scrum)، ⁦15⁩ دقيقة كل يوم عمل للمطورين: لفحص التقدم نحو هدف السبرنت وتكييف الخطة. قل ما الذي اختُبر، وما المعطَّل، وما الذي ينتظر الاختبار.
  • أثناء السبرنت: اختبر كل عنصر فور جاهزيته لا دفعةً واحدة في النهاية. اعمل مع المطورين في أزواج، وأتمت الفحوص، واستكشف، وأبلغ عن العيوب، ونفّذ اختبارات التأكيد والانحدار.
  • مراجعة السبرنت (Sprint Review)، حتى ⁦4⁩ ساعات: يعرض الفريق نتائجه على أصحاب المصلحة الرئيسيين ويتفقون على الخطوة التالية. شارك ما اختُبر والمخاطر المعروفة، وتأكد من وصول الملاحظات إلى قائمة مهام المنتج.
  • المراجعة الاستعادية (Sprint Retrospective)، حتى ⁦3⁩ ساعات: يفحص الفريق الأفراد والتفاعلات والعمليات والأدوات وتعريف الإنجاز. أحضر أدلة، مثل العيوب المتسربة أو مدد الانتظار، واقترح تحسيناً واحداً محدداً، وقد يدخل قائمة مهام السبرنت التالي.

جرّبها: مولّد الاختبار المبني على المخاطر جرّبها: مولّد سيناريوهات الانحدار

تعريف الإنجاز والمختبِر

تعريف الإنجاز (Definition of Done) وصف رسمي لحالة الزيادة حين تستوفي مقاييس الجودة المطلوبة للمنتج. فالعنصر الذي يستوفيه يصبح جزءاً من الزيادة، أما الذي لا يستوفيه فلا يجوز إصداره ولا حتى عرضه في مراجعة السبرنت، بل يعود إلى قائمة مهام المنتج. وتعريف الإنجاز المعتمد في المؤسسة حدٌّ أدنى لكل فرقها؛ فإن لم يوجد وضع الفريق تعريفه الخاص.

ويشير منهج ISTQB للمستوى التأسيسي (الإصدار ⁦4.0⁩) إلى أن الفرق الرشيقة تسمي معايير الخروج غالباً تعريف الإنجاز. ويساعد المختبِر في جعل التعريف قابلاً للتحقق، ويطبّقه بأمانة، ويقترح تعديله في المراجعة الاستعادية. وقد يبدو تعريف الإنجاز لمنتج ويب ثنائي اللغة هكذا:

  • التحقق من معايير القبول في بيئة الاختبار.
  • نجاح الفحوص الآلية للسلوك الجديد في خط التسليم (Pipeline).
  • نجاح اختبارات الانحدار للمناطق المتأثرة.
  • لا عيوب مفتوحة على العنصر بخطورة حاجب (Blocker) أو حرج (Critical).
  • فحص الشاشات العربية والإنجليزية، بما في ذلك التخطيط من اليمين إلى اليسار.

جرّبها: مولّد معايير القبول

مثال تطبيقي: قصة واحدة عبر سبرنت مدته أسبوعان

يعمل فريق تطبيق لتوصيل الطعام بسبرنتات مدتها أسبوعان، وهدف السبرنت: «يستطيع العملاء العائدون إعادة طلب سابق بلمستين». وهي قصة تشبه قصة إعادة الطلب في تمرين درس Agile للمختبِرين؛ وهنا تتبّع أين يقع كل جزء من عمل المختبِر في Scrum، بالترتيب:

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

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

أخطاء شائعة

  • إدارة السبرنت كشلال مصغّر: البناء أولاً، والاختبار في الأيام الأخيرة، وترحيل العناصر غير المختبَرة.
  • إعلان إنجاز عنصر لأن الكود دُمج، وبنود تعريف الإنجاز ما زالت مفتوحة.
  • استخدام Scrum اليومي لتقارير الحالة أو لنقاشات طويلة عن العيوب بدلاً من فحص التقدم نحو هدف السبرنت.
  • الخلط بين تعريف الإنجاز ومعايير القبول، أو الاحتفاظ بقائمة فحص خاصة بدلاً من تحسين تعريف الإنجاز لدى الفريق.
  • معاملة الجودة كمسؤولية المختبِر وحده؛ ففي Scrum كل مطوّر مسؤول عنها من خلال تعريف الإنجاز.

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

في فريق Scrum أنت «مطوّر» تخصصه الاختبار: اتفق مع مالك المنتج على معايير القبول والمخاطر، ومع المطورين على قابلية الاختبار والأتمتة، ومع Scrum Master على إزالة العوائق. وسجّل ملاحظات الاختبار والعيوب على عنصر القائمة نفسه لتكون حالته الحقيقية مرئية للجميع.

واسأل في كل سبرنت: هل يمكن بناء هذا العنصر واختباره داخل السبرنت، وما البيانات والبيئة التي يحتاجها، وماذا قد يكسر؟ وإذا لم يستوفِ عنصرٌ تعريف الإنجاز في اليوم الأخير فقل ذلك: إنه يعود إلى قائمة مهام المنتج.

تمرين عملي

خطّط اختبارك عبر سبرنت واحد

المطلوب

يُبنى تطبيق ويب لحجز مواعيد عيادة بسبرنتات مدتها أسبوع. والقصة: «بصفتي مريضاً، أريد إلغاء موعدي عبر الإنترنت حتى لا أضطر إلى الاتصال بالعيادة». ومعايير القبول: يمكن إلغاء موعد قادم من صفحة «مواعيدي»، ولا يُسمح بالإلغاء قبل الموعد بأقل من ⁦24⁩ ساعة.

وتعريف الإنجاز لدى الفريق: التحقق من معايير القبول؛ ونجاح الفحوص الآلية؛ ولا عيوب مفتوحة بخطورة حاجب أو حرج؛ وفحص الصفحات العربية والإنجليزية. اكتب ما ستفعله كمختبِر في التنقيح وفي كل حدث، ثم اقترح تحسيناً واحداً لتعريف الإنجاز.

الخطوات
  1. التنقيح: اكتب الأسئلة التي تتركها معايير القبول بلا إجابة.
  2. تخطيط السبرنت: اذكر مهام الاختبار وبياناته ونطاق الانحدار التي ستضيفها إلى الخطة.
  3. Scrum اليومي ومراجعة السبرنت والمراجعة الاستعادية: اكتب أمراً واحداً ستفعله أو تقوله في كل منها.
  4. قارن تعريف الإنجاز بما قد تكسره هذه القصة، واقترح التحسين الأهم.
إظهار الإجابة النموذجية
الإجابة النموذجية

التنقيح: هل يُحسب حدّ ⁦24⁩ ساعة بالمنطقة الزمنية للعيادة، وهل يُسمح بالإلغاء قبل الموعد بـ⁦24⁩ ساعة تماماً؟ هل يصبح الموعد المُلغى متاحاً للحجز من جديد؟ من يُبلَّغ بالإلغاء؟ وتتحول الإجابات إلى معايير قبول أو عناصر جديدة.

تخطيط السبرنت: اختبارات حدّية قبل الموعد بأقل قليلاً من ⁦24⁩ ساعة وبـ⁦24⁩ ساعة تماماً وبأكثر قليلاً منها؛ وفحوص الواجهة البرمجية لطلب الإلغاء؛ وبيانات اختبار مطابقة؛ وجلسة استكشافية على صفحة «مواعيدي»؛ واختبار انحدار للحجز وتغيير المواعيد. واطرح قاعدة المنطقة الزمنية غير المحددة بوصفها خطراً.

أثناء السبرنت: اختبر المسار في يوم وصوله إلى بيئة الاختبار، واذكر التقدم والعوائق، مثل نقص بيانات الاختبار، في Scrum اليومي. وفي مراجعة السبرنت شارك ما اختُبر وأي خطر ما زال مفتوحاً، مثل قاعدة المنطقة الزمنية؛ ولا يُعرض العنصر إلا إذا استوفى تعريف الإنجاز. وأحضر إلى المراجعة الاستعادية أدلة مثل مدد الانتظار أو العيوب المتسربة.

تحسين تعريف الإنجاز: أضف بند «نجاح اختبارات الانحدار للمناطق المتأثرة»، لأن التعريف الحالي لا يحمي ميزات الحجز القائمة.

أسئلة شائعة

هل يوجد دور للمختبِر في Scrum؟

ليس كمسؤولية منفصلة. فدليل Scrum لعام ⁦2020⁩ يحدد ثلاث مسؤوليات: مالك المنتج وScrum Master والمطورين، والمطورون هم كل من يصنع الزيادة. فالمختبِر واحد من المطورين. وما زالت فرق كثيرة تضم متخصصين في الاختبار يقودون تحليل الاختبار والاختبار الاستكشافي والأتمتة، بينما يبقى الفريق كله مسؤولاً عن الجودة.

ما الفرق بين تعريف الإنجاز ومعايير القبول؟

تعريف الإنجاز مجموعة واحدة من مقاييس الجودة تنطبق على كل عنصر وعلى الزيادة ككل. أما معايير القبول فشروط خاصة بعنصر واحد. ولا يكتمل العنصر إلا إذا استوفى معايير قبوله وتعريف الإنجاز معاً.

ماذا يحدث لقصة لم تكتمل في نهاية السبرنت؟

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

هل يشترط Scrum قصص المستخدم أو تعريف الجاهزية؟

لا. لا يفرض دليل Scrum قصص المستخدم ولا معايير القبول ولا تعريف الجاهزية (Definition of Ready)؛ فهي ممارسات تضيفها الفرق. ويكتفي الدليل بأن العناصر التي يمكن إنجازها خلال سبرنت واحد تُعد جاهزة للاختيار في تخطيط السبرنت. ويصف منهج ISTQB للمستوى التأسيسي (الإصدار ⁦4.0⁩) تعريف الجاهزية بأنه معايير الدخول لقصة المستخدم.

المراجع

  • The 2020 Scrum GuideKen Schwaber and Jeff Sutherland · 2020تعريف Scrum: مسؤولياته وأحداثه ومخرجاته، بما فيها تعريف الإنجاز (Definition of Done) الذي يساعد الاختبار على تحقيقه.
  • ISTQB Certified Tester Foundation Level (CTFL) v4.0ISTQB · 2023المنهج التأسيسي لاختبار البرمجيات: مستويات الاختبار وأنواعه وتقنيات تصميم الاختبارات وإدارة الاختبار والأدوات.
  • Agile Testing: A Practical Guide for Testers and Agile Teams (Lisa Crispin, Janet Gregory)Addison-Wesley (Pearson) · 2009أرباع الاختبار الرشيق وكيف يعمل المختبرون داخل فريق التسليم — أساس «الاختبار في الطبقة الصحيحة».

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

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

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

حوّل قصة مستخدم (As a / I want / So that) إلى حالات اختبار منظّمة باستخدام القوالب والقواعد الاستدلالية.

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

للتعمّق أكثر

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

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