خطأ برمجي
عودة للموسوعةعملية تطوير البرمجيات | |
---|---|
نشاطات وخطوات | |
المتطلبات · مواصفة وظيفية البنيان · تصميم البرمجيات التطبيق · الفحص نشر البرمجيات · صيانة البرمجيات | |
منهجيات | |
أجيل · هندسة برمجيات الغرفة النظيفة · Iterative RAD · RUP · Spiral Waterfall · XP · Lean سكرم · V-Model · TDD | |
اختصاصات داعمة | |
إدارة تكوين البرمجيات توثيق البرمجيات ضمان الجودة Project management تصميم تجربة المستخدم | |
أدوات | |
المصرف · المصحح · Profiler GUI designer · ب ت م | |
الخطأ البرمجي أوالعطب البرمجي في عالم الحوسبة هوارتكاب هفوات في فترة تصميم البرنامج الحاسوبي أوأثناء كتابته بإحدى لغات البرمجة. ينتج عن هذا الخطأ غالبا أداء سيئ أوغير منتظر. في الإنجليزية (وحتى غيرها من اللغات) تستعمل حدثة bug عند الحديث عن خطأ برمجي.
أثار هذا الخطأ غالبا ما تصيب البرمجيات ولكنها تصيب أيضا بعض الأجهزة والآلات التي تضبط عملها برمجيات. وأشهر هذه الأخطاء هوخطأ عام 2000 والذي نتج عن سوء تقدير في عملية التعامل مع التواريخ وتخزينها.
تدخل عملية تسليم الأخطاء في الدورة الحياتية لأي برنامج. في الغالب يصدر مطوروهاته البرامج ترقيعات تسليمية أوحتى اصدارات جديدة تضيف إلى جانب الخدمات الجديدة تسليما للأخطاء السابقة.
الآثار
بعض الأخطاء ليس لها تأثير ظاهر على وظيفة البرنامج، وبالتالي فقد تظل مختفية وغير مرصودة لمدة طويلة. أخطاء أخرى أكثر اضرارا قد تتسبب في خلل في تطبيق البرنامج فتعطل أوتجمده وقد يؤدي ذلك إلى الحرمان من الخدمة. صفات أخرى كأخطاء أوثغرات أمنية قد تسمح على سبيل المثال لمتطفلين من تجاوز الرقابة للحصول على امتيازات غير مسموح بها.
قد يحدث للأخطاء نتائج خطيرة للغاية. الأخطاء التي شابت برنامج مراقبة جهاز العلاج الإشعاعي Therac-25 كانت المسؤولة مباشرة عن وفاة بعض السقمى في ثمانينيات القرن العشرين. في عام 1996، فقدت وكالة الفضاء الأوروبية صاروخ اريانخمسة (1ما يعادل مليار دولار أمريكي) بعد أقل من دقيقة من إطلاقه، وذلك بسبب خلل في برنامج التوجيه على متن الحاسوب. في يونيو1994، تحطمت طائرة سلاح الجوالملكي البريطاني من طراز شينوك ما أسفر عن مقتل 29 شخص. في البداية ألصق خطأ بالطيار، ولكن تحقيق Computer Weekly كشف وبأدلة كافية لإقناع مجلس اللوردات حتى خطأ برمجي في حاسوب الطائرة هوسبب الحادثة.
في عام 2002، خلصت دراسة من المعهد الوطني للمعايير والتكنولوجيا بتكليف من وزارة التجارة الأمريكية حتى للعيوب أوالأخطاء البرمجية تأثيرا هاما لدرجة تكبيد الاقتصاد الأمريكي خسائر قدرت بـ 59 مليار دولار أمريكي سنويا أي نحو0.6 في المئة من إجمالي الناتج المحلي.
الوقاية
الأخطاء البرمجية هي نتيجة لطبيعة العوامل البشرية في عملية البرمجة. تنشأ الأخطاء من سوء الفهم المتبادل أوالسهوالذي يقع فيه الفريق المبرمج أثناء :
- تحديد المواصفات
- التصميم
الترميز في إدخال البيانات والوثائق. يمكن حتى تنشأ أخطاء أكثر تعقيدا عن تفاعلات غير مقصودة بين أجزاء مختلفة من برنامج حاسوبي. يحدث هذا في كثير من الأحيان لأن برامج الحاسوب قد تكون معقدة، ملايين من الأسطر الطويلة في بعض الحالات وفي أحيان كثيرة مبرمجة من قبل الكثير من المطورين على مدى زمني طويل، بحيث يفقد المبرمجون القدرة العقلية على تتبع جميع ظرف ممكن يسمح للأجزاء بالتفاعل. فئة أخرى من الأخطاء تلقب سباق الشروط تقع عندما يتنافس أكثر من خيط على نفس المورد.
وضعت صناعة البرمجيات الكثير من الجهد في البحث عن وسائل لوقاية المبرمجين من ارتكاب أخطاء أثناء كتابة البرنامج ويضم هذا :
- أسلوب البرمجة
- بينما يتكفل المترجم في كثير من الأحيان بالأخطاء المطبعية والنحوية في نص البرنامج، تظهر الأخطاء عادة عندما يقع المبرمج في خطأ منطقي. تم تصميم عدة ابتكارات مختلفة في نمط البرمجة والبرمجة دفاعية لجعل هذه الأخطاء أقل احتمالا أوسهلة الاكتشاف. في بعض لغات البرمجة لا يتم الإشارة إلى بعض الأخطاء المنطقية لأنها قد تحمل معنا آخر مقبول للمترجم.
- تقنيات البرمجة
- تخلق الأخطاء في كثير من الأحيان تناقضات في البيانات الداخلية أثناء تشغيل برنامج. يمكن كتابة برامج للتحقق من اتساق البيانات الداخلية الخاصة أثناء التشغيل. وإذا صادف حتى تضاربت يمكن للبرنامج حتى يتوقف على الفور بحيث يمكن اكتشاف الأخطاء وتصليحها. بدلا عن ذلك، يمكن للبرنامج إبلاغ المستخدم ببساطة بمحاولة تسليم التضارب ومتابعة تشغيل.
- تطوير منهجيات
- هناك عدة مخططات لإدارة نشاط مبرمج، بحيث يتم تقليل من عدد الأخطاء.
- لغة البرمجة الدعم
- رمز تحليل
- الأجهزة
مراجع
- ↑ "Al-Qamoos القاموس - English Arabic dictionary / قاموس إنجليزي عربي". www.alqamoos.org. مؤرشف من الأصل في 28 فبراير 2019. اطلع عليه بتاريخ 27 فبراير 2019.
- ↑ "ترجمة ومعنى software bug بالعربي في قاموس المعاني. قاموس عربي انجليزي مصطلحات صفحة 1". www.almaany.com. مؤرشف من الأصل في 28 فبراير 2019. اطلع عليه بتاريخ 27 فبراير 2019.
- ^ "LDLP - Librairie Du Liban Publishers". ldlp-dictionary.com. مؤرشف من الأصل في 28 فبراير 2019. اطلع عليه بتاريخ 27 فبراير 2019.
- ^ "LDLP - Librairie Du Liban Publishers". ldlp-dictionary.com. مؤرشف من الأصل في 28 فبراير 2019. اطلع عليه بتاريخ 27 فبراير 2019.
- ^ The Chinook Helicopter Disaster نسخة محفوظةعشرة أبريل 2016 على مسقط واي باك مشين.
- ^ Software bugs cost US economy dear[وصلة مكسورة]نسخة محفوظة 22 يناير 2013 على مسقط واي باك مشين.
- ^ Huizinga, Dorota (2007). . Wiley-IEEE Computer Society Press. صفحة 426. ISBN . مؤرشف من الأصل فيتسعة ديسمبر 2017.
- ^ McDonald, Marc (2007). . Microsoft Press. صفحة 480. ISBN . مؤرشف من الأصل في 24 يوليو2008.
- صور وملفات صوتية من كومنز
التصنيفات: عملية تطوير البرمجيات, أخطاء البرمجة, حواسيب, خوارزميات, مصطلحات حوسبة, قالب أرشيف الإنترنت بوصلات واي باك, جميع المقالات ذات الوصلات الخارجية المكسورة, مقالات ذات وصلات خارجية مكسورة منذ مايو 2019, صفحات تستخدم خاصية P244, بوابة برمجة الحاسوب/مقالات متعلقة, بوابة برمجيات/مقالات متعلقة, بوابة تقنية المعلومات/مقالات متعلقة, بوابة علم الحاسوب/مقالات متعلقة, جميع المقالات التي تستخدم شريط بوابات