مرحبًا ، اسمي Maksim Plavchenok ، أعمل في Bercut ، وأقوم باختبار التكامل. في سبتمبر ، اجتزنا أنا وفريقي معلمًا هامًا: لم نتلق أي أخطاء نتيجة اختبار التكامل لإصدار إصدار جديد من الفواتير لمشغل الهاتف المحمول. ذهبنا إلى هذا لمدة عامين. أود أن أخبركم اليوم كيف تمكنا من تحقيق هدفنا.
صفر أخطاء بناءً على نتائج اختبارات التكامل - نحن هنا نتحدث عن اختبار وظائف جديدة على قبول الأعمال من جانب المشغل. بضع كلمات حول كيفية عمل هذا الاختبار.
نصدر إصدارات جديدة من برنامج الفوترة لدينا في الموعد المحدد ، 6 مرات في السنة. مواعيد شحن الإصدار معروفة مسبقًا. في وقت كتابة هذا التقرير ، كان لدينا بالفعل تواريخ إطلاق مجدولة للعام المقبل بأكمله.
ترتبط هذه الخصوصية بسباق المشغلين الخلويين من الوقت إلى السوق. المبدأ الأساسي: يجب أن يتلقى المشترك ميزات جديدة للفوترة بانتظام. المدفوعات عبر الهاتف الذكي ، وحفظ رقم عند تغيير المشغل ، والقدرة على بيع حركة المرور غير المستخدمة - يمكن أن تكون التحديثات مختلفة.
"قد لا نعرف بالضبط ما الذي سنصدره في غضون عام ، لكننا نعرف التاريخ الدقيق الذي سيتم فيه إصدار التحديث." نتيجة لهذا ، من الممكن الحفاظ على الإيقاع المطلوب للتحديثات.
على جانب تطوير الفواتير ، يشارك حوالي 70 شخصًا في الإصدار. تتكون هذه الفرق من 5-6 فرق ، لكل منها تخصصه الخاص: التحليلات ، التطوير (عدة فرق) ، الاختبار الوظيفي ، اختبار التكامل.
نعم ، لدينا شلال في مشاريع الفوترة. لكن القصة الحالية لا تتعلق بكيفية تغييرنا جذريًا لنموذج التنمية من الشلال إلى الرشاقة أو العكس. كل نهج تنموي له مميزاته الخاصة وهو جيد في ظل الظروف المناسبة ؛ أود ترك هذه المناقشة خارج نطاق هذه المقالة. أود اليوم أن أتحدث عن التطور التطوري: كيف تحركنا نحو صفر أخطاء أثناء قبول الإصدار في إطار نهج التطوير الحالي.
منطقة عدم الراحة
في وقت بداية القصة الموصوفة ، قبل عامين ، كانت لدينا الصورة التالية:
- كانت الفرق في نهاية سلسلة التطوير مرهقة ؛ "حان الوقت للتبرع للفريق التالي ، والفريق السابق قد بدأ لتوه الجزء الخاص به من العمل" ؛
- يمكن للعميل العثور على حوالي 70 خطأ بعد دورات الاختبار لدينا.
يمكن أن تكون الأخطاء التي يمكن العثور عليها وفقًا لنتائج اختبارات التكامل بسيطة ("يتم عرض جزء من الرسالة على شكل شرطات") أو حتى خطيرة ("لا يوجد انتقال إلى تعريفة أخرى").
قررنا تغيير هذا التوافق: وضعنا هدفًا - عدم وجود أخطاء في قبول الأعمال للوظيفة الجديدة.
بعد عام ، تمكنا من تقليل عدد الأخطاء إلى 10-15 ، وبحلول منتصف عام 2020 - إلى 2-3. وفي سبتمبر تمكنا من الوصول إلى هدف الصفر.
لقد نجحنا بسبب التحسينات في عدة مجالات: الأدوات ، والخبرة ، والتوثيق ، والعمل مع العملاء ، والفريق. تباينت أهمية التحسينات: من المهم معرفة تفاصيل وعمليات العميل ، والانتقال إلى مقياس جديد لتقييم مدى تعقيد المهام أمر اختياري ، والعمل مع تحفيز الفريق أمر بالغ الأهمية. لكن أول الأشياء أولاً.
نقاط النمو
أداة اختبار التكامل الرئيسية هي منصة الاختبار. هناك يتم محاكاة نشاط المشترك.
أكشاك مشتركة
تُدحرج مخلفات الإنتاج على مناضد اختبار حتى تتمكن من الاختبار في أقرب ظروف ممكنة للقتال.
المهم هو أن المكبات على منصاتنا وأكشاك العملاء يمكن أن تكون مختلفة. يقوم المشغل بتفريغ النفايات ، ويمررها إلينا ، ونختبر وظائف جديدة ، ونلتقط الأخطاء ونصلحها. نعطي الوظيفة النهائية للعميل ، ويبدأ الزملاء على الجانب الآخر في الاختبار. قد تختلف مقالبنا ومخلفاتها من حيث الأهمية: اختبرناها في يوليو ، المشغل - في أغسطس ، على سبيل المثال.
الاختلافات ليست حرجة ، لكنها ما زالت موجودة. أدى ذلك إلى حقيقة أنه عند الاختبار من جانب العميل ، قد تظهر أخطاء لم تكن موجودة لدينا.
ما فعلناه: اتفقنا على أن مخططات البيانات المستخدمة للاختبار ستكون هي نفسها ، وبشكل عام سيكون لدينا موقف مشترك.
لا يزال هناك تأخير في التفريغ ، لكننا قمنا بتكوين البنية التحتية التي يكون هذا التأخير فيها ضئيلاً. نتيجة لذلك ، تمكنا من تقليل عدد الأخطاء الناتجة عن الاختلافات بين بيئات الاختبار والإنتاج.
التحقق من الإعدادات قبل الاختبار
عندما نعطي نسخة جديدة من البرنامج للمشغل ، للاختبار من جانب العميل ، نحتاج إلى إعداد الإعداد. تكوين وظائف جديدة ، وربما تخصيص الوظيفة القديمة بشكل أكبر.
كتبنا الوثائق لإخبارك بالإعدادات المطلوبة. هنا فقط يمكن أن تنقل الكتيبات المعلومات مع التشوهات. تم كتابة الوثائق من قبل الناس ، وقرأها الناس ، وفي التواصل بين الناس هناك سوء فهم.
هذه هي خصوصية برنامجنا: يتم وضع متطلبات عالية على الإعدادات من حيث المرونة والتوافر. الإعدادات معقدة ، وبدون اتصالات إضافية ، لم يكن من الممكن دائمًا نقل جميع المعلومات الضرورية عن طريق التوثيق وحده.
نتيجة لذلك ، قد لا يتم دائمًا تنفيذ الإعدادات بشكل صحيح ، مما أدى إلى اكتشاف الأخطاء أثناء الاختبار من جانب المشغل. عند التحليل ، اكتشفنا أن هذه لم تكن أخطاء برمجية ، بل إعدادات. مثل هذه الأخطاء تضيع وقتا ثمينا.
ما فعلناه: قدمنا إجراءً للتحقق من الإعدادات من جانب العميل قبل الاختبار في منصات المشغل.
الإجراء كالتالي: يختار العميل الحالات التي نعرضها في الجناح الذي تم تكوينه. نجري الاختبارات. إذا كانت هناك أخطاء ، فسنقوم بتصحيحها على الفور ؛ إذا لم يكن كذلك ، يتم اجتياز الاختبار.
سمح لنا هذا الأسلوب بتقليل عدد الأخطاء المرتبطة بالإعدادات غير الصحيحة أثناء اختبار التكامل.
اتصالات إضافية حول الوثائق
يعد التحقق من الإعدادات قبل الاختبار بالإضافة إلى وصف هذه الإعدادات في الكتيبات أحد الأمثلة على الاتصال الإضافي حول الوثائق. كان هناك آخرون.
على سبيل المثال ، قمنا بذلك بحيث يكون هناك دائمًا متخصص في كل لحظة من الوقت إلى جانبنا ، والذي يمكن للعميل الرجوع إليه بأسئلة حول التوثيق والنظام ككل. شيء مثل خط دعم فني مخصص مع متخصصينا المؤهلين تأهيلا عاليا.
نظم كتابنا الفنيون ورش عمل لتثقيف موظفي العملاء حول الوظائف الجديدة.
أصبحت عملية نقل الوثائق أقل انفصالًا وأكثر استمرارية: يمكن الآن إرسال معلومات وإيضاحات وتوصيات جديدة على أجزاء بعد "شحن" الكتيبات الرئيسية ؛ كما يبدو أو عند الطلب.
كل هذا جعل من الممكن إبلاغ العميل بشكل أفضل بالوظيفة الجديدة وبالتالي تقليل عدد الأخطاء في اختبارات التكامل.
خبرة في العمل مع أنظمة الطرف الثالث
لتطوير الفواتير ، نحتاج إلى أن نكون قادرين على تتبع حركة المرور. هناك أنظمة PCRF منفصلة لهذا الغرض. يتم احتساب المكالمات في قاعدة بيانات واحدة ، والرسائل القصيرة في نفس المكان ، وحركة المرور في قاعدة بيانات أخرى ؛ وهناك برنامج خاص يقوم بمزامنة كل هذا.
في الوقت نفسه ، تعد أنظمة PCRF برامج مملوكة لجهات خارجية. أي الصندوق الأسود: نرسل البيانات هناك ، ونتلقى شيئًا في المقابل ، لكن لا يمكننا التحكم في ما يحدث في الداخل. علاوة على ذلك ، لا يمكننا تغيير أي شيء هناك.
حدت هذه المحاذاة من قدرتنا على تحديد وإصلاح الأخطاء المتعلقة بالمرور.
ما فعلناه: أنشأنا قاعدة معرفة داخلية منفصلة لـ PCRF. كل حادث ، كل خيار تخصيص ، كل فكرة - تم تسجيل كل شيء ومشاركته من قبل الفريق.
نتيجة لذلك ، أصبحنا مستخدمين جيدين لنظام PCRF ، ويمكننا تخصيصه وفهم ما يجب أن يفعله. هذا يوفر الوقت في الحوادث البسيطة. مع الحالات المعقدة ، بالطبع ، ما زلنا نلجأ إلى مطوري النظام للحصول على المساعدة.
المزيد من المدرجات
ميزة أخرى في اختبار الفواتير لمشغلي الهاتف المحمول هي أنه يمكن تمديد البرامج النصية المخصصة بمرور الوقت. قد يستغرق النص الكامل الذي نريد اختباره أيامًا أو حتى أسابيع.
من الصعب الانتظار عدة أيام أو أسابيع أثناء مرحلة الاختبار. في الواقع ، لاختبار مثل هذه السيناريوهات ، غالبًا ما حان الوقت للاسترخاء في قاعدة البيانات.
لإرجاع الوقت ، تحتاج إلى إغلاق جميع الجلسات باستثناء الجلسة الخاصة بك. نحصل على موقف عندما ، بشكل مشروط ، يمكن لـ 20 من المختبرين التقدم للحصول على مقعدين للاختبار ، ويريد الجميع إرجاع الوقت. هذه هي قائمة الانتظار. وقائمة الانتظار هي احتمال أنه بحلول التاريخ المتفق عليه لشحن البرنامج قد لا يكون لدينا الوقت لفحص كل شيء بشكل صحيح.
ما فعلناه: قم بإعداد حامل منفصل لكل مختبِر.
سمح لنا ذلك بإزالة الأخطاء التي حدثت بسبب "تأخر دوري إلى المنصة ، ولم يكن لدي وقت".
الافتراضية
تحضير الكابينة ليس عملية سريعة. تحتاج إلى الاتصال بشبكة المشغل ، وطلب الوصول ، وهذا ليس كل شيء. قد يستغرق الإجراء الكامل عدة أسابيع. كان الكفاح من أجل تقليل الوقت اللازم لإعداد الحامل اتجاهًا مهمًا في التحرك نحو هدف عدم وجود أخطاء.
ما فعلناه: تمكين الافتراضية.
ساعد نسخ الأجهزة الافتراضية مع جميع الإعدادات الضرورية والبرامج المثبتة مسبقًا وأتمتة هذه العملية في تقليل الوقت اللازم لإعداد الحامل "خلال يوم واحد".
التخطيط
الأخطاء من اختبارات التكامل هي أيضًا نتيجة لسوء التقدير في تخطيط الإصدار. لقد تأرجحنا كثيرًا ، في وقت الإصدار المحدد ، لم يكن كل شيء في الوقت المناسب.
ما فعلناه: تقديم مواعيد نهائية مؤقتة لكل مرحلة من مراحل التطوير. "إذا كنت تعرف تاريخ الانتهاء ، فأنت تعرف كل وسيط" - ساعدنا هذا المبدأ على التحكم بشكل أفضل في سرعة الحركة نحو هدف الإصدار.
الدعم والإفراج بالتوازي
في بداية رحلتنا ، كانت هناك حالة تعارضت فيها "ديون" الإصدار الأخير مع الإصدار التالي. بعد القبول ، وصلت الأخطاء إلى جانب العميل ، وذهب الجميع لإصلاحها.
في الوقت نفسه ، لم يتحرك جدول الإصدار. نتيجة لذلك ، في الوقت الذي حان الوقت للتعامل مع الإصدار التالي ، لا يزال بإمكاننا مواصلة العمل على الإصدار السابق.
كان من الممكن تغيير الموقف بسبب انفصال مجموعتين عن الفريق: من سيصلح الأخطاء من القبول ومن سيتعامل مع الإصدار الجديد في الموعد المحدد.
كان التقسيم مشروطًا: ليس بالضرورة نصفه ، لكن نصفه هنا. يمكننا نقل الأشخاص بين المجموعات حسب الحاجة. من الخارج ، قد يبدو الأمر كما لو أن شيئًا لم يتغير: هنا شخص من الفريق ، خلال السباق ، عمل على كل من الأخطاء والميزات الجديدة. ولكن في الواقع ، كان اختيار المجموعات الفردية بمثابة تحسن من فئة "الآن يمكننا أن نتنفس". ساعدنا تركيز كل مجموعة وتوازي العمل بين المجموعات كثيرًا.
حسب الترتيب الزمني ، كانت هذه واحدة من أولى نقاط النمو التي صاغناها في تشريح الجثة. وهنا تأتي قصتي إلى الجزء المتعلق بآلة موسيقية رئيسية.
الأداة الرئيسية
التحسين الذي ساعدنا أكثر هو التشريح الصادق.
شخص ما يسميها بأثر رجعي ، شخص ما - تحليل النتائج ؛ علقت كلمة "تشريح الجثة" في فريقنا. تم اختراع جميع التحسينات الموضحة في هذه المقالة على تشريح الجثة.
المبدأ بسيط: كان هناك إصدار ، تحتاج إلى الاجتماع معًا ومناقشة كيف سارت الأمور بصدق. يبدو الأمر بسيطًا ، ولكن هناك عقبات في التنفيذ. بعد إصدار "غير ناجح" ، يكون لدى الأشخاص في الفريق حالة مزاجية "لا يوجد وقت للخدش في اللغات ، عليك القيام بشيء ما". قد يأتي شخص ما بعد الوفاة ويبقى صامتًا (وبالتالي لا ينقل بعض المعلومات المفيدة المحتملة).
لمدة عامين من التحرك نحو هدف عدم وجود أخطاء ، قمنا بتطوير عدد من المبادئ لكيفية إجراء عمليات تشريح الجثة.
- اجمع الصورة الكاملة
ندعو قائمة موسعة من المشاركين. المطورين والمختبرين والمحللين والمديرين والمديرين التنفيذيين - أي شخص لديه رغبة في التحدث. من الناحية التنظيمية ، ليس من الممكن دائمًا جمع الجميع ، الجميع. لا بأس ، إنه يعمل هكذا أيضًا. لا تكمن النقطة في رفض مشاركة الزملاء بعبارة "هنا في فريقنا نقوم بتلخيص النتائج ، يمكنك تلخيصها في نتائجك". العمل مع الحوامل والرموز والعمليات والتفاعل - نحن نسعى جاهدين حتى لا نغفل عن أي جانب.
- لا تمسك بكل شيء دفعة واحدة
حسنًا ، نتيجة التشريح ، توصلنا إلى 30 نقطة نمو. كم تأخذ للعمل؟ ربما يمكننا حلها حتى المرة القادمة؟ كان التنسيق "اختيار 2-3" أفضل بالنسبة لنا. في هذه الحالة ، هناك تركيز ، والجهود التي يبذلها أفراد الفريق ليست موزعة. من الأفضل أن تفعل أقل من أن تفعل الكثير ، ولكن بشكل كامل ، ولكن لا تذكر.
- لا تكن ذكيًا في التنسيق
هناك العديد من الأساليب لإجراء عمليات تشريح الجثة. ممارسات التيسير ، والتقنيات من التفكير التصميمي والتفكير الجانبي ، وتقنية Goldratt وخبراء مرموقين آخرين. في تجربتنا ، الحس السليم كافٍ للبدء. قمنا بتدوين المشكلات ، وتجميعها ، واختيار عدة مجموعات ، ودفعنا الباقي جانبًا (انظر النقطة السابقة) ، وناقشنا ، وإصلاح الخطة. عندما يكون هناك هدف مشترك ، فليس من الصعب العثور على لغة مشتركة.
- اذهب إلى العمل
ربما كان المبدأ الرئيسي في هذه القائمة. مهما كانت قائمة التحسينات الواعدة والمقنعة المبنية على نتائج تشريح الجثة ، إذا لم تدخل في العمل ، فكل شيء سدى. اتفقنا ، ثم نحن نفعل ذلك. نعم ، هناك أمور أخرى عاجلة. لكن لدينا هدف أيضًا ، ونريد الاقتراب منه.
يمكن أن يكون تشريح الجثة مؤلمًا جدًا. الحديث عن الفشل ، حتى بطريقة بناءة ، ليس بالأمر السهل. لكن محاربة الانزعاج يستحق كل هذا العناء. أنا متأكد من أنه بدون تشريح الجثة لم نكن قادرين على التوصل إلى وتنفيذ كل تلك الأشياء التي ساعدت في تحقيق هدف عدم وجود أخطاء في الإصدار.
الأداة الأكثر أهمية
يسمح لك تشريح الجثة بالعثور على وسائل لتحقيق الهدف ، ولكن إذا نظرت إليه ، فيمكن أن يطلق عليه نتيجة مبدأ المستوى الأعلى.
أهم أداة هي مشاركة الفريق.
هناك جانب فعال للمشاركة. على سبيل المثال:
- إذا عملنا ساعات إضافية ، يكون الرئيس بجوار الفريق ، ويساعده بيديه ؛
- إذا كنت تشجع الفريق من خلال تتبع التقدم ، فيمكنك العثور على مقاييس مرئية (ليس من الصعب بالنسبة لعدد الأخطاء).
و كذلك بنفس الروح.
من الصعب أيضًا إضفاء الطابع الرسمي على جانب المشاركة - القدرة على مشاركة إيمانك بالنجاح مع الفريق. بعد كل شيء ، أنا وفريقي لم ننظر فقط في الكتيب الذي يحتوي على قيم الشركة ، ورأينا "أقوى معًا" هناك وقررنا ، بنغو ، أنه تم العثور على حل. لقد رأينا أمثلة على كيفية تحقيق الأهداف الصعبة من خلال توحيد القوى. كان لدينا أشخاص في فريقنا يؤمنون بالنجاح وحاولوا نقل هذا الاعتقاد إلى زملائهم. الباقي هو مسألة تقنية.
الناس هم أهم شيء.
كان هناك الكثير في الإصدار نحو هدف صفر أخطاء. العمل على تحسين التوثيق ، وزيادة سرعة وجودة الرد على أسئلة العملاء مختلفة. هذه المرة حاولت مشاركة بعض الأمثلة فقط والتحدث عن المبادئ الأساسية.
لا يزال لدي أنا والفريق الكثير لنفعله في الكفاح من أجل جودة الإصدار وتحسين الوقت في السوق. اجعل النتيجة قابلة للتكرار بانتظام مع عدم وجود أخطاء في اختبارات التكامل ، وأتمتة الانحدار.
كيفية تحقيق هذه الأهداف لا يزال يتعين رؤيته. لكن ما نعرفه على وجه اليقين الآن: سنقوم بالتأكيد بإجراء عمليات تشريح الجثة وتنفيذ نقاط النمو بناءً على الدوافع. وسنحاول استغلال الفرص المتاحة للفريق المعني.
آمل أن يكون بعض هذا مفيدًا لك أيضًا.