برمجيات مؤسسية وتنفيذ مدروس.
وجهة نظر

التطبيق الجيد منخفض الكود يحتاج إلى خطة تشغيل

تفيد سرعة البناء عندما تكون العملية والمسؤولية والصيانة بالوضوح نفسه.

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

نمط الفشل ليس تطبيقاً سيئاً.

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

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

قرّر ما ينتمي إلى المنصة، كتابةً.

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

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

الملكية هي الحقل الأهم.

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

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

الحوكمة يجب أن تكون متناسبة وإلا جرى تجاوزها.

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

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

البيئات والتسمية مملّة وحاملة للثقل.

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

ارسم الخط بين بناء الأعمال والهندسة.

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

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

كيف يبدو الجيد.

تطبيقات تُسلَّم في أسابيع. وفهرس يقول ما الموجود ومن يملكه ومتى رُوجع آخر مرة. وبوابة خفيفة بما يجعل الناس يستخدمونها. وإجابة واضحة غير محرجة عن سؤال ماذا يحدث لأي من ذلك حين يغادر من بناه.

كيف يبدو يوم عمل أفضل بالنسبة لك؟

شاركنا العملية التي تريد تحسينها. نستكشف معك المنتج والتقنية وأعمال التنفيذ التي تحتاجها.