BlogseMACH.ai DEP

فتح الأبواب مع الخدمات المصرفية الموجهة نحو واجهة برمجة التطبيقات (API)

بقلم: بانسيريلفام د، نائب الرئيس المساعد، إنتيليكت ديزاين أرينا

أصبحت الخدمات القائمة على الحوسبة السحابية مثل SaaS (البرمجيات كخدمة) وPaaS (المنصة كخدمة) وIaaS (البنية التحتية كخدمة) وNaaS (الشبكة كخدمة) من الكلمات الرنانة في السوق. ووفقًا لأحد التقارير، قُدِّر حجم سوق الحوسبة السحابية العالمية بنحو 219 مليار دولار أمريكي في عام 2020، ومن المرجح أن ينمو إلى 791 مليار دولار أمريكي بحلول عام 20281. بينما لعبت الجائحة دورًا رئيسيًا في تحول الشركات نحو الحوسبة السحابية، كانت هناك عوامل أخرى ساعدت في هذا التحول. كان بعضها انخفاض الصيانة والتكلفة وزيادة اعتماد تقنيات مثل الذكاء الاصطناعي والتعلم الآلي وزيادة التمويل في السحابة من قبل الدول المتقدمة.

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

كيف يجب أن يعد البنك نفسه للتوسع المستمر؟ هل يمكن أن تكون واجهات برمجة التطبيقات هي الحل؟

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

1. الحفاظ على أنظمة واجهات متعددة: كان كل نظام يتطلب وظائف واجهة خاصة به للاتصال بمختلف الأنظمة النهائية الأخرى. وأدى ذلك إلى تنفيذ أنواع متشابهة من وظائف الوصلات البينية في جميع الأنظمة.

2. تكلفة ووقت كبيران لأي طلب تغيير: نظرًا لوجود تغيير في واجهة النظام النهائي، كان لا بد من تغيير جميع وظائف واجهة التطبيقات المتأثرة. كانت تغييرات الواجهة هذه مكلفة وتطلبت فترات تنفيذ أطول.

3. صعوبات في الحفاظ على الوثائق البينية: نظرًا لوجود العديد من التطبيقات، واجه البنك صعوبة في الاحتفاظ بوثائق الوصلة البينية لجميع هذه التطبيقات.

4. صعوبات في تحليل الأثر: واجه البنك صعوبات في إجراء تحليل الأثر المترتب على التغييرات في الوصلة البينية، وحدثت حالات انقطاع في الإنتاج بسبب تحليل الأثر غير السليم.

5. ارتفاع تكلفة الترخيص: تم نشر وظائف واجهة بعض التطبيقات في برمجيات وسيطة محددة مثل JBOSS، مما أدى إلى تكاليف ترخيص إضافية للبنك، بصرف النظر عن التكلفة المتعلقة بالتطبيق.

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

يحتوي مركز واجهة برمجة التطبيقات على طبقتين لواجهة برمجة التطبيقات:
مركز واجهة برمجة التطبيقات الخارجية: تتضمن هذه الطبقة حاويات واجهة برمجة التطبيقات API لكل نظام واجهة أمامية يقدمها البنك والشركات التابعة له وشركات التكنولوجيا المالية الأخرى. الغرض من هذه الطبقة هو تنفيذ المتطلبات الوظيفية لنظام الواجهة الأمامية وتجنب أي منطق في نظام الواجهة الأمامية. ويمكن تسميتها أيضاً بالواجهة الخلفية لنظام الواجهة الأمامية.
تشمل وظائف مركز واجهة برمجة التطبيقات الخارجية ما يلي:
التفويض: تخويل الوصول إلى واجهة برمجة التطبيقات لكل نظام واجهة أمامية باستخدام الدخول الموحد لريد هات.
التجميع: استدعاء العديد من واجهات برمجة التطبيقات الداخلية وتجميع النتائج لنظام الواجهة الأمامية.
التحويل: تحويل رسائل الطلب والاستجابة حسب حاجة نظام الواجهة الأمامية مثل التصفية، وتنسيق البيانات، وتحويل الرسائل، وما إلى ذلك.
ذاكرة التخزين المؤقت: تقديم المعلمات أو البيانات الثابتة إلى نظام الواجهة الأمامية.
2. مركز واجهة برمجة التطبيقات الداخلي: تتضمن هذه الطبقة حاويات API لكل معالج منتج أو أنظمة الواجهة الخلفية. الغرض من هذه الطبقة هو خدمة واجهات برمجة التطبيقات القياسية من خلال التحويل. على سبيل المثال، في حالة جهاز الصراف الآلي، يتم تحويل الرسائل من تنسيق ISO إلى تنسيق JSON لأغراض التوحيد القياسي.
يساعد تصميم محور واجهة برمجة التطبيقات الجديد هذا البنك في:
توحيد واجهات واجهة برمجة التطبيقات: تضمن API Hub أن تكون جميع واجهات واجهة برمجة التطبيقات (API Hub) بتنسيق JSON وأنها تتبع تصميم واجهة برمجة التطبيقات القياسية. وقد ساعد ذلك المطورين على فهم مواصفات واجهة برمجة التطبيقات واستخدامها بسهولة.
صيانة السجلات: تم توحيد مواصفات جميع واجهات برمجة التطبيقات وصيانتها كجزء من مركز واجهة برمجة التطبيقات وإتاحتها بسهولة للرجوع إليها من قبل الجميع.
تخفيض تكلفة الترخيص: تم تطوير واجهات برمجة التطبيقات في إطار عمل Apache Camel ونشرها كخدمات مصغرة في منصة حاويات RH OpenShift. وقد ساعد ذلك في تقليل تكلفة ترخيص مثيلات JBOSS الفردية المطلوبة لوظيفة واجهة التطبيق.
تحليل التأثير وطلبات التغيير: وفقًا لتصميم API Hub، تم توصيل التطبيقات بنظام واحد (API Hub) بدلاً من توصيلها بأنظمة متعددة في المراحل النهائية. ومن ثم تم التعامل مع تحليل التأثير وطلبات التغيير بسلاسة.
تحسين الأداء: ساعد تصميم مركز واجهة برمجة التطبيقات على تقليل الوقت المستغرق في أداء وظائف الواجهة الأمامية، بدلاً من استدعاء واجهات برمجة تطبيقات متعددة من نظام الواجهة الأمامية. لنأخذ مثالاً على تحويل الأموال، فقد تم التحقق من عمليات التحقق من صحة العديد من عمليات التحقق من صحة الأموال، والتحقق من مكافحة غسيل الأموال، وحدود الحساب، ومرة واحدة فقط من خلال استدعاءات موازية لواجهة برمجة التطبيقات، ثم تم بدء التحويل الفعلي للأموال. ساعدت مكالمات واجهة برمجة التطبيقات المتوازية على تقليل وقت المعالجة لكل نشاط.

الخاتمة

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

المصادر

1. https://www.fortunebusinessinsights.com/cloud-computing-market-102697

2. https://www.ibm.com/cloud/learn/api