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