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