ثمان مقاييس مجربة لقياس فاعلية نموذج DevOps و تطويره

Rashed Azzam

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

 

كيف تعمل DevOps

ما هي DevOps بالضبط

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

قد لا تعمل الفرق المدمجة حديثًا على النحو المطلوب. ولكن من المسلم به أنه بمجرد أن يراكموا مهارات DevOps الضرورية ، فإن Devs و Ops سيكونون غير معروفين.

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

Unsplash

DevOps في الممارسة

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

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

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

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

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

PagerDuty

 

المقاييس الأربعة الرئيسية لـ DevOps

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

المقاييس الأربعة الرئيسية لـ DevOps هي:

1 - تردد النشر

تردد النشر يشير إلى تكرار نشر رموز جديدة في بيئات الإنتاج والاختبار. تحاول DevOps زيادة سرعة هذا النشر وجعله متكررًا - يوميًا أو حتى كل ساعة - قدر الإمكان.

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

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

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

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

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

Unsplash

2 - مهلة للتغيير

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

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

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

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

في معظم الأحيان تكون المرحلة C: "مرحلة الاختبار". أفضل طريقة لتسريعها هي دمج المختبرين للعمل بشكل وثيق مع المطورين. سيكونون قادرين على اختبار كل شيء أثناء إنتاجه وإجراء التحسينات اللازمة حتى قبل شحن أجزاء الكود التي سيتم نشرها.

3 - يعني الوقت للاستعادة

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

من أجل قياس MTTR ، يجب عليك إضافة كل الوقت الذي تقضيه في التعامل مع الحوادث في فترة زمنية محددة. بافتراض أن نظام الإنتاج قد انخفض عشر مرات في أسبوع واحد لما مجموعه ساعتين ، فإن MTR أو فترة التوقف هي ساعتان مقسمتان على عشرة! هذا هو 12 دقيقة.

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

كم من الوقت يستغرق بين الفشل وتنبيه الفريق بشأنه؟ ما مدى سرعة تحديد المشاكل؟ ما هي العمليات أو المراحل التي يمكن تحسينها وتسريعها؟

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

4 - تغيير معدل الفشل

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

ستكون عمليات النشر والعمليات الفاشلة دائمًا جزءًا من يوم أي فريق DevOps. لكن الهدف ليس القضاء عليها بل الحد منها قدر الإمكان. لذلك ، على سبيل المثال ، إذا فشلت 5٪ من عمليات النشر وتسببت في وقوع حادث (تعطل) ، فسيقوم وكيل DevOps بإنشاء واقتراح إجراءات تحسين جديدة استنادًا إلى أسباب معدل الفشل البالغ 5٪.

Unsplash

 

مقاييس رئيسية ومؤشرات أداء رئيسية أخرى ناجحة لـ DevOps

يؤدي تحسين المقاييس الأربعة الرئيسية لـ DevOps إلى منح الشركات خط إنتاج على مستوى عالمي. لكن السماء هي الحد. هناك دائمًا مساحة أكبر للنمو والأداء الأفضل. فيما يلي المزيد من مقاييس DevOps ومؤشرات الأداء الرئيسية لجعل شركتك من النخبة في الصناعة.

حجم شهادات العملاء

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

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

معدل تفادي العيب

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

يقيس معدل تفادي العيوب العيوب الموجودة في المنتجات أثناء النشر وبعده. تشمل القياسات تشققات البرامج ومشاكل عملية التطوير وتجاوز الأخطاء والمشكلات.

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

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

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

نسبة الخطأ

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

معدل الخطأ هو تكرار مواجهة خطأ معين في تطوير ونشر رمز أو تطبيق بأكمله. يعتبر هذا المؤشر مشكلة عند اكتشاف خطأين أو أكثر في 100 معاملة (2٪ معدل الخطأ). في هذه الحالة ، يجب إجراء تحليلات وترقيات لنظام الإنتاج الكلي.

معدل النجاح في الاختبارات الآلية

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

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

لتجنب ذلك ، قم باستمرار باختبار وترقية العمليات الآلية لنظام DevOps الذي تتبعه وإعطاء الأولوية لكتابة الكود من الدرجة الأولى بدلاً من التسليم السريع للمنتج.

Unsplash

 

بعجالة

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