صيانة البرمجيات Software Maintenance

اقرأ في هذا المقال


ما هي صيانة البرمجيات؟

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

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

ما أهمية صيانة البرمجيات؟

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

ما هي الأنواع الأربعة لصيانة البرمجيات؟

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

• صيانة البرمجيات التصحيحية:

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

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

• صيانة البرمجيات الوقائية:

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

• صيانة البرمجيات المثالية:

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

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

• صيانة البرمجيات التكيّفية:

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

خطوات عملية صيانة البرمجيات:

تتضمن عملية صيانة البرمجيات العديد من تقنيات صيانة البرامج التي يمكن أن تتغير وفقًا لنوع الصيانة وخطة صيانة البرمجيات المعمول بها، تتضمن معظم نماذج عمليات صيانة البرمجيات الخطوات التالية:

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

2. التحليل: هي عملية تحليل التعديل المقترح بما في ذلك فهم الآثار المحتملة لمثل هذا التغيير، وتتضمن هذه الخطوة عادةً تحليل التكلفة لفهم ما إذا كان التغيير يستحق العناء من الناحية المالية.

3. التصميم: هي عملية تصميم التغييرات الجديدة باستخدام مواصفات المتطلبات.

4. التنفيذ: عملية تنفيذ الوحدات الجديدة من قبل المبرمجين.

5. اختبار النظام: قبل بدء التشغيل، يجب اختبار البرنامج والنظام، يتضمن هذا الوحدة لوحدها، والنظام والوحدة معاً، وعمل الوحدة في النظام بأكمله.

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

7. التسليم: هي عملية تحديثات البرنامج (updates) أو في بعض الحالات التثبيت الجديد للبرنامج، وهذا يتم عندما تصل التغييرات إلى العملاء.

المصدر: The 4 Types of Software MaintenanceThe Four Types Of Software Maintenance & How They Help Your OrganizationSoftware Maintenance OverviewSoftware Engineering | Software Maintenance


شارك المقالة: