ممارسة التكامل

تكامل الأنظمة في المملكة

تشغّل كل مؤسسة أنظمة اشتُريت في أوقات مختلفة من مورّدين مختلفين لحل مشكلات مختلفة، والعمل اللازم لتعمل معًا كمنظومة واحدة لا يظهر في أي من فواتيرها. وهذه الممارسة تتولى هذا العمل.

لكل واجهة مسؤول انتقال مُتدرَّب عليه مسبقًا

باختصار

جعل أنظمتكم الحالية تعمل كمنظومة واحدة

تربط إنتركي الأنظمة المؤسسية للمؤسسات في المملكة: نظام تخطيط الموارد (ERP) مع الأنظمة التشغيلية، والأنظمة التشغيلية مع بعضها، وكلها مع التطبيقات القديمة التي كان يُفترض إيقافها قبل سنوات وما زالت تحمل البيانات التي يحتاجها الجميع. ويشمل العمل الواجهات وتدفقات البيانات والهوية، وتنظيم الانتقال دون عطلة نهاية أسبوع مرهقة لا يريد أحد تكرارها.

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

وداخل مجموعة إنتركي، تقدّم القدرة نفسها عبر دول الخليج RAMA Technologies (بالإنجليزية)، من دبي والرياض. تُنفَّذ المشاريع السعودية عبر إنتركي في الرياض؛ والمشروع الذي يمتد عبر دول الخليج يُوجَّه إلى الفريق الأنسب لموقعه.

الأنماط

الطرق الخمس لربط نظامين، ومتى يكون كل منها مناسبًا

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

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

المشكلة الحقيقية

الواجهات التي تفشل تشترك في السبب الجذري نفسه

الواجهة التي لا مسؤول عنها ستتعطّل عاجلًا أو آجلًا

نادرًا ما تفشل مشاريع التكامل بسبب التقنية. بل تفشل بعد ثمانية عشر شهرًا، حين يغيّر المورّد على أحد الجانبين خانةً، وتبدأ الواجهة بإسقاط سجلات دون أي تنبيه، ويكتشف ذلك فريق المالية عند نهاية الشهر. وعندها لا أحد متأكد من بنى الواجهة، ولا أي جانب مسؤول عنها، ولا أين ذهب توثيقها.

لذلك فأول مخرجات مشروع التكامل ليس شيفرة، بل جرد لكل واجهة بمسؤول محدد ومستهلك محدد وبيان لما تعنيه البيانات على كل جانب، والشخص الذي يُبلَّغ حين يخطّط أي جانب لتغيير. وأغلب المنظومات لا تملك هذا المستند أصلًا. وإعداده يكشف عادةً واجهات لم يعرف أحد أنها تعمل، وبعضًا لم يعمل منذ مدة دون أن يلاحظ أحد، وهذه وحدها نتيجة تستحق العمل.

اقرأ المزيد

والمخرج الثاني تعريف للبيانات. يستطيع نظامان تبادل «عميل» لسنوات وهما يعنيان به شيئين مختلفين، ويعمل التكامل دون أخطاء ظاهرة بينما ينتج أرقامًا لا تتطابق. والتوفيق بين المعنيين هو العمل التحليلي الأساسي، ويجري بالتعاون مع أصحاب الأنظمة من جهة العمل لا بمعزل عنهم.

الترتيب

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

لا تكون أي خطوة آمنة إلا إذا اكتملت التي قبلها. والبرامج التي تتعثّر عادةً تختصر الخطوتين الأوليين في اجتماع انطلاق، ثم تضطر إلى العودة إليهما عند الانتقال.

  1. الجرد والملكية

    كل واجهة قائمة وكل واجهة مطلوبة، مع مسؤول ومستهلك لكل صف، ومعنى البيانات على كل جانب متفق عليه مع من يستخدمونها.

  2. عقد لكل واجهة

    ما يُرسل، وبأي شكل، وكم مرة، وما يحدث عند الفشل، ومن يُبلَّغ قبل أن يغيّر أي جانب. يُكتب ويُتفق عليه قبل كتابة أي سطر من الشيفرة، لأن البناء يُختبر على أساسه.

  3. البناء والاختبار على العقد

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

  4. الانتقال تدريجيًا

    واجهة واحدة، وتدفق واحد، يعمل بالتوازي مع ما يستبدله حتى تتطابق نتائجهما، ثم يُبدَّل. لا عطلة نهاية أسبوع ينتقل فيها كل شيء دفعة واحدة، لأن هذا النوع من الانتقال نادرًا ما يسير وفق الخطة.

  5. التشغيل والمراقبة

    كل واجهة تُراقَب للحجم والفشل والركود، ويصل تنبيهها إلى المسؤول عنها لا إلى صندوق بريد مشترك، ويبقى الجرد محدَّثًا مع تغيّر المنظومة. وهنا تلتقي ممارسة الرصد بهذه الممارسة.

النطاق

كيف يتشكّل العمل عادةً

أربعة أشكال للعمل، بالترتيب الذي تأتي به عادةً، ويمكن التوقف بعد أي منها.

تقييم التكامل

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

تكامل البرامج

مسار التكامل في تغيير أكبر: نظام تخطيط موارد جديد، أو منصة تشغيلية جديدة، أو دمج منظومتين. العقود، والبناء، والتشغيل الموازي، والانتقال، بالتنسيق مع المورّد الذي يسلّم النظام الجديد.

استبدال الواجهات القديمة

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

التشغيل

