الانتقال إلى المحتوى
XSIS
تحدث إلى مهندس

هندسة البرمجيات

تحديث الأنظمة القديمة

تحديث الأنظمة التي تعتمد عليها دون إيقاف أعمالك

ترحيل تدريجي للتطبيقات وقواعد البيانات القديمة إلى منصات مدعومة، مع استمرار تشغيل النظام القديم حتى يثبت النظام الجديد جدارته.

نظرة عامة

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

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

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

ما نقدمه

  1. تقييم النظام

    حصر للشيفرة والبيانات والواجهات والاعتماديات والأشخاص الذين يعرفونها، مع ترتيب المخاطر.

  2. الخيارات وخارطة الطريق

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

  3. طبقة API

    واجهات API حديثة أمام النظام القديم، فلا تعود القنوات الجديدة والتكاملات تعتمد على تفاصيله الداخلية.

  4. مكونات محدثة

    قدرات يعاد بناؤها واحدة تلو الأخرى على منصة مدعومة، ولكل منها اختبارات آلية.

  5. ترحيل البيانات

    بيانات تربط حقولها وتنظف وترحل، مع تقارير مطابقة تثبت أن شيئا لم يفقد أو يتغير.

  6. اختبارات التوصيف

    اختبارات تسجل ما يفعله النظام القديم فعلا، لإثبات أن النظام الجديد يطابقه.

  7. أدلة التشغيل المتوازي

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

  8. خطة الإيقاف

    كيف يوقف كل جزء استبدل، وتؤرشف بياناته، وتنهى تراخيصه وبنيته التحتية.

طريقة عملنا

  1. 01

    فهم النظام

    نقرأ الشيفرة، ونتتبع البيانات، ونقابل الأشخاص الذين يشغلون النظام، ونوثق ما يفعله فعلا.

  2. 02

    اختيار المسار

    نقرر معك الأجزاء التي نبقيها أو نغلفها أو ننقلها أو نوقفها، وبأي ترتيب.

  3. 03

    التغليف

    نضع طبقة API أمام النظام القديم، فلا يعود العمل الجديد يعتمد على تفاصيله الداخلية.

  4. 04

    الاستبدال جزءا جزءا

    نعيد بناء قدرة واحدة في كل مرة خلف طبقة API، مع اختبارات تثبت التطابق.

  5. 05

    التشغيل المتوازي

    نشغل القديم والجديد جنبا إلى جنب، ونقارن نتائجهما، ولا نحول العمل إلا عندما تتطابق.

  6. 06

    الإيقاف

    نوقف ما استبدل، ونؤرشف بياناته، ونلغي تراخيصه وبنيته التحتية.

التقنيات

لغات البرمجة
  • Java
  • C#
  • SQL
أطر العمل
  • .NET
  • Spring Boot
البيانات والتحليلات
  • Apache Kafka
  • Debezium
قواعد البيانات
  • Oracle Database
  • Microsoft SQL Server
  • PostgreSQL
DevOps وقابلية المراقبة
  • Docker
  • Kubernetes
التكامل
  • OpenAPI
  • REST
  • SOAP

طرق التعاون معنا

أسئلة وأجوبة

لماذا لا نعيد كتابة النظام كله دفعة واحدة؟

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

رابط هذا السؤال
هل ستضطر أعمالنا إلى التوقف أثناء الترحيل؟

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

رابط هذا السؤال
لا أحد يفهم نظامنا القديم فهما كاملا. هل يمكنكم تحديثه مع ذلك؟

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

رابط هذا السؤال
ما الذي يحدد تكلفة التحديث؟

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

رابط هذا السؤال
كيف ترحلون البيانات بأمان؟

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

رابط هذا السؤال
متى يكون تغليف النظام أفضل من استبداله؟

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

رابط هذا السؤال
ما التقنيات القديمة التي يمكنكم العمل بها؟

نعمل بالتقنيات التي بنيت عليها كثير من أنظمة الأعمال، ومنها الإصدارات القديمة من Java و.NET، وقواعد البيانات العلائقية مثل Oracle Database وSQL Server، وخدمات SOAP، والواجهات القائمة على الملفات. وفي المنصات الأندر، نقيم الشيفرة أولا ونخبرك بوضوح هل نملك المهارات اللازمة، أم ينبغي أن ينضم إلى الفريق متخصص.

رابط هذا السؤال
كيف تحمون أنظمتنا وشيفرتنا وبياناتنا؟

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

رابط هذا السؤال

أخبرنا بما تحتاج إلى بنائه أو ربطه.

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

  • سيتصل بك فريقنا خلال 24 ساعة في الفترة الزمنية التي تفضلها
  • فريقنا متاح على مدار الساعة طوال أيام الأسبوع