🎴 بطاقات تعليمية للمراجعة
عدد البطاقات: 6 بطاقة لهذه الصفحة
ما هي المتطلبات غير الوظيفية (Non-Functional Requirements) في هندسة البرمجيات؟
الإجابة: هي مجموعة قيود أو معايير تحدد كيفية تصرف نظام البرنامج أو أدائه أو تشغيله بما يتجاوز متطلباته الوظيفية الأساسية.
الشرح: تحدد هذه المتطلبات معايير الجودة والأداء للنظام، وهي مكملة للمتطلبات الوظيفية التي تصف الوظائف الأساسية.
تلميح: فكر في الخصائص التي تصف كيف يعمل النظام، وليس ماذا يفعل.
التصنيف: تعريف | المستوى: سهل
اذكر خمسة أنواع رئيسية للمتطلبات غير الوظيفية مع تعريف موجز لكل منها.
الإجابة: 1. الأداء: المتطلبات المتعلقة بالسرعة والاستجابة وقابلية تطوير النظام.
2. الأمان: متطلبات حماية البيانات الحساسة مثل المصادقة والتشفير.
3. سهولة الاستخدام: متطلبات سهولة الاستخدام وتجربة المستخدم.
4. الموثوقية: المتطلبات المتعلقة بتوافر النظام واستقراره ومعالجة الأخطاء.
5. التوافق: المتطلبات المتعلقة بتوافق النظام مع أنظمة التشغيل أو الأجهزة الأخرى.
الشرح: هذه الأنواع الخمسة تغطي الجوانب الأساسية لجودة النظام البرمجي وتجربة المستخدم، وهي ضرورية لنجاح أي مشروع برمجي.
تلميح: تذكر أن هذه المتطلبات تصف خصائص الجودة للنظام، مثل السرعة والحماية وسهولة التعامل.
التصنيف: مفهوم جوهري | المستوى: متوسط
ما المقصود بمتطلبات الأداء (Performance) كنوع من المتطلبات غير الوظيفية؟
الإجابة: هي المتطلبات المتعلقة بالسرعة والاستجابة وقابلية تطوير نظام البرنامج، بما في ذلك زمن الاستجابة، واستخدام الموارد، وسرعة نقل البيانات.
الشرح: متطلبات الأداء تحدد مدى كفاءة النظام في استخدام الموارد ومدى سرعة استجابته للمستخدمين، وهي حاسمة لتجربة المستخدم.
تلميح: فكر في الخصائص التي تقيس كفاءة النظام وسرعته في التعامل مع المهام.
التصنيف: تعريف | المستوى: سهل
ما المقصود بمتطلبات الموثوقية (Reliability) كنوع من المتطلبات غير الوظيفية؟
الإجابة: هي المتطلبات المتعلقة بتوافر نظام البرنامج واستقراره مثل: معالجة الأخطاء، والقدرة التلقائية على الاستمرار في العمل عند حدوث خلل، وكذلك الاسترداد التلقائي للمعلومات.
الشرح: الموثوقية تعني أن النظام يعمل بشكل صحيح ومستقر لفترات طويلة، ويتعامل مع الأخطاء بشكل مناسب.
تلميح: فكر في قدرة النظام على العمل بشكل مستمر ودون أخطاء، والتعافي من المشاكل.
التصنيف: تعريف | المستوى: سهل
ما هو الهدف من عملية جمع المتطلبات (Requirements Gathering)؟
الإجابة: معرفة ما يريده الأشخاص من النظام الجديد المقترح، أو الاطلاع الجيد على النظام الحالي لمعرفة كيفية عمله وبالتالي تحسينه.
الشرح: هذه العملية أساسية لضمان أن النظام المطور سيلبي احتياجات المستخدمين الحقيقية ويحل المشكلات المطلوبة.
تلميح: فكر في المرحلة الأولى من تطوير البرمجيات التي تهدف لفهم احتياجات المستخدمين.
التصنيف: تعريف | المستوى: سهل
اذكر مثالين على المتطلبات غير الوظيفية كما وردا في النص.
الإجابة: 1. قدرة النظام على استعادة البيانات غير المحفوظة عند حدوث انقطاع مفاجئ للتيار الكهربائي.
2. عمل النظام بفاعلية عند استخدامه من قبل عشرة آلاف مستخدم في الوقت نفسه مثلاً.
الشرح: المثال الأول يتعلق بالموثوقية والتعافي من الأخطاء، والمثال الثاني يتعلق بالأداء وقابلية التطوير مع عدد كبير من المستخدمين.
تلميح: تذكر أن المثالين يصفان خصائص أداء النظام وقدرته على التعامل مع الظروف غير المتوقعة.
التصنيف: سؤال اختبار | المستوى: سهل