OstimGPT
روبوت محادثة قائم على Retrieval-Augmented Generation ومستضاف محليًا، يجيب عن الأسئلة من مصادر الجامعة.
SAMS منصة رقمية لطلبات التقديم الطلابية تدعم ملفات المتقدمين ومسارات المراجعة الداخلية وإدارة حالة الطلب والتقارير وتهيئة اللغة المدعومة بنماذج ذكاء اصطناعي مستضافة محليًا. وضمن فريق التطوير بنيت واجهات الملف الشخصي، ولوحة ملاحظات داخلية للمراجعين، ومزامنة بين حقول النموذج والطلبات المقدَّمة، ونقطة API لحالة الطلب، ولوحة تقارير قابلة للتهيئة.
Student Application Management System منصة رقمية لمعالجة طلبات التقديم الطلابية من طرف إلى طرف: يبني المتقدم ملفًا شخصيًا ويقدّم طلبه، ويراجع الموظفون تلك الطلبات ويسجّلون ملاحظات داخلية وينقلونها بين الحالات ويصدرون تقارير عن النتيجة.
ساهمت في هذه المنصة ضمن فريق التطوير في الجامعة. وتركّز عملي على الواجهات التي يستخدمها المتقدمون والمراجعون فعليًا، وعلى إبقاء البيانات المقدَّمة متسقة مع النماذج التي أنتجتها، وعلى واجهات الحالة والتقارير المبنية فوق ذلك.
طلبات التقديم الطلابية عملية إدارية متكررة وكبيرة الحجم، ولها جمهوران متمايزان: المتقدمون الذين يستخدمون النظام مرة أو مرتين ويحتاجونه واضحًا بذاته، والمراجعون الداخليون الذين يستخدمونه باستمرار ويحتاجونه فعّالًا.
والمنصة التي تخدم الجمهورين ينبغي أن تُصمَّم لهما معًا. وقد وقع كثير من عملي على جانب المراجِع، حيث يتكرر العناء الصغير مئات المرات.
عملية تقديم تُدار عبر نماذج وجداول ورسائل بريد غير مترابطة تفقد سياقها. فلا يرى المراجعون سبب اتخاذ قرار ما، ولا يرى المتقدمون أين وصل طلبهم، ويصبح إصدار التقارير إعادة بناء للصورة يدويًا.
دوري في المشروع
طوّرت واجهة صفحة الملف الشخصي وصفحة ملف المتقدم، وبنيت لوحة ملاحظات داخلية للمراجعين. نفّذت مزامنة تلقائية بين حقول النموذج والطلبات المقدَّمة، ووسّعت نماذج البيانات بحقول متعلقة بالمراجعة. طوّرت نقطة API لحالة الطلب، وأنشأت لوحة تقارير قابلة للتهيئة. كما ساعدت في نقل تهيئة اللغة في المنصة إلى خدمة منفصلة مدعومة بنماذج مستضافة محليًا.
سياق الفريق
هذه منصة جامعية يبنيها ويصونها فريق تطوير البرمجيات في مكتب تنسيق التحول الرقمي. كنت مساهمًا في ذلك الفريق لا مالكًا للمنصة. والميزات الموصوفة هنا هي التي طوّرتها شخصيًا؛ أما المنصة ككل — بنيتها ووحداتها الأخرى وتشغيلها — فعمل مشترك للفريق، طُوّر في دورات Sprint بمراجعة شيفرة تعاونية.
تبع العمل دورة حياة الطلب نفسها: منح المتقدم ملفًا متماسكًا، ومنح المراجِع السياق اللازم للقرار، وإبقاء البيانات الأساسية متسقة مع تغيير الطرفين لها، ثم إتاحة الحالة والتقارير فوق هذا الأساس.
ينشئ المتقدم ملفًا شخصيًا ويقدّم طلبه. ويُخزَّن الطلب في نماذج تحمل بيانات الطلب وحقول المراجعة معًا، وتبقى متوافقة مع تعريف النموذج عبر مزامنة تلقائية. ويعمل المراجعون من خلال صفحة ملف المتقدم ولوحة الملاحظات الداخلية. وتُتاح حالة الطلب عبر نقطة API، وتقرأ لوحة تقارير قابلة للتهيئة عبر الطلبات. أما تهيئة اللغة فتتولاها خدمة منفصلة مدعومة بنماذج مستضافة محليًا.
الطلب معروضًا سجلًا واحدًا متماسكًا لا مجموعة إجابات على نموذج.
تعليل المراجِع مسجَّل على الطلب نفسه، حيث سيجده المراجِع التالي.
تبقى حقول النموذج والبيانات المقدَّمة متوافقة تلقائيًا مع تغيّر النماذج.
نماذج طلبات موسَّعة بحقول متعلقة بالمراجعة، تمنح حالة المراجعة موضعًا حقيقيًا.
نقطة طرفية مخصّصة تتيح لبقية أجزاء النظام قراءة الحالة مباشرة.
يصوغ الموظفون التقرير الذي يحتاجونه بدل طلب شاشة ثابتة جديدة.
تتغير النماذج مع الوقت، والبيانات المقدَّمة وفق تعريف نموذج أقدم تنحرف عن التعريف الحالي.
نفّذت مزامنة تلقائية بين حقول النموذج والطلبات، فأصبح النظام هو من يصون هذه العلاقة لا من يتذكّر تحديثها.
لم يكن لحالة المراجعة — الملاحظات والقرارات والسياق — موضع منظّم تعيش فيه، ما يدفعها إلى البريد والقنوات الجانبية حيث تكفّ عن كونها جزءًا من السجل.
وسّعت نماذج الطلبات بحقول متعلقة بالمراجعة وبنيت فوقها لوحة الملاحظات الداخلية، فصار سياق المراجِع مخزَّنًا مع الطلب الذي يخصّه.
التقارير الثابتة تُنشئ طابورًا: كل سؤال جديد يصبح طلب تطوير.
بنيت لوحة التقارير قابلة للتهيئة، فصار بوسع الموظفين الإجابة عن أسئلة جديدة دون انتظار تغيير في الشيفرة.
| القرار | البديل المطروح | المبرر |
|---|---|---|
| توسيع نماذج الطلبات القائمة بحقول متعلقة بالمراجعة. | الاحتفاظ بحالة المراجعة في مخزن منفصل بجوار الطلبات. | إبقاء حالة المراجعة مع الطلب يعني أن سجلًا واحدًا يروي القصة كاملة ولا يمكن أن يفقد تزامنه. صحيح أن ذلك يوسّع نموذج الطلب، وهو الثمن المقبول. |
| جعل التقارير قابلة للتهيئة بدل شحن تقارير ثابتة. | مجموعة من شاشات التقارير المعرَّفة مسبقًا. | التقارير القابلة للتهيئة عمل أكبر في البداية لكنها تزيل اعتمادًا متكررًا على المطورين مع كل سؤال جديد. التقارير الثابتة أسرع في البناء وأبطأ في التعايش معها. |
| نقل تهيئة اللغة إلى خدمة منفصلة مدعومة بنماذج مستضافة محليًا. | إبقاء تهيئة اللغة داخل التطبيق الرئيسي. | يُبقي الفصلُ السلوكَ المدعوم بالنماذج خارج نواة التطبيق ويتيح تغييره باستقلال. وهو يضيف حدًا خدميًا يجب تشغيله، وتلك كانت المقايضة المقبولة. |
صار للمتقدمين عرض قائم على الملف الشخصي لطلبهم، وللمراجعين صفحة ملف متقدم مع لوحة ملاحظات داخلية تُبقي تعليلهم مرتبطًا بسجل الطلب.
وتبقى البيانات المقدَّمة متوافقة مع النماذج التي أنتجتها عبر المزامنة التلقائية، ولحالة المراجعة موضع محدد في نموذج الطلب.
وحالة الطلب متاحة عبر نقطة API مخصّصة، ويستطيع الموظفون صياغة تقاريرهم بأنفسهم عبر لوحة التقارير القابلة للتهيئة.
ستُضاف لقطات الشاشة لاحقًا
هل لديك مشروع برمجي أو ذكاء اصطناعي أو RAG أو تطبيق ويب؟ لنتحدث عمّا تحتاجه ونحدد المنهج التقني المناسب.