ar flag +1 214 306 68 37
تحديث نظام حيوي لإدارة التعلُّم (LMS) يستخدمه مئات الآلاف من متخصصي السلامة العامة

تحديث نظام حيوي لإدارة التعلُّم (LMS) يستخدمه مئات الآلاف من متخصصي السلامة العامة

قطاع الصناعة
التعليم, الخدمات العامة
التقنيات
AWS, Python

نبذة عن عميلنا

شركة أميركية تُقدِّم برمجيات سحابية للقطاع العام ومؤسسات السلامة العامة. وتدعم حلولها الحوكمة التشغيلية وتمكين القوى العاملة عبر مجموعة متنوعة من الجهات، بما في ذلك خدمات الطوارئ والهيئات الحكومية المحلية.

البنية التقنية لنظام إدارة التعلُّم (LMS) تواجه قيودًا في التوسع

أحد منتجات العميل القائمة منذ فترة طويلة هو نظام لإدارة التعلُّم (LMS) يدعم التدريب والامتثال وسير عمل الشهادات لمجموعة واسعة ومتنوعة من المستخدمين. ويتميّز النظام بدرجة عالية من التخصيص ليعكس متطلبات المجال، والمتطلبات التنظيمية والمؤسسية، ومتطلبات الجهات القضائية المختلفة، التي تراكمت على مدار أعوام من الاستخدام الفعلي.

مع تزايد اعتماد المستخدمين على النظام، ظل موثوقًا من الناحية الوظيفية، لكن تحسينه وتوسيعه أصبح أكثر صعوبة، من دون تعطيل المستخدمين الحاليين. لمعالجة ذلك، احتاج العميل إلى تحديث البنية التقنية للنظام على نحو يدعم النمو المستقبلي والتكاملات الجديدة، مع تجنب أي تعطّل للمستخدمين النشطين والحفاظ على المعرفة المتخصصة القيّمة المدمجة في المنصة. وقد انضمت ساينس سوفت إلى المشروع كشركة استشارية في مجال هندسة البرمجيات تتمتع بخبرة كبيرة في تحديث البرمجيات وتصميم البنى التقنية.

إعداد خطة تحديث عملية تدعم التوسع وقابلية التنبؤ والكفاءة

بدأت ساينس سوفت بإجراء مراجعة عملية متعمقة لنظام إدارة التعلُّم (LMS)، شملت البنية التقنية، وقاعدة الكود البرمجي، والتكاملات، وقيود الأداء، ومخاطر قابلية التوسع على المدى الطويل. وبناءً على هذا التقييم، أجرى الفريق تدقيقًا شاملًا للمنصة، وقيَّم أساليب التحديث الممكنة، وقدَّم مقترحًا تقنيًا مفصلاً يحدد ما يمكن الإبقاء عليه، وما يتطلب التغيير، والمجالات التي قد تنطوي على مخاطر كامنة.

بدلاً من استبدال النظام بالكامل، اقترحت ساينس سوفت اعتماد بنية تقنية منفصلة الواجهات (Headless) تحافظ على معظم منطق الأعمال الحالي، مع فصله عن القيود السابقة للنظام. وقد أدى وضوح المقترح، إلى جانب الفهم العميق الذي أظهره الفريق لسياق منصة العميل، إلى المضي قدمًا مع ساينس سوفت شريكًا لتنفيذ المشروع.

تنفيذ التحديث المستهدف لتعظيم كفاءة وقيمة نظام إدارة التعلم (LMS)

