5 نصائح لضمان تطوير برمجيات خالية من الأخطاء
نشرت: 2017-10-24هل يحتوي تطبيق البرنامج الخاص بك على أخطاء؟ بالطبع هو كذلك ، نظرًا لأن كل برنامج متوفر به مشاكل وقصة البرامج الخالية من الأخطاء هي خرافة. ومع ذلك ، لا يزال من الممكن تقليل الأخطاء والأخطاء ومشاكل الأمان إلى حد كبير من خلال اتباع بعض تقنيات الحد من الكتب العملية والعملية.
هناك الكثير من الانضباط عندما يتعلق الأمر بتتبع الأخطاء ، حيث يتطلب الأمر تشجيع الجميع على الالتزام بالقواعد. قد يكون من الصعب جدًا تثبيط أي اتصال غير رسمي ، خاصة في الشركات الناشئة والصناعات ذات التوجه الإبداعي. في الواقع ، في كثير من الحالات ، لا يسمي الأشخاص "تتبع الأخطاء" على أنه الجزء الأكثر تركيزًا في المشروع.
ما هو تتبع الأخطاء حقًا؟
وفقًا لـ Technopedia: " تتبع الأخطاء هو عملية يستخدمها موظفو ضمان الجودة والمبرمجون لتتبع مشكلات البرامج وحلولها. "
وبالتالي ، فإن نظام تتبع الأخطاء يدير جميع المعلومات حول الأخطاء المبلغ عنها ويتتبع حالة كل خطأ. ترى بالتأكيد الحاجة إلى معلومات شاملة أثناء تتبع المشكلات. لا يتطلب توفير البيانات الكافية قدرًا هائلاً من الوقت فحسب ، بل يتطلب أيضًا مهارات وفيرة في مجال تطوير البرمجيات.
تصنيف الأخطاء
هناك ثلاثة أنواع من أخطاء البرامج:
- مواصفات غير صحيحة
- عيوب التنفيذ
- المواصفات مفقودة
يمكن تصنيف أي من أنواع الأخطاء هذه بسهولة على أنها مشكلة حرجة (أو إعادة تصنيفها على أنها تحسين). تم ذكر بعض إرشادات إعادة التصنيف التي يستخدمها سام حاطوم ، مؤسس Xolv.io.
- هل المواصفات غير الصحيحة تسبب لنا خسارة؟ على سبيل المثال ، تنص المواصفات على تتبع عدد النقرات ، ومتى يجب تتبع الإنفاق ، قم بإعادة تصنيف الخطأ.
- هل يمكن إهمال عيب التنفيذ؟ على سبيل المثال ، يتم تثبيت خط الويب عندما يجب تضمينه في البرنامج.
- هل المواصفات المفقودة تعني وظائف جديدة؟ على سبيل المثال ، لا يستطيع المستخدمون مشاركة تفاصيل ملفاتهم الشخصية وتعديلها على الشبكات الاجتماعية.
يتم رفع المخاطر لمديري المنتجات لتصنيف الأخطاء بكفاءة ، حيث يتم توجيه فريق التطوير إلى إعطاء الأولوية للأخطاء على جميع الأعمال الأخرى. لن يعمل المطورون أو أي شيء آخر حتى تتم إزالة جميع الأخطاء.
تشكيل معايير جودة الفريق
عندما يقرر فريق التصميم والتطوير ما إذا كان يمكن إعادة تصنيف فيروس تطبيق على أنه تحسين أم لا ، فإن عملية اتخاذ القرار تلك تنص ضمنيًا على معايير الجودة الخاصة بالفريق. على سبيل المثال ، قد يكون لمالك العلامة التجارية الذي يركز على المرئيات عالية الجودة تسامحًا منخفضًا مع تناقضات التصميم. وبدلاً من ذلك ، سيعيدون تصنيف هذه المشكلات على أنها أخطاء.
يتيح لك نظام إعادة التصنيف المتسق تكييف التوقعات مقابل الواقع باستمرار ، مع الحفاظ على نهج تسليم منظم يضع معايير جودة فريقك في المقام الأول.
فشل الخلل
تزعم الدراسات الحديثة أن ما يقرب من 40 في المائة من حالات فشل النظام ناتجة عن أخطاء البرامج ، في حين أن مشكلات الأمان الأخرى وثغرات البرامج تمثل 60 في المائة ، بسبب مشكلات تتعلق بالذاكرة المشتركة والتزامن. يعد تقليل أخطاء البرامج في تطبيقك هو أفضل طريقة لزيادة أمان واستقرار وموثوقية برنامجك.
نصائح لضمان تطوير برمجيات خالية من الأخطاء
أثناء تطوير أداة التسجيل SmartInspect ، استخدم المطورون العديد من الطرق للحفاظ على جودة نظامهم عالية. تحتوي القائمة المذكورة مسبقًا على بعض الأساليب التي استخدموها.
1. خلق غرفة للتواصل
يتطلب الكشف عن الأخطاء والإبلاغ عنها المهارات اللازمة لتحديد المعلومات ذات الصلة والتي يتم إضافتها بعد ذلك إلى كل تقرير عن المشكلة. هناك العديد من أدوات تتبع الأخطاء وضمان الجودة مثل Usersnap التي توفر القدرة على إرفاق المعلومات المطلوبة تلقائيًا. ومع ذلك ، سيكون هناك دائمًا مجال لنقص أو سوء فهم المعلومات ، مما يؤدي إلى الحاجة إلى الاتصال المناسب.
في بعض سيناريوهات الاختبار ، لا يوجد مجال لهذا النوع من الإفصاح بين المطورين والمختبرين. أسئلة مثل: "كيف يمكنني الاتصال بالخبراء المسؤولين؟" أو "هل يجوز طلب التعليقات عبر الهاتف أو البريد الإلكتروني؟" تحتاج إلى إجابة في بداية عملية تتبع الأخطاء.
لتجنب سوء الفهم نيابةً عن المختبرين والمطورين ، حاول إحضار الجميع في نفس الصفحة وإنشاء ثقافة موجهة للتغذية الراجعة حيث يتم احترام عمل كلا الطرفين بنفس الطريقة.
2. احتفظ بها على حدة
تجنب مناقشة الأخطاء في اجتماع المشروع. الآن لا تفهموني خطأ. لا يوجد شيء سيئ في العمل كفريق واحد ، وإعادة إنتاج الأخطاء وإصلاحها. لكن لا تناقش مشاكل الاجتماعات المطولة مع مجلس الوزراء بأكمله. وفقًا لتوماس بيهام ، مدون تقني في موقع Usersnap.com ، فإن الإبلاغ عن الأخطاء ثم مناقشتها في مرحلة التطوير التالية "إعادة الاختبار" يعد نهجًا بطيئًا للغاية.
في الواقع ، إنها طريقة أكثر فاعلية للحفاظ عليها وجهًا لوجه. كما كتب إيجور في مقالته حول المبادئ الخمسة لتتبع الأخطاء ، فإن كل تقرير خطأ مرتبط بين شخصين - المحدد ومحلل المشكلة. بغض النظر عن عدد الأشخاص الذين يشاركون في العملية ، لا يوجد سوى مسؤوليتين رئيسيتين (بدورين مختلفين) لحل مشكلة تم الإبلاغ عنها.
3. ضمان اشتراك من فريقك
إذا لم يستخدمه فريقك بالكامل ، فستكون قاعدة بيانات تتبع الأخطاء الجيدة غير فعالة. من الأفضل أن تبدأ من خلال حث جميع أصحاب المصلحة (خدمة العملاء ، ضمان الجودة ، مديري المشاريع والمطورين) على تقييم الأدوات ومحاولة اتخاذ قرار معًا ؛ تسجيل العيوب ومعالجتها بطريقة متسقة باستخدام نفس النظام.
إذا كنت تكافح من أجل إشراك الأشخاص ، فإليك ما يمكنك القيام به ؛
بالنسبة للمطورين ، ضع قانون قبول تقارير الأخطاء من خلال قواعد البيانات الفردية وليس أي طريقة أخرى. عندما يرسل لك المختبرين رسائل بريد إلكتروني تحتوي على تعليقات ، اطلب منهم ببساطة إلقاء التقارير في نظام المعلومات بدلاً من ذلك. بالإضافة إلى ضمان بقاء الأشياء منظمة ، فإن هذا يساعد أيضًا في إعداد التقارير من خلال توفير جميع المعلومات اللازمة وتحديد الحقول اللازمة.
هناك طريقة أخرى لإنشاء عملية أكثر كفاءة وهي الحصول على ضمان الجودة ، أو دعم التحقق من الأخطاء من العملاء وإضافة الخطوات الدقيقة في قاعدة البيانات قبل إخطار المطورين. يعد التتبع الفعال لمشكلات البرامج أحد الجوانب الأساسية لامتلاك إطار عمل إدارة مشروع موثوق ومتسق.
- مصحح أخطاء جيد
إذا كنت تستخدم أنظمة مثل Visual Studio أو Delphi ، فلديك بالفعل وصول إلى مصحح أخطاء قوي للغاية يجب عليك استخدامه. في حالة بيئة البرمجة النصية حيث يحاول المطورون في كثير من الأحيان القضاء على الأخطاء عن طريق التجربة والخطأ ، فإن العملية لا تصبح فقط طريقة مرهقة لتحديد المشكلات وحلها ، ولكنها أيضًا خطيرة جدًا إذا لم تفهم الكود الخاص بك تمامًا ولم تكن قادرًا على ذلك خطوة من خلال ذلك مع مصحح الأخطاء. قدم لنفسك معروفًا من خلال الحصول على منصة تصحيح أخطاء جيدة لفريقك - هناك مصححات لكل شيء تقريبًا.
4. تعرف على معنى الخطأ "المغلق"
هل سبق لك أن شاركت في مناقشة حول إغلاق خطأ؟ حسنًا ، تهانينا ، لقد كنت في أسوأ موقف ممكن لتتبع الأخطاء على الإطلاق.
إذا وجدت نفسك في نقاش حول "حالة الخطأ" ، ففكر في اتخاذ خطوة إلى الوراء وطرح الأسئلة التالية على نفسك:
- على من تقع مسؤولية قبول النتائج؟
- ما هي معايير القبول؟
- من المسؤول عن إعطاء الأمر؟
ألق نظرة على معنى كلمة "مغلق". في غالبية فرق التطوير ، يتم إغلاق الخطأ بواسطة الشخص الذي أصلح الخطأ. يوصي بيهام بإغلاق تقرير الخطأ من قبل الشخص الذي أبلغ عن المشكلة. بمجرد طرح المطور لحل خطأ معين ، يجب أن يُطلب من المراسل إغلاق التقرير. هذا من شأنه أن يضمن أن التعليقات هي حل كافٍ للخلط في البرامج.
5. الآلات الافتراضية
من أجل اختبار البرنامج الخاص بك بحثًا عن الأخطاء على العديد من أنظمة التشغيل والبيئات المختلفة قدر الإمكان ، يجب عليك استخدام الأجهزة الافتراضية مع أدوات مثل Virtual PC أو غيرها من برامج المحاكاة الافتراضية المتاحة. يمكنك توفير الكثير من الوقت من خلال هذه الطريقة لأنه يمكنك بسهولة نسخ ومشاركة وإعادة تعيين الأجهزة الافتراضية ، مما يتيح لك اختبار برنامجك على جميع أنواع التكوينات.
يُفضل دائمًا إنشاء صور قياسية متنوعة لجميع أنظمة التشغيل التي تختبرها بانتظام ووضعها على خادم ملفات. عندما تحتاج إلى تكوين محدد للغاية لاختبار شيء ما ، يمكنك البدء بإحدى الصور الأساسية دون تثبيت نظام التشغيل والبرامج وبرامج التشغيل المطلوبة وما إلى ذلك.
إنه ليس بمفهوم جديد
عندما توصل حاطوم إلى هذا المفهوم ، اكتشف أن فكرة برنامج Zero-Bug ليست فكرة جديدة. لقد كان في الواقع موجودًا منذ الستينيات ، مثل العديد من فلسفات المدرسة القديمة المنسية.
اخترع خبير الجودة الأسطوري ، فيليب كروسبي ، مصطلح Zero-Defect أثناء العمل في شركة Martin أو كما يُعرف حاليًا باسم "Lockheed Martin" حيث تم الإبلاغ عن تحقيق "خفض بنسبة 54٪ في عيوب الأجهزة تحت المراجعة الحكومية".
في البداية ، تم استخدام تقنية Zero-Defect في صناعة الطيران في الستينيات ، ثم تم تطبيقها في تصنيع السيارات في التسعينيات. هناك العديد من أوجه التشابه بين الصناعة التحويلية وتسليم البرامج.
طريقة الإدارة الرشيقة الشهيرة كانبان ، على سبيل المثال ، نشأت من نظام إنتاج تويوتا. ما يخبرنا به هذا بشكل أساسي هو أنه يمكننا بسهولة النظر في عمليات التصنيع هذه للحصول على الإلهام التكنولوجي في تطوير البرامج أو التطبيقات ، و Zero-Bug هو أحد تلك الإلهام.
ومع ذلك ، فإن التكلفة الباهظة للوفاء بالمعيار هي أحد الانتقادات الرئيسية لنهج العيب الصفري. وإذا تم تطبيقه بشكل غير صحيح ، يمكن أن يكون هذا صحيحًا بالفعل. في نهج Zero-Bug ، تعاملت حاطوم بشكل مباشر مع هذه المشكلة من خلال إعادة تصنيف الأخطاء إلى ميزات وتحسينات كبيرة ، مما يسمح بالتحكم في التكلفة من خلال معايير الجودة للفريق.
إبدأ اليوم
بصفتك مستخدمين ومطورين تقنيين ، يمكنك البدء في استعراض جميع مواطن الخلل الموجودة وتصنيفها باستخدام النظام المذكور أعلاه. إذا كنت تعتقد أن لديك مئات الآلاف من المشكلات ، فقد يكون هذا هو الوقت المناسب لتراكمها والبدء من جديد. لا تقلق ، يمكنك دائمًا نقل الأخطاء من الأرشيفات إلى المجال الحالي كما تريد.
لا يتعين على فريق التطوير بالضرورة الانتظار حتى اكتمال تمرين التصنيف بالكامل قبل أن يبدأوا في سحق الأخطاء ؛ يمكنهم البدء بمجرد تصنيف بعض الأخطاء. يجب ألا يبدأ الفريق في العمل على أي عناصر أخرى في التراكم حتى يتم "تحرير الأخطاء" أو إعادة تصنيف جميع العناصر. هذه هي القاعدة ذاتها التي تجبر مديري المنتجات على تحديد أولويات العمل الجديد بشكل صحيح.
تلخيصها
كل خطأ تم الإبلاغ عنه في المشروع يتطلب وقتًا إضافيًا ليتم إصلاحه. وبالتالي ، فإن تتبع الأخطاء يتطلب مهارات اتصال رائعة من الأفراد الذين يتتبعون الأخطاء بالإضافة إلى الحساسية من أولئك الذين يقومون بإصلاحها. من خلال عمليات اختراق التتبع المذكورة أعلاه ، يمكن لفريقك أن يحاول أن يكون أكثر إنتاجية أثناء الإبلاغ عن أي نوع من العقبات التقنية أو الأمنية.