Skip to main content
2026-05-2810 دقائقخالد رحمن

تحديث الأنظمة القديمة دون إعادة بناء شاملة. نمط Strangler Fig، خمس مراحل، وخطة 6 أشهر لشركة تجزئة خليجية.

تحديث الأنظمة القديمة بنمط شجرة التين الخانقة — cover

إعادة بناء ERP عمره 10 سنوات من الصفر هي طريق إفلاس الشركات على IT. أبحاث الصناعة تُظهر باستمرار أن إعادات البناء الكبيرة للأنظمة القديمة إما تفشل صراحةً أو تسلّم بأقل بكثير من الطموح الأصلي. تحديث الأنظمة القديمة المُنفَّذ جيدًا يستبدل النظام القديم سياقًا محدودًا تلو الآخر باستخدام نمط Strangler Fig، نمط Martin Fowler التصميمي الذي صار بهدوء الافتراضي لتحديث المؤسسات الجاد في الخليج.

لماذا يحتاج تحديث الأنظمة القديمة إلى نمط Strangler Fig؟

تحديث الأنظمة القديمة هو انضباط استبدال أنظمة المؤسسات المُسنّة (ERPs ونوى البنوك وسجلات الصحة وسجلات الحكومة) بمكافئات حديثة مع إبقاء الأعمال تعمل. نمط Strangler Fig، المسمّى على اسم شجرة تين استوائية تنمو تدريجيًا حول مضيفها وتستبدله، يتيح لك استبدال نظام قديم سياقًا محدودًا تلو الآخر. خدمات جديدة تعيش خلف واجهة تواجه التطبيق القديم، الحركة تنتقل تدريجيًا، وقطعة القديم تُتقاعَد فقط بعد أن تكسب الجديدة الثقة.

سبب تفوّق هذا النمط على إعادة البناء الشاملة هو توزيع المخاطر. إعادة البناء الشاملة تركّز 18 شهرًا من المخاطر في عطلة قطع واحدة. Strangler Fig يوزّع نفس المخاطر عبر 18 قطعًا شهريًا، كل واحد يشحن قيمة عمل قابلة للقياس ويمكن التراجع عنه دون التأثير على بقية النظام. Martin Fowler وAWS Prescriptive Guidance وMicrosoft Azure Architecture Center يتقاربون جميعًا على هذا النمط للسبب نفسه.

المراحل الخمس لـ Strangler Fig

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

ما الذي يقتل تحديث Strangler Fig؟

ثلاثة أنماط نراها تقتل مشاريع Strangler Fig أكثر من أي مشكلة تقنية:

  • لا سياقات محدودة. إن كان القديم اشتباكًا من اهتمامات عرضية بلا حدود وحدات نظيفة، فاختيار القطعة الأولى مستحيل. نمذجة المجال يجب أن تحدث قبل أول سطر كود جديد.
  • الواجهة التي لا تهبط. بدون API Gateway أو Proxy عاملين أمام التطبيق القديم، كل قطعة عليها أن تخترع تحوّلها الخاص. الواجهة أهم استثمار مبكر.
  • كتابة مزدوجة للأبد. الفرق تعلق بالكتابة المزدوجة للقديم والجديد "احتياطًا" للأبد. ضع معيار تقاعد واضحًا لكل قطعة وافرضه، وإلا لن يختفي القديم فعلًا أبدًا.

تحديث Strangler Fig حقيقي لشركة تجزئة خليجية في 6 أشهر

هذا التسلسل الذي شغّلناه مع شركة تجزئة خليجية تُحدّث ERP عمره 12 سنة. القطعة الأولى شُحنت في ستة أشهر، والتحديث الكامل على المسار للاكتمال في 28:

إنفوجرافيك جدول زمني لتحديث Strangler Fig لـ ERP شركة تجزئة خليجية في ستة أشهر من رسم السياقات المحدودة إلى تقاعد القطعة الأولى
ستة أشهر، قطعة قديمة متقاعدة، ونمط قابل للتكرار للـ 22 شهرًا التالية.
  1. الشهر 1. رسم السياقات المحدودة. ورشة نمذجة مجال. تحديد أصغر قدرة وأقل مخاطرة بحدود نظيفة، في هذه الحالة برنامج ولاء العملاء.
  2. الشهر 2. بناء واجهة Gateway. API Gateway أمام ERP القديم. كل متصل قائم يصل إلى القديم عبر Gateway، بشفافية.
  3. الشهر 3. أول قطعة قراءة حية. خدمة الولاء الجديدة منشورة. حركة القراءة تتحوّل إلى الجديدة. القديم يبقى مصدر الحقيقة.
  4. الشهر 4. كتابة مزدوجة مفعّلة. حركة الكتابة تُنشر مزدوجة للخدمة الجديدة والقديم. مراقبة الاتساق تلتقط الانحراف.
  5. الشهر 5. تحويل الكتابات. الكتابات تذهب إلى الجديدة فقط. القديم يستقبلها عبر مزامنة باتجاه واحد كمسار رجوع.
  6. الشهر 6. تقاعد القطعة 1. كود ولاء قديم مُزال من ERP. النمط الآن قالب للـ 22 شهرًا التالية ولعشرات القطع التالية.

المنتجات التي يُنتجها برنامج Strangler Fig

ثلاثة أمور يُنتجها برنامج صحي كل شهر، عند الطلب:

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

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

أسئلة شائعة

ما هو نمط Strangler Fig لتحديث الأنظمة القديمة؟

نمط Strangler Fig الذي سمّاه Martin Fowler يستبدل نظامًا قديمًا سياقًا محدودًا تلو الآخر. تُبنى خدمات جديدة خلف واجهة تواجه التطبيق القديم، تنتقل الحركة تدريجيًا من القديم إلى الجديد، ويُتقاعد قطاع من القديم بعد أن تكسب الجديدة الثقة. يُستبدل النظام القديم بأكمله دون أي قطع شامل واحد.

لماذا فكرة إعادة البناء الشاملة سيئة عادةً؟

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

كم يستغرق تحديث Strangler Fig؟

القطعة الأولى تشحن عادةً في 4–6 أشهر على نظام مؤسسي خليجي محدود النطاق. التحديث الكامل لـ ERP عمره 10 سنوات أو نواة بنك يستغرق عادةً 18–36 شهرًا، لكن بخلاف إعادة البناء الشاملة، كل شهر يُنتج قدرة قابلة للقياس مشحونة يستفيد منها العمل فورًا.

كتبه خالد رحمن، الذي قاد تحديثات Strangler Fig لتجار تجزئة وبنوك وجهات حكومية خليجية منذ 2019.

  • تحديث الأنظمة القديمة
  • Strangler Fig
  • هندسة المؤسسات

جاهز نبدأ؟

احكِ لنا فكرتك — ونرجع لك خلال يوم. حياك الله.

تحديث الأنظمة القديمة بنمط شجرة التين الخانقة · تكنوستاك · تكنوستاك