من الأمثلة على المتطلبات الغير وظيفية للنظام؟
إجابة الطالب المختصرة من خلال موقع بوابة الإجابات هي
الأداء
الأمان
القابلية للاستخدام
المتطلبات غير الوظيفية (Non-Functional Requirements - NFRs) تحدد *كيف* يجب أن يعمل النظام، وليس *ما* يجب أن يفعله (الوظائف). بعبارة أخرى، هي تحدد خصائص النظام وجودته.
إليك بعض الأمثلة على المتطلبات غير الوظيفية:
* **الأداء:**
* زمن الاستجابة: يجب أن يستجيب النظام لطلبات المستخدم في غضون 2 ثانية.
* معدل الإنتاجية: يجب أن يكون النظام قادرًا على معالجة 1000 معاملة في الدقيقة.
* قابلية التوسع: يجب أن يكون النظام قادرًا على التعامل مع زيادة متوقعة في عدد المستخدمين بنسبة 50٪ خلال العام القادم دون تدهور في الأداء.
* **الأمان:**
* المصادقة: يجب أن يتطلب النظام مصادقة قوية للمستخدمين (مثل المصادقة متعددة العوامل).
* التفويض: يجب أن يكون الوصول إلى البيانات والوظائف مقيدًا بناءً على أدوار المستخدمين.
* التشفير: يجب تشفير البيانات الحساسة أثناء النقل والتخزين.
* الحماية من الثغرات الأمنية: يجب اختبار النظام بانتظام للكشف عن الثغرات الأمنية وإصلاحها.
* **قابلية الاستخدام:**
* سهولة التعلم: يجب أن يكون النظام سهل التعلم والاستخدام للمستخدمين الجدد.
* كفاءة المستخدم: يجب أن يكون النظام مصممًا لتقليل عدد الخطوات اللازمة لإنجاز المهام.
* إمكانية الوصول: يجب أن يكون النظام متاحًا للأشخاص ذوي الإعاقة (على سبيل المثال، من خلال توفير بدائل نصية للصور).
* **الوثوقية (Reliability):**
* التوافرية: يجب أن يكون النظام متاحًا بنسبة 99.9٪ من الوقت.
* المتانة: يجب أن يكون النظام قادرًا على التعافي من الأخطاء والفشل دون فقدان البيانات.
* الاحتياطية: يجب أن يكون لدى النظام خطة للتعامل مع حالات الكوارث.
* **قابلية الصيانة:**
* النمطية: يجب أن يكون النظام مصممًا بطريقة نمطية لتسهيل الصيانة والتحديث.
* التعليقات: يجب أن يكون الكود جيدًا ومعلقًا عليه لتسهيل فهمه.
* سهولة التصحيح: يجب أن يكون من السهل تحديد المشكلات وإصلاحها في النظام.
* **القابلية للنقل (Portability):**
* التوافق مع الأنظمة الأساسية: يجب أن يكون النظام قادرًا على العمل على أنظمة تشغيل مختلفة (مثل Windows و Linux و macOS).
* التوافق مع قواعد البيانات: يجب أن يكون النظام قادرًا على استخدام قواعد بيانات مختلفة (مثل MySQL و PostgreSQL و Oracle).
* **التوافق:**
* التوافق مع الأنظمة الأخرى: يجب أن يكون النظام قادرًا على التكامل مع الأنظمة الأخرى الموجودة في المؤسسة.
* الالتزام بالمعايير: يجب أن يلتزم النظام بالمعايير الصناعية ذات الصلة.
* **القابلية لإعادة الاستخدام (Reusability):**
* تصميم الوحدات القابلة لإعادة الاستخدام: يجب تصميم الوحدات البرمجية بطريقة تجعلها قابلة لإعادة الاستخدام في مشاريع أخرى.
* **الامتثال (Compliance):**
* الامتثال للوائح القانونية: يجب أن يمتثل النظام للوائح القانونية ذات الصلة (مثل قانون حماية البيانات).
**مثال توضيحي:**
لنفترض أننا نقوم بتطوير نظام للتجارة الإلكترونية.
* **المتطلبات الوظيفية:** يجب أن يكون النظام قادرًا على السماح للمستخدمين بتصفح المنتجات، وإضافة المنتجات إلى سلة التسوق، وإتمام عملية الدفع.
* **المتطلبات غير الوظيفية:**
* يجب أن يكون النظام قادرًا على التعامل مع 1000 عملية شراء في الساعة (الأداء).
* يجب أن تكون بيانات بطاقات الائتمان مشفرة (الأمان).
* يجب أن يكون الموقع سهل الاستخدام على الهواتف المحمولة (قابلية الاستخدام).
* يجب أن يكون النظام متاحًا بنسبة 99.9٪ من الوقت (الوثوقية).
تذكر أن المتطلبات غير الوظيفية لا تقل أهمية عن المتطلبات الوظيفية. إنها تحدد جودة النظام وتضمن أنه يلبي احتياجات المستخدمين بطريقة فعالة وموثوقة وآمنة.
اذا كان لديك إجابة افضل او هناك خطأ في الإجابة علي سؤال من الأمثلة على المتطلبات الغير وظيفية للنظام اترك تعليق فورآ.