وصف المشروع:
السلام عليكم ورحمة الله وبركاته،
نبحث عن مطور Full-Stack محترف ومتمكن لتصميم وبرمجة نظام اختبارات إلكتروني (Exam System) متكامل من الصفر. الهدف هو إنشاء منصة حديثة، آمنة، وسهلة الاستخدام تخدم المؤسسات التعليمية أو مراكز التدريب.
المشروع سيتم بناؤه باستخدام التقنيات التالية:
الواجهة الأمامية (Frontend): إطار عمل Angular.
الواجهة الخلفية (Backend): بيئة Node.js مع إطار عمل Express.js.
قاعدة البيانات: MongoDB.
API: بناء RESTful API قوية لتأمين التواصل بين الواجهة الأمامية والخلفية.
قائمة الميزات والوظائف المطلوبة (Key Features):
يجب أن يحتوي النظام على كافة الميزات الأساسية والاحترافية، مقسمة حسب أدوار المستخدمين:
1. دور مدير النظام (Super Admin):
لوحة تحكم شاملة لإدارة النظام بالكامل.
إدارة المستخدمين (إضافة/تعديل/حذف المعلمين والطلاب).
عرض إحصائيات وتقارير شاملة عن أداء النظام (عدد الاختبارات، عدد المستخدمين، إلخ).
التحكم في إعدادات المنصة الرئيسية.
2. دور المعلم / منشئ الاختبار (Teacher/Instructor):
لوحة تحكم خاصة لإدارة مواده واختباراته.
بنك الأسئلة (Question Bank):
إضافة أسئلة جديدة مع تحديد نوعها (اختيار من متعدد MCQ، صح وخطأ، إجابة قصيرة، مقالية).
إمكانية إضافة صور أو وسائط للسؤال.
تصنيف الأسئلة حسب المادة أو مستوى الصعوبة.
إنشاء الاختبارات:
تحديد عنوان ووصف ومدة الاختبار.
اختيار الأسئلة من بنك الأسئلة بشكل يدوي أو عشوائي.
تحديد الدرجة لكل سؤال.
تعيين الاختبار لطلاب معينين أو لمجموعات.
التصحيح والتقييم:
تصحيح تلقائي للأسئلة من نوع (MCQ) و (صح/خطأ).
واجهة لتصحيح الأسئلة المقالية بشكل يدوي.
عرض النتائج والتحليلات:
متابعة الطلاب الذين أنهوا الاختبار.
عرض نتائج الطلاب وتحليلات لأدائهم (متوسط الدرجات، إجابات كل طالب).
3. دور الطالب (Student):
صفحة شخصية بسيطة تعرض الاختبارات المتاحة والسابقة.
واجهة تقديم الاختبار:
واجهة عرض واضحة للسؤال والخيارات.
مؤقت زمني (Timer) للاختبار.
حفظ تلقائي للإجابات أثناء تقديم الاختبار.
التنقل بين الأسئلة.
عرض النتيجة النهائية بعد انتهاء التصحيح.
مراجعة إجاباته الصحيحة والخاطئة (إذا سمح المعلم بذلك).