العربية  

books software reliability

If you do not find what you're looking for, you can use more accurate words.

View more

وثوقية البرمجيات (Info)


تعد وثوقية البرمجيات جانبًا خاصًا من هندسة الوثوقية. منذ الاستخدام الواسع النطاق لتكنولوجيا الدوائر الرقمية المتكاملة، أصبحت البرامج جزءًا هامًا بشكل متزايد لمعظم الإلكترونيات، وبالتالي، تقريبًا جميع أنظمة اليوم الحالية.

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

على الرغم من هذا الاختلاف في مصدر الفشل بين البرامج والأجهزة، فقد تم اقتراح العديد من نماذج الاعتمادية للبرامج المستندة إلى الإحصائيات لقياس ما نعاني منه مع البرامج: حيث يتم تشغيل البرنامج الأطول، كلما زادت احتمالية استخدامه في نهاية الأمر في نظام غير مجرب. بطريقة ما وتعرض عيب كامن ينتج عنه فشل.(Shooman 1987), (Musa 2005), (Denney 2005).

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

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

في نهاية المطاف، يتم دمج البرنامج مع الأجهزة في نظام المستوى الأعلى، ووثوقية البرامج تندرج تحت وثوقية النظام. إن نموذج نضج قدرات معهد هندسة البرمجيات هو وسيلة شائعة لتقييم العملية الكلية لتطوير البرمجيات لأغراض الوثوقية والجودة.

Source: wikipedia.org