تخطَّ إلى المحتوى الرئيسي
العودة إلى المدونة

ما الذي يجب أن يتضمّنه التسليم

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

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

التسليم الثاني هو التسليم الفعلي، وهو الذي يستحقّ أن نصمّم من أجله.

المعيار الخاطئ

المعيار الشائع هو الاكتمال: هل أُنتج كل ما نصّ عليه العقد؟ هذا سؤال يسهل اجتيازه ولا يخبرك بالكثير. فالشيفرة قد تُسلَّم كاملة وتبقى غير قابلة للاستعمال من قِبَل من لم يكتبها.

المعيار الأفضل افتراضٌ بسيط: لنفترض أنّ من بنى هذا النظام لم يعد متاحًا — ليس معاديًا، بل غائبًا فحسب. هل يستطيع فريق كفؤ توظّفه العام المقبل أن يفتحه صباح الاثنين ويُصدر تغييرًا صغيرًا قبل الخميس؟ كل ما يجب أن يتضمّنه التسليم ينبع من جعل الجواب: نعم.

ما الذي يتطلّبه ذلك

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

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

البيانات وتاريخها. شكل البيانات اليوم، والتسلسل المرتّب للتغيّرات التي أوصلتها إلى هذا الشكل. وقاعدة بيانات لا يمكن إعادة إنشائها إلّا يدويًا هي قاعدة لا يمكن استعادتها بأمان.

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

دليل تشغيل. ما الذي يتعطّل، وكيف تعرف، وما الذي تفعله في الثانية بعد منتصف الليل. مكتوبًا لمن هو متعب ولا يملك السياق.

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

لماذا نتحدّث عن هذا علنًا

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

وما عدا ذلك وسيلةٌ للاحتفاظ بالعميل بجعل المخرج مكلفًا. قد يكون ذلك نموذج عمل، لكنّه ليس هندسة.

لديك ما تريد بناءه؟

راسلنا بالعربية أو بالإنجليزية، أيّهما أسهل عليك، أو اتصل بنا مباشرة.

بيانات التواصل

تواصل مباشر