عودة إلى المبدع والاس وانج مرة أخرى يقول وانج أن أفضل الطرق لإكتشاف الأخطاء هو أن تجعل بعض الأبرياء يستخدمون برامجك ، ( في عالم البرامج التجارية هؤلاء الأبرياء هم المستخدمون الذين يشترون البرامج ) ، وبالتالي كلما زاد عدد الأشخاص الذين يختبرون البرنامج زادت إحتمالات العثور على الأخطاء الموجودة فيه ، بل قد يكتشف هؤلاء الأشخاص أخطاء لم تخطر على بالك أبداً كمبرمج ، ويمكن لهذه الأخطاء أن تكون كبيرة وواضحة مثل الأخطاء التي تؤدي إلى جعل الحاسوب يتوقف عن العمل ، أو قد تكون أخطاء صغيرة مثل الأخطاء التي تؤدي إلى تقريب الأرقام بصورة غير صحيحة ، وبعد أن تتأكد من أن البرنامج به خطأ يجب أن تتبعه وتصوبه . إن بعض المتفائلين يقولون أنه بإمكانك أن تترك هذه الأخطاء في البرنامج ويسمونها " خصائص غير موثقة " UnDocumented Features . تحديد مكان الخطأ إن تحديد المكان الذي يختبىء فيه الخطأ هو أصعب جزء من العملية كلها ، وأبسط طريقة لذلك بل وأكثرها مللاً هو أن تشغل البرنامج وتفحصه سطراً سطراً ، أما بالنسبة للبرامج الكبيرة فإن هذه العملية قد تؤدي إلى أن يفقد الشخص الذي يقوم بها عقله . وكبديل سريع لا تفحص البرنامج بكامله وإنما إفحص الأجزاء التي تشك في وجود الخطأ بها فقط ، فمثلاً إذا كان البرنامج لا يطبع بصورة سليمة إفحص الأجزاء الخاصة بأوامر الطباعة في البرنامج . معرفة سبب الخطأ عندما تتمكن من تحديد مكان الخطأ بالضبط يجب أن تكتشف سبب حدوث هذا الخطأ ، لنفترض مثلاً أن تريد من البرنامج أن يطبع إسم المستخدم على الشاشة ولكنه بدلاً من ذلك يطبع رقم الهاتف الخاص به ، في هذه الحالة يقوم البرنامج بالطباعة بصورة صحيحة وستكون المشكلة أن يطبع البيانات الخطأ ، وعندما تستخدم قواعد المنطق والإستنتاج يمكنك أن تعرف أن الخطأ يقع عندما يحاول البرنامج الحصول على البيانات المطلوب طباعتها . تصحيح الخطأ بعد أن تنتهي من تحديد سبب الخطأ ستكون قد وصلت للمرحلة الأخيرة ، ولكن كن حذراً ففي بعض الأحيان يؤدي تصحيح الخطأ إلى إضافة خطأين أو أكثر إلى البرنامج ، ولكي تتعرف على هذه النقطة بالتحديد إليكم هذه المثال التقريبي :- (( تخيل أن لديك مشكلة في "السباكة" في منزلك فإن اسهل حل هو أن تكسر الحائط وتضع مواسير جديدة بدلاُ منها ، قد يؤدي ذلك إلى حل مشكلة السباكة ، ولكن تكسير الحائط قد يؤدي إلى قطع السلاك الكهربائية التي تمر داخله ، أنت بهذا قد قمت بحل مشكلة السباكة ، ولكنك وقعت في مشكلة جديدة خاصة بالكهرباء ، وقد يؤدي الغبار الناتج عن تكسير الحوائط إلى سد فتحات التهوية الخاصة بجهاز التكييف )) هل رأيتم ما يعينه والاس وانج الآن !! ؟ إن مشكلة السباكة تتضاعف الآن لذلك يجب أن تكون حريصاً عند إصلاح أحد الأخطاء في البرنامج ، على العموم قد تكون إعادة كتابة أجزاء كبيرة من الأوامر أسهل من محاولة إصلاح الأخطاء الموجودة بها . إن أسهل طريقة لتجنب الأخطاء هي ألا تقع فيها منذ البداية ، بالطبع هذه الكلام قد يبدو ساذجاً مثلما ينصحك أحد الأشخاص بأن تحتفظ بكمية كبيرة من النقود حتى لا تقع في أزمة مالية !! إن الأخطاء أعزائي تقع في أفضل البرامج وأقصى ما يمكنك أن تطمح إليه هو أن تقلل عدد الأخطاء التي تظهر في البرامج التي تكتبها ، أما كيف تفعل ذلك فسيكون في المقالة القادمة إن شاء الله . ودمتم سالمين