8 التحديات اليومية في اعتماد DevOps وكيفية حلها (التحديات) - الجزء الأول

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

  1. ثقافة مختلة

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

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

2. مقاومة التغيير

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

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

3. عدم وضوح الرؤية

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

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

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

4. الفرق لا تتعاون

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

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

5. البيئات ليست موحدة

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

6. مجموعات الأدوات في التنافس

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

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

7. إدارة الإصدار تتسبب في حدوث تأخيرات

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

8. الاختبار اليدوي أمر شاق ويستهلك الوقت

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

خاتمة

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