دمجت ساينس سوفت فريقًا من 5 مهندسين كبار في Python وJavaScript مباشرةً ضمن فرق التطوير متعددة التخصصات لدى العميل. وقد شاركت ساينس سوفت في جميع الخطوات الرئيسية للتحديث، بما في ذلك:

  • استخراج منطق الأعمال الأساسي وضمان استقراره: أسهم مهندسو ساينس سوفت في تحديد التبعيات الضمنية في الكود القديم، وإعادة هيكلتها وتحويلها إلى خدمات واضحة يمكن الوصول إليها عبر واجهات برمجة التطبيقات (API)، مع ضمان الحفاظ على السلوك الحالي للنظام حتى مع تغيير الواجهات.
  • إعادة تصميم واجهات برمجة التطبيقات (API) وتوحيدها: وحَّدت ساينس سوفت نقاط النهاية القديمة غير المتسقة، التي تطلبت في كثير من الأحيان معالجة سلوكيات غير موثقة وحالات استثنائية لتجنب تعطيل عمليات التكامل الحالية. ولتوحيد طبقة واجهات نظام إدارة التعلُّم (LMS)، صمَّم ونفَّذ الفريق طبقة REST API على خدمتي AWS API Gateway وLambda مع توحيد الإصدارات، ومعالجة الأخطاء، والتحكم في الوصول، وفرض خصائص أداء محددة بوضوح عبر ضوابط عبر عناصر التحكم على مستوى واجهة برمجة التطبيقات (API).
  • التكامل مع نظام مركزي لتسجيل الدخول الموحّد (SSO): ربطت ساينس سوفت نظام إدارة التعلُّم (LMS) الجديد بحل مركزي لتسجيل الدخول الموحّد (SSO). كما نفّذ الفريق تدفقات مخصصة للمصادقة، ودعم تعدد الجهات (Multi-tenant)، والإدارة الآمنة لرموز الوصول، بما يتوافق مع المتطلبات المؤسسية للعميل.
  • المزامنة في الوقت الفعلي مع الأنظمة الأساسية للمنصة: لضمان بقاء نظام LMS الجديد متوافقًا بالكامل مع منصة العميل الأوسع نطاقًا، نفذ مهندسو ساينس سوفت واجهات برمجة تطبيقات (API) وإشعارات webhooks قائمة على الأحداث، ما أتاح اتصالًا في الوقت الفعلي بالنظام المركزي الذي يدير المستخدمين والمؤسسات. وقد ضمن هذا النهج أن جميع التحديثات (مثل تغييرات أدوار المستخدمين، ومهام المجموعات، ومتطلبات الامتثال) تُطبَّق فورًا، ما يعالج مشكلة البيانات غير المحدثة ويقلل الحاجة إلى المطابقة اليدوية للبيانات.
  • تحديث واجهة المستخدم (UI): حدَّثت ساينس سوفت واجهات المستخدم القديمة لتتماشى مع إرشادات التصميم المؤسسي لشركة العميل. وفي الوقت ذاته، تم تكييف واجهات المستخدم (UIs) للعمل مع واجهات برمجة التطبيقات (APIs) الجديدة بنمط منفصل (Headless)، ما يضمن فصلًا واضحًا بين طبقة العرض ومنطق الواجهة الخلفية.

بنية سحابية قابلة للتوسع على منصة AWS

استنادًا إلى خبرة ساينس سوفت في AWS، ضمن مهندسوها قدرة نظام إدارة التعلُّم الجديد على التعامل مع مستويات عالية من التزامن وأحمال العمل الكبيرة، بالاعتماد على ECS مع التوسع التلقائي، ووحدات الحوسبة دون خادم (Lambda)، وطبقات التخزين المؤقت (CloudFront وRedis)، والمعالجة غير المتزامنة، وقواعد البيانات دون خادم (Aurora).

حلَّل المهندسون أولاً أنماط حركة استخدام نظام إدارة التعلم (LMS)، وسيناريوهات الاستخدام في أوقات الذروة، وتبعيات سير العمل لتحديد متطلبات واضحة لبنية AWS، مع التركيز على الأداء، وقابلية التوسع، وكفاءة التكلفة. وبناءً على هذا التحليل، تأكد مهندسونا من أن المنصة يمكنها العمل بأداء موثوق في ظل أحمال العمل المتوقعة وفي أوقات الذروة، واختاروا خدمات AWS وأنماط التوسع المناسبة لدعمها.

لضمان سرعة استجابة مسارات العمل الموجّهة للمستخدمين على نحو ثابت، أدخل الفريق المعالجة غير المتزامنة للعمليات التي تستهلك موارد كبيرة، مثل التسجيلات الجماعية في الدورات التدريبية، كما نفّذ استراتيجيات ذكية لإبطال التخزين المؤقت تمنع ظهور المحتوى غير المحدث مع تقليل الوصول غير الضروري إلى قاعدة البيانات. كما وضع الفريق سياسات دقيقة للتوسع التلقائي لتحقيق التوازن بين الأداء والتكلفة، وتحسين خدمة Amazon Aurora لتحقيق معدل مرتفع لعمليات القراءة والكتابة وزمن استجابة منخفض، باستخدام إمكانات الحوسبة دون خادم لاستيعاب الارتفاعات المفاجئة في حركة المرور.

