تصنيف العيوب المتعامدة

يحوّل تصنيف العيوب المتعامد ( ODC ) [ 1 ] المعلومات الدلالية في تدفق عيوب البرمجيات إلى مقياس للعملية. [ 2 ] طُوّرت هذه الأفكار في أواخر الثمانينيات وأوائل التسعينيات على يد رام تشيلاريج [ 3 ] في مركز أبحاث IBM . وقد أدى ذلك إلى تطوير أساليب تحليلية جديدة تُستخدم في تحليل عمليات تطوير البرمجيات واختبارها. يتميز تصنيف العيوب المتعامد (ODC) باستقلاليته عن نموذج العملية واللغة والمجال. وقد أبلغت العديد من الشركات عن تطبيقاته على مجموعة متنوعة من المنصات وعمليات التطوير، بدءًا من منهجية الشلال ، والمنهجية الحلزونية، والمنهجية المرحلية، والمنهجية الرشيقة [ 4 ] [ 5 ] . ومن التطبيقات الشائعة لتصنيف العيوب المتعامد (ODC) تحليل الأسباب الجذرية للبرمجيات .

تعتمد منهجية تطوير البرمجيات الموجهة نحو الهدف (ODC)، كما ورد في أوراقها الأصلية، على مجموعات محددة من السمات والقيم التي تُستخدم لقياس عملية التطوير. ومن بين الفئات الخمس الأكثر شيوعًا، فئتان هما نوع العيب ومحفز العيب . يُحدد نوع العيب التغييرات التي طرأت على الكود نتيجةً لوجود العيب. يوجد سبع قيم لنوع العيب، وقد تم التحقق تجريبيًا من قدرتها على قياس المنتج خلال عملية التطوير من خلال توزيعها. وتقوم الفكرة على أن التغيرات في توزيع نوع العيب هي دالة لنموذج عملية التطوير، وبالتالي توفر قياسًا جوهريًا لتقدم المنتج خلال هذه العملية.

يوفر مُحفِّز العيب، بالمثل، مقياسًا لعملية الاختبار. يُعد مفهوم المُحفِّز إسهامًا رئيسيًا من خلال ODC، ويُستخدم الآن على نطاق واسع في المنشورات التقنية والبحثية. [ 6 ] يُعرَّف مُحفِّز البرمجيات بأنه القوة التي كشفت عن العطل وأدت إلى الفشل. تتوفر المجموعة الكاملة من المُحفِّزات في وثائق ODC.

يُوفّر نوع العيب ومُسبّبه معًا كمًّا هائلًا من المعلومات السببية حول العيوب. تشمل المعلومات الإضافية المُستقاة من العيب، والتي يتم جمعها في تطبيقات ODC القياسية، "التأثير" و"المصدر" و"العمر". تُشير دورات تدريب ODC إلى أنه بمجرد التدريب، يُمكن للفرد تصنيف العيب باستخدام ODC في أقل من 3 دقائق عند أداء المهمة بأثر رجعي. [ 7 ] يكون الوقت المُستغرق أقل بكثير عند القيام بذلك أثناء التنفيذ. لا يُمكن مُقارنة التصنيف مُباشرةً بتحليل السبب الجذري، لأن بيانات ODC تُعنى بـ"ما هو موجود" وليس "لماذا". مع ذلك، يُجرى تحليل السبب الجذري بشكل شائع باستخدام ODC. يُجري التحليل الذي يدرس بيانات ODC المرحلة الأولى من تحليل السبب الجذري، والتي يتم تأكيدها من خلال مُناقشة النتائج مع فريق التطوير. يختلف هذا النهج عن الطريقة التقليدية وطريقة ODC في خمسة جوانب رئيسية. [ 8 ]

يُعد تحليل العيوب الفردية أحد تطبيقات ODC. صُمم ODC في الأصل لإنشاء نظام قياس لهندسة البرمجيات باستخدام تدفق العيوب كمصدر للقياسات الجوهرية. وبالتالي، توفر السمات، سواء بشكل منفرد أو بالاشتراك مع سمات أخرى، قياسات محددة لجوانب معينة من عملية الهندسة. يمكن استخدام هذه القياسات في طريقة تحليلية واحدة أو أكثر، نظرًا لتصميمها وفقًا لمبادئ القياس العامة. حتى الآن، طبقت العديد من الأبحاث هذه السمات لأغراض متنوعة. ومؤخرًا، نُشرت مقالات بحثية تستخدم ODC لتقييم أساليب التقييم الأمني، مما وسّع نطاق ODC. [ 9 ]

مراجع

  1. تصنيف العيوب المتعامد - مفهوم للقياسات أثناء العملية، مجلة IEEE للمعاملات في هندسة البرمجيات، نوفمبر 1992 (المجلد 18، العدد 11). http://www.chillarege.com/articles/odc-concept.html
  2. ما هو ODC؟ https://www.youtube.com/watch?v=mno4pQMqtBM
  3. جائزة الإنجاز التقني لعام 2002 من جمعية مهندسي الكهرباء والإلكترونيات (IEEE) https://www.computer.org/profiles/ram-chillarege
  4. تصنيف العيوب المتعامدة (ODC) في التطوير الرشيق. م. جاجيا، س. مينا، وقائع المؤتمر التكميلي IEEE ISSRE 2009، نوفمبر 2009.
  5. تصنيف العيوب المتعامد: دليل تمهيدي لاختبار/ضمان الجودة الرشيق، مؤتمر التطوير الرشيق، نوفمبر 2012
  6. عيوب البرمجيات وتأثيرها على توافر النظام - دراسة لأعطال ميدانية في أنظمة التشغيل. م. سوليفان و ر. تشيلاريج، المؤتمر الحادي والعشرون لأنظمة الحوسبة المقاومة للأعطال، معهد مهندسي الكهرباء والإلكترونيات، 1991.
  7. الألماس من العيوب، الكلمة الرئيسية في مؤتمر LADC، http://www.unicauca.edu.co/ladc2016/?q=node/22
  8. "5 اختلافات بين تحليل الأسباب الجذرية التقليدي وتحليل الأسباب الجذرية لـ ODC. https://www.youtube.com/watch?v=fTJr2Pgnxco
  9. PJ Morrison, R. Pandita, X. Xiao, R. Chillarege, and L. Williams, “هل يتم اكتشاف الثغرات الأمنية وحلها مثل العيوب الأخرى؟,” Empir Software Eng, vol. 23, no. 3, pp. 1383–1421, Jun. 2018, doi: 10.1007/s10664-017-9541-1.