Web Services و تطبيقها على الحكومة الإلكترونية

24 نوفمبر 2007. كتبه في قسم انترنت | الردود: 29

[في هذه التدوينة سأشرح ماهي الـ Web Services أو خدمات الويب، و كيف لها أن تبسط عملية معقدة كبناء الحكومة الإلكترونية]

ماهي الـ Web Services؟
ببساطة هي نوع من تطبيقات الويب تقدم خدمات إلكترونية للمستخدمين (Clients) سواء بشر كانوا أم تطبيقات Ùˆ برامج آخرى. يقوم المستخدم بالاتصال Ùˆ طلب الخدمة (Service Request) من الويب سيرفسس عبر واجهته “البرمجية” (Ùˆ ليست رسومية (GUI) كالأزرار Ùˆ الأسهم الخ) وهي ما تعرف بالـ Application Programming Interface – APIs ØŒ Ùˆ من ثم يرسل الويب السيرفسس نتيجة الطلب للمستخدم مرة آخرى على هيئة ملف XML. Ùˆ تعتبر الويب سيرفسس أحد مظاهر الويب 2.0.

و تستخدم الويب سيرفسس ثلاث تقنيات:
- SOAP وهو برتوكول لتبادل رسائل الـ XML ، وهو مبني على بروتوكلي HTTPS/HTTP المعروفين.
- WDSL أو Web Services Description Language و هي لغة على هيئة XML لوصف الويب السيرفسس و التعريف بخدماته و الـ end-points الخاصة به لتبادل الرسائل. تجد هنا أمثلة لـ wdsl بالبحث في جوجل و مثال لـ wdsl لخدمة بحث جوجل نفسها.
- UDDI أو Universal Description, Discovery and Integration و هو دليل على الانترنت لسرد الويب سيرفسس و يتيح لها التعرف على بعضها، أي أنه كدليل الهاتف.

[مثال] استخدام Google APIs
من أشهر الويب سيرفسس هي التي تقدمها جوجل، على سبيل المثال تستطيع أن تستخدم خدمات بحث جوجل في أي برنامج تبرمجه، ما عليك إلا تحميل الـ APIs الخاصة بخدمات البحث ، و هي متوفرة تحت Google Data API. قم بتحميل مكتبة الـ API الخاصة بلغة البرمجة التي تناسبك. و هذا مثال كيف تستخدمها بلغة الـ C#NET. [أو حمل البرنامج النهائي من هنا]. مكتبة APIs جوجل لا تنحصر فقط على محرك البحث بل تشمل كل خدمات جوجل كـ YouTube، FeedBurner، Android و غيرها الكثير.

[تطبيق] الحكومة الإلكترونية eGovernment
كنت قد أخذت قبل أسبوعين دورة عن استخدام مكتبة Oracle ADF في برنامج JDevelpor، و شاركنا محاضر الدورة وهو أردني كيف يمكن للويب سيرفسس أن تساعد كثيرا في بناء الحكومة الإلكترونية حيث أنه يعمل في هذا المجال حاليا. بداية، من خدمات الحكومة الإلكترونية هو إنجاز إجراءت طلبات المواطنين إلكترونيا، و لنفرض أن لدينا هذه الحالة التالية:

لدى للأحوال المدنية قاعدة بيانات من نوع IBM DB2 بأسماء المواطنين و أرقام هوياتهم و معلوماتهم ، و الجوزات لديها قاعدة بيانات نوعها Oracle، و وزارة العمل لديها قاعدة بيانات Microsoft Access، و مصلحة الزكاة ليس لديها إلا ملف Excel بمعلومات الزكاة للمواطنين. نريد الآن ربط هذه الدوائر مع بعضها الكترونيا لإتمام إجراءات المواطنين، على سبيل المثال عندما تحتاج مصلحة الزكاة لمعلومات عن المواطن يجب أن تستطيع الحصول عليها الكترونيا من الأحوال المدنية ، و هكذا.

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

الحل الأمثل لهذه المشكلة هو باستخدام الـ Web Services. لتقوم كل دائرة ببرمجة الويب سيرفسس الخاصة بها باستعانة فريق برمجة إنشاء الحكومة الإلكتورنية، ومن ثم يمكن للدوائر الإتصال فيما بينها عن طريق ويب سيرفسساتها (أتحداك تنطقها :mrgreen: ) أو عن طريق دائرة مركزية تربط بين الدوائر و تضمن حماية الاتصالات الإلكترونية بين الويب سيرفسس، أو يمكن جمعها في موقع بورتال واحد Portal. انقر على الصورة للتوضيح.

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

