كــــــلــــمة و رؤيــــــــا

الدعم الانتقائي

شادي صالح – قلم صحفي

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

بالتركيز على الجانب المعلوماتي من القصة فقط (بغض النظر عن الجانب الاجتماعي والاقتصادي الكارثي) رح نشوف حجم الفشل الفظيع يلي وصلتلو المنظومة وراء البطاقة الذكية.

مابعرف إذا الخطأ من وزارة الاتصالات ولا من تكامل ولا من التجارة الداخلية. بس يلي بعرفو انو البيانات موجودة في مكان ما بشكل صحيح ولكن "تقاطعها" كان فاشل.

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

نفس الشي التموين، عندهم معلومات دقيقة عن السجلات التجارية وايمتا خلصت وإذا التغت او لاء. رغم ذلك في عالم طلعت من الدعم لانو كان عندهم سجل تجاري وانلغى من عشر سنين حرفيا.

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

هلا منجي للناحية التقنية متل ما قلت رغم انو التقنيات اللازمة لهيك تطبيقات بسيطة جدا جدا وعمرها أكثر من ٣٠ سنة الا انو المشكلة بغياب مفهوم هندسة البرمجيات Software engineering وهون عم احكي كصناعة مو كاختصاص حسب تعريف جامعاتنا.

بمفهوم صناعة البرمجيات فيه مفهومين مهمين جدا بيتم الاعتماد عليهم لتفادي هيك أخطاء:

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

المفهوم الثاني هو الاختبار testing واجراء Sanity Check، بهي الحالة (بمثالنا) بتختار عينات عشوائية ضمن خصائص إحصائية بتمثل المجتمع population وبتعمل عليها تدقيق يدوي (ولو كلفك الامر اسبوع شغل) لحتى تتأكد انو البرنامج عم يعطي نتائج مطابقة لل Auditor البشريين الخبراء بالموضوع. اما بالاختبار منكتب برامج تاني بيختبر كل تابع بالبرنامج الأول، وبكون فيه expected output (الخرج المتوقع) والخرج الحقيقي (real output) إذا كان الخرج الحقيقي مطابق للمتوقع معناها الشغل صح.

ما بيكفي ابدا إذا عملت Run للمشروع تبعك واشتغل تقول شغلك نظامي وتنشرو لملايين من العائلات يلي ممكن تقضي نهارها بلا خبز او مازوت او غاز لانو حضرتك مو عامل شغلك صح.

والسؤال الاخير: يا ترى شو بتفيد الحكومة الالكترونية والتحول الرقمي وخبرة مايكروسوفت إذا بهيك تطبيق مهم حرفيا فيه ناس جاعت بسبب الأخطاء يلي صارت فيه؟