تحسينات في البنية التقنية وضمان الجودة خلال تنفيذ المشروع

طوال فترة التعاون، سعى مهندسو ساينس سوفت إلى إيجاد الفرص لجعل نظام إدارة التعلم (LMS) أكثر كفاءة وموثوقية وسهولة في الصيانة. على سبيل المثال، أوصى المهندسون بتنفيذ إطار اختبار شامل يجمع بين اختبارات الوحدات واختبارات التكامل ومحاكاة سير العمل من البداية إلى النهاية للأجزاء الأكثر تعقيدًا، مثل وحدات Lambda والاتصالات مع أنظمة العميل الأخرى. وكانت مسارات العمل في النظام القديم تحتوي على تبعيات خفية يمكن أن تتعطل بسهولة عند إعادة هيكلتها للعمل بنمط منفصل الواجهة (Headless). وقد مكَّن إجراء الاختبارات على مستويات متعددة من طرح إصدارات أسرع وبثقة أكبر، مع ضمان بقاء عمليات ترحيل البيانات وطلبات واجهات برمجة التطبيقات (API) مستقرة حتى في ظل الأحمال العالية.

بالإضافة إلى ذلك، اقترح مهندسو ساينس سوفت اعتماد لغة القوالب Velocity Template Language (VTL) وتنفيذها في بوابة واجهات برمجة التطبيقات (API). وقد أتاحت هذه اللغة تحويل الطلبات والاستجابات ديناميكيًا، وتكييف تنسيقات البيانات القديمة مع واجهات برمجة التطبيقات الحديثة، إضافة إلى فرض سلوك متسق. وساعد هذا النهج على تجنب الحاجة إلى طبقة وسيطة (middleware) منفصلة أو وظائف Lambda لعمليات التحويل، وهو ما كان سيضيف تعقيدًا وزمن استجابة أطول وأعباءً إضافية على الصيانة.

تقديم نظام إدارة تعلم (LMS) أكثر أمانًا وسرعة وقابلية للتوسع

خلال 10 أشهر فقط، تحوّل نظام إدارة التعلّم (LMS) من حل قديم شديد الترابط إلى منصة منفصلة الواجهة (Headless) جاهزة للتشغيل الفعلي. وقد حافظت البنية التقنية الجديدة على أعوام من منطق الأعمال المدمج، مع إنشاء أساس مستقر يدعم النمو والتكامل في المستقبل. كما أدى التوسع السحابي، والمعالجة غير المتزامنة، والوصول المحسّن إلى البيانات إلى تعزيز الأداء والموثوقية في ظل الأحمال المتغيرة وأوقات الذروة. وفي الوقت ذاته، قلَّلت الواجهات الموحّدة والخدمات السحابية المُدارة من جهود الصيانة المستمرة والتكاليف التشغيلية.

اكتملت عملية التحديث دون تعطيل العمليات اليومية، ما أتاح للمنصة مواصلة خدمة مئات الآلاف من المستخدمين النشطين طوال فترة التحول.

التقنيات والأدوات

Python, Django, React, AWS (ECS, Lambda, API Gateway, Aurora, SQS, SNS, S3, ElastiCache, CloudFront, CloudWatch, SNS, ECR, KMS), Terraform.

هل تحتاج إلى استشارة؟

تواصل معنا! نحن هنا للإجابة عن أسئلتك على مدار الساعة وطوال أيام الأسبوع.

Upload file

اسحب وأفلت لتحميل ملف أو أكثر

الحد الأقصى لحجم الملف 10 ميغابايت، حتى 5 ملفات وإجمالي 20 ميغابايت

التنسيقات المدعومة:

doc, docx, xls, xlsx, ppt, pptx, pps, ppsx, odp, jpeg, jpg, png, psd, webp, svg, mp3, mp4, webm, odt, ods, pdf, rtf, txt, csv, log