مراقبة الواجهات وصيانتها كمنصة واحدة، مع مسؤول محدد لكل واجهة وجرد محدَّث، من الرياض، ضمن خدمة مُدارة عند الطلب.

السياق السعودي

ما يميّز هذا السوق

ثلاثة أمور تغيّر شكل عمل التكامل هنا.

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

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

اقرأ المزيد

مكان حفظ البيانات يحدّد أين تعمل طبقة التكامل. كل طبقة تكامل تمر بها البيانات، طابور أو جدول تجهيز أو خدمة تحويل، هي مكان تُحفظ فيه البيانات، وموقعها يحدّده تصنيف البيانات قبل اعتبارات السهولة. والقاعدة نفسها التي تطبّقها ممارسة السحابة على الأحمال تنطبق على المسارات بينها.

تعريف الاكتمال

كيف يبدو المكتمل فعلًا

كل بند إما متحقق أو غير متحقق، ويستطيع التحقق منه من لم يشارك في العمل:

  • يوجد جرد واحد للواجهات، لكل صف مسؤول محدد ومستهلك محدد، ولا تدخل واجهة جديدة الخدمة قبل إضافتها إليه
  • لكل واجهة عقد مكتوب، واختُبر البناء عليه بأشكال بيانات حقيقية، ومنها العربية
  • كل انتقال عمل بالتوازي مع ما استبدله حتى تطابقت النتائج، وتاريخ التبديل وإثباته مسجَّلان
  • كل واجهة تُراقَب للحجم والفشل والركود، ويصل التنبيه إلى مالكها لا إلى صندوق بريد مشترك
  • معنى كل كيان مشترك معرَّف مرة واحدة ومتفق عليه بين أصحاب العمل على الجانبين
  • إذا غيّر المورّد على أي جانب خانةً، فهو يعرف من يبلّغ، وهذا الشخص موجود فعلًا
  • الواجهات التي كان الجميع يتجنّب المساس بها وُثّقت، وما زال منها مطلوبًا له مسؤول وخطة استبدال

أسئلة

أسئلة يطرحها المشترون فعلًا

سؤال شائع

هل تعملون مع المورّد الذي يسلّم نظامنا الجديد، أم بدلًا منه؟

بالتعاون معه، في الجزء الذي لا يقع في صلب عمله. المورّد الذي ينفّذ منصة جديدة مسؤول عن تلك المنصة؛ أما الواجهات مع كل شيء آخر فعادةً بند باسم «تكامل» يُحاسب عليه بأجر يومي. تتولّى إنتركي ذلك المسار: الجرد، والعقود، والبناء على الجانب الذي لا يملكه المورّد، والتشغيل الموازي. يبقى المورّد مسؤولًا عن نظامه، ويصبح للوصلات مسؤول محدد.

سؤال شائع

هل تستخدمون منصة تكامل أو منتجًا وسيطًا؟

إذا كانت المنظومة تحتاج إلى ذلك فعلًا، لا قبله. البرمجيات الوسيطة جواب جيد لمنظومة فيها واجهات كثيرة تتشارك التحويلات وتحتاج موضعًا واحدًا لتشغيلها؛ وجواب غير مناسب لست واجهات كانت أقل كلفة بالربط نقطة إلى نقطة. وجدول الأنماط أعلاه هو القرار الفعلي، يُتخذ لكل واجهة، واختيار المنتج يأتي بعد ذلك لا قبله.

سؤال شائع

نظامنا القديم بلا واجهة برمجة. هل يمكن ربطه رغم ذلك؟

نعم في أغلب الحالات: عبر قاعدة بياناته، أو ملفاته، أو شاشاته، أو طابور رسائله، بهذا الترتيب في التفضيل تقريبًا. ولكل منها درجة من الهشاشة يوضّحها العقد. وما يهم أكثر من الآلية أن تكون الواجهة موثَّقة ولها مسؤول ومُراقَبة، لأن الواجهة القديمة التي تعمل بصمت لسنوات هي التي تفشل بصمت أيضًا.

سؤال شائع

كيف يختلف هذا عن تطوير البرمجيات؟

تطوير البرمجيات يبني النظام. والتكامل يربطه بالأنظمة الموجودة أصلًا. تتشارك الممارستان المهندسين والمعايير في الرياض، وكثيرًا ما يحتاج البرنامج إلى الاثنتين، لكنهما تختلفان في التقدير والفرق ومعايير القبول: يُقبل البناء وفق المتطلبات، والتكامل وفق تشغيل موازٍ تتطابق نتائجه. وصفحة البرمجيات تغطّي جانب البناء.

سؤال شائع

أين تقع شركة المجموعة في الإمارات؟

RAMA Technologies (بالإنجليزية) هي شركة التكامل في مجموعة إنتركي عبر دول الخليج، من دبي والرياض. المشاريع السعودية تنفّذها إنتركي، وما يمتد عبر الخليج يُوجَّه إلى RAMA. تواصلوا مع أي منهما وستوجّه المجموعة الطلب.

الخطوة التالية

ابدؤوا بالواجهات غير الموثّقة لديكم

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

خانة إلزامية

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

أو مباشرةً

+966-11-2180999 [email protected]

أبراج التعاونية، البرج الشمالي، الطابق السابع، طريق الملك فهد، العليا، ص.ب. ٥٦٨٣٥، الرياض ١١٥٦٤، المملكة العربية السعودية

أو ممارسة إدارة واجهات البرمجة

نشر بواسطة إنتركي. آخر تحديث . إنتركي مسجلة في الرياض بالسجل التجاري رقم 1010156897.