ماذا يفعل فريق ضمان الجودة في تطوير البرمجيات إذا لم يجدوا أخطاءً يوميًا؟
نشرت: 2023-01-27غالبًا ما يسمع مهندسو ضمان الجودة (QA) هذا:
"اكتشف فريقك عشرين خطأ بالأمس ، ولكن اليوم ليس لديك أي خطأ!"
هذا الموقف ، مهما بدا صحيحًا ، يتعارض مع غرض وأهداف ضمان الجودة في تطوير البرمجيات.
ماذا يفعل ضمان الجودة في تطوير البرمجيات بالضبط؟
في هذه المقالة ، يشرح Andrey Gilyov ، نائب رئيس وحدة ضمان الجودة في ITRex ، سبب عدم تباطؤ فريق ضمان الجودة حتى لو عثروا على أخطاء أقل. أيضًا ، ستتعرف على سبب وجوب تعيين مهندسي ضمان الجودة دائمًا لزيادة فريق تكنولوجيا المعلومات الداخلي أو الخارجي بدلاً من اختبار الكود بواسطة مهندسي البرمجيات.
فهم أهداف ضمان الجودة ولماذا لا تقتصر على تتبع الأخطاء
اعتمادًا على نوع وتعقيد حل البرنامج الذي تتطلع إلى إنشائه ، قد تحتاج إلى متخصص في ضمان الجودة بدوام جزئي أو فريق متخصص في ضمان الجودة مخصص لمشروعك. وتمتد مسؤولياتهم إلى ما هو أبعد من تحديد الأخطاء وإبلاغ مدير المشروع وفريق التطوير بها.
تشمل أهداف ضمان الجودة على وجه الخصوص ما يلي:
- منع الخطأ. تشير الاستطلاعات الحديثة إلى أن مهندسي البرمجيات يقضون حوالي 20٪ من وقتهم في إصلاح الأخطاء. ضاعف هذا الوقت في متوسط معدل الساعة لمهندس البرمجيات ، وستدرك مقدار الكود المعيب الذي يمكن أن يكلف شركتك. كما أن سعر تصحيح الأخطاء يرتفع بشكل كبير مع مرور الوقت في سير عمل تطوير البرامج - وهذا ناهيك عن الآثار طويلة المدى لإطلاق البرامج المليئة بالأخطاء في الإنتاج ، مثل الثغرات الأمنية وتقليل تجربة العملاء وفقدان السمعة. لذا ، فإن الغرض الرئيسي من ضمان الجودة في تطوير البرمجيات يدور حول العثور على الأخطاء قبل أن تسبب ضررًا كبيرًا. لإنجاز هذا العمل الفذ ، يستعد فريق ضمان الجودة للاختبار قبل وقت طويل من وضع أيديهم على حل برمجي. تشمل أنشطة التحضير هذه مراجعة وثائق الاختبار ، وكتابة خطة الاختبار وحالات الاختبار ، واختيار أدوات الاختبار المناسبة ، وتكوين بيئة الاختبار.
- تتبع حالة البرامج وتقييمها. لاتخاذ قرارات مستنيرة في مشاريع البرمجيات ، يحتاج مدير المشروع والعميل إلى معلومات محدثة حول منتج البرنامج الذي يعملان عليه. تشمل أهداف ضمان الجودة ، من بين أمور أخرى ، توفير هذه المعلومات في أي فترة معينة على طول الجدول الزمني لمشروع البرنامج. ومع ذلك ، تجدر الإشارة إلى أن مهندسي ضمان الجودة لا يختارون أفضل وقت لبدء تشغيل حل برمجي. بدلاً من ذلك ، يكون العميل هو من يتخذ القرار النهائي. بعد التشاور مع فريق ضمان الجودة ، قد يقرر العميل طرح حل برمجي يحتوي على أخطاء وأخطاء موثقة! على سبيل المثال ، يمكنك اتخاذ مثل هذا القرار عندما يكون الإطار الزمني للإفراج عن منتجك ضيقًا نسبيًا والمفاضلة بين المكافأة - أي التفوق على المنافسة أو تمكين ميزة مهمة - أكبر من مخاطر إطلاقها مع أخطاء بسيطة. في كلتا الحالتين ، تحتاج إلى اكتشاف هذه الأخطاء وتوثيقها وتحديد أولوياتها ، وهذا أيضًا أحد أهداف فريق ضمان الجودة.
- التحقق من المتطلبات. يتمثل الدور الأساسي لضمان الجودة في تطوير البرامج في التأكد من أن حل البرنامج الخاص بك يعمل على النحو المتوقع ويفي بجميع المعايير المحددة في مستند مواصفات متطلبات البرامج (SRS). عندما يقوم أخصائيو ضمان الجودة بإجراء اختبار يدوي أو آلي وتحديد الأخطاء ، فإنهم يقومون بإنشاء تذكرة في نظام برمجيات تتبع الأخطاء مثل Jira أو ClickUp لفريق التطوير. بمجرد أن يصلح فريق التطوير الأخطاء ، تتكرر دورة الاختبار. وبالتالي ، فإن العثور على الأخطاء ليس الغرض من ضمان الجودة ؛ بل هو نتاج جانبي لأنشطة ضمان الجودة.
تفشل فرق ضمان الجودة أحيانًا في العثور على أي أخطاء. وهذا جيد
الآن بعد أن قمت بلف رأسك حول أهداف وغايات ضمان الجودة ، دعنا نعود إلى السؤال الذي طرحناه في بداية هذه المقالة.
ماذا يفعل فريق ضمان الجودة في تطوير البرمجيات إذا كانت تقارير الأخطاء الخاصة بهم تحتوي على صفر من العيوب لأيام متتالية؟
هناك عدة أسباب لعدم عثور متخصصي ضمان الجودة على أي أخطاء في برنامجك:
- تم اختبار البرنامج بدقة. إذا خضع حل البرنامج لاختبارات شاملة ، فمن غير المرجح أن تكون الأخطاء موجودة عند تكرار دورة ضمان الجودة أو دخول المنتج حيز الإنتاج.
- البرنامج له تصميم بسيط. من غير المحتمل أن تحتوي التطبيقات ذات مجموعة الميزات المحدودة والتكاملات وواجهات المستخدم البسيطة على أخطاء من البرامج ذات المتطلبات الهيكلية والأداء الأكثر تعقيدًا.
- تم تصميم البرنامج باستخدام أفضل الممارسات. غالبًا ما تقدم فرق هندسة البرمجيات التي تكتب تعليمات برمجية نظيفة وموثقة جيدًا ، وتتبع معايير الترميز ، وتستخدم التحكم في الإصدار ، منتجات برمجية مع القليل من الأخطاء. يتم اكتشاف هذه الأخطاء وتصحيحها في وقت مبكر من عملية الاختبار ، ولن تظهر أي عيوب أخرى في مراحل لاحقة.
- كان من الممكن أن تكون عملية الاختبار أكثر شمولاً. قد يؤدي نقص الوقت أو الموارد أو المهارات إلى منع متخصصي ضمان الجودة من اختبار حل البرنامج تمامًا. نتيجة لذلك ، يمكن التغاضي عن بعض الأخطاء.
- لا يمكن تكرار الخلل. في بعض الأحيان ، قد لا يجد متخصصو ضمان الجودة أي أخطاء لأن الأخطاء لا تحدث باستمرار. قد تؤدي عوامل مختلفة ، بما في ذلك مدى تعقيد البرنامج أو استخدام مكتبات الجهات الخارجية أو وجود تبعيات خارجية ، إلى مثل هذه المواقف.
بغض النظر عن السبب ، يجب ألا تقلل من أهمية ضمان الجودة في تطوير البرامج ، ناهيك عن اللعب بفكرة السماح للمطورين باختبار الكود نيابة عنك.
لا تفهموني خطأ: من الجيد للمطورين كتابة وتنفيذ الاختبارات الآلية في فرق Agile متعددة الوظائف. أو حتى اختبار البرنامج يدويًا.
ومع ذلك ، في مثل هذه الفرق ، حيث غالبًا ما يتم مشاركة أدوار المشروع ، يكون الهدف الأساسي هو إصدار برامج أو ميزات العمل بشكل أسرع ، مما يقلل الوقت المستغرق في القيمة ويجمع التعليقات في وقت مبكر. هنا قد نتعامل مع مشكلة المخاطرة مقابل المكافأة الموضحة في القسم السابق. وبالتالي قد يتراكم مشروعك على الديون الفنية ، مما يؤدي إلى مشاكل في الأداء وتكاليف تصحيح أخطاء كبيرة في المستقبل.
الأسباب الأخرى لتوظيف متخصصين متخصصين في ضمان الجودة هي كما يلي:
- إن معرفة كيفية البرمجة لا يعني معرفة كيفية مراجعة الكود بحثًا عن الأخطاء المحتملة
- نادرًا ما يستمتع المطورون بالاختبار ، بينما يستمتع خبراء ضمان الجودة
- عادة ما تكون أجور مهندسي البرمجيات في الساعة أعلى من تلك الخاصة بمتخصصي ضمان الجودة
- عادة ما يمتلك المطورون ومهندسو ضمان الجودة مهارات شخصية مختلفة. بالنسبة إلى ضمان الجودة ، فإن الاهتمام بالتفاصيل والقدرة على تحليل الأنظمة المعقدة وتعدد المهام يحتل مركز الصدارة. من ناحية أخرى ، غالبًا ما يعمل مهندسو البرمجيات في بيئات تعاونية ويركزون على مهمة واحدة في كل مرة.
لذا ، حتى لو وجد فريق ضمان الجودة الخاص بك صفرًا من الأخطاء اليوم ، فلا تميل إلى الاستغناء عن متخصصي ضمان الجودة أو تكليف فريق التطوير الأساسي بمهام الاختبار. على الرغم من أن هذا النهج قد يقلل من راتبك على المدى القصير ، فإن تكلفة خسارة عملائك بسبب ضعف أداء البرامج أو الهجمات الإلكترونية المتعلقة بالأخطاء يمكن أن تكون مضاعفة.
وإذا كنت بحاجة إلى مساعدة في التحقق من أن برنامجك يعمل بشكل جيد ، ويلبي جميع المتطلبات المحددة في SRS أو الرؤية التقنية ، ويساعدك على تحقيق أهداف عملك ، فاتصل بخبراء ITRex QA!
نُشر في الأصل على https://itrexgroup.com في 20 يناير 2023.