المعلوماتية > برمجيات

الاختلافات الرئيسية بين دورة حياة التطبيق ALM ودورة حياة البرمجية SDLC

يخلط النّاس في كثير من الأحيان بين مصطلحي تطوير البرمجيات (إدارة دورة حياة تطوير البرمجية -SDLC Software Development Life-cycle) و(إدارة دورة حياة التّطبيق-ALM Application Life-cycle Management). ومن الشّائع جداً أن يحدث خطأ ويتم التّبديل بينهما، وذلك لأنّ الفرق بين اختصاراتهما ليس واضحاً بشكل جيد، وكلاهما مرتبط بشكل وثيق مع «إدارة دورة حياة» مشاريع هندسة البرمجيات.

بدايةً، يمكن أن نعرفهما بالشّكل التّالي:

إدارة دورة حياة التّطبيق (ALM): هي عملية مستمرة طوال فترة حياة التّطبيق، تتم فيها كل من الإدراة والتّطوير والصّيانة. ALM هو التّزاوج بين إدارة الأعمال وهندسة البرمجيات، من خلال الأدوات الّتي تسهل وتكامل إدارة المتطلبات، والمعمارية، والترميز، والاختبار، والتتبع، وإدارة النسخ.

إدارة دورة حياة تطوير النّظم (SDLC) أو دورة حياة تطوير البرمجيات في هندسة النّظم ونظم المعلومات وهندسة البرمجيات: هي عملية إنشاء أو تعديل نظم المعلومات، والنّماذج والمنهجيات الّتي يستخدمها النّاس لتطوير هذه النّظم. في هندسة البرمجيات مفهوم SDLC يدعم العديد من أنواع منهجيات تطوير البرمجيات، وهذه المنهجيات تشكل إطاراً للتّخطيط والسّيطرة على إنشاء نظام المعلومات أي عملية تطوير البرمجيات.

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

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

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

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

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

ALM هو المجموعة الشّاملة التي تضم أجزاءً يُعتبر كل واحد منها SDLC، وينظر له كعملية. ALM يدمج هذه العمليات لضمان إيصال القيمة للمستخدم النّهائي والصّيانة عند الضّرورة.

SDLC هي إدارة العمليات خلال مراحل التّطوير فقط لمختلف مكونات التّطبيق، ولا علاقة للجانب التّجاري فيها أبداً.

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

------------

المصادر:

هنا

----------------------

تدقيق : ٍShadi Saleh

تدقيق لغوي: Joudi Al-Fattal

---------------