Source Safe | نظام الشبكات التطبيقية | جامعة دمشق
تم تصميم هذا النظام لتعزيز التعاون على الملفات، والتحكم في الإصدارات، وتحسين الأداء، مع ضمان الكفاءة وسهولة الاستخدام. ومن خلال تطبيق مبادئ حديثة في تصميم البرمجيات، قمت ببناء نظام ويب عالي الأداء وقابل للتوسع، يعالج تحديات التعاون الواقعية.
عملتُ كمطور Back-end في هذا المشروع، مع التركيز على بناء واجهة برمجية (API) قوية ومحسّنة لإدارة الملفات، والإشعارات، والتحكم بالوصول.
الميزات الأساسية:
التحكم بالوصول والصلاحيات المبنية على المجموعات – يمكن للمستخدم إدارة الملفات فقط ضمن مجموعاته المخصّصة.
التحكم بالتوازي ? – يضمن عدم قدرة مستخدمين على تعديل الملف نفسه في الوقت ذاته.
إدارة السحب الآلي ⏳ – يتم سحب الملفات تلقائيًا بعد 48 ساعة لضمان انسيابية العمل.
التحكم بالإصدارات وسجلات التتبع – يتتبع تعديلات الملفات، مما يضمن الشفافية والمساءلة.
نظام النسخ الاحتياطي والاستعادة – يحفظ نسخًا من الملفات قبل وبعد التعديلات للحفاظ على سلامة البيانات.
نظام شامل للتتبع والتقارير – يتيح للمشرفين مراقبة نشاطات المستخدمين وإنشاء تقارير تفصيلية.
نمط التصميم (Strategy) لتصدير الملفات – يدعم تصدير التقارير بصيغتي PDF وCSV.
إشعارات آنية عبر Firebase – تم دمج الإشعارات باستخدام البرمجة الموجهة بالجوانب (AOP) لإرسال التنبيهات تلقائيًا عند تنفيذ أي إجراء على الملفات، دون تعديل المنطق الأساسي للنظام.
تحسين الأداء – تم إجراء اختبارات تحميل باستخدام JMeter لضمان كفاءة النظام تحت الاستخدام المتزامن.
تحسينات الأداء:
الفهرسة والتخزين المؤقت القائم على الملفات – تحسين الاستعلامات باستخدام الفهارس والتخزين المؤقت الفعّال، مما يقلل من زمن التنفيذ.
OPcache – تفعيل OPcache في PHP لتسريع تنفيذ الشيفرة عبر تخزين البايت كود المترجم في الذاكرة.
معالجة فعّالة للملفات – تحسين تخزين واسترجاع الملفات لتقليل زمن الاستجابة واستهلاك القرص.
معمارية النظام:
اعتمدنا على مبادئ حديثة في هندسة البرمجيات لضمان القابلية للتوسع، وسهولة الصيانة، والكفاءة:
نمط Service-Repository – لفصل منطق الأعمال عن طبقة الوصول للبيانات.
معمارية MVC – لتنظيم المكونات ضمن طبقات Controller وView وModel وService.
البرمجة الموجهة بالجوانب (AOP) – لاستخدامها في التسجيل، والمراقبة، ودمج الإشعارات.
التقنيات المستخدمة:
• Back-end: Laravel
• قاعدة البيانات: تخزين SQL مع فهرسة محسّنة
• آليات التخزين المؤقت: التخزين القائم على الملفات + OPcache لتسريع الاستجابة