النظام القديم (حاسوب)النظام القديم وبالانجليزية (legacy system) في الحوسبة هو طريقة أو تقنية أو نظام كمبيوتر أو برنامج تطبيق قديم، «من نظام كمبيوتر سابق أو قديم»، [1] ومع ذلك لا يزال قيد الاستخدام. غالبًا ما تعني الإشارة إلى نظام ما على أنه «تراث» أنه مهد الطريق للمعايير التي ستتبعه. يمكن أن يعني هذا أيضًا أن النظام قديم أو بحاجة إلى استبدال. الكود القديم هو كود مصدر أقدم للكمبيوتر. يمكن أن يشير ببساطة إلى قاعدة التعليمات البرمجية الحالية للمؤسسة والتي تمت كتابتها على مدى سنوات عديدة، أو قد تشير ضمنًا إلى قاعدة بيانات قديمة أو تدعم شيئًا قديمًا. الكود طويل العمر عرضة لتعفن البرامج، حيث قد تتطلب التغييرات في بيئة وقت التشغيل أو البرامج أو الأجهزة المحيطة صيانة أو محاكاة من نوع ما لمواصلة العمل. قد يكون الرمز القديم موجودًا لدعم الأجهزة القديمة، أو نظام قديم منفصل، أو عميل قديم يستخدم ميزة قديمة أو إصدار برنامج. بينما يشير المصطلح عادةً إلى التعليمات البرمجية المصدر، فإنه يمكن أن ينطبق أيضًا على التعليمات البرمجية القابلة للتنفيذ التي لم تعد تعمل على إصدار لاحق من النظام، أو تتطلب طبقة توافق للقيام بذلك. من الأمثلة على ذلك تطبيق Macintosh الكلاسيكي الذي لن يعمل أصلاً على نظام التشغيل Mac OS X ، ولكنه يعمل داخل بيئة Classic ، أو تطبيق Win16 يعمل على Windows XP باستخدام ميزة Windows على Windows في XP. من الأمثلة على الأجهزة القديمة المنافذ القديمة مثل منافذ PS / 2 و VGA ووحدات المعالجة المركزية ذات مجموعات التعليمات القديمة غير المتوافقة. تتضمن الأمثلة في البرامج القديمة تنسيقات الملفات القديمة مثل.swf لـ Adobe Shockwave أو.123 لـ Lotus 1-2-3 والملفات النصية المشفرة باستخدام ترميزات الأحرف القديمة مثل EBCDIC . الملخصربما حدث أول استخدام لمصطلح تراث لوصف أنظمة الكمبيوتر في السبعينيات. بحلول الثمانينيات من القرن الماضي، كان يُستخدم للإشارة إلى أنظمة الكمبيوتر الحالية لتمييزها عن تصميم وتنفيذ الأنظمة الجديدة. غالبًا ما كان يتم سماع الإرث أثناء عملية التحويل، على سبيل المثال، عند نقل البيانات من النظام القديم إلى قاعدة بيانات جديدة. في حين أن هذا المصطلح قد يشير إلى أن بعض المهندسين قد يشعرون أن النظام قديم، إلا أنه يمكن الاستمرار في استخدام النظام القديم لعدة أسباب. قد يكون الأمر ببساطة أن النظام لا يزال يوفر احتياجات المستخدمين. بالإضافة إلى ذلك، قد يتأثر قرار الاحتفاظ بنظام قديم لأسباب اقتصادية مثل تحديات العائد على الاستثمار أو قيود البائع ، أو التحديات الكامنة في إدارة التغيير، أو مجموعة متنوعة من الأسباب الأخرى غير الوظيفة. يعد التوافق مع الإصدارات السابقة (مثل قدرة الأنظمة الأحدث على التعامل مع تنسيقات الملفات القديمة وتشفير الأحرف) هدفًا غالبًا ما يدرجه مطورو البرامج في عملهم. حتى إذا لم يعد مستخدمًا، فقد يستمر النظام القديم في التأثير على المنظمة نظرًا لدورها التاريخي. ربما لم يتم تحويل البيانات التاريخية إلى تنسيق النظام الجديد وقد تكون موجودة داخل النظام الجديد باستخدام مخطط مخصص، أو قد توجد فقط في مستودع بيانات. في كلتا الحالتين، يمكن أن يكون التأثير على ذكاء الأعمال والتقارير التشغيلية كبيرًا. قد يتضمن النظام القديم إجراءات أو مصطلحات لم تعد ذات صلة بالسياق الحالي، وقد تعيق أو تخلط بين فهم الأساليب أو التقنيات المستخدمة. يمكن أن يكون لدى المنظمات أو الشركات أسباب مقنعة للاحتفاظ بنظام قديم، مثل:
المشاكل التي تطرحها الحوسبة القديمةتعتبر الأنظمة القديمة مشكلة محتملة من قبل بعض مهندسي البرمجيات لعدة أسباب.[2]
تحسينات على أنظمة البرمجيات القديمةعندما يكون من المستحيل استبدال الأنظمة القديمة من خلال ممارسة سحب التطبيق، فلا يزال من الممكن تعزيزها (أو «إعادة مواجهتها»). غالبًا ما يذهب التطوير إلى إضافة واجهات جديدة إلى نظام قديم. الأسلوب الأكثر بروزًا هو توفير واجهة قائمة على الويب لتطبيق حاسب مركزي قائم على المحطة الطرفية. قد يقلل هذا من إنتاجية الموظفين بسبب أوقات الاستجابة البطيئة وإجراءات المشغل البطيئة التي تعتمد على الماوس، ومع ذلك غالبًا ما يُنظر إليه على أنه «ترقية»، لأن نمط الواجهة مألوف للمستخدمين غير المهرة ويسهل عليهم استخدامه. يناقش جون ماكورميك مثل هذه الاستراتيجيات التي تتضمن برمجيات وسيطة.[7] تعد تحسينات الطباعة مشكلة لأن أنظمة البرامج القديمة غالبًا لا تضيف إرشادات التنسيق، أو تستخدم بروتوكولات غير قابلة للاستخدام في طابعات الكمبيوتر Windows الحديثة. يمكن استخدام خادم الطباعة لاعتراض البيانات وترجمتها إلى رمز أكثر حداثة. يمكن إنشاء مستندات Rich Text Format (RTF) أو PostScript في التطبيق القديم ثم تفسيرها على جهاز كمبيوتر قبل طباعتها. من الصعب تنفيذ تدابير الأمن البيومترية على الأنظمة القديمة. الحل العملي هو استخدام Telnet أو خادم وكيل HTTP للجلوس بين المستخدمين والإطار الرئيسي لتنفيذ الوصول الآمن إلى التطبيق القديم. التغيير الذي يتم إجراؤه في بعض المنظمات هو التحول إلى برنامج العمليات التجارية المؤتمتة (ABP) الذي يولد أنظمة كاملة. يمكن لهذه الأنظمة بعد ذلك التفاعل مع الأنظمة القديمة للمؤسسات واستخدامها كمستودعات للبيانات. يمكن أن يوفر هذا النهج عددًا من الفوائد المهمة: يتم عزل المستخدمين عن أوجه القصور في أنظمتهم القديمة، ويمكن دمج التغييرات بسرعة وسهولة في برنامج ABP. يمكن أيضًا استخدام مناهج الهندسة العكسية والأمامية التي يحركها النموذج لتحسين البرامج القديمة. [8] مثال ناساأندرياس هاين، من جامعة ميونيخ التقنية، أجرى أبحاثًا حول استخدام الأنظمة القديمة في استكشاف الفضاء. وفقًا لهين، تعد الأنظمة القديمة جذابة لإعادة الاستخدام إذا كانت لدى المؤسسة القدرات للتحقق والتحقق من الصحة والاختبار والتاريخ التشغيلي.[9][10] يجب دمج هذه الإمكانات في مختلف مراحل دورة حياة البرنامج مثل التطوير أو التنفيذ أو الاستخدام أو الصيانة. بالنسبة لأنظمة البرامج، تعد القدرة على استخدام النظام وصيانته أمرًا بالغ الأهمية. وإلا سيصبح النظام أقل قابلية للفهم والصيانة. وفقًا لـ Hein ، يزيد التحقق والتحقق من الصحة والاختبار والتاريخ التشغيلي من الثقة في موثوقية النظام وجودته. ومع ذلك، فإن تراكم هذا التاريخ غالبًا ما يكون مكلفًا. استخدم برنامج مكوك الفضاء المتقاعد التابع لوكالة ناسا كمية كبيرة من تكنولوجيا حقبة السبعينيات. كان الاستبدال باهظ التكلفة بسبب المتطلبات الباهظة للحصول على شهادة الطيران. أكملت الأجهزة الأصلية متطلبات التكامل والاعتماد الباهظة للرحلة، ولكن أي معدات جديدة كان يجب أن تخضع لهذه العملية بأكملها مرة أخرى. تطلبت هذه العملية الطويلة والمفصلة اختبارات مكثفة للمكونات الجديدة في تكويناتها الجديدة قبل أن يمكن استخدام وحدة واحدة في برنامج مكوك الفضاء. وبالتالي، فإن أي نظام جديد بدأ عملية الاعتماد يصبح نظامًا قديمًا بحكم الواقع بحلول وقت الموافقة عليه للرحلة. بالإضافة إلى ذلك، تم تصميم نظام مكوك الفضاء بأكمله، بما في ذلك أصول المركبات الأرضية ومركبات الإطلاق، للعمل معًا كنظام مغلق. نظرًا لأن المواصفات لم تتغير، فقد أدت جميع الأنظمة والمكونات المعتمدة أداءً جيدًا في الأدوار التي تم تصميمها من أجلها.[11] حتى قبل أن يتقاعد المكوك في عام 2010، وجدت وكالة ناسا أنه من المفيد الاستمرار في استخدام العديد من تقنيات السبعينيات بدلاً من ترقية تلك الأنظمة وإعادة اعتماد المكونات الجديدة. وجهات نظر حول الكود القديميفضل البعض في هندسة البرمجيات وصف «التعليمات البرمجية القديمة» دون الإشارة إلى كونها قديمة. من بين المفاهيم الحيادية الأكثر انتشارًا هي الكود المصدري الموروث من شخص آخر وشفرة المصدر الموروثة من إصدار أقدم من البرنامج . عرّف Eli Lopian ، الرئيس التنفيذي لشركة Typemock ، بأنه «رمز يخشى المطورون تغييره».[12] قدم مايكل فيذرز [13] تعريفًا للشفرة القديمة كرمز بدون اختبارات ، مما يعكس منظور الكود القديم الذي يصعب التعامل معه جزئيًا بسبب الافتقار إلى اختبارات الانحدار الآلي. كما حدد اختبارات التوصيف للبدء في وضع الكود القديم قيد الاختبار. وصف جيني هندري إنشاء الكود بأنه تحدٍ للمبرمجين الحاليين لإنشاء كود «مثل الموروثات الأخرى في حياتنا - مثل التحف والموروثات والقصص التي يتم الاعتزاز بها وتناقلها بحب من جيل إلى آخر. ماذا لو كانت الشفرة القديمة شيئًا نفخر به؟».[14] استخدامات إضافية لمصطلح تراث في الحوسبةغالبًا ما يستخدم مصطلح الدعم القديم بالاقتران مع الأنظمة القديمة. قد يشير المصطلح إلى إحدى ميزات البرامج الحديثة. على سبيل المثال، يمكن لأنظمة التشغيل ذات «الدعم القديم» اكتشاف الأجهزة القديمة واستخدامها. يمكن استخدام المصطلح أيضًا للإشارة إلى وظيفة العمل؛ على سبيل المثال، بائع برامج أو أجهزة يدعم أو يوفر صيانة البرامج للمنتجات القديمة. قد يكون المنتج «القديم» منتجًا لم يعد يُباع، أو فقد حصة كبيرة في السوق، أو هو نسخة من منتج غير حديث. قد يكون للمنتج القديم بعض المزايا على منتج حديث مما يجعله جذابًا للعملاء للاحتفاظ به. يكون المنتج «عفا عليه الزمن» حقًا فقط إذا لم يكن لديه ميزة لأي شخص - إذا لم يختار أي شخص يتخذ قرارًا عقلانيًا الحصول عليه جديدًا. غالبًا ما يشير مصطلح «الوضع القديم» بشكل خاص إلى التوافق مع الإصدارات السابقة. يُقال إن منتج البرنامج القادر على الأداء كما لو كان إصدارًا سابقًا من نفسه، «يعمل في الوضع القديم». هذا النوع من الميزات شائع في أنظمة التشغيل ومتصفحات الإنترنت، حيث تعتمد العديد من التطبيقات على هذه المكونات الأساسية. شهد عصر الحاسوب المركزي العديد من التطبيقات التي تعمل في الوضع القديم. في بيئة حوسبة الأعمال الحديثة، من الصعب وضع البنى ذات المستوى n أو 3-tier في الوضع القديم لأنها تتضمن العديد من المكونات التي تشكل نظامًا واحدًا. تقنية المحاكاة الافتراضية هي ابتكار حديث يسمح للأنظمة القديمة بمواصلة العمل على الأجهزة الحديثة من خلال تشغيل أنظمة التشغيل والمتصفحات القديمة على نظام برمجي يحاكي الأجهزة القديمة. العمارة براونفيلداستعار المبرمجون مصطلح الحقل البني من صناعة البناء، حيث توصف الأرض المطورة سابقًا (غالبًا ما تكون ملوثة ومهجورة) بالحقل البني.[15]
رأي بديلهناك رأي مؤيد بديل — تزايد منذ نهاية فقاعة الدوت كوم في عام 1999 — مفاده أن الأنظمة القديمة هي مجرد أنظمة كمبيوتر قيد الاستخدام يقدر محللو تكنولوجيا المعلومات أن تكلفة استبدال منطق الأعمال تبلغ حوالي خمسة أضعاف تكلفة إعادة الاستخدام، حتى مع استبعاد مخاطر فشل النظام وانتهاكات الأمان. من الناحية المثالية، لن تضطر الشركات أبدًا إلى إعادة كتابة معظم منطق الأعمال الأساسي: المدين = الائتمانات مطلب دائم. تستجيب صناعة تكنولوجيا المعلومات بـ «التحديث القديم» و «التحول القديم»: تجديد منطق الأعمال الحالي بواجهات مستخدم جديدة، وأحيانًا باستخدام كشط الشاشة والوصول الممكّن للخدمة من خلال خدمات الويب. تسمح هذه التقنيات للمؤسسات بفهم أصول الكود الموجودة لديها (باستخدام أدوات الاكتشاف)، وتوفير واجهات مستخدم وتطبيقات جديدة للتعليمات البرمجية الحالية، وتحسين سير العمل، واحتواء التكاليف، وتقليل المخاطر، والاستمتاع بصفات الخدمة الكلاسيكية (ما يقرب من 100٪ من وقت التشغيل والأمان وقابلية التوسع، إلخ.). يدعو هذا الاتجاه أيضًا إلى التفكير في ما يجعل الأنظمة القديمة متينة للغاية. يعيد التقنيون تعلم أهمية هندسة الصوت منذ البداية، لتجنب إعادة الكتابة المكلفة والمحفوفة بالمخاطر. تميل الأنظمة القديمة الأكثر شيوعًا إلى أن تكون تلك التي احتضنت المبادئ المعمارية لتكنولوجيا المعلومات المعروفة، مع التخطيط الدقيق والمنهجية الصارمة أثناء التنفيذ. غالبًا ما لا تدوم الأنظمة المصممة بشكل سيئ، لأنها تبلى ولأن عيوبها المتأصلة تستدعي الاستبدال. وبالتالي، فإن العديد من المنظمات تعيد اكتشاف قيمة كل من أنظمتها القديمة والأسس النظرية لتلك الأنظمة. انظر أيضًاالمراجع
|