منصة ويب بإطار Laravel وBootstrap لإدارة دورة تصويت رقمية بثلاثة أدوار: تسجيل الناخبين، وطلبات ترشح تراجعها الإدارة، وتصويت لمرة واحدة بتأكيد نهائي.

نظام التصويت الإلكتروني منصة ويب مبنية بإطار Laravel للخلفية وBootstrap للواجهات، تؤتمت دورة انتخابية رقمية كاملة: إنشاء الحسابات، وتقديم طلبات الترشح ومراجعتها، ونشر السير الذاتية والبرامج الانتخابية للمرشحين، ثم الإدلاء بالصوت مع خطوة تأكيد تمنع تغييره لاحقًا. نفذ المشروع فريق من الطلاب بمساعدة تقنية من مكتب تكنو إنجاز.
يقوم النظام على ثلاثة أدوار: الناخب (المستخدم العادي)، والمرشح الذي يُرقّى بعد موافقة الإدارة، ومدير النظام الذي يدير الطلبات والمرشحين ويتابع التصويت ونتائجه. ويفرض نموذج البيانات قاعدتين أساسيتين: طلب ترشح واحد لكل مستخدم، وصوت واحد لكل مستخدم. وهو نموذج تطبيقي أكاديمي لإثبات الفكرة، لا نظام انتخابات معتمدًا.
| العنصر | البيانات |
|---|---|
| نوع المشروع | منصة ويب لإدارة التصويت الإلكتروني متعددة الأدوار |
| المجال | تطبيقات الويب، نظم المعلومات |
| حالة المشروع | نموذج تطبيقي أكاديمي |
| دور تكنو إنجاز | دعم ومساعدة تقنية للطلاب أثناء تطوير المشروع |
| تقنيات أساسية | Laravel (بنية MVC)، Bootstrap، قاعدة بيانات علائقية |
| المستخدمون | ناخب، مرشح، مدير نظام |
| المخرجات | تسجيل الحسابات، طلبات ترشح بحالات واضحة، صفحات سير ذاتية للمرشحين، صفحة تصويت بتأكيد نهائي، لوحة إدارة |
تعتمد الانتخابات التقليدية على إجراءات ورقية ويدوية بطيئة ومكلفة، تزيد احتمال الأخطاء البشرية وتؤخر إعلان النتائج، وقد تصعّب المشاركة على من يواجهون عوائق جغرافية أو صحية في الوصول إلى مراكز الاقتراع. كما يحتاج الناخب إلى معلومات واضحة وموحدة عن المرشحين وبرامجهم ليتخذ قرارًا مستنيرًا.
يهدف المشروع إلى جمع هذه الخطوات في منصة واحدة: تسجيل منظم للمستخدمين، ومسار رسمي لطلبات الترشح تراجعه الإدارة، وصفحات تعريف للمرشحين، وتصويت إلكتروني يُسجَّل مرة واحدة دون إمكانية التعديل، مع أدوات للمدير لمتابعة العملية.
نُفذ المشروع أكاديميًا بواسطة الطلاب، مع مساعدة ودعم تقني من مكتب تكنو إنجاز أثناء مراحل التطوير. ويُعرض ضمن أعمال المكتب مثالًا على دعمه لتطبيقات الويب متعددة الأدوار المبنية بإطار Laravel، من تنظيم تدفق العمليات بين الأدوار إلى تصميم قاعدة البيانات والعلاقات بين الكيانات.
| الدور | الصلاحيات |
|---|---|
| الناخب | إنشاء حساب، صفحة شخصية بسيطة (الاسم، البريد، الصورة)، استعراض المرشحين وسيرهم، التصويت لمرشح واحد مرة واحدة |
| المرشح | كل صلاحيات الناخب بما فيها التصويت، إضافة إلى إدارة صفحة سيرته الذاتية ومحتوى حملته |
| مدير النظام | مراجعة طلبات الترشح وقبولها أو رفضها، إضافة مرشحين يدويًا وتحرير سيرهم بالكامل، متابعة التصويت ومراجعة النتائج |
| الواجهة | الوظيفة |
|---|---|
| طلبات المرشحين (لوحة الإدارة) | عرض الطلبات الواردة واتخاذ قرار القبول أو الرفض |
| صفحة السيرة الذاتية للمرشح | عرض بيانات المرشح وصورته وشعاراته وفيديو حملته |
| قائمة المرشحين | جميع المرشحين مع سيرهم الذاتية الكاملة لمساعدة الناخب على المقارنة |
| واجهة التصويت | أسماء المرشحين وصورهم مع زر تصويت بجانب كل منهم |
| إتمام التصويت | رسالة التأكيد وإغلاق إمكانية التعديل بعد الإدلاء بالصوت |
صُممت قاعدة البيانات بمخطط ERD حول أربعة كيانات رئيسية:
| الكيان | أبرز الحقول والقواعد |
|---|---|
| المستخدمون | معرّف فريد، الاسم الأول والأخير، البريد الإلكتروني، كلمة المرور، رقم الهاتف، الرقم الوطني، مؤشر التحقق من البريد، نوع المستخدم، مؤشر "أدلى بصوته"، الصورة الشخصية |
| طلبات الترشح | رقم الطلب، المستخدم المرتبط، الحالة (قيد التحقق، مقبول، مرفوض)، ملاحظات الإدارة؛ طلب واحد فقط لكل مستخدم |
| السير الذاتية | الاسم الكامل، الصورة الرسمية، ملخص عن المرشح، الشعارات، رابط فيديو الحملة؛ سيرة واحدة لكل مرشح (1:1) ولا تُنشأ إلا بعد قبول الطلب |
| التصويت | معرّف العملية، رقم الناخب، رقم المرشح؛ صوت واحد لكل مستخدم (1:1)، وعدد غير محدود من الأصوات لكل مرشح (N:1) |
وتُطبّق هذه القيود على مستوى العلاقات في قاعدة البيانات لمنع تكرار طلبات الترشح أو التصويت أكثر من مرة.
لا يتضمن الكتاب اختبارات أداء أو أمان أو تجربة مع مستخدمين فعليين، لذا تبقى هذه النتائج وظيفية تثبت عمل الدورة الانتخابية في بيئة النموذج.
بحسب الآفاق الواردة في المشروع:
يجمع النظام بيانات شخصية حساسة مثل الرقم الوطني ورقم الهاتف، ويحفظ سجلات التصويت مرتبطة بالمستخدمين. لذلك يتطلب أي استخدام فعلي تشفير هذه البيانات، وفصل هوية الناخب عن صوته، وضبط صلاحيات الوصول، ومراجعة أمنية مستقلة.
إذا كنت تعمل على منصة ويب لإدارة عمليات التصويت أو الأنظمة المؤسسية وتحتاج إلى مساعدة تقنية في تطوير الفكرة أو بناء نموذج أولي، يمكن التواصل مع مكتب تكنو إنجاز لمناقشة متطلبات المشروع ونطاق الدعم المناسب.
منصة ويب نفذها فريق من الطلاب بمساعدة تقنية من مكتب تكنو إنجاز، تؤتمت دورة انتخابية رقمية من إنشاء الحساب حتى الإدلاء بالصوت. تستخدم Laravel للخلفية وBootstrap للواجهات، وتضم ثلاثة أدوار: الناخب والمرشح ومدير النظام. وهي نموذج تطبيقي أكاديمي وليست نظام انتخابات معتمدًا.
يدخل من يختار الترشح أولًا كمستخدم عادي، ويُرسل طلبه إلى الإدارة بحالة قيد التحقق. يقبل المدير الطلب أو يرفضه مع ملاحظات توثق السبب، وعند القبول يحصل المرشح على صفحة سيرة ذاتية يضيف إليها صورته وشعاراته وروابط فيديوهات حملته. ولا يُسمح إلا بطلب ترشح واحد لكل مستخدم.
تظهر رسالة تأكيد عند الضغط على زر التصويت، وبعد التأكيد لا يمكن حذف الصوت أو تغييره أو التصويت لمرشح آخر. وتفرض قاعدة البيانات علاقة صوت واحد لكل مستخدم، مع مؤشر في سجل المستخدم يبين إن كان قد أدلى بصوته.
يراجع المدير طلبات الترشح ويقبلها أو يرفضها، ويضيف مرشحين يدويًا ويحرر سيرهم الذاتية بالكامل، ويتابع عملية التصويت ويراجع النتائج من لوحة الإدارة.
لا. النسخة الحالية تفعّل الحساب مباشرة دون تحقق بالبريد أو OTP، وتعتمد على قاعدة بيانات تقليدية ومصادقة بكلمة مرور دون تشفير كامل، ويرتبط سجل التصويت برقم الناخب. ويقترح المشروع مستقبلًا التحقق بخطوتين ودمج Blockchain، ويحتاج أي استخدام فعلي إلى اختبارات أمنية واعتمادات مستقلة.
تواصل مع فريق تكنو إنجاز لمناقشة قابلية التنفيذ العملي، اختيار القطع، وتطوير النموذج الأولي.