مصادر
[W3Schools] Web Services Intro
[Webopedia] What is Web Services?
[Wikipedia] Web Service

لم أجد موضوعا حول الويب سيرفيسس في الويكيبيديا العربية، لذا جاري تعديل التدوينة لإضافتها هناك ;)

شارك الموضوع على

29 ردود على Web Services Ùˆ تطبيقها على الحكومة الإلكترونية

  1. أبو يزن قال:

    يعطيك ألف مليون عافية على هالمقال المتميز ..

    ما قصرت .. أنتظره من زمان ..

    (f)

  2. أبوخالد قال:

    يعطيك ألف عافية
    معلومات قيمة ومقال إبداعي

    شكرا لك

  3. باسم السلوم ( حرباز ) قال:

    يعطيك الف عافية صالح ،،

    تسلم الأيادي والله

  4. أدهم قال:

    شرح رائع صالح :)
    الله يعطيك ألف عافية ياغالي

    فعلاً تقنية عجيبة جداً
    تحياتي عزيزي :)

  5. ماجد الفيفي قال:

    مشكور أخ صالح و في انتظار الموضوع في ويكيبيديا

  6. بدر الشايع قال:

    معلومات قيمة ..
    أشكرك أستاذ صالح على الشرح المبسط …

    لك تحيتي :)

  7. صطيف قال:

    شكراً صالح على هذا الشرح المبسط والرائع، وأضحكتني عندما مثلت قاعده بيانات وزاره العمل بقاعده بيانات أكسيس، وذلك لمحدودية أكسيس في عدد قنوات الاتصال في المرة الواحدة … وكأن حال لسانها يقول: تعال بكرة!!

    صطيف

  8. فيصل قال:

    الله يعطيك العافية صلوح

    مقال متعوب عليه…

    لازم أرجع وأقراها كاملة

    ماهي غريبة عليك صلوحي :)

  9. مطلق قال:

    الله يعطيك الف الف عافية على المقال الرااااائع

    موضوعك بيفيدني كثييييييير في البروجكت و وفرت علي وقت البحث

    جزاك الله خير

  10. hakem2010 قال:

    جهد يشكر عليه الاخ صالح ولاكن لدية ملاحظة بسيطة:
    وهي ان الحل الاول الذي طرح هو الامثل وهو المتمثل في بناء قاعدة بيانات رئسية بتطبيقات مبنية على الويب web based ومن ثم تمنح الصلاحيات للدوائر الحكومية كل حسب تخصصة والادارة تمنح موظفيها بنفس الطريقة وهنا يتحقق هدف التكاملية integration ويتم توفير ثمن تراخيص قواعد البيانات وبرامج التطوير التي تدفع من كل ادارة حكومية .
    وهذا الحل مناسب فقط للحكومات المركزية التي تطبق نظام اداري واحد على جميع مناطق الدولة بعكس الحكومات الفيدرالية التي تختلف انظمتها كل ولاية عن الاخرى كما هو الحال في امريكا .
    ولاكن هذا الكلام لا يناسب شركات البرمجيات والقائمين عليها والذين اشاروا على الحكومة بنظام web srvices والذي يظمن لهم بيع المنتج مئات المرات وخدمات الصيانة ……..الخ.
    علما ان نظام ال web ssrvices مهم جدا في تعامل برنامج الحكومة الاكترونية مع القطاع الخاص G2B وتعامل الحكومة الاكترونية مع حكومات اخرى G2G.
    ولكم خالص التحية

  11. فؤاد الفرحان قال:

    رائع رائع يا صالح.

    ممكن نستخدمه في البرزينتيشنز مع ذكر المصدر؟

  12. raed قال:

    صادني شلل و أنا أحاول أقول سسسس يرفسستها!

    يعطيك العافية .. يعجبني في مدونتك تخصصها، مو مثل مدونتي ما أدري وين الله قاطني !

  13. مهدي قال:

    بارك الله فيك
    انا كنت محتاج لهذه المعلومات
    والحمدلله لقيتها عندك

    موفق ان شالله

  14. المفيد قال:

    ماأقول إلا الله يوفقك أخوي صالح وأنا معجب بخدمات قوقل لأنها شاملة لجميع الخدمات وشكراً على الموضوع الجميل …….. تحياتي أخوك …… المفيد

  15. المهاجر قال:

    السلام عليكم

    جهد رئع اخي صالح ويعطيك الف عافيه

    اخوك المهاجر

  16. الـهـنـوف قال:

    من زمان و أنا ودي أشكرك على هالجهد ..

    مقالك استفدت منه كثير في بحثي عن الويب سيرفيس .. خصوصا إنك قدرت تبسط المفهوم بشكل ميسر ..

    سويت كوبي لنفس الرسمات اللي هنا و حطيتها بالبرزنتيشن :D ..

  17. صالح قال:

    شكرا للجميع لمشاركاتهم

    @الهنوف
    ما عندي مانع تستفدين من المقالة ، لكن بشرط تذكرين المصدر.

  18. سلطان العلي قال:

    المهندس صالح السلام عليكم

    أنا عندي مشكلة مع الـ
    webservices and SOAP

    فإذا كان وقتك يسمح أرجو مراسلتي على الإيميل في أسرع وقت ممكن.

    و شكرا على تعاونك

  19. صالح قال:

    @سلطان العلي
    يا هلا سلطان
    يمكنك إرسال سؤالك على إيميلي بالجي ميل الموجود بالقائمة الجانبية
    و سأكون سعيد للإجابة عليه
    تحياتي

  20. صالح العيد قال:

    شكرا لك يا سميي :)
    يكفي من مميزات الويب سيرفس الحماية .

  21. الظافر / المخواة قال:

    معلومات ممتازة
    شكرا على ما قدمت وننتظر المزيد للفائدة

  22. saman قال:

    شكرا للأخ صالح
    وأحب أن أذكر أن شركة مايكروسوفت تقدم تسهيلات رائعة فى مجال إنشاء الويب سيرفس من خلال لغات البرمجة المختلفة مثل ASP.NET
    وهذه أفضل طريق للإتصال بقواعد البيانات عن بعد
    وإمكانية إستفادة الآخرين من الويب سيرفس تبعك
    وأيضا هى طريقة مربحة جدا إذا كانت الويب سيرفس تبعك تقدم خدمة يحتاجها الكثير من الناس
    وتقدر تعمل لها مشتركين لجنى المال من خلالها

  23. barro0ok قال:

    يعطيك ألف عافيه من زمان وأنا أدور على شرح واضح للويب سيرفس

  24. حمد / امريكا قال:

    يعطيك العافيه شرح وافي ويبدوا بأنه الشرح الوحيد في اي موقع عربي

  25. نوره قال:

    توضيح رااائع و شامل

    وضح لي مفاهيم كثيره بتساعدني لشرح درس للطالبات

    حول مفهوم الحكومه الالكترونية

    ثانكس

    و جزاك الله كل خير

  26. قيس ابوسل قال:

    تسلم يا مهندس صالح على الموضوع الرائع بارك الله فيك

    وكلام الاخ saman جميل ايضا بس عندي اضافة
    للاخ صطيف الذي قال :
    مثلت قاعده بيانات وزاره العمل بقاعده بيانات أكسيس، وذلك لمحدودية أكسيس في عدد قنوات الاتصال في المرة الواحدة

    وانا اقوله اني بنيت موقع حكومي بكامل تطبيقاته كانت البدايه فية قواعد بيانات اكسس وكان فيه خدمات للمواطنين والخ وتم دخولهم بالالاف ولم يضحك الاكسل على نفسه وقتها اي محدودية حسب طبيعة البيانات داخل الحقول وحجم البيانات المسموح لقاعدة البيانات الواحدة بغض النظر عن المحدودية لايؤثر على وقت التنفيذ “فتعال بكره ” ليست في مكانها السليم ياصطيف وشكرا

  27. قيس ابوسل قال:

    اقصد الاكسس access data base وليس الاكسل

  28. محمد وجيه قال:

    رائع ومفيد الكلام :
    بس في طلب صغير ممكن تزويدنا بمادة عن الويب سرفس بالتفصيل و استخدامها بالدوت نت

    و البرنامج لما تشغله بيطلع اكسبشن من الجوجل
    وشكرا جزيلا

  29. خلود قال:

    شكرا جدا

اكتب رداً